專利名稱:流分配的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及流分配。
背景技術(shù):
網(wǎng)絡(luò)使得計算機和其他設(shè)備進行通信變得可能。例如,網(wǎng)絡(luò)能傳送代表視頻、音頻、電子郵件等等的數(shù)據(jù)。典型地,通過網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)通過更小的消息即信息包進行傳送。通過類推,一個信息包很象是投入郵箱的一個信封。信息包通常包括有效荷載和標題。信息包的有效荷載好比是在信封內(nèi)的信件。信息包的標題很象是寫在信封上面的信息。標題能包括幫助網(wǎng)絡(luò)裝置適當處理信息包的信息。
一些網(wǎng)絡(luò)協(xié)議(例如“協(xié)議?!?合作來處理網(wǎng)絡(luò)通訊的復(fù)雜性。例如,傳輸協(xié)議如傳輸控制協(xié)議(TCP)向應(yīng)用提供簡單機制用于建立連接并通過網(wǎng)絡(luò)傳輸數(shù)據(jù)。對于應(yīng)用透明的是,TCP處理多種通訊問題例如數(shù)據(jù)重發(fā)、適應(yīng)網(wǎng)絡(luò)通信量擁擠等等。
為了提供這些服務(wù),TCP對信息包如段進行操作。一般地,TCP段(通過“封裝”)在較大的信息包例如網(wǎng)際協(xié)議(IP)數(shù)據(jù)報內(nèi)通過網(wǎng)絡(luò)傳輸。經(jīng)常地,IP數(shù)據(jù)報進一步被甚至更大的信息包例如以太網(wǎng)幀進行封裝。TCP段的有效荷載攜帶由應(yīng)用通過網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)流的一部分。接收器能通過重新裝配接收到的段來恢復(fù)原始的數(shù)據(jù)流。為了允許重新裝配以及將接收數(shù)據(jù)的肯定應(yīng)答(ACK)返回給發(fā)送者,TCP將每一個有效荷載字節(jié)和一個序列號相關(guān)聯(lián)。
每一個TCP連接的當前狀態(tài)被存儲在數(shù)據(jù)塊如傳輸控制塊(TCB)中。TCB包括例如下一個期望的序列號、上一次傳輸?shù)男蛄刑柕鹊鹊臄?shù)據(jù)。通常,連接的TCB被讀取并潛在地被接收和傳送的每一個TCP段更新。
發(fā)明內(nèi)容
一種方法,包括將網(wǎng)絡(luò)信息包流分配到集成在單獨芯片上的一組多個多線程處理器核心中的多線程處理器核心的線程;基于該分配,由分配的處理器核心線程來處理流中的信息包。
一種制造產(chǎn)品,包括指令,使得多核心處理器進行將網(wǎng)絡(luò)信息包流分配到集成在單獨芯片上的一組多個多線程處理器核心中的多線程處理器核心的線程;基于該分配,由分配的處理器核心線程來處理流中的信息包。
一種裝置,包括集成在單獨芯片上的多個多線程處理器核心;以及指令,指令使得多個多線程處理器核心中的至少一些來將傳輸控制協(xié)議/網(wǎng)際協(xié)議(TCP/IP)流分配到處理器核心的線程中的一個,以及基于該分配,由分配的處理器核心線程來處理流中的TCP段。
圖1是表示流分配的圖。
圖2A-2D是表示分配流的例子方案的操作的圖。
圖3-4是基于流分配的傳遞信息包的例子步驟的流程圖。
圖5是多核心處理器例子的圖。
圖6是網(wǎng)絡(luò)設(shè)備的圖。
具體實施例方式
如上所述,TCP(傳輸控制協(xié)議)實現(xiàn)通常為每一個正在進行的連接(“流”)保持狀態(tài)數(shù)據(jù)。這個狀態(tài)數(shù)據(jù)通常是由每一個處理的TCP段進行訪問。訪問該數(shù)據(jù)所使用的存儲操作能降低系統(tǒng)性能,因為它從存儲器讀寫狀態(tài)數(shù)據(jù)要花費時間。此外,在使用多處理核心來處理TCP段的系統(tǒng)中,當不同元件為訪問而競爭的時候,狀態(tài)數(shù)據(jù)能導致性能瓶頸。例如,屬于相同流的信息包可能被不同的核心處理,留下一個核心等待訪問流的狀態(tài)數(shù)據(jù)直到其他核心完成其處理。
圖1描述了一個方案的操作,它將信息包流分配給在核心102a-102n上執(zhí)行的不同線程。例如,如所示的,流“a”被分配給核心102a的線程“1”,而流“b”被分配給核心102n的線程“2”。屬于這些流的信息包由分配的核心102a-102n線程處理。例如,屬于流“a”的信息包104a和104c被核心102a的線程“1”處理,而信息包104b被分配的核心102n的線程“2”處理。通過在相同的核心/線程上處理屬于相同的流的信息包,能夠避免各種爭用和訪問延遲。例如,給定流的TCB可以存儲在本地核心存儲器中而不是被重復(fù)地從核心外部的存儲器中讀出或?qū)懭牒诵耐獠康拇鎯ζ鳌4送?,因為消除了對于給定流的TCB跨核心的爭用,所以能避免與鎖定相關(guān)聯(lián)的等待時間。
為了便于說明,圖1任意地標示了流“a”和“b”。實際上,能通過包括在IP標題和IP數(shù)據(jù)報的封裝的TCP標題中的元組數(shù)據(jù)來識別給定信息包的流。例如,能通過IP源和目的地址及源和目的端口的組合來識別流。元組可以被散列(例如通過CRC(循環(huán)冗余校驗)算法),以產(chǎn)生識別流的位序列(“流簽名”)。
圖2A-2D描述了進行流分配的多核心系統(tǒng)的實施例。在這個實施例中,核心102b-102n提供TCP線程池來處理TCP段。每一個TCP線程能獨立地處理TCP段。該處理能包括段重新裝配、流的TCP狀態(tài)機導航、生成ACK消息、管理傳輸窗口等等。
在這個實施例里,實現(xiàn)流分配的邏輯包括分配流給核心102b-102n的全局分類110指令,以及此后,將屬于這些流的信息包分發(fā)給分配的核心102b-102n。為了執(zhí)行這些操作,全局分類110指令訪問將流與給定的核心102b-102n相關(guān)聯(lián)的數(shù)據(jù)114。例如,在圖2A里,流“a”被分配給核心102b。除這個分配以外,數(shù)據(jù)114將給定的流與指示在該流中已經(jīng)調(diào)度了多少信息包用于由分配的核心處理的參考計數(shù)(“ref.count”)相關(guān)聯(lián)。數(shù)據(jù)114也將流與指示有多少這些調(diào)度的信息包已經(jīng)被處理完的“完成的”計數(shù)相關(guān)聯(lián)。如果處理完所有調(diào)度的信息包,則可以犧牲流的條目。例如,線程可能周期性地從流的“參考計數(shù)”中減去流的“完成的”計數(shù)。如果結(jié)果為0,則表示所有調(diào)度的信息包都被處理,可以從數(shù)據(jù)114中清除流數(shù)據(jù)。否則,“完成的”計數(shù)被清零并且存在的流的分配保持完整。
除了全局分類110邏輯以外,實施例特征在于具有在提供TCP線程的每個核心102b-102n上執(zhí)行的本地分類112b-112n指令。需要注意的是,112b-112n是每個核心102b-102n的相同本地分類邏輯的實例化。一旦全局分類110邏輯調(diào)度信息包用于由分配的核心102b處理,在那個核心102b上運行的本地分類112b-112n邏輯確定分配給流的特定線程。為了執(zhí)行這個任務(wù),本地分類器112b能訪問將流與給定的線程相關(guān)聯(lián)的本地數(shù)據(jù)116b。因此,全局110和本地分類112b邏輯路由數(shù)據(jù)報用于以增加的粒度來處理。也就是說,全局分類110邏輯能將數(shù)據(jù)報排隊送往分配的核心102b,而本地分類器112b將數(shù)據(jù)報排隊送往核心102b內(nèi)的特定的線程。
為了說明這些元件的示例操作,圖2B-2C描述了封裝TCP段的IP數(shù)據(jù)報104e的處理。如圖2B所示,在接收到數(shù)據(jù)報104e以后,全局分類110邏輯嘗試查找數(shù)據(jù)報的104d流簽名(“a”)。在這個例子里,查找流“a”成功,檢索分配的核心(“102b”),全局分類110邏輯將數(shù)據(jù)報104e排隊用于由分配的核心102b進行處理,并且增加流的參考計數(shù)以反映由核心102b處理的信息包104e的調(diào)度。雖然圖2B描述了排隊送往核心的實際信息包,但是全局分類110和本地分類112b邏輯可以對信息包參考/句柄進行操作以避免復(fù)制信息包數(shù)據(jù)。
如圖2C所示,在分配的核心102b上的本地分類器112b最后將數(shù)據(jù)報104e出隊并確定分配用來處理流的數(shù)據(jù)報的線程。該分配的線程接著對段執(zhí)行TCP處理。在它的操作中,線程可以使用本地核心存儲器來高速緩存來自于存儲器(未示出)的流的TCB副本。這個副本可以被TCP線程和用于當前信息包以及隨后接收到的流中的信息包的核心的其他線程來修改。如所示的,在完成對給定數(shù)據(jù)報的處理后,線程遞增流的“完成的”計數(shù)。
線程繼續(xù)將排隊數(shù)據(jù)報出隊并對其進行處理。最后,流的TCB被寫回到存儲器,例如,在線程的隊列已經(jīng)為空之后。因此,該實現(xiàn)確保流狀態(tài)數(shù)據(jù)保持在本地核心存儲器中用于“緊接著的”信息包(即,在線程結(jié)束流中先前的信息包的處理之前,調(diào)度信息包用于由線程處理),避免了對外部存儲器讀寫流的狀態(tài)數(shù)據(jù)的高代價。
在圖2B-2C中說明的方案假定了前面對于流“a”的分配。然而,經(jīng)常地,流可能沒有當前的分配。在這種情況下,全局分類110邏輯流查找信息包將失敗。在這一點上,全局分類110邏輯可能通過寫將流與分配的核心相關(guān)聯(lián)的數(shù)據(jù)114做出初始的流分配。可采用各種方法實現(xiàn)流的分配,以便跨核心使流負載平衡(例如,通過在核心中使用循環(huán)復(fù)用)或提供不同的服務(wù)質(zhì)量。在將流分配到給定的核心之后,選定的核心能夠分配可用的線程來處理流。
潛在的,如圖2D所示,執(zhí)行全局分類110邏輯的核心102a也可以提供TCP線程并執(zhí)行本地分類器112a。在這樣一個實現(xiàn)中,接收到的信息包可以被核心的100a本地分類器112a初步處理。如果本地分類器112a成功地識別向接收的信息包分配的線程n,則它將信息包排隊送往那個線程n。在本地分類器112a沒有成功地識別出分配的線程的情況下,全局分類器114接著執(zhí)行。例如,如所示的,假定流“a”仍然分配給核心102b的線程“n”,信息包104f將被核心102a的本地分類器112a初步處理。由于本地分類器102a將不會存儲對于信息包的104f流的本地線程分配,本地分類器102a將傳送信息包給全局分類器110。這里,處理順序?qū)⑴c圖2C所示的保持相同。也就是說,全局分類器110將信息包104f排隊用于由核心102b的本地分類器112b處理,本地分類器112b又排隊信息包104f用于由線程“n”處理。
在這樣的實現(xiàn)中,全局分類器110可以將線程分配給執(zhí)行全局分類器110的核心102a。在這種情況下,全局分類器110能夠通過更新由核心的102a本地分類器112a訪問的流/線程分配數(shù)據(jù)來將流分配到核心102a上的線程。然后全局分類器110能夠?qū)⑿畔抨犛糜谟杀镜胤诸惼?12a重新處理。
圖3說明一個全局分類處理的例子。如所示的,全局分類器執(zhí)行數(shù)據(jù)報的流簽名的查找152以確定154流先前是否已經(jīng)被分配給給定的核心和/或線程。如果沒有,則全局分類器將流分配158給核心和/或線程。然后將數(shù)據(jù)報排隊160用于由分配的核心和/或線程進行處理。
圖4說明一個本地分類過程的例子。如所示的,本地分類器嘗試確定166排隊的數(shù)據(jù)報流是否已經(jīng)被分配給執(zhí)行本地分類器的核心上的線程。如果已經(jīng)分配,則將數(shù)據(jù)報排隊170用于由那個線程進行處理。否則,流被分配168給核心上的可用的線程(例如,當前正執(zhí)行的線程)。
在圖2-4說明的方案中,處理給定的流中的段的TCP線程能夠在分配的核心的本地存儲器中保留流的TCB。而且,這能減少核心與訪問外部存儲器之間的訪問連接有關(guān)的等待時間。
在圖2-4中所示的實施例僅是舉例,其他的實施例可以在設(shè)計或操作上變化。例如,盡管在實施例中使用的數(shù)據(jù)114如所示是單片表,該數(shù)據(jù)可以存儲在單獨的表中以加快操作。例如,流簽名可以被單獨存儲以加快確定給定的流是否有當前分配。例如,至少一部分簽名能被存儲在內(nèi)容可尋址存儲器中(CAM),其中CAM“命中”快速識別有當前分配的流。同樣地,可單獨存儲由TCP線程遞增的“完成的”計數(shù),以減少在TCP線程和全局分類邏輯110之間的訪問連接。當單獨存儲時,不同的流數(shù)據(jù)可以通過表索引相關(guān)(例如,與流相關(guān)聯(lián)的數(shù)據(jù)被存儲在不同表中的相同的相應(yīng)位置)。
以上說明的技術(shù)的實施例可以在他們的粒度上變化。也就是說,系統(tǒng)可以僅將流分配到給定的核心并讓線程基于可用性對段進行操作,而不是將給定的流分配到特定的線程。進一步地,在其他的實施例里,線程特征在于具有全局線程ID,該ID能由全局分類邏輯用來直接將信息包出隊送往正確的線程而不是上述的兩部分方案。
上述技術(shù)可以在各種多核心設(shè)備上實施,例如在多核心中央處理器單元(CPU)或網(wǎng)絡(luò)處理器上。例如,圖5描述了網(wǎng)絡(luò)處理器200的一個例子。所示的網(wǎng)絡(luò)處理器200是Intel網(wǎng)際交換網(wǎng)絡(luò)處理器(IXP)。其他的網(wǎng)絡(luò)處理器特征在于具有不同的設(shè)計。
所示的網(wǎng)絡(luò)處理器200特征在于具有在單獨集成半導體芯片上的一組處理核心202。每個核心202可以是適合用于信息包處理的精簡指令集計算(RISC)處理器。例如,核心202可以不提供通常由通用處理器的指令集提供的浮點或整數(shù)除法指令。單獨核心202可以提供多線程執(zhí)行。例如,核心202可以存儲多程序計數(shù)器和不同線程的其他上下文數(shù)據(jù)。單獨核心202特征在于具有核心內(nèi)部的本地存儲器。單獨核心202特征還在于具有CAM。CAM也可以是由不同核心202共享的資源。
如所示地,網(wǎng)絡(luò)處理器200特征在于具有至少一個接口202,該接口能在處理器200和其他網(wǎng)絡(luò)組件之間傳遞信息包。例如,處理器200特征在于具有交換結(jié)構(gòu)接口202(例如,通用交換接口(CSIX)),該接口使得處理器200能夠?qū)⑿畔鼈魉偷竭B接到結(jié)構(gòu)的電路或其他的一個或多個處理器。處理器200特征在于具有接口202(例如,系統(tǒng)封包接口(SPI)接口),該接口使得處理器200能與物理層(PHY)和/或鏈路層設(shè)備(例如,MAC或者成幀器設(shè)備)通訊。處理器200也包括接口208(例如,外圍部件互連(PCI)總線接口),用于例如與主或其他網(wǎng)絡(luò)處理器通訊,。
如所示地,處理器200也包括由核心202共享的其他組件,例如散列核心、由核心共享的內(nèi)部高速暫時存儲器以及由核心共享的提供對外部存儲器訪問的存儲控制器206、212。網(wǎng)絡(luò)處理器200也包括附加處理器210(例如,StrongARMXscale或者IntelArchitecture(IA)core),該處理器經(jīng)常被編程來執(zhí)行包括在網(wǎng)絡(luò)操作中的“控制平面”任務(wù)。然而核心處理器210也可以處理“數(shù)據(jù)平面”任務(wù)。
核心202可以與其他核心202通過核心210或其他共享的資源(例如,外部存儲器或者高速暫時存儲器)進行通訊。核心202也可以通過直接連線到相鄰一個或多個核心204的臨近寄存器進行通訊。
網(wǎng)絡(luò)處理器200的特征可用于以各種方式實現(xiàn)流分配。例如,與每一個核心202相關(guān)聯(lián)的CAM可用來存儲由本地分類器使用的分配數(shù)據(jù)。例如,CAM的第一N-條目可以存儲分配給不同核心線程的N-流的簽名。在這樣一個實施例里,CAM條目的序號識別分配的線程(例如,存儲在第二CAM條目中的流簽名識別分配給流的第二核心線程)。
CAM也可以被全局分類器使用。例如,執(zhí)行全局分類器的核心的CAM的最后M-條目可用來存儲當前分配的流的流簽名的子集(例如,在圖2A-2C中的數(shù)據(jù)114的簽名列),以加快初始的簽名查找。因為一個或多個CAM可能沒有足夠的空間用于分配的流的所有簽名,所以剩下的流簽名和相應(yīng)的分配數(shù)據(jù)可以存儲在芯片外(比如,在SRAM中)。因此,CAM未找到簽名會導致全局分類器為了匹配而對剩下簽名的存儲器執(zhí)行隨后的查詢。
所示的網(wǎng)絡(luò)處理器200特征在于具有各種機制,各種機制能用于在不同的核心202之中路由信息包。例如,經(jīng)由連接臨近核心的下一個臨近寄存器或者經(jīng)由在存儲器(例如,在高速暫時存儲器或在SRAM)中實現(xiàn)的隊列可將信息包排隊用于由分配的核心處理。類似地,特定線程的隊列也能在本地核心存儲器、高速暫時存儲器、SRAM等中實現(xiàn)。潛在地,可以對核心202編程以實現(xiàn)信息包處理管道,其中對一個或多個核心線程起作用的線程執(zhí)行以太網(wǎng)操作(例如,以太網(wǎng)接收、以太網(wǎng)去封裝)、IPv4和/或者IPv6操作(例如驗證),并且在一個或多個核心上的線程處理這種TCP操作。其他線程也可以實現(xiàn)對結(jié)果數(shù)據(jù)流的應(yīng)用操作。
圖6描述使用上述技術(shù)處理信息包的網(wǎng)絡(luò)設(shè)備。如所示的,設(shè)備特征在于具有通過交換結(jié)構(gòu)310(例如,縱橫或者共享的存儲交換結(jié)構(gòu))互連的線路卡300(“刀片”)的集合。例如,交換結(jié)構(gòu)可以遵照CSIX或者其他的交換技術(shù)例如HyperTransport、Infiniband、PCI、Packet-Over-SONET、RapidIO和/或UTOPIA(ATM的通用測試和操作物理層接口)。
單獨的線路卡(例如,300a)可以包括處理網(wǎng)絡(luò)連接上的通訊的一個或多個物理層(PHY)設(shè)備302(例如,光纖、電纜和無線物理層)。PHY在不同的網(wǎng)絡(luò)媒體傳送的物理信號和數(shù)字系統(tǒng)使用的比特(例如,“0”和“1”)之間進行轉(zhuǎn)換。線路卡300也可以包括成幀器設(shè)備(例如,以太網(wǎng)、同步光纖網(wǎng)(SONET)、高級數(shù)據(jù)鏈路(HDLC)成幀器或者其他的“第2層”設(shè)備)304,該設(shè)備可以對幀執(zhí)行例如錯誤檢測和/或校正操作。所示的線路卡300也可以包括一個或多個網(wǎng)絡(luò)處理器306,其為經(jīng)由一個或多個PHY 302接收的信息包執(zhí)行信息包處理操作并經(jīng)由交換結(jié)構(gòu)310直接投送信息包到提供出口接口以轉(zhuǎn)發(fā)信息包的線路卡。潛在地,網(wǎng)絡(luò)處理器306也能代替成幀器設(shè)備304執(zhí)行“第2層”職責。
雖然圖5和圖6描述了網(wǎng)絡(luò)處理器和結(jié)合網(wǎng)絡(luò)處理器的設(shè)備的特定例子,但是可以用不同的結(jié)構(gòu)實現(xiàn)技術(shù),該結(jié)構(gòu)包括與那些所示的具有不同設(shè)計的處理器和設(shè)備。例如,技術(shù)可以使用在多核心TCP卸載引擎(TOE)上。這樣的TOE可以集成在IP存儲節(jié)點上,應(yīng)用(“第7層”)負載平衡器或其他的設(shè)備中。
此外,技術(shù)可以用來處理其他的傳輸層協(xié)議、在網(wǎng)絡(luò)協(xié)議棧內(nèi)的其他層的協(xié)議、除了TCP和IP的協(xié)議并用來處理其他的協(xié)議數(shù)據(jù)單元。例如,技術(shù)可以用來處理其他的面向連接的協(xié)議例如異步傳輸模式(ATM)信息包(“單元”)或者用戶數(shù)據(jù)報協(xié)議(UDP)信息包。此外,術(shù)語IP包括IPv4和IPv6的IP實現(xiàn)。
這里所用的術(shù)語電路包括硬連線電路、數(shù)字電路、模擬電路、可編程電路等等。可編程電路可對設(shè)置在制造產(chǎn)品(例如,一個非易失性存儲器例如只讀存儲器)上的可執(zhí)行指令操作。
其他的具體實施例都在下面的權(quán)利要求的范圍內(nèi)。
權(quán)利要求
1.一種方法,包括將網(wǎng)絡(luò)信息包流分配到集成在單獨芯片上的一組多個多線程處理器核心中的多線程處理器核心的線程;基于該分配,由分配的處理器核心線程來處理所述流中的信息包。
2.如權(quán)利要求1所述的方法,其中所述信息包包括網(wǎng)際協(xié)議信息包,所述網(wǎng)際協(xié)議信息包包含傳輸控制協(xié)議段。
3.如權(quán)利要求2所述的方法,其中所述流包括至少要由信息包的網(wǎng)際協(xié)議源地址、網(wǎng)際協(xié)議目的地址、傳輸控制協(xié)議段源端口以及傳輸控制協(xié)議段目的端口來識別的流。
4.如權(quán)利要求1所述的方法,進一步包括確定已經(jīng)被調(diào)度要由核心線程處理的所述流中的每一個信息包是否已經(jīng)被處理。
5.如權(quán)利要求1所述的方法,進一步包括將與所述流相關(guān)聯(lián)的數(shù)據(jù)讀到與處理器核心相關(guān)聯(lián)的本地存儲器中。
6.如權(quán)利要求5所述的方法,其中所述數(shù)據(jù)包括傳輸控制協(xié)議(TCP)連接的傳輸控制塊(TCB)。
7.如權(quán)利要求1所述的方法,進一步包括在第一處理器核心確定分配給所述流的處理器核心;在所分配的處理器核心確定分配給所述流的一組線程中的一個。
8.一種制造產(chǎn)品,包括指令,使得多核心處理器進行將網(wǎng)絡(luò)信息包流分配到集成在單獨芯片上的一組多個多線程處理器核心中的多線程處理器核心的線程;基于該分配,由分配的處理器核心線程來處理所述流中的信息包。
9.如權(quán)利要求8所述的產(chǎn)品,其中信息包包括網(wǎng)際協(xié)議信息包,所述網(wǎng)際協(xié)議信息包包含傳輸控制協(xié)議段。
10.如權(quán)利要求8所述的產(chǎn)品,進一步包括指令以確定已經(jīng)被調(diào)度要由核心線程處理的所述流中的每一個信息包是否已經(jīng)被處理。
11.如權(quán)利要求8所述的產(chǎn)品,進一步包括將與所述流相關(guān)聯(lián)的數(shù)據(jù)讀到與處理器核心相關(guān)聯(lián)的本地存儲器中。
12.如權(quán)利要求11所述的產(chǎn)品,其中所述數(shù)據(jù)包括傳輸控制協(xié)議(TCP)連接的傳輸控制塊(TCB)。
13.如權(quán)利要求8所述的產(chǎn)品,進一步包括指令來在第一處理器核心確定分配給所述流的處理器核心;在所分配的處理器核心確定分配給所述流的一組線程中的一個。
14.一種裝置,包括集成在單獨芯片上的多個多線程處理器核心;以及指令,所述指令使得所述多個多線程處理器核心中的至少一些來將傳輸控制協(xié)議/網(wǎng)際協(xié)議(TCP/IP)流分配到處理器核心的線程中的一個;以及基于該分配,由分配的處理器核心線程來處理所述流中的TCP段。
15.如權(quán)利要求14所述的裝置,其中所述處理器包括至少一個內(nèi)容可存址存儲器;以及其中將所述TCP/IP流分配到所述線程中的一個的指令包括將流標識符寫入至少一個內(nèi)容可尋址存儲器的指令。
全文摘要
一般來說,在一方面,本公開描述了將網(wǎng)絡(luò)信息包流分配到集成在單獨芯片上的一組多個多線程處理器核心中的多線程處理器核心的線程?;谠摲峙?,流中的信息包由分配的處理器核心線程處理。
文檔編號G06F9/46GK1801775SQ20051010738
公開日2006年7月12日 申請日期2005年12月12日 優(yōu)先權(quán)日2004年12月13日
發(fā)明者A·霍巴爾, Y·李 申請人:英特爾公司