專利名稱:監視傳輸中分組以優化網絡中的分組流量的系統和方法
技術領域:
所公開的系統和方法通常涉及在計算機網絡或互聯網絡(internetwork)中節點之間的通信與數據交換,尤其涉及基于因特網協議的網絡和互聯網絡。各示例性實施例特別針對的是計算機節點之間的有效且經濟的數據傳輸。
背景技術:
互聯網絡是使用公共的路由技術連接的不同計算機網絡的集合。“因特網”是這種互聯網絡的例子,其中不同網絡中節點之間的通信受到諸如因特網協議(IP)組的互聯網絡協議標準的幫助。適當的名詞“因特網”anternet或INTERNET)指的是使用因特網協議組來交換數據的互聯分組交換網絡的一種全球公開接入系統。不是“因特網”但使用該因特網協議組的互聯網絡有時被不同地稱為“互聯網”、 "IP互聯網絡”、“私有互聯網”、“私有IP互聯網絡”或“私有IP網絡”。也就是說,盡管由于其全球且公開可接入本質而非常普及,但是“因特網”僅為基于IP的互聯網絡的一個例子。如一般在IP網絡中所知,為了使IP互聯網絡中的一節點發送數據到該IP互聯網絡中的另一節點,該數據必須被封裝于IP分組中。圖IA是與現有技術一致的計算機網絡的方塊圖。如圖IA中所示,節點1、節點2、 節點3和節點4都被連接至計算機網絡10。對于在網絡之間發生的數據交換來說,必須形成互聯網絡。互聯網絡的形成取決于被特別地稱為“路由器”的某些節點的使用
圖IB是與現有技術一致的互聯網絡的方塊圖。如圖IB中所示,互聯網絡20包含網絡A、網絡B、網絡C、及網絡D。該些網絡中每一個都包含以一圓圈區分開來的特定節點。 特定節點節點A、節點B、節點C、及節點D是路由器,并且此后將其分別指定為路由器A、路由器B、路由器C、及路由器D。在一個例子中,如果網絡C的節點C3發送一分組至網絡A的節點Al,則該分組必須先被發送到網絡C的路由器C。路由器C接著發送該分組至網絡B的路由器B。從路由器B將該分組發送到網絡路由器A的路由器A,其將該分組遞送至網絡A的節點Al。對于在網絡之間如何將一分組自一個節點路由至另一節點的命名經常被稱為節點之間的“路徑”。 路徑是路由器的有序列表,并且一路徑的每個元素被不同地稱為“中間節點”、“中介節點”、 或更簡單地稱為“跳躍”。例如從節點C3至節點Al的路徑能被指定為P = (C,B, A),其中路由器C、B、及 A全都是有序列表P中的跳躍或中間節點。節點或路由器之間的路徑能以動態或靜態的方式形成。諸如路由信息協議(RIP)、 邊界網關協議(BGP)、及開放最短路徑優先(OSPF)之類的通信協議是IP互聯網絡中所使用的動態互聯網絡協議的例子。擁塞控制在概念上被說明為以最大化通信節點之間的理想吞吐量且同時避免擁塞崩潰為目標來控制分組進入給定網絡的流入流量的速率。擁塞崩潰是其中存在因為擁塞
4而發生的很少或無用的通信的情形。在諸如IP互聯網絡的分組交換互聯網絡中存在兩種能夠實現擁塞控制的普遍方法1.路由器丟棄分組。互聯網絡中的路由器通過丟棄由節點所發送的分組,否則這些分組將導致超過兩個路由器之間的最大分組或數據速率,來執行擁塞控制。這種例子能在 Sally Floyd 及 Van Jacobson 的論文"Random Early Detection (RED) Gateways For Congestion Avoidance (擁塞避免之隨機早期偵測(RED)網關器)”所述的方法中找到。2.非路由器節點執行端到端擁塞控制。節點可使用類似傳輸控制協議(TCP)的擁塞避免的擁塞避免算法,其在IP互聯網絡中的兩個非路由器節點之間執行擁塞控制。 TCP擁塞避免具有多個變型,包括如下變型TCP Reno、TCP Tahoe、及TCP Vegas。Kevin Fall 及 Sally Floyd 的論文“Simulation-based Comparisons of Tahoe, Reno and SACK TCP (Tahoe、Reno 及 SACK TCP 的模擬式比較)”作為 Van Jacobson 的"Congestion Avoidance and Control (擁塞避免和控制)”的有用參考文獻。類似于上文所述的“路由器丟棄分組”方法的方法是非端到端擁塞控制模型。 Sally Floyd禾口 Van Jacobson 的"RED Gateways For Congestion Avoidance (用于擁塞避免的RED網關)”描述了一種由路徑的路由器和中介跳躍丟棄分組以強化最大鏈路容量的方法。類似于TCP擁塞避免同時是端到端的方法不將互聯網絡路徑的中介跳躍(路由器)看作為擁塞點。在該TCP擁塞避免技術中,關于是否發送一分組的決定是基于端點的孤立的通信成功率。
發明內容
本文所述的多個示例性實施例通過考慮中介節點的分攤(amortized)的成功及失敗率來優化在網絡上的兩個端點之間的分組流量。這種擁塞控制方法不同于其它擁塞控制方法,并且提供了端到端擁塞控制,其在確定是否要發送一分組時使用網絡的路由器的最大容量作為主要考慮。公開了一種在具有多個網絡的互聯網絡中進行擁塞控制的示例性方法。所述方法包括將請求分組發送到第二網絡中的節點;在請求分組被發送到該第二網絡的節點時或是否從該第二網絡的節點接收到響應分組,對傳輸中分組計數器的數值進行調整;以及基于該傳輸中分組計數器的數值來確定是否能發送另一請求分組。另一示例性方法涉及在具有多個網絡的互聯網絡的第一網絡中的節點處進行的擁塞控制。所述方法包括將來自第一網絡中的節點的第一請求分組發送到第二網絡中的節點;減小所述第一網絡節點的傳輸中分組計數器;和啟動所述第一網絡節點的定時器。 所述方法還包括在從所述第二網絡節點接收到響應分組或所述定時器的期滿時間被超過時,增大所述第一網絡節點的傳輸中分組計數器;以及基于所述傳輸中分組計數器的數值來確定是否能從所述第一網絡節點發送第二請求分組。以程序編碼一種示例性計算機可讀介質,所述程序用于在具有多個網絡的互聯網絡中的第一網絡的基于處理器的節點處執行擁塞控制。所述計算機可讀介質包括第一模塊,將請求分組發送到第二網絡中的節點;第二模塊,基于所述請求分組被發送到所述第二網絡的節點、從所述第二網絡的節點接收到響應分組和與所述請求分組相關聯的定時器的期滿時間中的一個,對傳輸中分組計數器的數值進行調整;以及第三模塊,基于所述傳輸中分組計數器的數值來確定是否能發送另一請求分組。示例性方法涉及在具有多個網絡的互聯網絡中進行的擁塞控制。所述方法系包括在所述多個網絡中的第一網絡的多個節點中,建立分別與所述多個網絡中的其它網絡相關聯的多個分組隊列和傳輸中分組計數器。對于將要從所述第一網絡中的節點發送到所述其它網絡的給定網絡中的節點的請求分組,所述方法還包括以至少一個請求分組加載與所述給定網絡隊列相關聯的分組,其中所述至少一個請求分組的目的地為所述互聯網絡的所述給定網絡中的節點;將所述至少一個請求分組發送到所述給定網絡中的所述節點; 在所述請求分組被發送到所述給定網絡中的所述節點時在一個方向上調整與所述給定網絡相關聯的傳輸中分組計數器的數值,并且在從所述給定網絡中的所述節點接收到響應分組時,在另一方向上調整所述傳輸中分組計數器;以及基于所述傳輸中分組計數器的數值來確定是否能將另一請求分組發送到所述給定網絡中的所述節點。
在下面參考附圖詳細描述本發明的示例性實施例,在附圖中圖IA是根據現有技術的計算機網絡的方塊圖;圖IB是根據現有技術的互聯網絡的方塊圖;圖2A是根據示例性實施例的互聯網絡的示意圖;圖2B及2C是根據示例性實施例的擁塞控制方法的流程圖;圖3是根據示例性實施例的互聯網絡的示意圖;圖4A至4D是每一個網絡隊列在根據示例性實施例的擁塞控制處理期間的示意圖;以及圖5是根據示例性實施例的公用設施監視和控制網絡的示意圖。
具體實施例方式圖2A是根據示例性實施例的互聯網絡的示意圖。如圖2A中所示,分組交換互聯網絡200包含分組交換網絡A到D。每一個分組交換網絡都包含多個非路由器節點及至少一個路由器節點。例如,網絡A包含多個非路由器節點A1至An及路由器Ακ,網絡B包含多個非路由器節點B1至 及路由器Βκ,網絡C包含多個非路由器節點C1至Cn及路由器CK,而網絡D包含多個非路由器節點D1至Dn及路由器DK。在此后,將參照示例性網絡X和Y (未圖示)描述互聯網絡200中分組交換網絡的共同特征。在示例性實施例中,IP互聯網絡中的非路由器節點能被配置成發送分組至互聯網絡200中的其它非路由器節點。在該互聯網絡上發送這些分組的節點在此后被稱為“發送節點”。意欲在該互聯網絡上接收分組的節點在此后被稱為“接收節點”。具體而言,該示例性實施例針對其中在分組交換互聯網絡的給定分組交換網絡中的發送節點將分組發送到相同互聯網絡中的不同網絡的接收節點的情況。例如,網絡A中的節點A2(發送節點)能被配置成發送分組至網絡B上的接收節點節點Bi、節點B2、節點B3、和節點B4 ;網絡C上的節點Cl、節點C2、節點C3、和節點C4 ;及網絡D上的節點D1、節點D2、節點D3、和節點D4。通常真實的是不論發送節點何時將分組發送到接收節點,該發送節點在發送了原始分組之后的某一時間量內期望獲得作為響應于所發送的原始分組的確認的分組。該確認分組可僅含有確認或可含有響應數據(其暗示了確認)。源自發送節點的分組將被稱為請求分組,而由接收節點所發送的分組將被稱為響應分組。普通技術人員將理解對于任何互聯網絡來說,一個網絡至任一其它網絡之間的路徑具有最大(可能是變化的)延遲和數據吞吐率。示例性實施例提供了一種用于端到端擁塞控制的方法,其在確定是否要發送分組時使用網絡的路由器的最大容量作為主要考
^^ ο在網絡X處,在互聯網絡中諸如網絡Y(未示出)的每一個其它分組交換網絡都具有相關的分組隊列。例如,隊列Y指定從網絡X中的節點要發送到網絡Y中的接收節點的請求分組的隊列。該分組隊列的實施方式被顯示于圖2Α中。例如,網絡A能包含隊列B、隊列C和隊列D。同樣盡管沒有顯示,網絡B能包含隊列Α、隊列C和隊列D ;網絡C能包含隊列Α、隊列B和隊列D ;及網絡D能包含隊列Α、隊列B和隊列C。超時數值Timeout與發送節點發送到接收節點的每一個請求分組相關聯。普通技術人員將理解=Timeout的數值對于每一個請求分組不必都是相同的,且事實上可能對于由該發送節點所發送的每一個請求分組是不同的。數值Timeout表示發送節點在宣告請求分組或響應分組丟失之前等待從接收節點接收響應分組的以秒為單位(可能為分數)的最大時間。可以在該互聯網絡中的一個網絡處為互聯網絡200中的每一個其它網絡定義最大可允許的傳輸中分組計數器。例如,對于網絡X,針對網絡Y的傳輸中分組計數器能被指定為PIF-INITIAL-Y。針對網絡Y的計數器PIF-INITIAL-Y能被指派大于0的初始整數值。而且,網絡X處的每一個PIF-INITIAL的初始值對于每一個網絡可以是不同的。 PIF-INITIAL數值表示可能被發送到給定網絡的未被確認的請求分組的最大數目。傳輸中分組計數器的示例性實施方式被顯示于圖2A中。例如,對于網絡A,PIF-INITIAL-B與網絡 B相關聯,PIF-INITIAL-C與網絡C相關聯,而PIF-INITIAL-D與網絡D相關聯。未被確認的請求分組是發送節點還未收到響應分組或還未超過期滿時間的請求分組。期滿時間能如下定義期滿時間=當前時間+Timeout在互聯網絡中的一個網絡處為該互聯網絡中的每一個其它網絡定義多個目前未被確認的傳輸中分組計數器。對于示例性網絡X來說,針對網絡Y的目前未被確認的傳輸中分組計數器能被指定為PIF-UNACKED-Y。該PIF-UNACKED-Y數值能為具有初始值0的整數值。PIF-UNACKED數值表示已被發送到給定網絡的未被確認的請求分組的當前數目。如先前所定義的那樣,未被確認的請求分組是發送節點還未收到響應分組或還未超過期滿時間的請求分組。目前未被確認的傳輸中分組計數器的示例性實施方式被顯示于圖2A中。 例如,對于網絡A,PIF-UNACKED-B與網絡B相關聯,PIF-UNACKED-C與網絡C相關聯,而 PIF-UNACKED-D與網絡D相關聯。圖2B及2C是根據示例性實施例的擁塞控制方法的流程圖。如圖2B中所示,如果符合兩個提件,則發送節點能發送請求分組至接收節點。第一,對于網絡X,與網絡Y中的接收節點相關聯的分組隊列隊列Y必須為非空 (S200)。第二,與網絡Y相關聯的PIF-UNACKED-Y數值必須小于也與網絡Y相關聯的 PIF-INITIAL-Y(S202)。如果符合這兩個條件,則分組從網絡X中的隊列Y中移出且被發送到網絡Y的接收節點(S204)。PIF-UNACKED-Y的數值被增大且所發送的請求分組的期滿時間被設定為期滿時間=當前時間+Timeout (步驟S206)。另一方面,如果PIF-UNACKED-Y 的數值等于PIF-INITIAL-Y,則網絡X中的發送節點在此時不進行任何動作。如圖2C中所示,如果在網絡X處收到來自網絡Y中的接收節點的響應分組,則計數器PIF-UNACKED-Y被減小(S208)。另一方面,如果在網絡X處未收到來自網絡Y中的接收節點的響應分組,則發送節點確定是否超出期滿時間(S208)。如果已經超出了發送到網絡Y中的接收節點的請求分組的期滿時間,則計數器PIF-UNACKED-Y被減小(S210)。每當用于任何給定網絡Y的計數器PIF-INITIAL-Y的數值大于0時,則對于網絡X中的發送節點來說,可以針對網絡Y中的接收節點重復進行步驟S200。在替代性實施例中,不同于在發送分組至接收節點時增大計數器和在從接收節點收到分組或已經超過期滿時間時減小計數器,該系統能被配置成在發送分組時減小計數器和在收到分組或已經超過期滿時間時增大計數器。例如,在示例性網絡X中,計數器 PIF-UNACKED-Y能被計數器PIF-REMAINING-Y取代,其中計數器PIF-REMAINING-Y表示針對網絡Y,網絡X中的可允許的剩余傳輸中分組。在這種情況下,PIF-REMAINING-Y的初始數值被設定為PIF-INITIAL-Y。只要PIF-REMAINING-Y大于0,則來自隊列Y的分組可被發送到網絡Y。當發送分組時,PIF-REMAINING-Y被減小1。當收到來自網絡Y的響應分組或超過期滿時間時,則PIF-RE MAINING-Y被增大。圖3是根據示例性實施例的互聯網絡的示意圖。如圖3中所示,互聯網絡300包含被指定為網絡A、網絡B、網絡C及網絡D的多個網絡。每一個網絡包括多個節點。該多個節點及其與相應網絡的成員關系能如下定義 網絡 A 包含節點 A1、A2、A3、A4 ; 網絡 B 包含節點 B1、B2、B3、B4 ;·網絡C包含節點Cl、C2、C3、C4 ;及 網絡 D 包含節點 D1、D2、D3、D4。普通技術人員將理解根據需要,互聯網絡300可具有任何數目的網絡且每一個網絡可具有任何數目的多個節點。網絡的數目及每個網絡的節點的數目能隨著實施方式而改變。在基于互聯網絡300的示例性實施方式中,節點Al能發送請求分組至節點B1、B2、 B3、B4、C1、C2、C3、C4、D1、D2、D3、D4中的每一個。為了區別一個分組與另一個分組,目的地為這些節點中的每一個的請求分組能夠被標注以標記RP RECEIVING-NODE。例如,目的地為接收節點Bl的請求分組被標記為RP:B1,而目的地為接收節點C2的請求分組被標記為 RP:C2,且依此類推。目的地為節點Bl至B4、Cl至C4和Dl至D4的請求分組中的每一個能被列舉如下RP:B1、RP:B2、RP:B3、RP:B4、RP:C1、RP:C2、RP:C3、RP:C4、RP:D1、RP:D2、RP:D3 及 RP:D4。
每一個請求分組具有以秒為單位的相關期滿時間或超時數值T。請求分組的超時數值不必全部都相同,根據需要,每一個請求分組可以具有特有的超時數值。可以基于接收節點所對應的目的地網絡組織請求分組。也就是,對于網絡A來說, 能為網絡B、C和D中的每一個建立一隊列,其中如果與請求分組相關聯的節點是與隊列相關聯的網絡的成員,則該請求分組是該隊列的成員。而且,對于這些隊列中的每一隊列,初始的傳輸中分組(PIF-INITIAL)變量能被設定為某一初始數值,且這些隊列中的每一隊列的未被確認的傳輸中分組(PIF-UNACKED)變量能被設定為0。在以下討論中,將在互聯網絡300的一實施方式的上下文中描述如圖2B及2C中所示的擁塞控制方法。如果每一網絡隊列都為非空且每一隊列的PIF-INITIAL的數值都被初始化,則節點Al能發送請求分組至節點Bl至B4、Cl至C4、和Dl至D4中的任一個(S200)。圖4A說明了在完成S200之后每一隊列的示例性狀態。如圖4A中所示,以相應的請求分組加載每一隊列,且每一隊列的初始PIF數值被初始化為PIF-INITIAL-B = 3、 PIF-INITIAL-C = 1、PIF-INITIAL-D = 2。如果一隊列的PIF-UNACKED數值小于相應的PIF-INITIAL數值(S202、S204),則請求分組可以從該隊列中被移出且被發送到指定的接收節點。同時,PIF-UNACKED數值被增大 1 (S206)。另一方面,如果該隊列的PIF-UNACKED數值不小于該隊列的相應的PIF-INITIAL 數值,則處理回到步驟S200以確定該隊列是否為非空。 可以針對每一隊列重復進行步驟S200至S206,直到PIF-UNACKED數值等于 PIF-INITIAL 數值。圖4B說明網絡A的隊列隊列B、隊列C和隊列D在完成步驟S206之后且在 PIF-UNACKED等于PIF-INITIAL數值時的示例性狀態。比較圖4A及4B,普通技術人員將理解分組已經從其相應的隊列中被移出,并且基于如下所示的與每個相應分組相關聯的隊列和網絡,將所述分組發送到指定的接收節點。·網絡 B、隊列 B :RP:B4、RP:B3、RP:B2·網絡 C、隊列 C :RP:C3 網絡 D、隊列 D :RP:D4、RP:D1每當網絡的PIF-UNACKED數值小于該網絡的PIF-INITIAL數值時,則與該網絡相關聯的隊列中的分組能被移出。一旦從該隊列中被移出,分組被發送到所指定的接收節點, 且計數器PIF-UNACKED的數值被更新以反映未被確認的分組的數目。在沒有收到來自接收節點的響應或還未超過該分組的期滿時間時,分組未被確認。再次回到圖2C的擁塞控制方法,如果超過了所發送分組的期滿時間,則該分組被宣告丟失。可替代地,如果收到相應的響應分組,則分組通信是成功的(S208)。在任一情況下,用于該網絡的計數器PIF-UNACKED的數值被減小1 (S210)。例如,如果RP:C3被宣告成功或丟失,則PIF-UNACKED-C的數值被減小1,使得 PIF-UNACKED-C = 0。圖4C是反映網絡A中的每一隊列在完成步驟S208之后的示例性狀態的示意圖。如圖4C 中所示,PIF-UNACKED-C = 0,其小于 PIF-INITIAL-C = 1。因此,隊列 C 中的下一個分組被移出(RP:C1)且被發送到接收節點Cl。PIF-UNACKED-C的數值被增大1,使得 PIF-UNACKED-C = 1。圖4D是說明每一隊列在完成步驟S210之后的示例性狀態的示意圖。如圖4D中所示,RP: Cl已被移出隊列C且PIF-UNACKED-C = 1。普通技術人員將理解要發送的請求分組的設定不必是固定的。例如,如果在運行在發送節點上的應用程序的存活期間有額外分組要被發送到另一節點,則請求分組能被加載到與適當網絡相關聯的適當隊列內。圖2B及2C中所示的算法可以由發送節點處的處理器執行,使得該發送節點能基于每個網絡來執行擁塞控制。示例性實施例能以各種不同類型的通信系統來實施。一個說明性例子是公用設施監視和控制網絡。圖5是根據示例性實施例的公用設施監視和控制網絡的示意圖。該公用設施監視和控制網絡能基于圖3的示例性互聯網絡實施方式進行配置。該示例性公用設施監視和控制網絡能具有以下節點和網絡定義·網絡A能被指定為公用設施的后端支持網絡(back office network)。 路由器A能被指定為后端支持虛擬私有網絡(VPN)集中器。·路由器B、路由器C和路由器D能被指定為無線接入點,且此后分別被稱為接入點B、接入點C和接入點D ;或AP-B、AP-C和AP-D。·網絡B、網絡C和網絡D能被指定為無線網格網絡。· AP-B,AP-C和AP-D之間的互聯鏈路能為廣域網(WAN)鏈路。WAN鏈路的本質能為多種類型中的一種,所述多種類型包括以太網、碼分多址(CDMA)、通用分組無線電業務 (GPRS)、演進數據優化(EVDO)、寬帶碼分多址(WCDMA)、或根據需要為任何其它合適的WAN 鏈路。 節點Bl至B4、C1至C4和Dl至D4中的每一個都能被指定為無線網格網絡中的節點。·節點Bl至B4、C1至C4和Dl至D4中的每一個都能經由串行線被連接至公用設施計量裝置。該公用設施計量裝置能被指定為住宅或商用或工業用的各種電表、氣表、和水表,或根據需要為任何其它合適的計量裝置。·節點Bl至B4、Cl至C4和Dl至D4中的每一個的處理器能通過軟件被配置為基于圖2B及2C中所示的擁塞控制算法來發送查詢和命令至所連接的公用設施計量裝置和發送這些查詢的結果和命令至該互聯網絡中的其它節點。上文所述的示例性系統和方法提供了優于傳統擁塞控制和/或避免技術的數個優勢。特別是,在另一方面,如本文中所述的用于監視網絡中的傳輸中分組的示例性系統和方法并非由路由器而是由非路由器發送節點所實施。而且,上述系統和方法將發送分組至網絡的確定基于該網絡的路由器的總體容量,而非該網絡的單一節點的孤立容量。本文中所述的系統和方法能通過經編碼、記錄、或儲存在計算機可讀介質上的軟件代碼來實施。該計算機可讀介質能用于配置每一個發送節點中,所述發送節點如上文所述被連接至互聯網絡。普通技術人員將理解該計算機可讀介質能包含光盤、磁盤、閃存、磁帶、或根據需要是任何有形儲存裝置或介質。普通技術人員將理解本文中所述的擁塞控制系統和方法能適應任意數量的網絡和互聯網絡、任意數量的請求分組、和每一網絡中的任意數量的節點。
盡管已經參考具體實施例描述了本發明,但是該描述僅僅是本發明的表示而不被解釋為限制本發明。對于本領域技術人員而言可以有各種修改和應用,而不背離由所附權利要求定義的本發明的真實精神和范圍。
權利要求
1.一種在具有多個網絡的互聯網絡中進行擁塞控制的方法,所述方法包括 將來自第一網絡中的節點的第一請求分組發送到第二網絡中的節點;增大所述第一網絡節點的傳輸中分組計數器; 啟動所述第一網絡節點的定時器;在發生從所述第二網絡節點接收到響應分組或所述定時器的期滿時間被超過之一時, 減小所述第一網絡節點的傳輸中分組計數器;以及基于所述傳輸中分組計數器的數值來確定是否能從所述第一網絡節點發送第二請求分組。
2.如權利要求1所述的方法,其中發送第一請求分組包括 確定所述第一網絡節點的分組隊列是否為非空;以及計算所述傳輸中分組計數器的數值。
3.如權利要求2所述的方法,其中計算所述傳輸中分組計數器的數值包括 將所述第一網絡的傳輸中分組的最大數目與傳輸中分組的目前數目進行比較。
4.如權利要求1所述的方法,其中所述定時器的期滿時間等于所述定時器的目前數值加上所述請求分組的超時數值。
5.一種在具有多個網絡的互聯網絡中的第一網絡內的節點處進行擁塞控制的方法,所述方法包括將請求分組發送到第二網絡中的節點;在所述請求分組被發送到所述第二網絡的節點時和在從所述第二網絡的節點接收到響應分組時,對傳輸中分組計數器的數值進行調整;以及基于所述傳輸中分組計數器的數值來確定是否能發送另一請求分組。
6.如權利要求5所述的方法,進一步包括在所述請求分組被發送到所述第二網絡的節點時,減小所述傳輸中分組計數器。
7.如權利要求5所述的方法,進一步包括在從所述第二網絡的節點接收到所述響應分組時,增大所述傳輸中分組計數器。
8.如權利要求5所述的方法,進一步包括在所述請求分組被發送到所述第二網絡的節點時,啟動與所述請求分組相關聯的定時器ο
9.如權利要求8所述的方法,進一步包括當在從所述第二網絡的節點接收到所述響應分組之前超過所述定時器的期滿時間時, 增大所述傳輸中分組計數器。
10.如權利要求9所述的方法,其中所述定時器的期滿時間等于所述定時器的目前數值加上所述請求分組的超時數值。
11.如權利要求5所述的方法,進一步包括在所述請求分組被發送到所述第二網絡的節點時,增大所述傳輸中分組計數器。
12.如權利要求5所述的方法,進一步包括在從所述第二網絡的節點接收到所述響應分組時,減小所述傳輸中分組計數器。
13.如權利要求12所述的方法,其中計算所述傳輸中分組計數器的數值包括 將所述第一網絡的傳輸中分組的最大數目與傳輸中分組的目前數目進行比較。
14.如權利要求11所述的方法,其中所述定時器的期滿時間等于所述定時器的目前數值加上所述請求分組的超時數值。
15.一種以程序編碼的計算機可讀介質,所述程序用于在具有多個網絡的互聯網絡中的第一網絡的基于處理器的節點處執行擁塞控制,所述計算機可讀介質包括第一模塊,將請求分組發送到第二網絡中的節點;第二模塊,基于所述請求分組被發送到所述第二網絡的節點、從所述第二網絡的節點接收到響應分組和與所述請求分組相關聯的定時器的期滿時間中的一個,對傳輸中分組計數器的數值進行調整;以及第三模塊,基于所述傳輸中分組計數器的數值來確定是否能發送另一請求分組。
16.如權利要求15所述的計算機可讀介質,進一步包括在所述請求分組被發送到所述第二網絡的節點時,減小所述傳輸中分組計數器。
17.如權利要求15所述的計算機可讀介質,進一步包括在從所述第二網絡的節點接收到所述響應分組時,增大所述傳輸中分組計數器。
18.如權利要求15所述的計算機可讀介質,進一步包括當在從所述第二網絡的節點接收到所述響應分組之前超過所述定時器的期滿時間時, 增大所述傳輸中分組計數器。
19.如權利要求15所述的計算機可讀介質,其中所述定時器的期滿時間等于所述定時器的目前數值加上所述請求分組的超時數值。
20.一種在具有多個網絡的互聯網絡中進行擁塞控制的方法,所述方法包括在所述多個網絡中的第一網絡的多個節點中,建立分別與所述多個網絡中的其它網絡相關聯的多個分組隊列和傳輸中分組計數器;對于將要從所述第一網絡中的節點發送到所述其它網絡的給定網絡中的節點的請求分組以至少一個請求分組加載與所述給定網絡隊列相關聯的分組,其中所述至少一個請求分組的目的地為所述互聯網絡的所述給定網絡中的節點;將所述至少一個請求分組發送到所述給定網絡中的所述節點;在所述請求分組被發送到所述給定網絡中的所述節點時在一個方向上調整與所述給定網絡相關聯的傳輸中分組計數器的數值,并且在從所述給定網絡中的所述節點接收到響應分組時,在另一方向上調整所述傳輸中分組計數器;以及基于所述傳輸中分組計數器的數值來確定是否能將另一請求分組發送到所述給定網絡中的所述節點。
全文摘要
公開了優化網絡中的分組流的系統和方法。互聯網絡包含多個網絡,每個網絡具有多個非路由器節點及至少一個路由器節點。第一網絡的非路由器節點可以被配置成執行擁塞控制。非路由器節點發送請求分組至第二網絡中的節點。當該請求分組被發送到該第二網絡節點時且當從該第二網絡節點接收到響應分組時,與該網絡相關聯的傳輸中分組計數器的數值被調整。該非路由器節點基于該傳輸中分組計數器的數值來確定另一請求分組是否能被發送到該互聯網絡中的另一網絡。
文檔編號H04L12/56GK102356602SQ201080012347
公開日2012年2月15日 申請日期2010年1月29日 優先權日2009年2月5日
發明者B·瑪特索, W·C·Y·尤恩格 申請人:思飛信智能電網公司