RDMA協議共有四種子協議,分別為InfiniBand、iWARP、RoCE v1和RoCE v2協議。這四種協議使用統一的RDMA API,但在具體的網絡層級實現上有所不同,如圖1所示,接下來將分別介紹這四種子協議。
圖1 RDMA四種子協議網絡層級關系圖
InfiniBand:InfiniBand是一種專為RDMA設計的網絡,其傳輸層、網絡層及鏈路層均遵循IB協議規范,沒有類似以太網的復雜協議交互計算,從硬件級別保證傳輸可靠,但成本較為高昂,需要使用專用的IB交換機和IB網卡才可以正常路由。
RoCE v1與RoCE v2:RoCE協議即RDMA over Ethernet,其在以太網上承載IB協議,與IB協議具有相同的傳輸層,僅在網絡層和鏈路層與IB協議存在差異。RoCE協議有v1和v2版本,其中RoCE v1只能部署于二層網絡,其報文結構是在原有IB協議報文基礎上增加二層以太網報文頭,通過ETH Type標識RoCE報文。而RoCE v2基于UDP/IP協議承載RDMA,可部署在三層網絡環境下,在原有IB協議報文基礎上增加UDP頭、IP頭和ETH頭,通過UDP端口號4791標識RoCE v2報文。使用普通以太網交換機搭配IB網卡即可實現網絡路由。
iWARP:iWARP協議是基于TCP/IP協議的RDMA網絡,能夠工作在任何TCP/IP協議的網絡上層,同時將TCP/IP處理流程從CPU卸載到RDMA網卡處理。僅需要使用普通以太網交換機和iWARP網卡即可實現路由。但在大規模部署時,由于TCP/IP協議點對點連接的特性,將會占用大量的內存資源,對系統規格的要求更高
在對比這四種子協議時,將RoCE v1與RoCE v2協議放在一起討論,RDMA的子協議的比較如表1所示。
表1 RDMA四種子協議的比較
在當今數據中心應用中,綜合考慮到成本、性能、硬件需求等因素的前提下,RoCE v2協議正逐漸成為主流RDMA協議。
相關視頻感興趣者,請搜B站用戶名: 專注與守望
或鏈接:
https://space.bilibili.com/585132944/upload/video