現(xiàn)代數(shù)據(jù)中心SmartNIC/DPU 的演變
鏈接:https://www.linkedin.com/pulse/evolution-smartnicsdpus-modern-data-centers-sharada-yeluri?trk=public_post-content_share-article
三層架構(gòu)
兩層或Spine-Leaf架構(gòu)
兩臺(tái)服務(wù)器之間的東西向流量最多有四個(gè)躍點(diǎn) (host-leaf-spine-leaf-host),這有助于減少總體延遲和功耗。
簡(jiǎn)化了中間層,與三層相比,拓?fù)渲械木W(wǎng)絡(luò)設(shè)備更少。
可以獨(dú)立添加Leaf和Spine設(shè)備,以增加網(wǎng)絡(luò)容量,有時(shí)被稱為“橫向擴(kuò)展”架構(gòu)。
以太網(wǎng)接口
與主機(jī)之間的 PCIe 接口
數(shù)據(jù)包轉(zhuǎn)發(fā)
TCP 基本功能
TCP 校驗(yàn)和卸載
CP 報(bào)頭有一個(gè)校驗(yàn)和字段,DPU 可以計(jì)算校驗(yàn)和并將錯(cuò)誤標(biāo)記給 CPU。
TCP 分段卸載
CPU 可以將大數(shù)據(jù)塊與報(bào)頭模板一起發(fā)送給 DPU。DPU 對(duì)數(shù)據(jù)包進(jìn)行分段,并在每個(gè)分段中添加以太網(wǎng)/IP 和 TCP 報(bào)頭。
TCP Large Receive Offload
DPU 可以收集單個(gè)流的多個(gè) TCP 報(bào)文,并將它們發(fā)送到 CPU,以便 CPU 不必處理許多小報(bào)文。
Receive Side scaling
DPU 可以通過(guò)對(duì)五元組進(jìn)行哈希來(lái)確定數(shù)據(jù)包的流。屬于不同流的數(shù)據(jù)包可以到達(dá) CPU 的不同內(nèi)核。這減少了單個(gè) CPU 線程上的負(fù)載。
流表
安全功能
加密/解密
DPU 支持 VPN 終端,可對(duì)加密的VPN流量進(jìn)行在線加/解密和IPsec認(rèn)證。
防火墻/ACL
現(xiàn)代數(shù)據(jù)中心依賴于分布式防火墻,防火墻可以通過(guò)數(shù)據(jù)平面處理器內(nèi)核或卸載引擎來(lái)加速。不同的DPU 具有不同的防火墻功能。通常,廠商提供靜態(tài)數(shù)據(jù)包過(guò)濾、訪問(wèn)控制列表 (ACL) 和 NAT。
TLS 加密/解密
傳輸層安全 (TLS) 對(duì)應(yīng)用層流量進(jìn)行加密,使黑客無(wú)法竊聽(tīng)/篡改敏感信息。它運(yùn)行在 TCP 之上,最初用于加密 HTTP 會(huì)話——Web 應(yīng)用程序和服務(wù)器之間的流量。最近,許多運(yùn)行在 TCP 上的應(yīng)用程序也開(kāi)始使用 TLS 來(lái)實(shí)現(xiàn)端到端安全。TLS 也可以運(yùn)行在 UDP 之上,稱為 DTLS協(xié)議。某些 DPU 提供代理 TCP/TLS 服務(wù),用于終止 TCP 會(huì)話、解密 TLS 加密流量,以及在將流量發(fā)送到主機(jī)處理器之前對(duì)其進(jìn)行身份驗(yàn)證。TCP/TLS 卸載通常通過(guò)專(zhuān)用硬件和處理器內(nèi)核的組合來(lái)完成。
控制平面的處理器內(nèi)核
Cross-Bar或NoC
QoS/流量整形
DMA 引擎
存儲(chǔ)功能
負(fù)載均衡器
最近很多小伙伴找我要一些程序員必備資料,于是我翻出了壓箱底的寶藏,免費(fèi)分享給大家!
掃描海報(bào)二維碼免費(fèi)獲取。


