Hi。IC驗證工程師在日常工作中會接觸到各種各樣的協(xié)議,小杜最近就在驗證的時候接觸到了MCTP協(xié)議,雖然硬件媒介層只負(fù)責(zé)傳輸數(shù)據(jù),確保數(shù)據(jù)傳輸流程、數(shù)據(jù)包格式、數(shù)據(jù)正確即可,具體的數(shù)據(jù)包分析由軟件控制,但正如小杜師傅所說,既然驗到了,最好還是對協(xié)議及應(yīng)用做深一步了解,這樣才能對驗的東西有更好的認(rèn)知。本文只是對MCTP協(xié)議和基于MCTP框架的部分協(xié)議的簡單介紹,如有錯誤,還請批請指教。
MCTP(Management Component Transport Protocol)是一種用于在計算機系統(tǒng)中傳輸管理信息的協(xié)議,具有很強的靈活性、擴展性,可用于不同的管理控制器和設(shè)備之間進行通信。因為MCTP協(xié)議可以在多種底層傳輸媒介上運行,如I2C、SMBus、I3C、PCIe、USB和以太網(wǎng)等,因此MCTP在不同的硬件平臺和通信環(huán)境中具有廣泛的適用性。
MCTP采用分層架構(gòu),包括MCTP控制協(xié)議層、消息傳輸層和底層傳輸媒介層。
控制協(xié)議層負(fù)責(zé)消息格式和控制命令。
消息傳輸層負(fù)責(zé)處理消息的分片、重組和傳輸。由于MCTP協(xié)議規(guī)定底層最多一次傳輸69 bytes,因此當(dāng)消息(message)超過時,發(fā)送端需要對消息分片,接收端對片消息進行重組。這種方式可以提高傳輸和效率和可靠性。????
底層傳輸媒介層負(fù)責(zé)實際的物理傳輸,每次傳輸一個MCTP packet。??????????????
MCTP還支持多級地址映射和路由,允許在復(fù)雜的系統(tǒng)拓?fù)渲徐`活地傳輸消息。
MCTP協(xié)議框架可以承載多種上層協(xié)議。比如PLDM、SPDM、NC-SI、VDM以及OEM定制協(xié)議。這里只著重介紹下PLDM和SPDM。
PLDM有多種子協(xié)議,每個子協(xié)議針對特定的管理功能,比如:?
SPDM消息格式包含以下字段:
SPDM的工作流程如下:
PLDM(Platform Level Data Model)
PLDM是由DMTF定義的一組管理協(xié)議,旨在標(biāo)準(zhǔn)化系統(tǒng)管理組件之間的數(shù)據(jù)交換。PLDM Message由固定格式的頭(Message Header)和可變長度的負(fù)載組成。頭部包含以下字段:
PLDM Type:標(biāo)識消息的PLDM類型
PLDM Command/Respone:標(biāo)識具體的命令或響應(yīng)。
Instance ID:標(biāo)識消息的實例,確保消息的唯一性和可追蹤性。
Payload Length:負(fù)載數(shù)據(jù)的長度,長度可變。??????
Payload:實際的消息內(nèi)容,根據(jù)不同的PLDM類型和命令具有不同的格式。
PLDM for Firmware Update:提供固件更新的標(biāo)準(zhǔn)機制,支持固件映像的傳輸、驗證和應(yīng)用,主要用于服務(wù)器、存儲設(shè)備、網(wǎng)絡(luò)設(shè)備的固件更新。
PLDM for Monitoring and Control:提供設(shè)備狀態(tài)監(jiān)控和控制的標(biāo)準(zhǔn)接口,主要用于實時監(jiān)控設(shè)備的健康狀態(tài),執(zhí)行遠(yuǎn)程控制操作。
PLDM for Platform Initialization:定義了平臺初始化和配置的標(biāo)準(zhǔn)流程,應(yīng)用于系統(tǒng)啟動過程中的設(shè)備初始化和配置管理。
PLDM for BIOS Control and Configuration:提供BIOS設(shè)置和控制的標(biāo)準(zhǔn)接口,應(yīng)用于遠(yuǎn)程配置和管理BIOS設(shè)置。
SPDM (Security Protocol and Data Model)
SPDM用于設(shè)備認(rèn)證和安全通信。SPDM提供設(shè)備間的雙向認(rèn)證機制,確保通信雙方身份真實性,并且定義了建立安全通信通道的流程,確保數(shù)據(jù)傳輸?shù)臋C密性和完整性。同時,SPDM支持多種認(rèn)證和加密算法以滿足不同安全級別的需求。
SPDM Version:協(xié)議版本號。
Request/Response Code:標(biāo)識請求或響應(yīng)的類型。
Session ID:標(biāo)識會話的唯一ID。
Payload Length:負(fù)載數(shù)據(jù)的長度,長度可變。
Payload:實際的消息內(nèi)容,包括認(rèn)證信息、密鑰協(xié)商信息和加密數(shù)據(jù)。
認(rèn)證過程:通信雙方發(fā)現(xiàn)對方的存在,初始化認(rèn)證流程,隨后通過數(shù)字證書和挑戰(zhàn)-響應(yīng)機制驗證對方身份,認(rèn)證通過后,雙方協(xié)商生成會話密鑰用于后續(xù)通信加密。
安全通信:使用認(rèn)證過程中生成的會話密鑰對傳輸?shù)臄?shù)據(jù)進行加密,通過消息認(rèn)證碼或數(shù)字簽名保護數(shù)據(jù)的完整性,防止篡改,并且每次通信都會附加認(rèn)證信息,確保消息的真實性,防止重放攻擊。
NC-SI(Netword Controller Sideband Interface)
?NC-SI協(xié)議用于管理網(wǎng)絡(luò)和控制器,通過帶外通信通道(如基板管理控制器,BMC)與網(wǎng)絡(luò)控制器進行通信。
VDM (Vendor Defined Message)
供應(yīng)商自己定義的私有消息類型,以滿足其特定功能需求。
通過上述基于MCTP協(xié)議框架的協(xié)議不難猜到,MCTP主要應(yīng)用于數(shù)據(jù)中心、服務(wù)器管理和高性能計算環(huán)境。??????????????????
服務(wù)器和數(shù)據(jù)中心管理:通過BMC和其他管理控制器,實現(xiàn)對服務(wù)器硬件的監(jiān)控、配置和控制。
固件更新:通過PLDM for Firmware Update協(xié)議,在運行過程中安全、可靠地更新系統(tǒng)固件。
安全認(rèn)真和通信:通過SPDM協(xié)議來確保管理通信的安全性,防止未授權(quán)的訪問和數(shù)據(jù)篡改。
網(wǎng)絡(luò)控制器管理:通過NC-SI協(xié)議配置和管理網(wǎng)絡(luò)控制器,以提高網(wǎng)絡(luò)性能和安全性。
小杜這里只是對MCTP和一些承載協(xié)議的特性、功能和使用場景做了簡單的介紹,具體到每個協(xié)議的使用還需要看對應(yīng)的spec及具體使用場景,因為小杜目前還不涉及軟件層,也尚無精力研究每一份spec,所以就先寫到這兒啦。感謝你看到這里。
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5465瀏覽量
172810 -
計算機
+關(guān)注
關(guān)注
19文章
7549瀏覽量
88707 -
服務(wù)器
+關(guān)注
關(guān)注
12文章
9329瀏覽量
86128
原文標(biāo)題:【協(xié)議】用于服務(wù)器的MCTP及其承載協(xié)議介紹
文章出處:【微信號:小杜的芯片驗證日記,微信公眾號:小杜的芯片驗證日記】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
簡單介紹NEC協(xié)議
簡單介紹CAN總線的相關(guān)概念
UART協(xié)議模擬簡單介紹
TFTP簡單文件傳送協(xié)議
基于VxWorks系統(tǒng)的簡單網(wǎng)絡(luò)管理協(xié)議的實現(xiàn)
什么是簡單網(wǎng)絡(luò)管理協(xié)議(SNMP)
簡單郵件傳送協(xié)議是什么?
tcp_ip 協(xié)議講座:介紹ARP,ICMP,DHCP協(xié)議
Emulex標(biāo)準(zhǔn)PLDM MCTP應(yīng)用筆記
![Emulex標(biāo)準(zhǔn)PLDM <b class='flag-5'>MCTP</b>應(yīng)用筆記](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Emulex標(biāo)準(zhǔn)PLDM MCTP應(yīng)用筆記 修訂版12.8.11
![Emulex標(biāo)準(zhǔn)PLDM <b class='flag-5'>MCTP</b>應(yīng)用筆記 修訂版12.8.11](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Emulex標(biāo)準(zhǔn)PLDM MCTP應(yīng)用筆記 修訂版14.0.441.0
![Emulex標(biāo)準(zhǔn)PLDM <b class='flag-5'>MCTP</b>應(yīng)用筆記 修訂版14.0.441.0](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Emulex MCTP PLDM FRU應(yīng)用程序
![Emulex <b class='flag-5'>MCTP</b> PLDM FRU應(yīng)用程序](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Emulex MCTP PLDM FRU應(yīng)用程序 修訂版12.8.274.0
![Emulex <b class='flag-5'>MCTP</b> PLDM FRU應(yīng)用程序 修訂版12.8.274.0](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
基于MCTP的Emulex標(biāo)準(zhǔn)PLDM 修訂版14.0.303.0
![基于<b class='flag-5'>MCTP</b>的Emulex標(biāo)準(zhǔn)PLDM 修訂版14.0.303.0](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
簡單介紹Modbus RTU協(xié)議
![<b class='flag-5'>簡單</b><b class='flag-5'>介紹</b>Modbus RTU<b class='flag-5'>協(xié)議</b>](https://file1.elecfans.com/web2/M00/E4/01/wKgaomY8I_SAF_lxAAA9iGo-jOM653.png)
評論