新四季網

協商鏈路集聚的鏈路協議的方法和設備的製作方法

2023-05-04 20:02:46 1

專利名稱:協商鏈路集聚的鏈路協議的方法和設備的製作方法
技術領域:
本發明與一種得到改善的數據處理系統有關,具體地說,與一種處理數據的方法和設備有關。再具體些說,本發明與用鏈路集聚(linkaggregation)傳送數據的方法、設備和計算機指令有關。
背景技術:
隨著要用越來越高的速率傳送數據的需求的增大,1Gbit/s對於區域網(LAN)交換機之間和從交換機到高要求的網絡伺服器的許多網絡連接來說已經不算是足夠的帶寬。隨著網際網路業務供應商(ISP)、應用業務供應商、流媒體供應商等的消耗帶寬的應用,傳統的網絡管理員也可能感覺到他們的伺服器連接帶寬緊張。業已用幹線形成或鏈路集聚來增大帶寬。鏈路集聚包括允許一個數據處理系統將一個以上的網絡接口處理為單個網絡接口。也就是說,可以將數據處理系統之間的若干不同的鏈路「集聚」成單個鏈路。
除了增大帶寬之外,鏈路集聚還保證了更高的可靠性。歷來,為了集聚一個以上的網絡接口需要網絡管理員人工幹預。管理員必須指定在主機(例如,AIX伺服器)和在接有網絡適配器的交換機上需集聚的接口。這個規定是必需的,因為交換機需要知道發往鏈路集聚的業務量可以通過任何屬於這種集聚的適配器發送。
已經在創建鏈路集聚的自動化上做了一些工作,諸如IEEE802.3ad標準之類。這個標準規定了網絡主機與交換機交換鏈路集聚控制協議數據單元(LACPDU)分組以決定哪些適配器需集聚在一起的鏈路集聚控制協議(LACP)。用這些適配器的固有特性(如,雙工性和鏈路速度)來決定哪些適配器屬於相同的鏈路集聚。
IEEE 802.3ad標準規定,所有屬於同一個會話(conversation)的分組必須通過同一個適配器發送,以防止鏈路級的分組重排(reordering)。達到這樣傳送一個會話的數據的方式是與實現相關的。一個會話是在兩個端點之間傳送有關數據。會話的一個例子是兩個主機之間的會話。一個會話是兩個數據處理系統之間的活動連接(active connection)。此外,主機和交換機可以用不同的方式來決定通過哪個適配器發送屬於同一個會話的分組。這種情況意味著相當可能從主機發送給交換機的數據分組通過一個適配器發送,而從交換機發回主機的應答數據分組則通過另一個適配器發送。這樣發送數據分組是標準所允許的,因為在兩個方向上都沒有發生分組重排。在傳統的網絡協議組中,這種情況不是一個問題。
然而,在處理傳輸控制協議(TCP)卸載的適配器時,這種情況可能就成為一個問題。在TCP卸載的適配器內,TCP/網際網路協議(IP)是在適配器的硬體內實現的。因此,通過一個專用配器進行的所有TCP連接的狀態包含在適配器內,而不是包含在相同主機上的所有連接之間共享的一個全系統範圍的TCP層內。
這種配置使得應答數據分組勢必在發送外出數據分組的同一個適配器上接收,因為只有這個適配器知道接收和處理所述應答分組所必需的TCP狀態。例如,如果一個數據分組是在適配器1上發送的而它的應答是在適配器2上接收的,適配器2就沒有處理這個應答分組所必需的TCP狀態。結果,這個應答就要被廢棄掉。TCP狀態信息的例子包括預期的序號和超時信息。
在現有的自動鏈路集聚標準中,沒有使一個主機與一個交換機可以協商應該用哪個算法來決定應該用哪個適配器來發送屬於同一個會話的分組的方式。因此,能有一種得到改善的形成一個鏈路集聚的方法、設備和計算機指令將是有益的。

發明內容
本發明提供了一種為一個有一些數據分組要發送的會話協商協議的方法、設備和計算機指令。響應與一個會話端點(endpoint)建立一個鏈路集聚,選擇一個處理在會話中的數據分組的算法,以形成一個優選算法。將一個請求發送給這個端點。這個請求指出處理會話中的數據分組的優選算法。從這個端點接收到一個對這個請求的應答後,確定是否已經發生會聚(convergence)。響應已經發生會聚的確定結果,用所述優選算法處理會話中的數據分組。


本發明的新穎特徵在所附權利要求書中給出。然而,從以下結合附圖對一個例示性實施例所作的詳細說明中可以很好地理解本發明本身及其應用的優選方式、其他目的和優點,在這些附圖中圖1為一個可以實現本發明的一些數據處理系統構成的網絡;圖2為按照本發明的一個優選實施例設計的可以作為一個伺服器實現的數據處理系統的方框圖;圖3為例示一個可以實現本發明的數據處理系統的方框圖;圖4為可以實現本發明的一個優選實施例的組成部分的示意圖;圖5為可以實現本發明的一個優選實施例的組成部分的另一個例子;圖6為按照本發明的一個優選實施例設計的協議組的示意圖;圖7為按照本發明的一個優選實施例設計的數據協議單元的例子;圖8為按照本發明的一個優選實施例設計的啟動協商一個處理在一個鏈路集聚內的數據分組的算法的過程的流程圖;以及圖9為按照本發明的一個優選實施例設計的協商一個處理在一個鏈路集聚內的數據分組用的算法的過程的流程圖。
具體實施例方式
現在來看這些附圖,圖1示出了一個可以由一些可以實現本發明的數據處理系統組成的網絡。網絡數據處理系統100是一個可以實現本發明的計算機網絡。網絡數據處理系統100含有一個網絡102,它是用來提供網絡數據處理系統100內連接在一起的各個設備和計算機之間的通信連結的媒體。網絡102可以包括諸如有線、無線通信鏈路或光纜之類的連接。
在所示這個例子中,伺服器104與存儲單元106一起接到網絡102上。此外,客戶機108、110和112也接到網絡102上。客戶機108、110和112可以例如是個人計算機、網絡計算機或個人數字助理(PDA)設備。在所示這個例子中,伺服器104為客戶機108-112提供諸如引導文件、作業系統映像和應用程式之類的數據。客戶機108、110和112是伺服器104的客戶機。伺服器104可以作為一個促進諸如客戶機106、110和112之類的客戶機的用戶之間的消息交換的即時消息傳送伺服器。網絡數據處理系統100可以包括圖中未示出的其他伺服器、客戶機和其他設備。
在所示這個例子中,網絡數據處理系統100是具有網絡102的網際網路,表示用傳輸控制協議/網際網路協議(TCP/IP)協議組相互通信的網絡和網關的一個世界範圍的集合體。網際網路的核心是一個在包括數以千計的民用、政府、教育及其他計算機系統的主節點或主計算機之間傳送數據和消息的高速數據通信線路的主幹網。當然,網絡數據處理系統100也可以實現為若干不同類型的網絡,諸如內部網、區域網(LAN)或廣域網(WAN)之類。圖1隻是作為一個例子,而不是作為對本發明在體系結構上的限制。
來看圖2,圖中示出了按照本發明的一個優選實施例設計的一個可以實現為諸如圖1中的伺服器104之類的伺服器的數據處理系統的方框圖。數據處理系統200可以是一個包括多個接到系統總線206上的處理器202和204的對稱多處理器(SMP)系統。或者,也可以採用一個單處理器系統。也接到系統總線206上的有存儲器控制器/高速緩存208,它提供了一個對本地存儲器209的接口。I/O總線橋210接到系統總線206上,用來提供一個對I/O總線212的接口。存儲器控制器/高速緩存208和I/O總線橋210可以如圖所示那樣集成在一起。
接到I/O總線212上的外圍組件互連(PCI)總線橋214提供了一個對PCI本地總線216的接口。一些數據機可以接到PCI本地總線216上。典型的PCI總線實現將支持四個PCI擴展槽或內裝連接器。接至圖1中客戶機108-112的通信鏈路可以通過經內裝板、經由接到PCI本地總線216上的數據機218和網絡適配器220提供。
其他的PCI總線橋222和224提供了對可以支持其他數據機或網絡適配器的其他PCI本地總線226和228的接口。這樣,數據處理系統200就允許對多個網絡計算機的連接。存儲映像圖形適配器230和硬碟232也可以如圖所示直接或間接地接到I/O總線212上。
熟悉該技術領域的一般人員可以理解,圖2所示的這些硬體可以有所不同。例如,也可以使用一些諸如光碟驅動器之類的其他外部設備,補充或代替所示的硬體。所示這個例子並不是意味著對本發明體在繫結構上的限制。
圖2所示的數據處理系統可以是例如IBM的運行高級交互執行(AIX)作業系統或LINUX作業系統的eServer pSeries系統,國際商業機器公司(Armonk,New York)的一種產品。
現在來看圖3,圖中示出了一個可以實現本發明的數據處理系統的方框圖。數據處理系統300是客戶機計算機的一個例子。數據處理系統300採用外圍組件互連(PCI)本地總線體系結構。雖然所示這個例子用的是PCI總線,但也可以用其他總線體系結構,諸如加速圖形埠(ASP)和工業標準體系結構(ISA)。處理器302和主存儲器304通過PCI橋308接到PCI本地總線306上。PCI橋308還可以包括一個用於處理器302的集成存儲器控制器和高速緩存器。其他與PCI本地總線306的連接可以通過直接組件互連或通過內裝板實現。在所示這個例子中,區域網(LAN)適配器310、SCSI主機總線適配器312和擴展總線接口314都通過直接組件連接接到PCI本地總線306上。相反,音頻適配器316、圖形適配器318和音頻/視頻適配器319通過插入擴展槽的內裝板接到PCI本地總線306上。擴展總線接口314提供對鍵盤和滑鼠適配器320、數據機322和附加存儲器324的連接。小型計算機系統接口(SCSI)主機總線適配器312提供對硬碟驅動器326、磁帶驅動器328和CD-ROM驅動器330的連接。典型的PCI本地總線實現支持四個PCI擴展槽或內裝連接器。
作業系統在處理器302上運行,用來協調和提供對圖3所示的數據處理系統300內各個組件的控制。這個作業系統可以是一個市售的諸如Microsoft公司的Windows XP的作業系統。諸如Java之類的面向對象的程序設計系統可以配合這個作業系統運行和提供從在數據處理系統300上執行的Java程序或應用對作業系統的調用。「Java」為Sun微系統公司的商標。作業系統、面向對象的程序設計系統和應用或程序位於諸如硬碟驅動器326的存儲設備上,可以裝入主存儲器304,以便由處理器302執行。
熟悉該技術領域的一般人員可以理解,圖3所示的硬體可以根據實現而有所不同。諸如快速只讀存儲器(ROM)、等效的非易失存儲器或光碟驅動器之類的其他內部硬體或外部設備可以補充或代替圖3中所示的硬體。此外,本發明的過程可以用於多處理器數據處理系統。
圖3所示的例子和以上所說明的例子並不意味著對體系結構有所限制。例如,除呈現為一個PDA外,數據處理系統300也可以是一個筆記本計算機或手持式計算機。數據處理系統300也可以是一個公用信息機或Web設備。
本發明提供了一種為處理鏈路集聚內的數據分組協商協議的方法、設備和計算機指令。本發明的一個機構提供了一種配合或通過諸如IEEE標準802.3ad之類的現有鏈路集聚協議進行操作的算法協商協議。現有的鏈路集聚協議處理那些屬於一個特定集聚組的適配器。本發明的機制用來識別一個用來通過鏈路集聚傳送數據分組的算法或過程。
來看圖4,圖中示出了可以實現本發明的優選實施例的一些組成部分的示意圖。在這個例子中,交換機400和交換機402用來在伺服器404和伺服器406之間發送數據。伺服器可以用一個諸如圖2所示的數據處理系統200之類的數據處理系統實現。對於在交換機400和交換機402內的適配器給出了鏈路集聚408。本發明的這種機制用來為處理通過鏈路集聚408傳送的數據分組選擇一個算法或過程。在這個具體的例子中,算法協商協議可以用交換機400和交換機402內所含有的計算機指令實現。
來看圖5,圖中例示了可以實現本發明的一個優選實施例的一些組成部分的另一個例子。如圖所示,伺服器500和伺服器502提供了在客戶機504、客戶機506、伺服器508、客戶機510和客戶機512之間傳送數據的連接。鏈路集聚514用來保證所希望的帶寬。用來處理通過鏈路集聚514傳送的數據分組的過程或算法在這些例示性例子中在伺服器500和伺服器502內實現。
現在來看圖6,圖中示出了一個按照本發明的一個優選實施例設計的協議組的示意圖。協議組600在這個例子中是一個TCP/IP協議組,協議組600包括應用層602、傳送層604、網絡層606、數據鏈路層608和物理層610。應用層602在協議組600內是頂層,定義用來與其他程序通信的語言和句法。傳送層604保證整個文件或消息的傳遞。這個層負責在一個會話傳輸中全部端到端的合法性和完整性。
網絡層606用來為不同端點之間的數據進行路由選擇。數據鏈路層608負責在節點之間發送數據分組。物理層610負責發送和接收連接媒體的比特。算法協商協議612包含在數據鏈路層608內。
在圖4和5所示的例子中,端點之一,例如伺服器500或交換機400,在一個鏈路集聚已經建立後啟動算法協商協議。在這些例示性例子中協議是可擴展的,因此可以添加一些其他方案。
如所說明的那樣,這個協議支持處理通過鏈路集聚傳送的數據分組的基本算法。算法的例子從「最好」到「最差」為(1)源/宿傳輸控制協議/用戶數據報協議(TCP/UDP)埠,用的是分組的源(或宿)TCP或UDP埠;(2)源/宿IP位址,用的是分組的源(或宿)IP位址的最後一個字節;以及(3)源/宿MAC地址,用的是分組的源(或宿)MAC地址的最後一個字節。
在本發明的這些例示性例子中的協議認為TCP/UDP埠算法是一個「較好的」算法,因為這個算法可能給出比IP位址算法好的分組分發,而IP位址算法可以得到比MAC地址算法好的分組分發。然而,如果其中一個端點不願意或不能用一個特定的算法,算法協商協議就退回到下一個所希望的處理數據分組的算法。MAC地址算法必須是支持這個協議的所有主機可用的。此外,即使選擇TCP/UDP埠算法,如果發送的是沒有攜帶一個TCP或UDP淨荷的IP分組(例如,ping分組),就使用IP位址算法。如果分組不是IP分組(例如為ARP分組),就使用MAC地址算法。
再來看圖5,作為這些算法怎樣工作的一個例子,假設鏈路集聚514是一個在伺服器500和伺服器502之間的3適配器鏈路集聚。這個集聚具有一個源MAC地址00-11-22-33-44-55。MAC地址算法取MAC地址的最後一個字節(0x55),對它進行模為適配器數的模運算(0x55modulus 3=1),確定使用哪個適配器。用模算符保證了操作的結果小於集聚體內的適配器數。在這個例示性的例子中,由於運算結果為1,就將分組發送給集聚體內的第二個適配器(編號自零開始)。對適配器的編號超出了這個協議的範圍,但應指出的是埠已經用由基層的IEEE 802.3ad協議提供的序號唯一標識。
也就是說,在這個例示性例子中的算法協商協議保證兩個端點支持同一個算法。在會聚發生後,兩個端點,例如圖5中的伺服器500和伺服器502,都知道各自應使用哪個算法,以保證分組通過相同的適配器發送和接收。
在這個例示性例子中,算法協商協議設計成處在一個現有的鏈路集聚協議的頂上。結果,本發明的協議可以是非常輕型的。在這些實例中,對於一個協議數據單元(PDU)只需要四個8比特字節來達到會聚。
現在來看圖7,圖中示出了一個按照本發明的一個優選實施例設計的數據協議單元的一個例子。協議數據單元700含有四個8比特字節。這些8比特字節包括版本702、算法704、標誌(flag)706和保留708。版本702是一個含有算法協商協議的版本號的欄位。算法704標識了由一個端點選擇的算法。標誌706用來發送端點之間的信息。保留欄位供以後協議擴展用。
對於在這些例示性例子中的協議版本1來說,算法704的這些值定義為0-源MAC地址;1-宿MAC地址;2-源IP位址;3-宿IP位址;4-TCP/UDP源埠;以及5-TCP/UDP宿埠。
在這些例子中,「發送方」為發送分組數據單元的主機或端點。標誌706的值定義為(其中比特0為這個8比特字節內最低有效比特)比特0指出算法是否已會聚;比特1標識發送方希望為主還是從;以及比特2-7保留給將來使用。
在比特0內,值為0意味著算法還沒有會聚,而值為1意味著算法已會聚。比特1的值在形成鏈路集聚的會話中,如果發送方希望為從,就設置為等於0,而如果發送方希望為主,就設置為等於1。
在這些例示性例子中,「主」(master)是希望選擇算法的啟動端點,而「從」(slave)是選擇由啟動端點所選的補充(complementary)算法的響應端點。當然,根據具體情況,啟動端點也可以是從。
如果啟動端點願意使用TCP/UDP源埠,響應端點如果可以支持這個算法就選擇TCP/UDP宿埠。在這些例子中,在一個主機和一個交換機之間發生算法協商,其中主機是啟動端點而交換機是響應端點。主機請求它作為主,而交換機實現宣告本身作為從。在這些例子中發生這種情況,因為用戶通常是「關心」使用哪個算法的(例如為了使他的較常見的業務類型達到較好的分發),而交換機是一個被動網元,通常不關心用哪個算法。然而,如果兩個端點都選擇「主」或兩個端點都選擇「從」,在這些例示性例子中MAC地址數字較大的端點將成為主而另一個端點將成為從。
用一個典型的分組數據單元交換來達到會聚,希望成為主的啟動端點在協議開始時發送一個表示它的優選算法的分組數據單元。此外,啟動端點還將標誌706內的比特1置位,以告訴另一個端點它想要成為協商中的主。
如果響應端點支持啟動端點所規定的算法,響應端點就發送一個指定啟動端點在算法704內所指定的算法的補充算法的應答分組數據單元。例如,如果啟動端點指定了「TCP/UDP源埠」(值4),響應端點就在一個應答分組數據單元內發送「TCP/UDP宿埠」(在算法704內的值5)。響應端點還在應答分組數據單元內將標誌706內的比特0置位,告訴啟動端點,就其而言算法已經發生會聚。
在啟動端點接收到這個分組數據單元時,啟動端點就用相同的算法值和標誌欄位內被置位的比特0發送它自己的應答。現在兩個端點都知道已經發生會聚,端點應該開始用商定的算法分發數據分組。
另一方面,在從不支持啟動端點所發送的分組數據單元內所指定的算法時,協議就協商一個主和從都支持的算法。從啟動端點接收到分組數據單元後,響應端點發送一個在算法704內示出它的優選算法和將標誌706內比特0和1清為邏輯0以表明其本身為從和還沒有發生會聚的狀態的應答分組數據單元,在這種情況下,啟動端點可以確定是否支持響應端點所選的算法。如果支持這個算法,就向響應端點發送一個應答分組數據單元,指出已會聚。在處理數據分組中使用的優選算法可以從一個清單中選出,在這個例子中兩個端點可以遍歷這個清單直到在這些例示性例子中發現兩個端點都支持的一個算法。
在協議會聚後,主機或啟動端點就用所有外發的分組的源TCP埠來確定通過哪個適配器來發送它們。相反,交換機,在這個例子中為響應端點,用所有進入的數據分組的宿TCP埠來確定在哪個適配器上發送它們。這種情況意味著兩個端點用相同的值進行計算。由於它們兩個使用補充算法和用同一個值予以操作,因此保證了兩側將最終在相同的適配器(即含有處理分組所必需的TCP狀態的適配器)上發送分組。
在另一個例示性例子中,響應端點發送一個應答分組數據單元,告訴啟動端點響應端點不支持啟動端點所建議的算法,而是支持清單中下一個算法。在這個例子中,算法是「源IP位址」。在這種情況下,啟動端點就發送一個第二應答分組數據單元,通過將圖7中的標誌706內的比特1和0置位為邏輯1來指定「宿IP位址」算法。這個信息告訴響應端點啟動端點願意改為使用IP位址算法,並且就該啟動端點而言,算法就已經發生會聚。響應端點於是用一個含有相同的算法值和在標誌706內被置位的比特0作出響應。現在,兩個端點在處理端點之間形成的鏈路集聚內的數據分組的算法上達成一致。
作為最後的一個例子,假設響應端點響應指定啟動端點本身不支援的算法的初始分組數據單元,發送一個應答數據分組。啟動端點通過發送一個指定啟動端點支持的下一個最低的算法的應答分組數據單元進行響應。在這種情況下,標誌706內的比特1被置位,而比特0清除,因為還沒有發生會聚。
響應來自啟動端點的這個分組數據單元,如果響應端點支持這個算法,響應端點就返回一個指定啟動端點所指定的補充算法的分組數據單元。如果響應端點不支持啟動端點所建議的算法,響應端點就返迴響應端點支持的下一個最低的算法。算法協商協議內的這個過程一直繼續到達到會聚。
雖然這個例示性例子只示出了三組算法,但根據實現方式可以使用其他一些協議。此外,通過至少將源和宿MAC地址包括在算法組內,總是會發生會聚的,因為在最壞的情況下協商將繼續到達到這個算法。
現在來看圖8,圖中示出了按照本發明的一個優選實施例設計的一個啟動協商處理在一個鏈路集聚內的數據分組的算法的過程的流程圖。圖8所示的過程可以在諸如圖2的數據處理系統200之類的數據處理系統內實現。當然,在一個鏈路集聚內這個過程可以在諸如交換機或路由器之類的其他端點內實現。具體地說,這個機制可以在一個諸如圖6中的算法協商協議612之類的算法協商協議內實現。這個過程由一個如以上在例示性例子中所說明的啟動端點使用。
過程從選擇一個優選算法(步驟800)開始。這個優選算法是從一個列有一些可用來處理數據分組的算法的清單中選出的。在這些個例子中,清單按最優選到最不優選的次序排列這些算法。
然後,產生一個協議數據單元(步驟802),這個協議數據單元具有一個標識優選算法的值和一些以不同的值設置的標誌。這個協議數據單元可以例如是圖7所示的協議數據單元700。然後,將這個協議數據單元發送給一個端點(步驟804)。在這個例子中,步驟804中的這個端點是響應端點。
此後,過程等待從響應端點接收對鏈路集聚的應答(步驟806)。然後,確定是否從響應端點接收到應答協議數據單元(步驟808)。如果接收到應答協議數據單元,就確定在協議數據單元內是否指出會聚(步驟810)。會聚情況可以從一個諸如圖7中的標誌706之類的標誌欄位確定。如果在協議數據單元內沒有指出會聚,就識別在應答協議數據單元內所指定的一個算法(步驟812)。這個算法是由響應端點選擇的一個算法。然後,確定是否支持所指定的算法(步驟814)。如果支持所指定的算法,就向端點發送一個指出會聚的協議數據單元(步驟816),隨後過程結束。
再來看步驟808,如果沒有接收到應答協議數據單元,就確定是否已經超時(步驟818)。如果已經超時,就產生一個出錯消息(步驟820),過程結束。然而,如果沒有超時,過程就進至如上面所說明的步驟806。
返回到步驟810,如果在協議數據單元內指出會聚,過程也就結束。在步驟814,如果不支持所指定的算法,過程就返回到步驟800,選擇下一個優選算法。
現在來看圖9,圖中示出了按照本發明的一個優選實施例設計的一個協商在處理一個鏈路集聚內的數據分組中使用的算法的過程的流程圖。圖9所示的過程可以在諸如圖2的數據處理系統200之類的數據處理系統內實現。當然,在一個鏈路集聚內這個過程可以在諸如交換機或路由器之類的其他端點內實現。具體地說,這個機制可以在一個諸如圖6中的算法協商協議612之類的算法協商協議內實現。這個過程由一個如以上在例示性例子中所說明的響應端點使用。
過程從接收到一個協議數據單元(步驟900)開始。這個協議數據單元是從一個啟動端點接收到的。然後,確定是否支持在這個協議數據單元內所指定的算法(步驟902)。如果不支持在這個協議數據單元內所指定的算法,就選擇一個算法(步驟904)。這個算法可以是根據一個選擇方案從一個列有一些算法的列表或組中選出的。
然後,將所選的算法放在一個應答協議數據單元內(步驟906)。然後,將應答協議數據單元發送給啟動端點(步驟908)。然後,過程等待來自啟動端點的應答協議數據單元(步驟910)。確定是否接收到一個應答(步驟912)。如果接收到應答,就確定在應答內是否指出會聚(步驟914)。如果在應答內指出會聚,就向啟動端點返回一個應答,以確認會聚(步驟916),隨後過程結束。
再來看步驟902,如果支持協議數據單元內所指定的算法,過程就進至如上面所說明的步驟916。在步驟912,如果沒有接收到應答,就確定是否需要超時(步驟918)。如果需要超時,過程就結束。然而,如果不需要超時,過程就進至如上面所說明的步驟910。在步驟914,如果在應答內沒有指出會聚,過程就進至如上面所說明的步驟902。
因此,本發明提供了一種得到改善的處理通過一個鏈路集聚發送或分發的數據分組的方法、設備和計算機指令。本發明的機制提供了一個決定端點在通過鏈路集聚傳送數據分組中需用什麼算法的過程。採用本發明的協議,鏈路集聚過程可以充分自動化,同時可以通過保證分組在相同連接的相同適配器上發送和接收,與TCP卸載適配器無縫地配合工作。
此外,要注意的是,雖然是以一個功能完全的數據處理系統為背景對本發明進行說明的,但熟悉該技術領域的一般人員可以理解,本發明的機制能以含有各種形式的指令的計算機可讀媒體形式分發,而且無論用來實際進行分發所用的承載信號的媒體具體是什麼類型,本發明同樣可以適用。計算機可讀媒體的例子包括諸如軟盤、硬碟驅動器、RAM、CD-ROM、DVD ROM之類的記錄型媒體,以及諸如數字和模擬通信系統鏈路(用諸如射頻和光波傳送的傳送形式的有線或無線通信鏈路)之類的傳輸型媒體。計算機可讀媒體可以呈現為要在特定數據處理系統內實際使用時解碼的經編碼的格式。
以上對本發明作了例示性的說明,但這並不是窮舉性的或者將本發明局限於所揭示的形式。許多修改和變動對於熟悉該技術領域的一般人員來說都是顯而易見的。所以選擇和說明這個實施例是為了較好地闡明本發明的原理和實際應用,也為了使熟悉該技術領域的一般人員可以理解本發明的各種為適合要具體使用的情況而作了各種修改的
權利要求
1.一種在一個數據處理系統內為一個發送數據分組的會話協商協議的方法,所述方法包括下列步驟響應與一個會話端點建立一個鏈路集聚,選擇一個處理在會話中的數據分組的算法,以形成一個優選算法;向所述端點發送一個請求,所述請求指示處理會話中的數據分組的優選算法;從所述端點接收一個對所述請求的應答;確定是否已經發生會聚;以及響應已經發生會聚的確定結果,用所述優選算法處理會話中的數據分組。
2.權利要求1的方法,其中所述應答是一個第一應答,而所述方法還包括下列步驟響應還沒有發生會聚的確定結果,識別在第一應答內指定的一個替代算法;確定在所述數據處理系統內是否支持所述替代算法;以及響應在所述數據處理系統內支持所指定的算法的確定結果,向指出會聚的端點發送一個第二應答。
3.權利要求1的方法,其中所述確定步驟包括確定所述應答是否指定所述優選算法的一個補充算法。
4.權利要求2的方法,其中通過指定對所述替代算法的補充算法而在第二應答內指出所述會聚。
5.權利要求1的方法,其中所述優選算法是從源媒體訪問控制地址算法、宿媒體訪問控制地址算法、源網際網路協議地址算法、宿網際網路協議地址算法、傳輸控制協議/用戶數據報協議源埠算法或傳輸控制協議/用戶數據報協議源埠算法中選出的算法。
6.權利要求1的方法,其中所述請求是一個協議數據單元。
7.權利要求1的方法,其中所述協議數據單元包括算法欄位和標誌欄位的標識。
8.權利要求1的方法,其中標誌欄位包括一個標明是否已經發生會聚的第一比特和一個指出是請求主職責還是從職責的第二比特。
9.一種用於為一個發送數據分組的會話協商協議的數據處理系統,所述數據處理系統包括選擇裝置,用來響應與一個會話端點建立一個鏈路集聚,選擇一個處理會話中的數據分組的算法,以形成一個優選算法;發送裝置,用來向所述端點發送一個請求,所述請求指示處理會話中的數據分組的優選算法;接收裝置,用來從所述端點接收一個對所述請求的應答;確定裝置,用來確定是否已經發生會聚;以及處理裝置,用來響應已經發生會聚的確定結果,用所述優選算法處理會話中的數據分組。
10.權利要求9的數據處理系統,其中所述應答是一個第一應答,所述確定裝置是一個第一確定裝置,而所述發送裝置是第一發送裝置,所述數據處理系統還包括識別裝置,用來響應還沒有發生會聚的確定結果,識別在第一應答內指定的一個替代算法;第二確定裝置,用來確定在所述數據處理系統內是否支持所述替代算法;以及第二發送裝置,用來響應在所述數據處理系統內支持所指定的算法的確定結果,向指出會聚的端點發送一個第二應答。
11.權利要求9的數據處理系統,其中所述確定裝置包括確定裝置,用來確定所述應答是否指定所述優選算法的一個補充算法。
12.權利要求10的數據處理系統,其中通過指定對所述替代算法的補充算法而在第二應答內指出所述會聚。
13.權利要求9的數據處理系統,其中所述優選算法是從源媒體訪問控制地址算法、宿媒體訪問控制地址算法、源網際網路協議地址算法、宿網際網路協議地址算法、傳輸控制協議/用戶數據報協議源埠算法或傳輸控制協議/用戶數據報協議源埠算法中選出的算法。
14.權利要求9的數據處理系統,其中所述請求是一個協議數據單元。
15.權利要求9的數據處理系統,其中所述協議數據單元包括算法欄位和標誌欄位的標識。
16.權利要求9的數據處理系統,其中標誌欄位包括一個標明是否已經發生會聚的第一比特和一個指出是請求主職責還是從職責的第二比特。
17.一種在一個計算機可讀媒體內的為一個發送數據分組的會話協商協議的電腦程式產品,所述電腦程式產品包括第一指令,用來響應與一個會話端點建立一個鏈路集聚,選擇一個處理會話中的數據分組的算法,以形成一個優選算法;第二指令,用來向所述端點發送一個請求,所述請求指示處理會話中的數據分組的優選算法;第三指令,用來從所述端點接收一個對所述請求的應答;第四指令,用來確定是否已經發生會聚;以及第五指令,用來響應已經發生會聚的確定結果,用所述優選算法處理會話中的數據分組。
18.權利要求17的電腦程式產品,其中所述應答是一個第一應答,而所述電腦程式產品還包括第六指令,用來響應還沒有發生會聚的確定結果,識別在第一應答內指定的一個替代算法;第七指令,用來確定在所述數據處理系統內是否支持所述替代算法;以及第八指令,用來響應在所述數據處理系統內支持所指定的算法的確定結果,向指出會聚的端點發送一個第二應答。
19.權利要求17的電腦程式產品,其中所述第四指令包括子指令,用來確定所述應答是否指定所述優選算法的一個補充算法。
20.權利要求18的電腦程式產品,其中通過指定對所述替代算法的一個補充算法而在第二應答內指出所述會聚。
21.權利要求17的電腦程式產品,其中所述優選算法是從源媒體訪問控制地址算法、宿媒體訪問控制地址算法、源網際網路協議地址算法、宿網際網路協議地址算法、傳輸控制協議/用戶數據報協議源埠算法或傳輸控制協議/用戶數據報協議源埠算法中選出的算法。
22.權利要求17的電腦程式產品,其中所述請求是一個協議數據單元。
23.權利要求17的電腦程式產品,其中所述協議數據單元包括算法欄位和標誌欄位的標識。
24.權利要求17的電腦程式產品,其中標誌欄位包括一個標明是否已經發生會聚的第一比特和一個指出是請求主職責還是從職責的第二比特。
25.一種數據處理系統,所述數據處理系統包括總線系統;接到總線系統上的存儲器,所述存儲器包括一組指令;以及接到總線系統上的處理單元,所述處理單元執行一組實現以下操作的指令響應與一個會話端點建立一個鏈路集聚,選擇一個用來處理會話中的數據分組的算法,以形成一個優選算法;向所述端點發送一個請求,所述請求指示處理會話中的數據分組的優選算法;從所述端點接收一個對所述請求的應答;確定是否已經發生會聚;以及響應已經發生會聚的確定結果,用所述優選算法處理會話中的數據分組。
全文摘要
本發明提供了一種為一個有一些數據分組要發送的會話協商協議的方法、設備和計算機指令。響應與一個會話端點建立一個鏈路集聚,選擇一個處理在會話中的數據分組的算法,以形成一個優選算法。將一個請求發送給這個端點,這個請求指出處理會話中的數據分組的優選算法。從這個端點接收到一個對這個請求的應答後,確定是否已經發生會聚。響應已經發生會聚的確定結果,用所述優選算法處理會話中的數據分組。
文檔編號H04L12/56GK1703022SQ200510008199
公開日2005年11月30日 申請日期2005年2月22日 優先權日2004年5月27日
發明者莉蓮·希爾維亞·費爾南德斯, 維尼特·簡恩, 喬治·拉法埃爾·諾格拉斯 申請人:國際商業機器公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀