專利名稱:用于在單個局域網(wǎng)適配器中啟用卸載功能的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及卸載功能以提高處理器性能。更具體地說,本發(fā)明卸載單個局域網(wǎng)適配器中的功能以便提高處理器性能。
背景技術(shù):
在自從計算機被首次連接在一起后的相對較短的時間內(nèi),局域網(wǎng)(LAN)技術(shù)和性能已顯著地提高。最早的以太網(wǎng)網(wǎng)絡(luò)從對每個網(wǎng)絡(luò)設(shè)備都分接一次的單一長度的同軸電纜構(gòu)造而來。這種形式的互連出現(xiàn)在八十年代早期,那時的計算機聯(lián)網(wǎng)使用粗電纜網(wǎng)(稱為10BASE-5)并且稍后使用IEEE 802.3標(biāo)準(zhǔn)來實現(xiàn)。隨著無需分接電纜的細電纜網(wǎng)(稱為10BASE-2)的采用,互連計算機的機械過程稍有改進。雖然使用細電纜網(wǎng)的同軸連接器互連設(shè)備要簡單得多,但是該技術(shù)仍然將多個網(wǎng)絡(luò)設(shè)備一起串在單一長度的同軸電纜上。利用任一這些標(biāo)準(zhǔn)在設(shè)備之間傳輸?shù)膶?分組會被電纜上的所有其他設(shè)備接收到??梢詮乃衅渌B接的設(shè)備接收傳輸?shù)脑O(shè)備組(也稱為段)被稱為沖突域。分組傳輸協(xié)議(對于這些標(biāo)準(zhǔn),CSMA/CD)是在單個沖突域上控制信息的有序傳輸所必需的。在本概述中,可以接收層2廣播的設(shè)備組(段)被稱為廣播域。此外,可以接收未直接定址到所述設(shè)備的單播層2分組的設(shè)備組(段)被稱為重復(fù)段。
隨著時間的推移,單個線實現(xiàn)被以太網(wǎng)重復(fù)段集線器和RJ-45型電纜(10BASE-T)所取代。對模塊化的10BASE-T組件的更改對用于互連局域網(wǎng)設(shè)備的方法提供了巨大的改進,但是單個廣播域和CSMA/CD的性能限制依然存在。局域網(wǎng)增長為其中數(shù)以百計的計算機將共享同一10MB廣播域的端口密度。局域網(wǎng)管理員很快發(fā)現(xiàn)大型廣播域與網(wǎng)絡(luò)性能和數(shù)據(jù)隱私是不一致的。
層2以太網(wǎng)網(wǎng)橋和以太網(wǎng)交換機不會將單播分組轉(zhuǎn)發(fā)出端口,除非目的地設(shè)備位于所述端口之后。由于此功能,橋接和交換是用于限制沖突域和重復(fù)的局域網(wǎng)段的大小的兩種首要方法。交互機和網(wǎng)橋的部署帶來了局域網(wǎng)性能和數(shù)據(jù)隱私的增加。隨著層2交換技術(shù)價格的下降和這些交換機上的端口密度的增加,局域網(wǎng)管理員開始將交換機部署到網(wǎng)絡(luò)的邊緣。雖然重復(fù)集線器仍可以在小型網(wǎng)絡(luò)和SOHO應(yīng)用中找到,但是在現(xiàn)代局域網(wǎng)中,以太網(wǎng)交換機幾乎已完全取代了重復(fù)集線器設(shè)備。
在過去10年中,局域網(wǎng)技術(shù)(尤其是以太網(wǎng))每隔3到4年便會將介質(zhì)速度提高十倍。相比之下,中央處理單元(CPU)的速度每兩年才翻倍。因此,CPU正快速成為高I/O性能系統(tǒng)中的瓶頸。為了減緩此處理器性能滯后,可以將越來越多的本地主機功能卸載到I/O適配器。卸載功能減少了主機CPU工作負荷并具有提高I/O適配器吞吐量的額外益處。但是,必須小心地選擇要卸載的功能,因為取決于應(yīng)用,客戶需要不同的卸載功能集合。目前,I/O適配器供應(yīng)商通過使用他們認為客戶會需要的特定卸載功能定制其I/O解決方案來嘗試解決這些客戶需求。由于測試和維護若干版本的適配器的成本,這種“碰運氣式的”方法是一種昂貴的建議。即使為相同類型的適配器使用多級卸載功能(多于一個),該解決方案仍遠非完美。
使用當(dāng)前方法的另一個問題是當(dāng)所有應(yīng)用都使用相同的適配器時,將出現(xiàn)相同的卸載功能。由于某些應(yīng)用可能不需要所述卸載功能或不能很好地與所述卸載功能一起執(zhí)行,這將產(chǎn)生問題。例如,在TCP/IP環(huán)境中,只發(fā)送和接收很小的分組大小的應(yīng)用可能不能很好地與卸載的校驗功能一起執(zhí)行,因為準(zhǔn)備卸載的過程可能比只是計算校驗和要更加CPU密集。
因此,具有一種提供將功能卸載到其他連接的設(shè)備的單個局域網(wǎng)適配器將是有利的。
發(fā)明內(nèi)容
本發(fā)明提供了一種用于卸載功能以提高處理器性能的方法、裝置和計算機程序產(chǎn)品。本發(fā)明的示例性方面提供了一種允許將預(yù)定義的功能卸載到其他設(shè)備的單個局域網(wǎng)適配器。提供了三種卸載功能的方式。第一是用戶和應(yīng)用根據(jù)需要只挑選和選擇要被卸載的功能。第二是通過預(yù)定的調(diào)度器來調(diào)度要卸載的功能。第三是通過知識庫啟發(fā)或?qū)W習(xí)那些可以被卸載的功能。
在所附權(quán)利要求中說明了被認為是本發(fā)明特性的新穎特征。但是,當(dāng)結(jié)合附圖閱讀時,通過參考以下對示例性實施例的詳細說明,可以最佳地理解發(fā)明本身及其優(yōu)選使用方式、進一步的目的和優(yōu)點,這些附圖是圖1是其中可以實現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的圖示;圖2是根據(jù)本發(fā)明的優(yōu)選實施例的可以被實現(xiàn)為服務(wù)器的數(shù)據(jù)處理系統(tǒng)的方塊圖;圖3是根據(jù)本發(fā)明的優(yōu)選實施例的位于同一系統(tǒng)中的兩個適配器的圖示;圖4是根據(jù)本發(fā)明的優(yōu)選實施例描述的操作系統(tǒng)的功能性方塊圖;圖5示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性按需接口;圖6示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性調(diào)度驅(qū)動的接口;圖7示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性啟發(fā)或?qū)W習(xí)接口;圖8示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性事件表;以及圖9示出了根據(jù)本發(fā)明的優(yōu)選實施例的卸載功能的示例性操作的流程圖。
具體實施例方式
現(xiàn)在參考附圖,具體地說,參考圖1,其中示出了根據(jù)本發(fā)明的一個優(yōu)選實施例的其中可以實現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的圖形表示。圖1示出了計算機100,其包括系統(tǒng)單元102、視頻顯示終端104、鍵盤106、存儲設(shè)備108(其可以包括軟盤驅(qū)動器以及其他類型的永久性和可移除存儲介質(zhì))以及鼠標(biāo)110。個人計算機100可以包括有其他輸入設(shè)備,例如游戲桿、觸控板、觸摸屏、軌跡球、麥克風(fēng)等??梢允褂萌魏芜m合的計算機(例如IBM eServerTM計算機或IntelliStation計算機,它們是位于紐約阿蒙克的國際商業(yè)機器公司的產(chǎn)品)來實現(xiàn)計算機100。雖然所示表示顯示了計算機,但是可以以其他類型的數(shù)據(jù)處理系統(tǒng)(如網(wǎng)絡(luò)計算機)來實現(xiàn)本發(fā)明的其他實施例。計算機100還優(yōu)選地包括可以借助系統(tǒng)軟件來實現(xiàn)的圖形用戶界面(GUI),所述系統(tǒng)軟件駐留在計算機可讀介質(zhì)內(nèi)并在計算機100中運行。
現(xiàn)在參考圖2,圖2示出了其中可以實現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的方框圖。數(shù)據(jù)處理系統(tǒng)200是諸如圖1中的計算機100之類的計算機的一個實例,實現(xiàn)本發(fā)明的諸過程的代碼或指令可以位于其中。數(shù)據(jù)處理系統(tǒng)200采用外圍組件互連(PCI)局部總線體系結(jié)構(gòu)。盡管所示實例采用了PCI總線,但是可以使用諸如加速圖形端口(AGP)和工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)之類的其他總線體系結(jié)構(gòu)。處理器202和主存儲器204通過PCI橋208連接到PCI局部總線206。PCI橋208還可以包括用于處理器202的集成存儲器控制器和高速緩沖存儲器??梢酝ㄟ^直接組件互連或通過擴充連接器建立到PCI局部總線206的其他連接。
在所示實例中,局域網(wǎng)(LAN)適配器210、小型計算機系統(tǒng)接口SCSI主機總線適配器212以及擴展總線接口214通過直接組件連接被連接到PCI局部總線206。相反,音頻適配器216、圖形適配器218和音頻/視頻適配器219通過插入擴展槽的擴充板被連接到PCI局部總線206。擴展總線接口214為鍵盤和鼠標(biāo)適配器220、調(diào)制解調(diào)器222以及附加的存儲器224提供連接。SCSI主機總線適配器212為硬盤驅(qū)動器226、磁帶驅(qū)動器228以及CD-ROM驅(qū)動器230提供連接。典型的PCI局部總線實現(xiàn)將支持三個或四個PCI擴展槽或擴充連接器。
操作系統(tǒng)在處理器202上運行并用于協(xié)調(diào)和提供對圖2中的數(shù)據(jù)處理系統(tǒng)200內(nèi)的各個組件的控制。所述操作系統(tǒng)可以是諸如Windows XPTM(其可從微軟公司獲得)之類的可以從市面上購買的操作系統(tǒng)。諸如JavaTM編程系統(tǒng)之類的面向?qū)ο蟮木幊滔到y(tǒng)可以與操作系統(tǒng)一起運行并從在數(shù)據(jù)處理系統(tǒng)200上執(zhí)行的JavaTM程序或應(yīng)用來提供對操作系統(tǒng)的調(diào)用?!癑AVA”是Sun Microsystems,Inc.的商標(biāo)。用于所述操作系統(tǒng)、面向?qū)ο蟮木幊滔到y(tǒng)以及應(yīng)用或程序的指令位于諸如硬盤驅(qū)動器226之類的存儲設(shè)備上,并可以被加載到主存儲器204中以便由處理器202執(zhí)行。
本領(lǐng)域的技術(shù)人員將理解,圖2中的硬件可以根據(jù)實現(xiàn)方式而變化。除了圖2中所示的硬件以外,或替代圖2中所示的硬件,還可以使用諸如閃速只讀存儲器(ROM)、等同的非易失性存儲器或光盤驅(qū)動器等其他內(nèi)部硬件或外圍設(shè)備。此外,本發(fā)明的諸過程可以應(yīng)用于多處理器數(shù)據(jù)處理系統(tǒng)。
例如,數(shù)據(jù)處理系統(tǒng)200,如果可選地配置為網(wǎng)絡(luò)計算機,則可以不包括SCSI主機總線適配器212、硬盤驅(qū)動器226、磁帶驅(qū)動器228以及CD-ROM 230。在這種情況下,所述計算機(正確的稱謂是客戶端計算機)包括某種類型的網(wǎng)絡(luò)通信接口,例如局域網(wǎng)適配器210、調(diào)制解調(diào)器222等。作為另一個實例,數(shù)據(jù)處理系統(tǒng)200可以是獨立的系統(tǒng),該系統(tǒng)配置為可以不依賴于某種類型的網(wǎng)絡(luò)通信接口來進行引導(dǎo),而無論數(shù)據(jù)處理系統(tǒng)200是否包括某種類型的網(wǎng)絡(luò)通信接口。作為進一步的實例,數(shù)據(jù)處理系統(tǒng)200可以是個人數(shù)字助理(PDA),其配備有ROM和/或閃速ROM以提供非易失性存儲器,以便存儲操作系統(tǒng)文件和/或用戶生成的數(shù)據(jù)。
圖2中所示的實例和上述實例并非旨在暗示體系結(jié)構(gòu)限制。例如,除了采取PDA的形式以外,數(shù)據(jù)處理系統(tǒng)200也可以是筆記本計算機或手持式計算機。數(shù)據(jù)處理系統(tǒng)200還可以是信息終端(kiosk)或Web家電。
本發(fā)明的諸過程由處理器202使用計算機實現(xiàn)的指令來執(zhí)行,所述指令可以位于諸如例如主存儲器204、存儲器224之類的存儲器中或位于一個或多個外圍設(shè)備226-230中。
本發(fā)明提供了卸載功能以提高處理器性能。描述了一種允許將預(yù)定義的功能卸載到其他設(shè)備的單個局域網(wǎng)適配器。描述了三種可以通過其定義卸載功能的不同方法。第一是用戶或應(yīng)用可以根據(jù)需要只挑選和選擇要被卸載的功能。第二是調(diào)度那些要卸載的功能可以在調(diào)度器中被定義。第三是提供了啟發(fā)或?qū)W習(xí)能力,其中卸載功能可以被存儲在知識庫中。
使用實例最佳地描述了本發(fā)明的示例性方面。本發(fā)明僅出于示例目的使用了TCP/IP協(xié)議功能。此示例性說明并未限制本發(fā)明的范圍,因為任何功能都可以使用以上描述的功能來卸載。
在此實例中,所有I/O適配器都默認啟用了卸載功能。IP地址、TCP套接字端口號以及訪問控制密鑰的組合被用來控制對用戶和/或應(yīng)用可用的卸載功能的類型。因此,兩個不同的用戶和/或應(yīng)用可以共享同一IP地址來與網(wǎng)絡(luò)通信,但是可能沒有使相同的卸載功能可用??梢酝ㄟ^發(fā)布給用戶和/或應(yīng)用的特殊密鑰來控制對用于特定套接字端口號的卸載功能的訪問。此密鑰然后被TCP/IP堆棧用來標(biāo)識對于每個套接字端口,哪些卸載功能被允許。某些公知的應(yīng)用(例如“FTP”)可以被預(yù)先啟用成特定的默認卸載功能。
這種類型的卸載將提高處理器性能并提高I/O適配器性能。使用此方法通過簡化I/O適配器供應(yīng)商的供應(yīng)鏈節(jié)省了他們的時間和花費,因為他們只需與卸載功能的超集一起發(fā)布單個部件號。最終用戶也節(jié)省了花費,因為他們只需激活他們所需的一個或多個功能并為其付費。通過將按需卸載功能所提供的靈活性提供給他們,這種解決方案節(jié)省了供應(yīng)商的花費并滿足了客戶的需要。
現(xiàn)在轉(zhuǎn)到圖3,圖3在表中示出了根據(jù)本發(fā)明的優(yōu)選實施例的位于同一系統(tǒng)中的兩個適配器的另一個示例。在圖3的示例性表300中,為每個IP地址提供了IP地址302、端口號304、密鑰306、Ipsec 308、TCP/IP校驗和310、TCP/IP卸載312以及應(yīng)用314;但是,其他項也可以被包括在該表中。在此表中,兩個IP地址(或適配器316和318)位于同一系統(tǒng)中。IP地址316定義了IPsec、TCP/IP校驗和以及TCP/IP卸載功能。但是,與啟用了不同卸載默認功能的IP地址316關(guān)聯(lián)的Telnet、FTP和NFS應(yīng)用都通過其各自的端口號來控制。對于IP地址318,所述系統(tǒng)可以默認使所有用于Telnet和備份應(yīng)用的卸載功能都啟用。圖3中概括了IP地址316和318的當(dāng)前設(shè)置。盡管圖3描述了表,但是可以使用任何其他類型的數(shù)據(jù)結(jié)構(gòu),例如數(shù)組、散列、標(biāo)量等。
現(xiàn)在轉(zhuǎn)到圖4,其中示出了根據(jù)本發(fā)明的優(yōu)選實施例的圖3中示出的操作系統(tǒng)維護表300的功能性方塊圖。示例性操作系統(tǒng)400具有維護與圖3中的表300類似的卸載功能啟用表402的任務(wù)。在此實例中,用戶或應(yīng)用404啟動從用戶空間408到內(nèi)核空間410的套接字系統(tǒng)調(diào)用406。在內(nèi)核空間410中,套接字系統(tǒng)調(diào)用實現(xiàn)412接收套接字系統(tǒng)調(diào)用406,分析該調(diào)用并啟動任何嵌入的套接字層功能414。
套接字層功能414確定所請求的功能的類型并以適當(dāng)?shù)膮f(xié)議發(fā)送所述功能。卸載功能啟用表402在初始程序加載(IPL)期間由操作系統(tǒng)初始化。通過在運行期間在系統(tǒng)上添加或刪除卸載功能,可以經(jīng)由接口434來手動或自動地更新卸載功能啟用表402。將根據(jù)以下的圖5、6和7在稍后描述接口434的實例。操作系統(tǒng)中存在的任何協(xié)議都可以查詢卸載功能啟用表402。
操作系統(tǒng)通過在每個TCP連接的基礎(chǔ)上啟用卸載屬性來實施對卸載硬件的訪問控制。當(dāng)在卸載功能啟用表402中設(shè)置了卸載功能時,連接被卸載到I/O適配器430,否則將使用標(biāo)準(zhǔn)以太網(wǎng)NIC接口。此方法允許在與特定系統(tǒng)用戶和/或應(yīng)用關(guān)聯(lián)的每個TCP連接的基礎(chǔ)上使用卸載。此外,其使得卸載使用依賴于系統(tǒng)用戶和/或應(yīng)用。
另外,套接字層功能414將用戶數(shù)據(jù)報協(xié)議(UDP)分組發(fā)送到udp_usrreq 416,所述分組被轉(zhuǎn)換并被發(fā)送出udp_output 418。但是,由于UDP功能沒有在卸載功能啟用表402中列出,所以UDP功能調(diào)用將通過標(biāo)準(zhǔn)以太網(wǎng)NIC接口被發(fā)送。套接字層功能414還將傳輸控制協(xié)議(TCP)分組發(fā)送到tcp_usrreq 420,所述分組被轉(zhuǎn)換并被發(fā)送出tcp_output 422。然后,是TCP/IP堆棧436的一部分的tcp_output 422查詢卸載功能啟用表402中的數(shù)據(jù)并將所述調(diào)用連接到用于選定卸載功能的設(shè)備驅(qū)動器426。
套接字層功能414還將傳輸控制協(xié)議(TCP)分組發(fā)送到udp_usrreq416,所述分組被轉(zhuǎn)換并被發(fā)送出udp_output 418。然后,是UDP/IP堆棧438的一部分的udp_output 418查詢卸載功能啟用表402中的數(shù)據(jù)并將調(diào)用連接到用于選定卸載功能的設(shè)備驅(qū)動器426。
套接字層功能414還將因特網(wǎng)協(xié)議(IP)和因特網(wǎng)控制消息協(xié)議(ICMP)分組直接發(fā)送到因特網(wǎng)協(xié)議(IP)和因特網(wǎng)控制消息協(xié)議(ICMP)隊列424。但是,IP/ICMP功能調(diào)用將通過標(biāo)準(zhǔn)以太網(wǎng)NIC接口被發(fā)送。
轉(zhuǎn)到圖5,其中示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性按需接口。按需接口500是圖4中的接口434的實例并且包括管理或根接口504,接口504允許用戶508和應(yīng)用506根據(jù)需要只挑選和選擇所希望的功能。這些功能被添加到與圖4中的卸載功能啟用表402類似的卸載功能啟用表502或被從其刪除。
圖6示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性調(diào)度驅(qū)動接口。調(diào)度驅(qū)動接口600是圖4中的接口434的實例并包括管理或CRON接口604,接口604允許根據(jù)調(diào)度事件表606中列出的事件由預(yù)定的調(diào)度器選擇性地為給定工作負荷環(huán)境啟用和禁用唯一的卸載功能。諸如事務(wù)處理之類的工作負荷可能需要IPsec、SSL等的特定卸載功能。但是,相同的工作負荷可能因較小的分組而不會從TCP/IP校驗和卸載中受益很多。對于涉及較大分組傳輸(例如備份和FTP)的應(yīng)用,諸如TCP/IP校驗和、TCP/IP卸載之類的卸載功能將是有益的。這些工作負荷在一天中可能會發(fā)生變化。例如,面向事務(wù)的網(wǎng)絡(luò)業(yè)務(wù)可能在白天達到其峰值,而備份業(yè)務(wù)在夜間達到其峰值。
可以根據(jù)調(diào)度事件表606中列出的事件通過預(yù)定的調(diào)度器來啟用或禁用這些卸載功能。管理或CRON接口604可以是諸如批、CRON或腳本之類的任何類型的調(diào)度器。這些功能被添加到與圖4中的卸載功能啟用表402類似的卸載功能啟用表602或被從其刪除。
圖7示出了根據(jù)本發(fā)明的優(yōu)選實施例的示例性啟發(fā)或?qū)W習(xí)接口。啟發(fā)接口700是圖4中的接口434的實例并包括管理或CRON接口704,接口704允許通過存儲在知識庫706中的已知事件為給定工作負荷環(huán)境選擇性地啟用或禁用唯一的卸載功能。
在多數(shù)網(wǎng)絡(luò)安裝中,盡管預(yù)先確定了工作負荷,但是它們可能因需求更改或季節(jié)性變化而有所改變??梢栽谥R庫706中監(jiān)視、分析和發(fā)布這些更改。存在若干工具來分析來自所述庫的數(shù)據(jù)并根據(jù)一天中的時間來描述應(yīng)用工作負荷的特征。諸如事務(wù)處理之類的工作負荷可能需要諸如IPsec、SSL之類的特定卸載功能。但是,相同的工作負荷可能因較小的分組而不會從TCP/IP校驗和卸載中受益很多。對于涉及較大分組傳輸(例如備份和FTP)的應(yīng)用,諸如TCP/IP校驗和、TCP/IP卸載之類的卸載功能將是有益的。
可以根據(jù)知識庫706中列出的事件通過啟發(fā)式調(diào)度器來啟用或禁用這些卸載功能。管理或CRON接口704可以是諸如批、CRON或腳本之類的任何類型的調(diào)度器。這些功能被添加到與圖4中的卸載功能啟用表402類似的卸載功能啟用表702或被從其刪除。
圖8示出了根據(jù)本發(fā)明的優(yōu)選實施例的事件的示例性表。表800是圖6中的調(diào)度事件表606或圖7中的知識庫706的實例。在表800中,提供了用于兩個連續(xù)星期一的CRON事件表項;但是,其他項也可以被包括在此表中。如圖所示,用于兩個星期一的這些表項不是完全相同的。原因可能在于其中的一天是節(jié)假日(9月6日,勞動節(jié))或季節(jié)變更。所以對于第二個星期一的備份作業(yè),卸載參數(shù)被最優(yōu)化。盡管圖8描述了表,但是可以使用任何其他類型的數(shù)據(jù)結(jié)構(gòu),例如數(shù)組、散列、標(biāo)量等。
在圖9中,流程圖900示出了根據(jù)本發(fā)明的優(yōu)選實施例的卸載功能的示例性操作。隨著此示例性操作開始,操作系統(tǒng)初始化卸載功能表(步驟902)。然后,所述系統(tǒng)判定是否已請求了功能(步驟904)。如果沒有請求功能,則所述系統(tǒng)返回步驟904,直到功能被請求為止。如果已請求了功能,則執(zhí)行對卸載功能表的查詢以判定是否應(yīng)卸載所述功能(步驟906)。如果所述功能沒有在卸載功能表中列出(步驟908),則通過標(biāo)準(zhǔn)以太網(wǎng)NIC接口發(fā)送所述請求以便其被處理(步驟910)。如果所述卸載功能表中列出了所述功能(步驟908),則建立到設(shè)備的接口,在此將卸載所述功能(步驟912)并將所述功能卸載到指定設(shè)備(步驟914)。
因此,本發(fā)明提供了一種用于卸載功能以提高處理器性能的方法、裝置和計算機指令。提供了允許將預(yù)定義的功能卸載到其他設(shè)備的單個局域網(wǎng)適配器。所描述的方法允許以三種不同的方式卸載功能。第一種,用戶或應(yīng)用可以根據(jù)需要只挑選和選擇要被卸載的功能。第二種,那些要卸載的功能的調(diào)度可以在調(diào)度器中定義。第三種,提供了啟發(fā)或?qū)W習(xí)能力,其中卸載功能可以被存儲在知識庫中。
這種類型的卸載將提高處理器性能并提高I/O適配器性能。使用此方法通過簡化I/O適配器供應(yīng)商的供應(yīng)鏈節(jié)省了他們的時間和花費,因為他們只需與卸載功能的超集一起發(fā)布單個部件號。最終用戶也節(jié)省了花費,因為他們只需激活他們所需的一個或多個功能并為其付費。通過將按需卸載功能所提供的靈活性提供給他們,這種解決方案節(jié)省了供應(yīng)商的花費并滿足了客戶的需要。
重要的是注意到,雖然在完整功能的數(shù)據(jù)處理系統(tǒng)的上下文中說明了本發(fā)明,本領(lǐng)域的技術(shù)人員將理解,可以以指令的計算機可讀介質(zhì)的形式和各種形式來發(fā)布本發(fā)明的諸過程,并且本發(fā)明均可等同地適用而與實際用于執(zhí)行發(fā)布的信號承載介質(zhì)的特定類型無關(guān)。計算機可讀介質(zhì)的實例包括可記錄型介質(zhì),諸如軟盤、硬盤驅(qū)動器、RAM、CD-ROM、DVD-ROM以及傳輸型介質(zhì),諸如數(shù)字和模擬通信鏈路、使用諸如例如射頻和光波傳輸之類的傳輸形式的有線或無線通信鏈路。所述計算機可讀介質(zhì)可以采取編碼格式的形式,可以對其解碼以便在特定的數(shù)據(jù)處理系統(tǒng)中實際使用。
出于示例和說明目的給出了對本發(fā)明的描述,并且所述描述并非旨在是窮舉的或是將本發(fā)明限于所公開的形式。對于本領(lǐng)域的技術(shù)人員來說,許多修改和變化都將是顯而易見的。實施例的選擇和描述是為了最佳地解釋本發(fā)明的原理、實際應(yīng)用,并且當(dāng)適合于所構(gòu)想的特定使用時,使得本領(lǐng)域的其他技術(shù)人員能夠理解本發(fā)明的具有各種修改的各種實施例。
權(quán)利要求
1.一種用于在數(shù)據(jù)處理系統(tǒng)中卸載功能的方法,所述方法包括在處理器處接收對將在所述數(shù)據(jù)處理系統(tǒng)中實現(xiàn)的功能的請求;根據(jù)數(shù)據(jù)結(jié)構(gòu)判定是否將所述功能卸載到網(wǎng)絡(luò)適配器;響應(yīng)于判定所述功能將被卸載到所述網(wǎng)絡(luò)適配器,建立到所述網(wǎng)絡(luò)適配器的接口并將所述功能卸載到所述網(wǎng)絡(luò)適配器;以及響應(yīng)于判定不將所述功能卸載到所述網(wǎng)絡(luò)適配器,使用所述處理器來處理所述功能。
2.根據(jù)權(quán)利要求1的方法,其中將所述功能卸載到所述網(wǎng)絡(luò)適配器包括對所述網(wǎng)絡(luò)適配器實施訪問控制;以及在每個連接的基礎(chǔ)上啟用卸載屬性。
3.根據(jù)權(quán)利要求1的方法,其中所述數(shù)據(jù)結(jié)構(gòu)是卸載功能數(shù)據(jù)結(jié)構(gòu)。
4.根據(jù)權(quán)利要求1的方法,其中所述數(shù)據(jù)結(jié)構(gòu)由定義將被卸載的所述功能的用戶來更新。
5.根據(jù)權(quán)利要求1的方法,其中所述數(shù)據(jù)結(jié)構(gòu)由定義將被卸載的所述功能的應(yīng)用來更新。
6.根據(jù)權(quán)利要求1的方法,其中所述數(shù)據(jù)結(jié)構(gòu)由定義其中功能將被卸載的時間的調(diào)度器來更新。
7.根據(jù)權(quán)利要求6的方法,其中所述調(diào)度器根據(jù)預(yù)安排事件數(shù)據(jù)結(jié)構(gòu)來確定所述時間。
8.根據(jù)權(quán)利要求1的方法,其中所述數(shù)據(jù)結(jié)構(gòu)通過定義其中功能將被卸載的事件的啟發(fā)式接口來更新。
9.根據(jù)權(quán)利要求8的方法,其中所述啟發(fā)式接口根據(jù)知識庫中的已存儲事件來確定所述時間。
10.一種數(shù)據(jù)處理系統(tǒng),所述數(shù)據(jù)處理系統(tǒng)包括總線系統(tǒng);連接到所述總線系統(tǒng)的通信單元;連接到所述總線系統(tǒng)的存儲器,其中所述存儲器包括一組指令;網(wǎng)絡(luò)適配器;以及連接到所述總線系統(tǒng)的處理單元,其中所述處理單元執(zhí)行所述指令組以便在處理器處接收對將在所述數(shù)據(jù)處理系統(tǒng)中實現(xiàn)的功能的請求;根據(jù)數(shù)據(jù)結(jié)構(gòu)判定是否將所述功能卸載到所述網(wǎng)絡(luò)適配器;建立到所述網(wǎng)絡(luò)適配器的接口并將所述功能卸載到所述網(wǎng)絡(luò)適配器以響應(yīng)判定所述功能將被卸載到所述網(wǎng)絡(luò)適配器;以及使用所述處理單元來處理所述功能以響應(yīng)判定不將所述功能卸載到所述網(wǎng)絡(luò)適配器。
11.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中在執(zhí)行所述指令組以便將所述功能卸載到所述網(wǎng)絡(luò)適配器中,所述處理單元執(zhí)行一組指令以便對所述網(wǎng)絡(luò)適配器實施訪問控制并且在每個連接的基礎(chǔ)上啟用卸載屬性。
12.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述數(shù)據(jù)結(jié)構(gòu)是卸載功能數(shù)據(jù)結(jié)構(gòu)。
13.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述數(shù)據(jù)結(jié)構(gòu)由定義將被卸載的所述功能的用戶來更新。
14.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述數(shù)據(jù)結(jié)構(gòu)由定義將被卸載的所述功能的應(yīng)用來更新。
15.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述數(shù)據(jù)結(jié)構(gòu)由定義其中功能將被卸載的時間的調(diào)度器來更新。
16.根據(jù)權(quán)利要求15的數(shù)據(jù)處理系統(tǒng),其中所述調(diào)度器根據(jù)預(yù)安排事件數(shù)據(jù)結(jié)構(gòu)來確定所述時間。
17.根據(jù)權(quán)利要求10的數(shù)據(jù)處理系統(tǒng),其中所述數(shù)據(jù)結(jié)構(gòu)通過定義其中功能將被卸載的事件的啟發(fā)式接口來更新。
18.根據(jù)權(quán)利要求17的數(shù)據(jù)處理系統(tǒng),其中所述啟發(fā)式接口根據(jù)知識庫中的已存儲事件來確定所述時間。
19.一種用于卸載功能的計算機程序產(chǎn)品,所述計算機程序產(chǎn)品包括用于在處理器處接收對將在數(shù)據(jù)處理系統(tǒng)中實現(xiàn)的功能的請求的第一指令;用于根據(jù)數(shù)據(jù)結(jié)構(gòu)判定是否將所述功能卸載到網(wǎng)絡(luò)適配器的第二指令;用于響應(yīng)于判定所述功能將被卸載到所述網(wǎng)絡(luò)適配器,建立到所述網(wǎng)絡(luò)適配器的接口并將所述功能卸載到所述網(wǎng)絡(luò)適配器的第三指令;以及用于響應(yīng)于判定不將所述功能卸載到所述網(wǎng)絡(luò)適配器,使用所述處理器來處理所述功能的第四指令。
20.根據(jù)權(quán)利要求19的計算機程序產(chǎn)品,其中將所述功能卸載到所述網(wǎng)絡(luò)適配器的所述第三指令包括用于對所述網(wǎng)絡(luò)適配器實施訪問控制的第一子指令;以及用于在每個連接的基礎(chǔ)上啟用卸載屬性的第二子指令。
全文摘要
本發(fā)明提供了一種用于卸載功能以提高處理器性能的方法、裝置和計算機程序產(chǎn)品。提供了一種允許將預(yù)定義的功能卸載到其他設(shè)備的單個局域網(wǎng)適配器。描述了用于卸載功能的不同方法。第一種,用戶和應(yīng)用可以根據(jù)需要只挑選和選擇要卸載的功能。第二種,調(diào)度器通過預(yù)定的調(diào)度器來調(diào)度那些將被卸載的功能。第三種,可以根據(jù)存儲在知識庫中的啟發(fā)或?qū)W習(xí)方法來卸載功能。
文檔編號H04L12/28GK1845510SQ20061007204
公開日2006年10月11日 申請日期2006年4月4日 優(yōu)先權(quán)日2005年4月7日
發(fā)明者R·E·岡薩雷斯, B·K·華, S·K·科杜庫拉, R·夏爾馬 申請人:國際商業(yè)機器公司