日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

TCP/IP協(xié)議處理 由“軟”轉(zhuǎn)“硬”


面對網(wǎng)絡(luò)帶寬和速度的飛速增長,傳統(tǒng)的通過軟件進(jìn)行TCP/IP協(xié)議處理的方式已經(jīng)越來越成為高性能網(wǎng)絡(luò)計算的瓶頸 。
在目前的以太網(wǎng)環(huán)境中,TCP/IP協(xié)議的處理都是通過軟件方式在中心處理器上實現(xiàn) 。當(dāng)網(wǎng)絡(luò)速度達(dá)到G比特數(shù)量級時,主CPU就越來越繁忙,其中大部分處理負(fù)荷都是來自對TCP/IP協(xié)議的處理,例如對IP數(shù)據(jù)包的校驗處理、對TCP數(shù)據(jù)流的可靠性和一致性處理 。大量協(xié)議數(shù)據(jù)還需要通過I/O中斷進(jìn)行操作,不斷在網(wǎng)絡(luò)接口緩沖區(qū)和應(yīng)用程序內(nèi)存之間進(jìn)行數(shù)據(jù)交換,這些額外負(fù)擔(dān)極大地降低了主CPU的處理效率,增加了應(yīng)用計算的平均等待時間 。按照CPU對網(wǎng)絡(luò)數(shù)據(jù)流的處理比率分析,大概CPU每處理1比特網(wǎng)絡(luò)數(shù)據(jù),就將消耗1Hz的處理性能,也就是說需要20GHz的CPU處理能力滿負(fù)荷運行才能滿足10GB以太網(wǎng)數(shù)據(jù)流的處理要求 。
同時,由于目前對TCP/IP協(xié)議進(jìn)行處理都是采用通用CPU及其配套的系統(tǒng)結(jié)構(gòu),而這種體系下CPU的主要功能是進(jìn)行通用計算,并非進(jìn)行輸入輸出操作 。因此在網(wǎng)絡(luò)帶寬和速度飛速發(fā)展的情況下,網(wǎng)絡(luò)鏈路速度高于CPU對TCP/IP協(xié)議棧的處理速度將導(dǎo)致系統(tǒng)的輸入輸出系統(tǒng)成為網(wǎng)絡(luò)瓶頸 。
TOE分擔(dān)協(xié)議處理負(fù)荷
為了在高速網(wǎng)絡(luò)環(huán)境中改進(jìn)和優(yōu)化服務(wù)器性能,減輕對網(wǎng)絡(luò)協(xié)議的處理負(fù)荷,TCP/IP負(fù)荷減輕引擎(TOE,TCP/IP Offload Engine)技術(shù)應(yīng)運而生 。
TOE技術(shù)的基本思想是分擔(dān)CPU對TCP和IP協(xié)議的處理,將協(xié)議處理過程放到高速網(wǎng)卡或者高速線卡等硬件上完成,其中包括TCP、IP、UDP、ICMP等子協(xié)議的處理 ?;赥OE技術(shù)的TCP/IP的塊級數(shù)據(jù)傳輸將比通常方式提高10%以上的性能 。
將原來通過軟件方式處理的TCP/IP協(xié)議放在專門的硬件上完成,從而將應(yīng)用和網(wǎng)絡(luò)分離處理,會使10G以太環(huán)境中應(yīng)用服務(wù)器的CPU資源利用率大大提高,可以顯著地改善服務(wù)器性能 。例如在IP存儲領(lǐng)域,在iSCSI的協(xié)議處理過程中就明確采用了這種技術(shù) 。
對傳統(tǒng)的網(wǎng)卡而言,處理一個32KB的文件,需要與主機(jī)CPU進(jìn)行近30次交互,大約20次數(shù)據(jù)包交換,10次應(yīng)答 。但網(wǎng)卡配置TOE功能后,數(shù)據(jù)包和應(yīng)答信號處理在網(wǎng)卡中實現(xiàn),數(shù)據(jù)與應(yīng)用緩沖區(qū)間的交換由基于硬件的DMA處理,這就為應(yīng)用的處理騰出了更多的CPU資源 。同時也降低了系統(tǒng)I/O總線和內(nèi)存總線的負(fù)荷,降低了應(yīng)用系統(tǒng)的處理延時 。傳統(tǒng)網(wǎng)卡在集成TOE功能后,采用會話層接口在傳輸層與主機(jī)之間進(jìn)行交互,幫助實現(xiàn)應(yīng)用中的大文件(超過10KB)處理 。TOE處理與傳統(tǒng)TCP/IP處理方式對比如上圖所示 。
如3Com的3C996-T 10/100/1000 PCI-X服務(wù)器網(wǎng)卡,融合了基本的校驗和中斷處理功能,能實現(xiàn)雙向300M到900M數(shù)據(jù)吞吐率 。一塊具備高級TCP/IP處理功能的網(wǎng)卡,如Alacritech的1000x1服務(wù)器及存儲加速器,能夠?qū)崿F(xiàn)雙向1500M到1800M數(shù)據(jù)吞吐率 。下表列出了TOE技術(shù)的測試比較數(shù)據(jù) 。
實現(xiàn)策略:部分分擔(dān)還是全分擔(dān)?
TCP協(xié)議處理過程大概可以分為以下幾個部分:TCP建連過程、數(shù)據(jù)收發(fā)過程、連接維護(hù)過程、錯誤治理過程 。因此根據(jù)TCP負(fù)荷分擔(dān)的策略,TOE技術(shù)可以分為部分分擔(dān)和全功能分擔(dān)兩種 。用戶可以根據(jù)應(yīng)用要求進(jìn)行選擇 。
部分分擔(dān)又稱為數(shù)據(jù)路徑分擔(dān) 。由于10G以太環(huán)境下網(wǎng)絡(luò)鏈路非常好,很少出現(xiàn)丟包的情況,TCP連接在很長一段時間內(nèi)都比較穩(wěn)定,大量的協(xié)議處理都來自數(shù)據(jù)收發(fā)過程,因此通過對數(shù)據(jù)收發(fā)過程進(jìn)行分擔(dān)處理,可以重點減輕CPU對數(shù)據(jù)收發(fā)的處理壓力,改善應(yīng)用的處理性能 。
全功能分擔(dān)就是對TCP處理的4個過程都進(jìn)行分擔(dān)處理,徹底釋放主CPU對TCP處理的負(fù)荷 。在網(wǎng)絡(luò)連接非凡多的情況下,頻繁的TCP建連、斷連過程都將消耗巨大的CPU資源,另外由于TCP連接對端工作狀態(tài)的不確定性,將導(dǎo)致CPU需要對TCP連接錯誤及時處理 。

推薦閱讀