亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

網(wǎng)絡(luò)接口技術(shù)的制作方法

文檔序號:7975679閱讀:148來源:國知局
專利名稱:網(wǎng)絡(luò)接口技術(shù)的制作方法
網(wǎng)絡(luò)接口技術(shù)技術(shù)領(lǐng)域這里公開的主題涉及實(shí)現(xiàn)網(wǎng)絡(luò)接口的技術(shù), 背景技術(shù)在通信系統(tǒng)中使用的協(xié)議在不斷發(fā)展.網(wǎng)絡(luò)接口具有傳送信號到 網(wǎng)絡(luò)并從網(wǎng)絡(luò)接收信號的能力。所期望的是,提供具有靈活性的網(wǎng) 絡(luò)接口,其至少被修改來支持發(fā)展的協(xié)議。附困說明在附圖
中通過舉例而不是通過限制來說明本發(fā)明的實(shí)施例,其中 相似的參考標(biāo)記指代近似的元件。困l描述了根據(jù)本發(fā)明的一些實(shí)施例的示例系統(tǒng)實(shí)施例。困2和圖3描述了可在本發(fā)明的一些實(shí)施例中至少用來提供網(wǎng)絡(luò) 接口與一個(gè)或多個(gè)目標(biāo)核之間的通信的示例元件,圖4描述了可在本發(fā)明的一些實(shí)施例中使用的示例元件。圖5描述了可在本發(fā)明的一些實(shí)施例中用來支持通過多個(gè)目標(biāo)核 來處理網(wǎng)絡(luò)協(xié)議單元的示例元件。困6描述了可在本發(fā)明的一些實(shí)施例中使用的示例過程.具體實(shí)施方式
說明書中對"一個(gè)實(shí)施例"或"一實(shí)施例"的引用意味著按照該 實(shí)施例的特定特征、結(jié)構(gòu)或特性包括在本發(fā)明的至少一個(gè)實(shí)施例 中。因此,在說明書中各種場合出現(xiàn)短語"在一個(gè)實(shí)施例中"或"一 實(shí)施例"不是必然都指代相同的實(shí)施例。此外,特定特征、結(jié)構(gòu)或 特性可組合在一個(gè)或多個(gè)實(shí)施例中。網(wǎng)絡(luò)接口設(shè)備的發(fā)展需求可要求網(wǎng)絡(luò)接口設(shè)備的可編程性或者 用另一滿足該需求的設(shè)備來代替該設(shè)備.新的能力可用軟件來實(shí) 現(xiàn),但在特定的情況下優(yōu)選的是,比如用傳統(tǒng)驅(qū)動(dòng)程序或虛擬化來 使設(shè)備驅(qū)動(dòng)程序的變化最小。當(dāng)前的竟?fàn)帀毫Π▽f(xié)議特定的優(yōu)化添加到高速網(wǎng)絡(luò)接口,比如傳輸控制協(xié)議(TCP)首部/有效負(fù)栽 分開以及TCP分段卸栽.優(yōu)化通常使網(wǎng)絡(luò)接口理解分組首部格式和大 小。多數(shù)典型協(xié)議首部的知識通常硬布線在網(wǎng)絡(luò)接口中,并且在任 何一個(gè)產(chǎn)品上只支持有限數(shù)重的協(xié)議。對于網(wǎng)絡(luò)接口所期望的是, 至少要足夠的靈活以至于能夠被修改用來支持發(fā)展的協(xié)議,同時(shí)最 小化設(shè)備驅(qū)動(dòng)程序的變化,困1描述在計(jì)算機(jī)系統(tǒng)100,其是可使用本發(fā)明的一些實(shí)施例的合 適系統(tǒng).計(jì)算機(jī)系統(tǒng)100可包括主機(jī)系統(tǒng)102、總線116、和網(wǎng)絡(luò)部件 118,主機(jī)系統(tǒng)102可包括芯片組105、處理器110-0到110-N、主機(jī)存儲(chǔ) 器112、和存儲(chǔ)裝置114,芯片組105可在處理器110-0到110-N、主機(jī) 存儲(chǔ)器112、存儲(chǔ)裝置114、總線116以及圖形適配器之間提供互連, 圖形適配器可用于傳輸圖形和信息以便在顯示設(shè)備(未示出)上顯 示。例如,芯片組105可包括存儲(chǔ)適配器(未示出),其能夠提供與 存儲(chǔ)裝置114的相互通信。例如,存儲(chǔ)設(shè)配器能夠連從至少下面任何 的協(xié)議來與存儲(chǔ)裝置114通信小型計(jì)算機(jī)系統(tǒng)接口 (SCSI)、光纖 信道(FC)、和/或串行高級技術(shù)配件(S-ATA),在一些實(shí)施例中,芯片組105可包括數(shù)據(jù)搬運(yùn)器邏輯(未示出), 其能夠執(zhí)行在主機(jī)系統(tǒng)102內(nèi)或在主機(jī)系統(tǒng)102和網(wǎng)絡(luò)部件108之間 的信息傳輸。如這里所使用的,"數(shù)據(jù)搬運(yùn)器"是指用于將數(shù)據(jù)從 源移動(dòng)到目的的模塊,而不使用比如處理器110-0到110-N的主機(jī)處 理器的核心處理模塊,否則就不使用處理器的循環(huán)來執(zhí)行數(shù)據(jù)復(fù)制 或移動(dòng)搮作.通過使用用于數(shù)據(jù)傳輸?shù)臄?shù)據(jù)搬運(yùn)器,處理器從執(zhí)行 數(shù)據(jù)移動(dòng)的開銷中解放出來,所述開銷可能導(dǎo)致主機(jī)處理器以慢很 多的速度運(yùn)行.數(shù)據(jù)搬運(yùn)器可例如包括直接存儲(chǔ)器訪問(DMA)引擎. 在一些實(shí)施例中,數(shù)據(jù)搬運(yùn)器可被實(shí)現(xiàn)為任何處理器110-0到110-N 的一部分,盡管計(jì)算機(jī)系統(tǒng)100的其它部件可包括數(shù)據(jù)搬運(yùn)器。在一 些實(shí)施例中,數(shù)據(jù)搬運(yùn)器可實(shí)現(xiàn)為芯片組105的一部分.任何處理器110-0到110-N可被實(shí)現(xiàn)為復(fù)雜指令集計(jì)算機(jī)(CISC) 或簡化指令集計(jì)算機(jī)(RISC)處理器、硬件線程、或任何其它微處 理器或中央處理單元。主存儲(chǔ)器112可實(shí)現(xiàn)為易失性存儲(chǔ)裝置,比如 但不限于隨機(jī)訪問存儲(chǔ)器(RAM)、動(dòng)態(tài)隨機(jī)訪問存儲(chǔ)器(DRAM)、 或靜態(tài)RAM ( SRAM).存儲(chǔ)裝置114可實(shí)現(xiàn)為非易失性存儲(chǔ)設(shè)備,比 如但不限于磁盤驅(qū)動(dòng)器、光盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器、內(nèi)部存儲(chǔ)設(shè)備、 所附的存儲(chǔ)設(shè)備、閃速存儲(chǔ)器、電池備份的同步DRAM (SDRAM)、和 /或可訪問網(wǎng)絡(luò)的存儲(chǔ)設(shè)備,總線116可提供至少主機(jī)系統(tǒng)102和網(wǎng)絡(luò)部件118以及其它外圍設(shè) 備(未示出)之間的互連??偩€116可支持串行或并行通信??偩€116 可支持點(diǎn)到點(diǎn)或點(diǎn)到多點(diǎn)的通信??偩€116可至少與以下內(nèi)容兼容 例如于2004年2月2日在從美國,俄勒岡,波特蘭外圍部件互連(PCI) 專門興趣小組可得到的外圍部件互連(PCI)本地總線規(guī)范,修訂本 3. O(及其修訂)中描述的外圍部件互連(PCI );在PCI興趣小組的 PCI Express基礎(chǔ)規(guī)范,修訂本1.0a (及其修訂)中描述的PCI Express;從前述的美國,俄勒岡,波特蘭PCI專門興趣小組可得到 的PCI-X規(guī)范Rev. 1. 1 , 2005年3月28日中描述的PCI-x;和/或通用 串行總線(USB)(和有關(guān)標(biāo)準(zhǔn))以及其它互連標(biāo)準(zhǔn)。網(wǎng)絡(luò)部件118能夠連從至少任何應(yīng)用協(xié)議來提供主機(jī)系統(tǒng)102和 網(wǎng)絡(luò)120之間的相互通信.網(wǎng)絡(luò)部件108可利用總線116與主機(jī)系統(tǒng) 102相互通信。在一個(gè)實(shí)施例中,網(wǎng)絡(luò)部件118可集成到芯片組105 中。"網(wǎng)絡(luò)部件"可包括在I/0 (輸入/輸出)子系統(tǒng)上可處理一個(gè)或多個(gè)要經(jīng)過網(wǎng)絡(luò)發(fā)送和/或接收的分組的數(shù)字和/或模擬硬件和/ 或軟件的任何組合。在一個(gè)實(shí)施例中I/0子系統(tǒng)可例如包括網(wǎng)絡(luò)部件卡(NIC),并且網(wǎng)絡(luò)部件可例如包括用于網(wǎng)絡(luò)協(xié)議的開放系統(tǒng)互連 (OSI)模型中定義的數(shù)據(jù)鏈路層的MAC (多媒體訪問控制).OSI模 型由位于1 rue de Varemb《Case postale 56 CH-1211 Geneva 20, Switzerland的 國際標(biāo)準(zhǔn)化組織(ISO)定義。網(wǎng)絡(luò)120可以是任何網(wǎng)絡(luò),比如互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)、局域網(wǎng)(LAN)、 存儲(chǔ)區(qū)域網(wǎng)(SAN)、廣域網(wǎng)(WAN)或無線網(wǎng)絡(luò)。網(wǎng)絡(luò)120可利用以 太網(wǎng)系標(biāo)準(zhǔn)(在IEEB 802. 3和有關(guān)的標(biāo)準(zhǔn)中描述)或任何通信標(biāo)準(zhǔn) 與網(wǎng)絡(luò)部件118交換網(wǎng)絡(luò)協(xié)議單元。如這里所使用的,"網(wǎng)絡(luò)協(xié)議單 元"可包括具有根據(jù)任何協(xié)議規(guī)范所形成的首部和有效負(fù)栽部分的 分組或幀或其它形式的信息。一些實(shí)施例提供技術(shù)利用與網(wǎng)絡(luò)接口通信耦合的通用核或硬件 線程來實(shí)現(xiàn)網(wǎng)絡(luò)接口。網(wǎng)絡(luò)接口和通用核或硬件線程的組合對于其
它核或硬件線程呈現(xiàn)為單個(gè)網(wǎng)絡(luò)接口.與網(wǎng)絡(luò)接口關(guān)聯(lián)的通用核或 硬件線程可向一個(gè)或多個(gè)其它目標(biāo)核或目標(biāo)硬件線程發(fā)出處理器間 中斷(IPI)。當(dāng)IPI是設(shè)備中斷時(shí),目標(biāo)核或目標(biāo)硬件線程可處理 IPI'困2描述了在本發(fā)明的一些實(shí)施例中使用的示例元件.中心核204 可以是通用核,其足夠靈活以至于執(zhí)行輸入/輸出流上的多種任務(wù), 在一些實(shí)施例中,中心核204可以是通用核和/或硬件線程,通用核 可以是包含單組物理執(zhí)行單元的單個(gè)處理分組.比如在雙核或多核 環(huán)境中,核可與更多的核共享印模.利用通用核可允許網(wǎng)絡(luò)接口206 能夠至少利用軟件被修改,在一些實(shí)施例中,多個(gè)網(wǎng)絡(luò)接口可以通 信耦合到一個(gè)或多個(gè)中心核。多個(gè)網(wǎng)絡(luò)接口對于其它邏輯呈現(xiàn)為單 個(gè)邏輯網(wǎng)絡(luò)接口。硬件線程(也稱為邏輯核)可以是物理核的執(zhí)行 單元組的邏輯實(shí)例.操作系統(tǒng)將硬件線程看作為物理核.每個(gè)硬件 線程可一次處理單個(gè)執(zhí)行的線程(軟件線程).多個(gè)硬件線程因此 允許多個(gè)軟件線程以重疊方式共享(物理)核。為了允許這種共享, 核可能復(fù)制每個(gè)線程的獨(dú)立狀態(tài),包括寄存器組、程序計(jì)數(shù)器、和 頁表。在一些實(shí)施例中,盡管不需要任何實(shí)施例的特征,但是利用通用 核或硬件線程可擴(kuò)展網(wǎng)絡(luò)接口的功能以便形成新的邏輯設(shè)備.在一 些實(shí)施例中,盡管不需要任何實(shí)施例的特征,但是目標(biāo)核可將該邏 輯設(shè)備考慮為硬件,因?yàn)槟繕?biāo)核不能辨別IPI和設(shè)備中斷。在一些實(shí)施例中,中心核204可利用PCI、 PIC-X或PCI Express 兼容總線與網(wǎng)絡(luò)接口 206通信耦合,盡管可使用其它的技術(shù)。網(wǎng)絡(luò)接 口 206可至少利用中斷、消息信令中斷、或輪詢來與中心核204通信。在一些實(shí)施例中,中心核204可執(zhí)行任務(wù),諸如但不限于響應(yīng) 于從網(wǎng)絡(luò)接口 206接收中斷而執(zhí)行中斷服務(wù)例程;從初級描述符環(huán)讀 取描述符;執(zhí)行任何用戶提供的代碼,所述代碼可修改或分類輸入 的網(wǎng)絡(luò)協(xié)議單元;執(zhí)行任何用戶指定的與網(wǎng)絡(luò)有關(guān)的採作;基于用 戶指定的分類來分配目標(biāo)核及其次級描述符環(huán);從初級描述符環(huán)復(fù) 制描述符到適當(dāng)?shù)拇渭壝枋龇h(huán);和/或從初級描述符環(huán)移除描述 符。初級和次級描述符環(huán)可用來管理由一個(gè)或多個(gè)目標(biāo)核接收的網(wǎng) 絡(luò)協(xié)議單元的處理。
在一些實(shí)施例中,網(wǎng)絡(luò)接口 206可執(zhí)行任務(wù),諸如但不限于從 物理鏈路接收網(wǎng)絡(luò)協(xié)議單元;經(jīng)由數(shù)據(jù)搬運(yùn)器的傳輸將所接收的網(wǎng) 絡(luò)協(xié)議單元的部分復(fù)制到主存儲(chǔ)器中;和/或向中心核204喚起中 斷.響應(yīng)于網(wǎng)絡(luò)接口 206接收網(wǎng)絡(luò)協(xié)議單元,網(wǎng)絡(luò)接口 206將向中心核 204提供中斷,但是,可由于其它原因提供從網(wǎng)絡(luò)接口 206到中心核 204的中斷.在一些實(shí)施例中,響應(yīng)于中斷,中心核204可利用處理 器間中斷(IPI)提供中斷給目標(biāo)核(或硬件線程),以請求處理所 接收的網(wǎng)絡(luò)協(xié)議單元的部分。由中心核204執(zhí)行的操作系統(tǒng)(OS)部 分可編程用于利用一個(gè)或多個(gè)IPI來中斷多個(gè)核或硬件線程的組 合。接收IPI的核或線程可諸如通過調(diào)用中斷句柄將IPI作為設(shè)備中斷來對待,目標(biāo)核(或線程)可基于其對i/o通信重的判斷來選擇丟棄、重定向、或合并中斷.一個(gè)或多個(gè)目標(biāo)核可執(zhí)行通常由中心核執(zhí)行的協(xié)議處理任務(wù),包 括但不限于(l)數(shù)據(jù)鏈路、網(wǎng)絡(luò)和傳榆層協(xié)議處理、包括但不限 于(a)確定哪些協(xié)議由網(wǎng)絡(luò)協(xié)議單元使用,(b)確定網(wǎng)絡(luò)協(xié)議 單元是否遵守協(xié)議規(guī)范,(c)跟蹤網(wǎng)絡(luò)傳送(例如更新TCP序列號) 的狀態(tài),(d)將響應(yīng)傳送給網(wǎng)絡(luò)協(xié)議單元的發(fā)射器(例如發(fā)送TCP 確認(rèn)),和/或(e)排列包含在網(wǎng)絡(luò)協(xié)議單元中的數(shù)據(jù)(例如重組 TCP分組中的數(shù)據(jù));(2)安排等待來自網(wǎng)絡(luò)的數(shù)據(jù)的應(yīng)用的操作; (3)將網(wǎng)絡(luò)協(xié)議單元路由到另一位置;(4)過濾不想要的網(wǎng)絡(luò)協(xié) 議單元,和/或(5) —旦處理完成,就為其它使用釋放存儲(chǔ)網(wǎng)絡(luò)協(xié)議 單元的存儲(chǔ)器。在一些實(shí)施例中,利用IPI作為設(shè)備中斷會(huì)使中心核子204自由地 為網(wǎng)絡(luò)接口 206實(shí)現(xiàn)新的功能,同時(shí)降低目標(biāo)核的設(shè)備驅(qū)動(dòng)程序的中 斷服務(wù)例程的變化。因?yàn)樵O(shè)備驅(qū)動(dòng)程序通常被裝備用來使用ISR,所 以可以使用IPI來模擬ISR會(huì)更方便,至少可降低設(shè)備驅(qū)動(dòng)程序的中 斷服務(wù)例程的變化(例如,重新編碼的努力),因?yàn)槠湟呀?jīng)被無縫 地修改來服務(wù)IPI以及設(shè)備中斷。在一些實(shí)施例中,中心核204和網(wǎng)絡(luò)接口 206的組合允許網(wǎng)絡(luò)接口 資源對于系統(tǒng)資源可用,反之亦然。例如,目標(biāo)核可通過訪問組合 所使用的主存儲(chǔ)器來完全訪問網(wǎng)絡(luò)接口資源。中心核204和網(wǎng)絡(luò)接口 206的組合不僅可允許完全訪問網(wǎng)絡(luò)接口資源,而且還允許可擴(kuò)展性 (達(dá)到由系統(tǒng)和平臺所定的限制,而不受網(wǎng)絡(luò)接口 206任何實(shí)現(xiàn)的限 制),可擴(kuò)展性可以是將新的特征添加到現(xiàn)有程序同時(shí)使現(xiàn)有代碼 的損壞或變化最小的能力,例如,通過僅將描述符復(fù)制到目標(biāo)核而 不復(fù)制有效負(fù)栽到目標(biāo)核,就可實(shí)現(xiàn)可擴(kuò)展性.網(wǎng)絡(luò)接口 206的現(xiàn)用 實(shí)現(xiàn)對于其它部件呈現(xiàn)為完全可編程的、資源豐富的網(wǎng)絡(luò)接口,困3描述了可在本發(fā)明的一些實(shí)施例中至少用來提供網(wǎng)絡(luò)接口與 目標(biāo)核(或硬件線程)之間的通信的示例元件。 一個(gè)或多個(gè)網(wǎng)絡(luò)接 口可生成對底層驅(qū)動(dòng)程序接口 (I/F)的中斷.底層驅(qū)動(dòng)程序接口接 收來自以一個(gè)或多個(gè)網(wǎng)絡(luò)接口的中斷并提供至少描述所接收網(wǎng)絡(luò)協(xié) 議單元在主存儲(chǔ)器中的存儲(chǔ)位置的描述符.用戶添加的功能(UAF) 級302從底層驅(qū)動(dòng)程序接口接收描述符。UAF302可確定哪個(gè)目標(biāo)核 (或目標(biāo)硬件線程)將接收IPI并且哪個(gè)次級描述符環(huán)將接收與所接 收的網(wǎng)絡(luò)協(xié)議單元關(guān)聯(lián)的描述符。UAF302可將輸入的網(wǎng)絡(luò)流定向到 適當(dāng)?shù)暮嘶蛴布€程以便處理。IPI邏輯304可基于來自UAF302的判 斷為適當(dāng)?shù)挠布€程或目標(biāo)核生成IPI.例如,UAF302可判斷哪個(gè)次 級環(huán)和關(guān)聯(lián)的目標(biāo)核接收每個(gè)描述符,并且IPI邏輯304可請求將每 個(gè)描述符復(fù)制到適當(dāng)次級環(huán)。在一些實(shí)施例,使用UAF302允許較高 層中的功能可更好地被優(yōu)化,由此,可達(dá)到IPI到正確目標(biāo)核的智能 定向.通信耦合到網(wǎng)絡(luò)接口的通用核(比如但不限于中心核204 )可 執(zhí)行任何的底層驅(qū)動(dòng)程序接口、 UAF302和IPI邏輯304。目標(biāo)核或硬件線程可執(zhí)行模擬的網(wǎng)絡(luò)接口 ISR306。模擬的網(wǎng)絡(luò)接 口 ISR306可響應(yīng)于從與一個(gè)或多個(gè)網(wǎng)絡(luò)接口關(guān)聯(lián)的中心核或線程接 收到IPI而操作,例如,模擬的網(wǎng)絡(luò)接口ISR306可將來自中心核的IPI 看待為中斷請求。例如,模擬的網(wǎng)絡(luò)接口ISR306可將IPI看待為中斷 請求。所有設(shè)備的中斷請求可映射到中斷矢量。每個(gè)矢量可被分配 給調(diào)用中斷服務(wù)例程(ISR)的函數(shù)以處理該中斷請求.在一些實(shí)施例中,為了允許設(shè)備驅(qū)動(dòng)程序的ISR處理來自另一個(gè) 核的IPI,設(shè)備中斷請求可被分配以識別邏輯設(shè)備,并且設(shè)備驅(qū)動(dòng)程 序?yàn)檫@個(gè)中斷請求動(dòng)態(tài)地分配ISR.因此,至少兩種中斷及其相應(yīng)的 ISR可在功能上等同于原始設(shè)備中斷及其ISR,但是IPI現(xiàn)在可作為代 理來觸發(fā)數(shù)據(jù)處理以代替原始設(shè)備中斷。
例如,模擬的網(wǎng)絡(luò)接口ISR306可響應(yīng)于從與一個(gè)或多個(gè)網(wǎng)絡(luò)接口 關(guān)聯(lián)的中心核或線程接收IPI,來執(zhí)行中斷服務(wù)例程以處理描述符。 IPI邏輯304可請求將描述符復(fù)制到次級環(huán)中,但是,可響應(yīng)于接收 IPI來執(zhí)行其它搮作,模擬的網(wǎng)絡(luò)接口ISR306可處理描述符,就如同 其來自網(wǎng)絡(luò)接口一樣。模擬的網(wǎng)絡(luò)接口ISR306可提供描述符和數(shù)據(jù) 給上層驅(qū)動(dòng)程序接口 (I/F)。上層驅(qū)動(dòng)程序接口可以相同的方式處 理描述,就如同其直接來自網(wǎng)絡(luò)接口一樣。上層驅(qū)動(dòng)程序接口可以 是到虛擬機(jī)遷移(VMM)邏輯或操作系統(tǒng)(OS)或其它邏輯的接口。 目標(biāo)核和線程可執(zhí)行一個(gè)或多個(gè)應(yīng)用(如"A卯s"所示)。例如,應(yīng)用可利用在一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議單元中接收的數(shù)據(jù).圖4描述了可在本發(fā)明的一些實(shí)施例中使用的示例元件,用于管理所接收的網(wǎng)絡(luò)協(xié)議單元的處理.每個(gè)目標(biāo)核(或硬件線程)可使 用次級描述符環(huán),所述每個(gè)目標(biāo)核能夠從與網(wǎng)絡(luò)接口關(guān)聯(lián)的中心核 (或硬件線程)接收IPI。由與網(wǎng)絡(luò)接口關(guān)聯(lián)的中心核(或硬件線程) 執(zhí)行的邏輯可為次級描述符環(huán)提供對于初級描述符環(huán)公共的一個(gè)或 多個(gè)描述符.次級描述符環(huán)可存儲(chǔ)要由關(guān)聯(lián)的目標(biāo)核處理的描述 符.與每個(gè)目標(biāo)核(或硬件線程)關(guān)聯(lián)的存儲(chǔ)器可存儲(chǔ)關(guān)聯(lián)的次級描 述符環(huán).與網(wǎng)絡(luò)接口關(guān)聯(lián)的中心核(或硬件線程)可管理將描述符 存儲(chǔ)在每個(gè)次級描述符環(huán)中。來自所接收的網(wǎng)絡(luò)協(xié)議單元的數(shù)據(jù)可 存儲(chǔ)在網(wǎng)絡(luò)接口可訪問的主存儲(chǔ)器中.目標(biāo)核可從與網(wǎng)絡(luò)接口關(guān)聯(lián) 的中心核接收IPI,并作為響應(yīng),從關(guān)聯(lián)的次級描述符環(huán)讀取指定的 描述符.基于在關(guān)聯(lián)的次級描述符環(huán)中的描述符,目標(biāo)核可將數(shù)據(jù) 復(fù)制到與目標(biāo)核關(guān)聯(lián)的存儲(chǔ)器中并訪問該數(shù)據(jù).圖5描述了可在本發(fā)明的一些實(shí)施例中用來支持通過多個(gè)目標(biāo)核 或硬件線程來處理所接收的網(wǎng)絡(luò)協(xié)議單元的示例元件.由網(wǎng)絡(luò)接口 接收的流可被分配以便由一個(gè)或多個(gè)目標(biāo)核或硬件線程來處理.為 了分配所接收的網(wǎng)絡(luò)協(xié)議單元以便由目標(biāo)核來處理, 一部分所接收 的網(wǎng)絡(luò)協(xié)議單元可存儲(chǔ)在與目標(biāo)核關(guān)聯(lián)的存儲(chǔ)器隊(duì)列(或區(qū)域)中, 與網(wǎng)絡(luò)接口關(guān)聯(lián)的中心核(或硬件線程)可判斷在存儲(chǔ)器隊(duì)列之間 如何分配所接收的網(wǎng)絡(luò)協(xié)議單元,以便在目標(biāo)核之間分配所接收的 網(wǎng)絡(luò)協(xié)議單元的處理,例如,接收方擴(kuò)展技術(shù)可用來在目標(biāo)核之間 分配網(wǎng)絡(luò)協(xié)議單元以便處理.接收方擴(kuò)展例如參考來自徵軟的網(wǎng)絡(luò)驅(qū)動(dòng)程序接口規(guī)范(NDIS) 6.0 ( 2005 )來描述,圖6描述了可在本發(fā)明的一些實(shí)施例中使用的示例過程.在框610 中,網(wǎng)絡(luò)接口可接收網(wǎng)絡(luò)協(xié)議羊元,在框620中,網(wǎng)絡(luò)接口可向通用核發(fā)出設(shè)備中斷以通知所述核接 收了至少一個(gè)網(wǎng)絡(luò)協(xié)議單元在框630中,通用核判斷哪個(gè)目標(biāo)核將處理所接收的網(wǎng)絡(luò)協(xié)議單 元。例如,利用接收方擴(kuò)展技術(shù)來部分地作出判斷,盡管可使用其 它的技術(shù)。為了將所接收的網(wǎng)絡(luò)協(xié)議單元分配給目標(biāo)核,與所接收 的網(wǎng)絡(luò)協(xié)議單元關(guān)聯(lián)的描述符被分配給與目標(biāo)核關(guān)聯(lián)的次級描述符 環(huán)。網(wǎng)絡(luò)協(xié)議單元要由目標(biāo)核處理的部分可存儲(chǔ)在與通用核關(guān)聯(lián)的 存儲(chǔ)區(qū)域中。在框640中,通用核向目標(biāo)核發(fā)出處理器間中斷以指示所接收的 網(wǎng)絡(luò)協(xié)議單元的可用性.由目標(biāo)核執(zhí)行的或?qū)ζ淇捎玫倪壿嬁身憫?yīng) 于處理器間中斷來調(diào)用中斷句柄。在框650中,目標(biāo)核可請求將網(wǎng)絡(luò)協(xié)議單元的部分從與通用核關(guān) 聯(lián)的存儲(chǔ)區(qū)域復(fù)制到與目標(biāo)核關(guān)聯(lián)的存儲(chǔ)器。次級描述符環(huán)中與目 標(biāo)核關(guān)聯(lián)的描述符可識別網(wǎng)絡(luò)協(xié)議單元的部分的存儲(chǔ)位置.本發(fā)明的實(shí)施例可實(shí)現(xiàn)為下面的任意項(xiàng)或其組合一個(gè)或多個(gè)利 用母板互連的微芯片或臬成電路,由存儲(chǔ)設(shè)備存儲(chǔ)并由微處理器、 固件、專用集成電路(ASIC)和/或現(xiàn)場可編程門陣列(FPGA)執(zhí)行 的軟件。術(shù)語"邏輯"可例如包括軟件或硬件和/或軟件和硬件的組 合.本發(fā)明的實(shí)施例例如可作為計(jì)算機(jī)程序產(chǎn)品提供,其可包括一個(gè) 或多個(gè)機(jī)器可讀的媒體,在其上存儲(chǔ)了機(jī)器可執(zhí)行指令,該指令在 由一個(gè)或多個(gè)諸如計(jì)算機(jī)、計(jì)算機(jī)網(wǎng)絡(luò)或其它電子設(shè)備執(zhí)行時(shí)可導(dǎo) 致一個(gè)或多個(gè)機(jī)器根據(jù)本發(fā)明的實(shí)施例來操作.機(jī)器可讀介質(zhì)可包 括但不限于軟盤、光盤、CD-ROM (壓縮只讀盤存儲(chǔ)器)和磁光盤、 ROM (只讀存儲(chǔ)器)、RAM (隨機(jī)訪問存儲(chǔ)器)、EPROM (可擦可編程 只讀存儲(chǔ)器)、EEPROM (電可擦可編程只讀存儲(chǔ)器)、磁或光卡、 閃速存儲(chǔ)器、或其它類型適于存儲(chǔ)機(jī)器可執(zhí)行指令的媒體/機(jī)器可讀 介質(zhì)。
進(jìn)而,本發(fā)明的實(shí)施例還可作為計(jì)算機(jī)程序產(chǎn)品加栽,其中程序可借助一個(gè)或多個(gè)由栽波或其它傳播介質(zhì)實(shí)現(xiàn)和/或調(diào)制的數(shù)據(jù)信 號經(jīng)由通信鏈路(比如調(diào)制解調(diào)器和/或網(wǎng)絡(luò)連接)從遠(yuǎn)程計(jì)算機(jī)(例 如服務(wù)器)傳輸?shù)秸埱笥?jì)算機(jī)(例如客戶端)。由此,如這里所使 用的,機(jī)器可讀介質(zhì)可以而不要求包括這樣的栽波.附圖和前面的描述給出了本發(fā)明的例子。雖然描述了多個(gè)不同的 功能項(xiàng),但是本領(lǐng)域的技術(shù)人員將理解一個(gè)或多個(gè)這樣的元件可組 合為單個(gè)功能元件。可替換地,特定元件可被分成多個(gè)功能元件。來自一個(gè)實(shí)施例的元件可添加到另一個(gè)實(shí)施例.例如,這里所描述 的過程的順序可變化且不限于這里所描述的方式.而且,任何流程 困的動(dòng)作不需要按所示的順序來實(shí)現(xiàn);也不是必須執(zhí)行所有的動(dòng)作。并且,不取決于其它動(dòng)作的動(dòng)作可與其它的動(dòng)作并行執(zhí)行.但 是,本發(fā)明的范圍決不由這些特定例子來限定。多種變化,比如結(jié) 構(gòu)、尺寸、材料使用的變化無論是否明顯在說明書中給出,都是可 能的。本發(fā)明的范圍至少與隨后的權(quán)利要求給出的一樣寬。
權(quán)利要求
1.一種裝置,包括至少一個(gè)網(wǎng)絡(luò)接口;至少一個(gè)目標(biāo)核;通信耦合到至少一個(gè)網(wǎng)絡(luò)接口的中心核,其中中心核響應(yīng)于來自網(wǎng)絡(luò)接口的中斷,選擇性地向一個(gè)或多個(gè)目標(biāo)核發(fā)出處理器間中斷(IPI);和通信耦合到中心核和至少一個(gè)網(wǎng)絡(luò)接口的存儲(chǔ)設(shè)備。
2. 權(quán)利要求l的裝置,其中至少一個(gè)目標(biāo)核使用邏輯是要響應(yīng)于 接收IPI而選擇性地執(zhí)行中斷服務(wù)例程。
3. 權(quán)利要求l的裝置,其中至少一個(gè)網(wǎng)絡(luò)接口能夠執(zhí)行從包括下 列搮作的組中選擇的至少一個(gè)搮作從物理鏈路接收網(wǎng)絡(luò)協(xié)議單 元,將所接收的網(wǎng)絡(luò)協(xié)議單元的部分復(fù)制到存儲(chǔ)設(shè)備中,和向中心 核喚起中斷。
4. 權(quán)利要求l的裝置,其中中心核能夠執(zhí)行從包括下列操作的組 中選擇的至少一個(gè)操作響應(yīng)于從至少一個(gè)網(wǎng)絡(luò)接口接收中斷而執(zhí) 行中斷服務(wù)例程,從初級描述符環(huán)讀取描述符,執(zhí)行任何用戶提供 的代碼來修改榆入的網(wǎng)絡(luò)協(xié)議單元,執(zhí)行任何用戶提供的代碼來分 類輸入的網(wǎng)絡(luò)協(xié)議單元,基于用戶指定的分類來向其次級描述符環(huán) 分配目標(biāo)核和描述符,將描述符從初級描述符環(huán)復(fù)制到適當(dāng)?shù)拇渭?描述符環(huán),和從初級描述符環(huán)移除描述符。
5. 權(quán)利要求l的裝置,還包括 與至少一個(gè)網(wǎng)絡(luò)接口關(guān)聯(lián)的初級描述符環(huán);和 與至少一個(gè)目標(biāo)核關(guān)聯(lián)的次級描述符環(huán)。
6. 權(quán)利要求5的裝置,還包括用于提供初級描述符環(huán)中的描述符以指示一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議 單元進(jìn)行處理的邏輯,其中在存儲(chǔ)設(shè)備中存儲(chǔ)一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議 單元的部分;用于分配目標(biāo)核以便處理一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議單元的邏輯;和 用于提供將描述符從初級描述符環(huán)復(fù)制到與所分配的至少一個(gè) 目標(biāo)核關(guān)聯(lián)的次級描述符環(huán)的邏輯。
7. 權(quán)利要求6的裝置,其中 存儲(chǔ)設(shè)備用于存儲(chǔ)所接收的網(wǎng)絡(luò)協(xié)議單元的有效負(fù)栽;和 所分配的至少一個(gè)目標(biāo)核用于響應(yīng)于與所分配的至少 一個(gè)目標(biāo) 核關(guān)聯(lián)的次級描述符環(huán)中的描述符請求處理所接收的網(wǎng)絡(luò)協(xié)議單 元,而將有效負(fù)栽從存儲(chǔ)設(shè)備復(fù)制到與所分配的至少一個(gè)目標(biāo)核關(guān) 聯(lián)的存儲(chǔ)器。
8. 權(quán)利要求6的裝置,其中用于分配的邏輯用來提供接收方擴(kuò)展。
9. 權(quán)利要求l的裝置,其中至少一個(gè)目標(biāo)核能夠執(zhí)行從包括下列 操作的組中選擇的至少一個(gè)搮作數(shù)據(jù)鏈路協(xié)議處理,網(wǎng)絡(luò)層協(xié)議 處理,傳輸層協(xié)議處理,安排等待來自網(wǎng)絡(luò)的數(shù)據(jù)的應(yīng)用的搮作, 將網(wǎng)絡(luò)協(xié)議單元路由到另一位置,過濾不想要的網(wǎng)絡(luò)協(xié)議單元,和 為其它使用釋放存儲(chǔ)網(wǎng)絡(luò)協(xié)議單元的存儲(chǔ)器,
10. 權(quán)利要求l的裝置,其中通信耦合到至少一個(gè)網(wǎng)絡(luò)接口的中 心核對于一個(gè)或多個(gè)目標(biāo)核呈現(xiàn)為單個(gè)邏輯設(shè)備。
11. 一種方法,包括 接收網(wǎng)絡(luò)協(xié)議單元;向中心核發(fā)出設(shè)備中斷以通知所述核接收了網(wǎng)絡(luò)協(xié)議單元; 選擇目標(biāo)核來處理所接收的網(wǎng)絡(luò)協(xié)議單元;和 向所選擇的目標(biāo)核選擇性地發(fā)出處理器間中斷以請求處理網(wǎng)絡(luò) 協(xié)議單元,
12. 權(quán)利要求ll的方法,其中選擇目標(biāo)核包括使用接收方擴(kuò)展技術(shù)。
13. 權(quán)利要求ll的方法,還包括將網(wǎng)絡(luò)協(xié)議單元存儲(chǔ)在與中心核關(guān)聯(lián)的主存儲(chǔ)器中; 提供在初級描述符環(huán)中識別所接收的網(wǎng)絡(luò)協(xié)議單元的描述符; 將該描述符提供給與所選目標(biāo)核關(guān)聯(lián)的次級描述符環(huán).
14. 權(quán)利要求13的方法,還包括 所選目標(biāo)核處理描述符;和所選目標(biāo)核請求將網(wǎng)絡(luò)協(xié)議單元的部分復(fù)制到與所選目標(biāo)核關(guān) 聯(lián)的存儲(chǔ)器中。
15. 權(quán)利要求ll的方法,其中其中中心核能夠執(zhí)行從包括下列搮 作的組中選擇的至少一個(gè)操作響應(yīng)于從至少一個(gè)網(wǎng)絡(luò)接口接收中 斷而執(zhí)行中斷服務(wù)例程,從初級描述符環(huán)讀取描迷符,執(zhí)行任何用 戶提供的代碼來修改輸入的網(wǎng)絡(luò)協(xié)議單元,執(zhí)行任何用戶提供的代 碼來分類榆入的網(wǎng)絡(luò)協(xié)議單元,基于用戶指定的分類來向其次級描 述符環(huán)分配目標(biāo)核和描述符,將描述符從初級描迷符環(huán)復(fù)制到適當(dāng) 的次級描述符環(huán),和從初級描述符環(huán)移除描述符。
16. 權(quán)利要求l的方法,其中目標(biāo)核能夠執(zhí)行從包括下列搮作的 組中選擇的至少一個(gè)操作數(shù)據(jù)鏈路協(xié)議處理,網(wǎng)絡(luò)層協(xié)議處理, 傳輸層協(xié)議處理,安排等待來自網(wǎng)絡(luò)的數(shù)據(jù)的應(yīng)用的採作,將網(wǎng)絡(luò) 協(xié)議單元路由到另一位置,過濾不想要的網(wǎng)絡(luò)協(xié)議單元,和為其它 使用釋放存儲(chǔ)網(wǎng)絡(luò)協(xié)議單元的存儲(chǔ)器。
17. —種系統(tǒng),包括 網(wǎng)絡(luò)介質(zhì);通信耦合到網(wǎng)絡(luò)介質(zhì)的網(wǎng)絡(luò)接口 ; 主機(jī)系統(tǒng),包括至少一個(gè)網(wǎng)絡(luò)接口;至少一個(gè)目標(biāo)核;通信耦合到至少一個(gè)網(wǎng)絡(luò)接口的中心核,其中中心核響應(yīng)于 來自網(wǎng)絡(luò)接口的中斷,選擇性地向一個(gè)或多個(gè)目標(biāo)核發(fā)出處理器間中斷(IPI );和通信耦合到中心核和至少 一個(gè)網(wǎng)絡(luò)接口的存儲(chǔ)設(shè)備.
18. 權(quán)利要求17的系統(tǒng),還包括與至少一個(gè)網(wǎng)絡(luò)接口關(guān)聯(lián)的初級描述符環(huán); 與至少一個(gè)目標(biāo)核關(guān)聯(lián)的次級描述符環(huán);用于提供初級描述符環(huán)中的描述符以指示一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議 單元進(jìn)行處理的邏輯,其中在存儲(chǔ)設(shè)備中存儲(chǔ)一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議 單元的部分;用于分配至少一個(gè)目標(biāo)核以便處理一個(gè)或多個(gè)網(wǎng)絡(luò)協(xié)議單元的 邏輯;和用于提供將描述符從初級描述符環(huán)復(fù)制到與至少一個(gè)目標(biāo)核關(guān) 聯(lián)的次級描述符環(huán)的邏輯。
19. 權(quán)利要求18的系統(tǒng),其中存儲(chǔ)設(shè)備用于存儲(chǔ)所接收的網(wǎng)絡(luò)協(xié)議單元的有效負(fù)栽;和 所分配的至少一個(gè)目標(biāo)核用于響應(yīng)于與所分配的至少一個(gè)目標(biāo) 核關(guān)聯(lián)的次級描述符環(huán)中的描述符請求處理所接收的網(wǎng)絡(luò)協(xié)議單 元,而將有效負(fù)栽從存儲(chǔ)設(shè)備復(fù)制到與所分配的至少 一個(gè)目標(biāo)核關(guān) 聯(lián)的存儲(chǔ)器。
20.權(quán)利要求19的系統(tǒng),其中存儲(chǔ)設(shè)備包括與至少一個(gè)目標(biāo)核關(guān) 聯(lián)的緩沖器,并且其中每個(gè)緩沖器用于存儲(chǔ)要由關(guān)聯(lián)的目標(biāo)核處理 的網(wǎng)絡(luò)協(xié)議單元的部分,
全文摘要
描述了用來實(shí)現(xiàn)網(wǎng)絡(luò)接口的技術(shù)。網(wǎng)絡(luò)接口可通信耦合到通用核或硬件線程??煞峙溆赏ㄓ煤藞?zhí)行的各種操作,由此來至少提供網(wǎng)絡(luò)接口的靈活操作。通用核能夠向其它核心或硬件線程發(fā)出處理器間中斷以請求處理。其它核心或硬件線程通過執(zhí)行一個(gè)或多個(gè)中斷服務(wù)例程來響應(yīng)該處理器間中斷。其它核心或硬件線程能夠處理由網(wǎng)絡(luò)接口接收的網(wǎng)絡(luò)協(xié)議單元。
文檔編號H04L29/10GK101159765SQ200610172499
公開日2008年4月9日 申請日期2006年12月30日 優(yōu)先權(quán)日2006年10月6日
發(fā)明者A·馮, B·維爾 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1