發布日期:2022-07-15 點擊率:99
實現互聯網連接的硬件設計通常有兩種方法:一、將原始數據包從媒體存取控制器(MAC)發送到主存儲器,然后由CPU處理TCP/IP協議棧;二、在TCP/IP卸載引擎(TOE)中處理幾乎整個協議棧,然后將全部信息發送給主存儲器。
選擇哪種方法取決于你的應用及預算金額的大小。如果是個人用戶,只進行網絡沖浪或使用一些低帶寬的互聯網應用,你可能會選第一種方法。數據包的傳輸將是突發性的,而且一般通信量不大,因此PC或工作站的CPU將不會注意到軟件執行協議層所帶來的開銷。但你肯定會注意到TOE高達200美元左右的OEM成本。另一方面,如果你要裝配的是應用服務器、連到存儲網絡的網關或網絡設備,由于它們需要處理密集型的數據包流量,你會發現TOE物有所值。
圖:以太網卸載芯片
但是否還有其它的選擇:一種成本比TOE低,但仍不會過多占用CPU資源的硬件方法?這個想法使Tehuti Networks公司推出了Bordeaux,它可被認為是一種局部TOE。
“我們是從零開始的,”Tehuti的CEO Arie Brish表示,“我們問自己,什么功能用硬件實現可以最大程度地解放CPU,但仍維持最低的成本?”Tehuti的創始人相信,答案在于簡單的網絡接口卡(NIC)與TOE之間。
在進行大量的傳輸流實驗后,Tehuti推出一種連接到以太網物理層器件的引擎,它能對數據包進行初步的處理。Brish沒有確切說明該器件承擔多少工作。他表示,該引擎將把一串數據包傳送給主CPU,但所采用的方式可以消除軟件的大量工作,尤其是在發現和建立連接,以及挑選數據包方面。“該芯片完成了許多處理數據包的工作,但并非全部。”Brish說。
目前,該設計是在一顆FPGA內實現的,采用PCI-X接口與主系統連接。據Brish介紹,該設計的復雜性達到50萬門級,當運行在100MHz時,處理流量載荷綽綽有余。
Tehuti針對各種不同的流量載荷做了廣泛的系統內分析。它發現,CPU的利用率降低了2.5倍,或者吞吐量增加了2.5倍。與傳統的NIC相比,幾項專利技術能夠顯著減少主存儲器的容量,Tehuti表示。
FPGA方案僅是一個過渡,Tehuti正計劃用ASIC實現這項設計。Brish希望采用相對成熟的工藝技術,以50美元的價格提供芯片及其驅動軟件。
最初,該芯片將瞄準互連網設備和應用服務器。“當一家公司的網絡從100Mb升級到1Gb時,人們立刻能感受到網絡速度明顯加快,因此他們對網卡很滿意。”Brish說,“但隨著在線應用增多并開始占用新帶寬時,人們就會發現傳統解決方案無法滿足需要,但他們又不愿花錢升級到基于TOE的網卡。這正是我們的機會。”
從長遠看,Brish預計這種狀況將擴展到終端用戶PC和工作站。
作者: 張國勇