一(yī)、 概述
 志南; TCP/IP協議已經成爲互聯網應用最基本的協議。傳統方式下(xi河們à),TCP/IP協議由中(zhōng)央處理器、微處理器話呢以軟件的形式處理。然而,随着以太網速率從1000Mbits/作空s提高到10Gbits/s再到40Gbits/s、10個熱0Gbits/s,CPU已經很難滿足TCP/IP協議處理的需要了。因此,鄉畫爲了減輕CPU的協議處理負擔,TCP/IP協議處理技術顯得越來越重要。其中(z算個hōng),TCP/IP卸載引擎(TCP/IP Offload議司 Engine,ToE)技術成爲研究的熱到放點。
二、 傳統TCP的處理
在傳統的以生自太網環境中(zhōng),TCP/IP協議的行知處理都是通過軟件方式在中(zhōng)央處理器上實現。如圖1朋制所示,網絡數據由網卡進入計算機系統,傳統網卡主要實現網絡協議物(wù)理公事層和數據鏈路層功能,然後将口數據包交付CPU操作系統 ,CPU操作黑姐系統首先對數據進行TCP/IP協議處理,最雜空後将數據交付應用程序。由于CPU是一(yī)個通用的部水舊件,它不是專門針對TCP/IP協議處理而設計,因而它處理協議的能力不強。在要通吉比特網絡中(zhōng),如果TCP/IP協議處理仍在CP如們U中(zhōng)執行,不但協議處理的效率不高,而且占用大(dà)量的CPU學車資(zī)源,浪費(fèi)存儲空間和大(dà)量的功耗。同時,還使其它黃筆的應用程序得不到充分(fēn)的CPU資(zī)源,從而影響整個風煙系統性能,導緻高速的帶寬資(zī)源得不到充分(fēn)的利用。由于網絡帶寬增你笑加的速度遠超過處理器速度的增長,在今後網絡應用的瓶頸不再是帶寬資(z答商ī)源,而是處理器的速度面對網絡帶寬和速度的飛弟下速增長,傳統的通過軟件進行TCP/IP協議處理的方式已經越來越成爲高性能網絡計有短算的瓶頸。
圖
1 網絡處理的傳統處理流程
場鐵
三、 ToE的處理流程
T公習oE(TCP/IP Offload Engine)是一(yī)門使用來購硬件代替軟件來處理TCP/IP協議的技術,從而将系統微處理器樂土從TCP/IP協議處理負擔中(zhōng)暗在解放(fàng)出來,提高了網絡性能;同時也爲沒有TC長窗P/IP協議處理能力的系統提供了一(yī)種解決方案。傳統著可方式下(xià),TCP/IP協議由操作系統處理,ToE舊去技術将TCP/lP協議的處理分(fēn)離(lí紅土)到網卡,如圖2所示。
圖2ToE處理方式與傳統處理方式對比
四、 ToE的實現
本設計主要頻大通過硬件實現TCP/IP協議傳輸機制,支持TCP/IP的建立、釋放(fàng)林為握手機制;同時支持TCP的超時重傳、慢(màn)開(kāi)始、快重傳訊資的機制。實現将TCP/IP協議完全卸載到硬件實現,軟件負責一(yī)些狀态的微電管理及配置任務,大(dà)大(dà)減軟的軟件的任務量同鄉睡時提升TCP/IP數據的處理效率。
 的業; 在ToE的功能實現時,本設計基于FPGA實現的網志答絡接口卡功能,除此之外(wài)基于FPGA還可以後期添加交換、QoS、安全等線術功能,從而支持更加靈活的功能實現。具體(tǐ)的ToE功能實現結構如圖3所風關示。
圖3 ToE實現結構圖
主要由接收側處理模塊家子RX,發送側處理模塊TX和連接控制模塊CC組成,三部分(f動要ēn)的邏輯關系如3圖所示。
票飛 CC模塊主要完成是TCP/IP流的狀态管理,主要負但但責連接及釋放(fàng)的握手機制,并維護建立連接的TCP/I歌好P流狀态表。
員醫RX模塊負責數據的接收處理,包括TCP/IP的頭部校驗和校驗、去森錯(qù)MAC頭以及接收緩存管理以及接收文關數據的窗口管理等操作。
TX模塊負姐技責數據的發送數據,包括添加TCP/IP的頭部校驗和、添加M子草AC頭、發送窗口控制、超時重傳控制、慢(màn)開(kāi)始、快重傳控制以及吧樂數據輸出緩存管理及數據分(fēn)段的管理等。
通過測試本設計的在1事行G接口的處理速率可以達960Mbps,10G接口的速率可達9Gbps筆器。