欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

預(yù)取用于網(wǎng)絡(luò)分組處理的協(xié)議控制塊的方法和系統(tǒng)的制作方法

文檔序號:7608923閱讀:129來源:國知局
專利名稱:預(yù)取用于網(wǎng)絡(luò)分組處理的協(xié)議控制塊的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明的實施方案涉及網(wǎng)絡(luò)分組處理領(lǐng)域,更具體地說,涉及預(yù)取用于網(wǎng)絡(luò)分組處理的協(xié)議控制塊。
2.背景信息和相關(guān)技術(shù)的描述當(dāng)分組(packet)到達(dá)網(wǎng)絡(luò)設(shè)備時,網(wǎng)絡(luò)接口卡(NIC)接受(take)所述分組并將其存儲在主存儲器中。接著NIC可以發(fā)送中斷以向中央處理器(CPU)通知該分組。然后,中斷單元可以檢查中斷的目的地(destination),禁止(disable)來自NIC的后續(xù)中斷,發(fā)起(initiate)軟件中斷,并且排隊所述分組以進(jìn)行處理。當(dāng)處理單元準(zhǔn)備好處理分組的時候,識別分組所屬的連接。這可以包括取(fetch)與分組相關(guān)聯(lián)的協(xié)議控制塊(PCB)。取了PCB后,CPU可以開始處理分組。當(dāng)處理單元準(zhǔn)備好處理分組時,取PCB所發(fā)生的存儲器延遲(latency)會降低網(wǎng)絡(luò)設(shè)備的性能。隨著網(wǎng)絡(luò)速度的增加,對于性能和吞吐量,此存儲器延遲成為越來越大的問題。


可以通過參考以下描述和附圖來最好地理解本發(fā)明,所述附圖用來圖示說明本發(fā)明的圖2是根據(jù)本發(fā)明的一個實施方案,示出結(jié)合本發(fā)明的示例性系統(tǒng)的框圖。
圖3是根據(jù)本發(fā)明的一個實施方案,示出方法的流程圖。
圖4是可以實踐被圖示說明的發(fā)明的某些方面的合適計算環(huán)境的框圖。
具體實施例方式
描述了預(yù)取協(xié)議控制塊用于網(wǎng)絡(luò)分組處理的系統(tǒng)和方法的實施方案。在下面的描述中,闡述了很多具體的細(xì)節(jié)。然而,可以理解,無需這些具體的細(xì)節(jié)可以實現(xiàn)本發(fā)明。此外,公知的電路、結(jié)構(gòu)和技術(shù)沒有詳細(xì)示出,以免模糊對本發(fā)明的理解。
在整篇說明書中提及“一個實施方案”或“實施方案”意味著關(guān)于該實施方案描述的具體特征、結(jié)構(gòu)或特性被包括在本發(fā)明的至少一個實施方案中。因此,“在一個實施方案中”或“在實施方案中”在整篇說明書中不同地方的出現(xiàn)不一定全是指同一實施方案。此外,所述具體特征、結(jié)構(gòu)或特性可以以任何適當(dāng)?shù)姆绞浇Y(jié)合在一個或更多個實施方案中。
參考圖1,根據(jù)本發(fā)明的一個實施方案,框圖示出了系統(tǒng)100。本領(lǐng)域的普通技術(shù)人員會理解,系統(tǒng)100可以包括比圖1示出的那些組件更多的組件。但是,對于實踐本發(fā)明,不需要為了公開說明性的實施方案而示出所有這些一般性的常規(guī)組件。
系統(tǒng)100包括接收單元102,以接收來自網(wǎng)絡(luò)的分組。在一個實施方案中,分組可以根據(jù)傳輸控制協(xié)議(TCP/IP)規(guī)范進(jìn)行傳送。特定的一連串分組可以被稱為“連接”或“分組流(flow)”。連接的上下文(context)可以存儲在被稱作協(xié)議控制塊(PCB)的結(jié)構(gòu)中。此上下文可以由連接的源IP地址、目的IP地址、源端口、目的端口和/或協(xié)議類型唯一地確定。對于每個在接收單元102接收到的分組,與所述分組相關(guān)聯(lián)的PCB可能需要從存儲器中取回(retrieved)。
針對每個被發(fā)送和接收的分組而從存儲器訪問PCB的操作具有相關(guān)聯(lián)的存儲器延遲和帶寬問題。為了減少這些問題,預(yù)取單元104把與被接收的分組相關(guān)聯(lián)的PCB取入處理單元106的緩存(cache)108中。然后,排隊所述分組以進(jìn)行處理。當(dāng)處理單元106準(zhǔn)備好處理分組時,PCB可以從其緩存108中被取回。因此,當(dāng)處理單元準(zhǔn)備好處理分組時,取PCB的存儲器延遲被減少。
在一個實施方案中,預(yù)取單元104還將分組頭(header)信息預(yù)取到緩存108中。當(dāng)處理單元106準(zhǔn)備好處理分組時,分組的頭信息可以從緩存108取回,然后分組可以被處理。
圖2根據(jù)本發(fā)明的一個實施方案,示出了結(jié)合本發(fā)明的示例性系統(tǒng)。在此實施方案中,網(wǎng)絡(luò)接口卡(NIC)202接收來自網(wǎng)絡(luò)的分組。分組通過存儲器控制器212存儲在主存儲器214中。NIC 202發(fā)送中斷,以向處理單元(例如206、208或210)通知該分組。例如中斷服務(wù)循環(huán)(rotate)(ISR)單元的中斷單元204檢查中斷的目的地,禁止來自NIC的后續(xù)中斷,發(fā)起軟件中斷,并且排隊分組以進(jìn)行處理。在一個實施方案中,通過排隊延期過程調(diào)用(deferred procedure call,DPC)來排隊分組,以進(jìn)行處理。這時,可以發(fā)起與分組相關(guān)聯(lián)的PCB預(yù)取。還可以發(fā)起分組頭的預(yù)取。PCB和分組頭可以被預(yù)取到緩存(例如216、218、或220)中。預(yù)取可以在硬件或軟件中完成。當(dāng)處理單元(例如206、208、或210)準(zhǔn)備好處理分組時,處理單元可以從其緩存中取出PCB和分組頭。然后,分組可以被處理。接著,處理單元可以使能(enable)來自NIC的中斷。
在一個實施方案中,預(yù)取也可以用在發(fā)送側(cè),以減少存儲器延遲。當(dāng)分組被排隊以傳輸?shù)骄W(wǎng)絡(luò)外時,PCB可以被預(yù)取。用戶空間中的套接字(socket)接口與內(nèi)核(kernel)空間中的協(xié)議棧處理間經(jīng)常有延遲。所以,為分組發(fā)起發(fā)送請求時,與分組相關(guān)聯(lián)的PCB可以被預(yù)取。當(dāng)內(nèi)核準(zhǔn)備好處理用于傳輸?shù)姆纸M時,PCB已經(jīng)被預(yù)取并且準(zhǔn)備好進(jìn)行處理。這減少了發(fā)送側(cè)的存儲器延遲。
圖3根據(jù)本發(fā)明的一個實施方案示出了一種方法。在300,接收到分組。在302,與所述分組相關(guān)聯(lián)的PCB被預(yù)取到緩存中。在一個實施方案中,分組頭也被預(yù)取到緩存中。在304,排隊所述分組用于處理。在306,當(dāng)處理單元準(zhǔn)備好處理所述分組時,從緩存中取回PCB。在一個實施方案中,分組的頭也從緩存中取回。然后,分組可以被處理。
圖4是可以實踐所說明的發(fā)明的某些方面的合適計算環(huán)境的框圖。在一個實施方案中,上述方法可以在具有組件402-412的計算機(jī)系統(tǒng)400上實現(xiàn),所述組件包括處理器402、存儲器404、輸入/輸出器件406、數(shù)據(jù)存儲設(shè)備412和網(wǎng)絡(luò)接口410,這些組件通過總線408互相耦合。這些組件執(zhí)行它們在技術(shù)領(lǐng)域中公知的常規(guī)功能,并且提供實現(xiàn)系統(tǒng)100的裝置。這些組件一起代表硬件系統(tǒng)的一個寬泛的類別,包括但不限于通用計算機(jī)系統(tǒng)和專用的分組轉(zhuǎn)發(fā)設(shè)備。應(yīng)該理解,計算機(jī)系統(tǒng)400的各種組件可以重新安排,并且本發(fā)明的某些實現(xiàn)可能并不需要也并不包括上面所有的組件。此外,額外的組件可以被包括在系統(tǒng)400中,例如額外的處理器(例如數(shù)字信號處理器)、存儲設(shè)備、存儲器以及網(wǎng)絡(luò)或通信接口。
正如本領(lǐng)域技術(shù)人員將會理解的那樣,用于實現(xiàn)本發(fā)明的方法的實施方案的內(nèi)容,例如計算機(jī)程序指令,可以由任何能夠存儲系統(tǒng)100可訪問的數(shù)據(jù)的機(jī)器可讀介質(zhì)來提供,所述機(jī)器可讀介質(zhì)可以作為存儲器的一部分或是存儲器的附加,包括但不限于磁帶(cartridge)、磁性盒帶(magnetic cassette)、閃存存儲卡、數(shù)字視頻卡、隨機(jī)訪問存儲器(RAM)、只讀存儲器(ROM)等等。在此方面,系統(tǒng)100被裝配為以本領(lǐng)域公知的方式與這些機(jī)器可讀介質(zhì)進(jìn)行通信。
本領(lǐng)域技術(shù)人員還將理解,用于實現(xiàn)本發(fā)明的方法的實施方案的內(nèi)容可以從任何能夠存儲所述內(nèi)容并向系統(tǒng)100傳送這些內(nèi)容的外部設(shè)備提供給系統(tǒng)100。例如,在本發(fā)明的一個實施方案中,系統(tǒng)100可以連接到網(wǎng)絡(luò),并且所述內(nèi)容可以存儲在網(wǎng)絡(luò)中的任何設(shè)備上。
盡管關(guān)于幾個實施方案描述了本發(fā)明,但是本領(lǐng)域的技術(shù)人員將認(rèn)識到本發(fā)明并不限于所描述的實施方案,而是可以在所附權(quán)利要求書的精神和范圍內(nèi)以修改和改變來實現(xiàn)本發(fā)明。因此說明書應(yīng)該被認(rèn)為是示例性而非限制性的。
權(quán)利要求
1.一種方法,包括在網(wǎng)絡(luò)設(shè)備上接收分組;將與所述分組相關(guān)聯(lián)的協(xié)議控制塊(PCB)預(yù)取到緩存中;排隊所述分組以進(jìn)行處理;以及當(dāng)處理單元準(zhǔn)備好處理所述分組時,從所述緩存中取回所述PCB。
2.如權(quán)利要求1所述的方法,還包括將與所述分組相關(guān)聯(lián)的頭預(yù)取到所述緩存中。
3.如權(quán)利要求2所述的方法,還包括,當(dāng)處理單元準(zhǔn)備好處理所述分組時,從所述緩存中取回所述分組頭。
4.如權(quán)利要求1所述的方法,還包括發(fā)送中斷以向所述處理單元通知接收到所述分組。
5.如權(quán)利要求1所述的方法,其中把與所述分組相關(guān)聯(lián)的PCB預(yù)取到緩存中的操作包括把與所述分組相關(guān)聯(lián)的PCB預(yù)取到所述處理單元的緩存中。
6.如權(quán)利要求5所述的方法,還包括把所述分組存儲到耦合到所述處理單元的存儲器中。
7.如權(quán)利要求1所述的方法,還包括處理所述分組。
8.一種裝置,包括接收單元,所述接收單元用來接收分組;耦合到所述接收單元的預(yù)取單元,所述預(yù)取單元把與所述分組相關(guān)聯(lián)的協(xié)議控制塊(PCB)預(yù)取到緩存中,并且排隊所述分組以進(jìn)行處理;以及耦合到所述預(yù)取單元的處理單元,所述處理單元用來從所述緩存取回所述PCB,并處理所述分組。
9.如權(quán)利要求8所述的裝置,其中所述接收單元是網(wǎng)絡(luò)接口卡。
10.如權(quán)利要求8所述的裝置,其中所述預(yù)取單元還把與所述分組相關(guān)聯(lián)的頭預(yù)取到所述緩存中。
11.如權(quán)利要求10所述的裝置,其中所述處理單元還從所述緩存中取回所述分組頭。
12.如權(quán)利要求8所述的裝置,其中所述預(yù)取單元把與所述分組相關(guān)聯(lián)的PCB預(yù)取到緩存中的操作包括,所述預(yù)取單元把與所述分組相關(guān)聯(lián)的PCB預(yù)取到所述處理單元的緩存中。
13.如權(quán)利要求8所述的裝置,還包括耦合到所述接收單元和所述處理單元的中斷單元,所述中斷單元從所述接收單元接收中斷,并向所述處理單元通知所述分組。
14.一種制品,包括包括這樣的內(nèi)容的機(jī)器可訪問介質(zhì),當(dāng)機(jī)器訪問所述內(nèi)容時,導(dǎo)致所述機(jī)器接收分組;將與所述分組相關(guān)聯(lián)的協(xié)議控制塊(PCB)預(yù)取到緩存中;排隊所述分組以進(jìn)行處理;以及當(dāng)處理單元準(zhǔn)備好處理所述分組時,從所述緩存中取回所述PCB。
15.如權(quán)利要求14所述的制品,其中所述機(jī)器可訪問介質(zhì)還包括這樣的內(nèi)容,所述內(nèi)容導(dǎo)致所述機(jī)器把與所述分組相關(guān)聯(lián)的頭預(yù)取到所述緩存中。
16.如權(quán)利要求15所述的制品,其中所述機(jī)器可訪問介質(zhì)還包括這樣的內(nèi)容,所述內(nèi)容導(dǎo)致所述機(jī)器在所述處理單元準(zhǔn)備好處理所述分組時從所述緩存中取回所述分組頭。
17.如權(quán)利要求14所述的制品,其中所述機(jī)器可訪問介質(zhì)還包括這樣的內(nèi)容,所述內(nèi)容導(dǎo)致所述機(jī)器處理所述分組。
18.如權(quán)利要求14所述的制品,其中所述機(jī)器可訪問介質(zhì)還包括這樣的內(nèi)容,所述內(nèi)容導(dǎo)致所述機(jī)器發(fā)送中斷,以向所述處理單元通知接收到所述分組。
19.如權(quán)利要求14所述的制品,其中,包含被所述機(jī)器訪問時導(dǎo)致所述機(jī)器把與所述分組相關(guān)聯(lián)的PCB預(yù)取到緩存中的內(nèi)容的所述機(jī)器可訪問介質(zhì)包括包含當(dāng)所述內(nèi)容被所述機(jī)器訪問時導(dǎo)致所述機(jī)器把與所述分組相關(guān)聯(lián)的PCB預(yù)取到所述處理單元的緩存中的內(nèi)容的所述機(jī)器可訪問介質(zhì)。
20.如權(quán)利要求14所述的制品,其中所述機(jī)器可訪問介質(zhì)還包括這樣的內(nèi)容,所述內(nèi)容導(dǎo)致所述機(jī)器把所述分組存儲在耦合到所述處理單元的存儲器中。
21.一種系統(tǒng),包括接收單元,所述接收單元用來接收分組;耦合到所述接收單元的存儲器,所述存儲器用來存儲所述接收到的分組;耦合到所述存儲器的存儲器控制器,所述存儲器控制器用來管理所述存儲器;耦合到所述接收單元的預(yù)取單元,所述預(yù)取單元把與所述分組相關(guān)聯(lián)的協(xié)議控制塊(PCB)預(yù)取到緩存中,并且排隊所述分組以進(jìn)行處理;以及處理單元,所述處理單元用來從所述緩存取回所述PCB,并處理所述分組。
22.如權(quán)利要求21所述的系統(tǒng),其中所述接收單元是網(wǎng)絡(luò)接口卡。
23.如權(quán)利要求21所述的系統(tǒng),其中所述預(yù)取單元還把與所述分組相關(guān)聯(lián)的頭預(yù)取到緩存中。
24.如權(quán)利要求23所述的系統(tǒng),其中所述處理單元還從所述緩存中取回所述分組頭。
25.如權(quán)利要求21所述的系統(tǒng),還包括耦合到所述接收單元和所述處理單元的中斷單元,所述中斷單元從所述接收單元接收中斷,并向所述處理單元通知所述分組。
全文摘要
描述了用來為網(wǎng)絡(luò)分組處理預(yù)取協(xié)議控制塊的方法和系統(tǒng)。所述方法包括接收分組,把與所述分組相關(guān)聯(lián)的協(xié)議控制塊(PCB)預(yù)取到緩存中,排隊分組以進(jìn)行處理,以及當(dāng)處理單元準(zhǔn)備好處理所述分組時,從所述緩存取回所述PCB。
文檔編號H04L29/06GK1879385SQ200480033125
公開日2006年12月13日 申請日期2004年10月29日 優(yōu)先權(quán)日2003年11月12日
發(fā)明者拉梅什庫馬·伊利卡爾 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
雅江县| 和平县| 罗江县| 景东| 新蔡县| 正镶白旗| 抚远县| 岳西县| 永善县| 大方县| 香格里拉县| 柘城县| 道孚县| 安福县| 曲松县| 鄂伦春自治旗| 娱乐| 铁岭市| 邳州市| 定陶县| 盐津县| 尼玛县| 海南省| 常德市| 桐柏县| 枞阳县| 峨眉山市| 萨嘎县| 永嘉县| 泰顺县| 吉隆县| 金秀| 南雄市| 双桥区| 黄大仙区| 调兵山市| 盐山县| 津南区| 祁阳县| 商丘市| 铜川市|