專利名稱:在分組環上傳送報文的方法
技術領域:
本發明涉及網絡通信技術領域,具體涉及一種在分組環上傳送報文的方法。
背景技術:
由于以太網技術配置簡單、組網靈活、價格低廉,而且技術本身已經被大多數人所熟悉和接受,因此以太網組網技術得到很大發展。以太網在局域網中表現出的種種優勢,正在逐漸使其成為城域網甚至廣域網中的承載網絡。為了保證業務的可靠傳輸和節約光纖資源,通常采用以太環網提供主備用鏈路來實現。以太環網有幾個重要特點一是必須能夠實現環上各節點共享環上帶寬,并可實現公平的使用;二是實現基于環上業務的保護;三是可以實現業務優先級的處理,以開展以太網租用線業務。目前實現以太環網功能,主要有兩種方式一種是基于二層交換方式予以實現,一種是通過內嵌的RPR(彈性分組環)環網實現。
基于二層交換可以實現業務優先級和一定的帶寬控制功能。一般是通過對IEEE802.1p幀格式信號的處理實現。另外可以基于端口或VLAN(虛擬局域網)設置速率限制(如最小保證帶寬和最大帶寬),這樣就使系統有了一定帶寬控制機制,對于環上富裕的帶寬通過競爭接入。如果系統支持基于VLAN的多生成樹協議,多個VLAN生成樹在一個環上,可以有效利用被單生成樹禁用環段的帶寬,結合COS(業務分級)業務分類,CIR(承諾信息速率)和端口限速的技術,可以在一定程度上解決環網的帶寬公平性。
基于二層交換實現的以太環網有比較大的局限性。從環網帶寬利用看,并不能實現帶寬粒度的靈活指配,同一等級的流量對帶寬的競爭缺乏完善的公平算法。從業務優先級來看,對輸入信號優先級劃分只能按照百分比切割,并不科學,因此,嚴格意義上二層實現的以太環網并不是真正的“分組環”。
通過RPR模塊實現以太環網是目前許多設備制造商的選擇,RPR可以實現業務優先級處理和帶寬的公平使用。RPR技術是一種在環形結構上優化數據業務傳送的新型MAC(媒體接入控制)層協議,能夠適應多種物理層,如SDH(同步傳輸體系)、以太網、DWDM(波分復用)等,可有效地傳送數據、話音、圖像等多種業務類型。它融合了以太網技術的經濟性、靈活性、可擴展性等特點,同時吸收了SDH環網的50ms快速保護的優點,并具有網絡拓撲自動發現、環路帶寬共享、公平分配、嚴格的業務分類等技術優勢,目標是在不降低網絡性能和可靠性的前提下提供更加經濟有效的城域網解決方案。
由于RPR環的統計復用性質,其帶寬的管理和控制是分布式的。為保證各節點的業務均有平等享有帶寬的權利,RPR采用基于流量消息的調度機制,當環路節點發生擁塞時,向各節點發布該節點擁塞消息,其他節點收到該消息后,通過一個公平算法計算出本節點允許發送的數據流量,根據該流量控制本節點數據的發送速率,從而使環路總流量達到一個新的平衡,較好地實現了各節點公平共享環路資源。由于該方法采用的是流量消息機制和公平算法來實現的,公平算法實現復雜,成本較高。
發明內容
本發明的目的是提供一種在分組環上傳送報文的方法,以克服現有技術中采用RPR技術進行公平調度時實現復雜的缺點,簡單高效地對分組環上各節點的上節點業務實現公平調度。
為此,本發明提供如下的技術方案一種在分組環上傳送報文的方法,所述分組環包括多個節點及連接相鄰節點的物理鏈路,其中,每個節點都可以作為上環業務的源節點或者下環業務的目的節點,所述方法包括A、在所述分組環的各節點上分別按照不同的源節點地址及優先級建立不同優先級的源節點隊列;B、分別將所述節點上來自于分組環路的報文及上本節點的報文按照各自報文的源節點地址和優先級存入對應的所述源節點隊列中;C、分別將相同優先級內的所述源節點隊列調度到一個對應的優先級輸出隊列中;D、按預定方式將所述優先級輸出隊列發送到所述分組環路中。
所述步驟C包括C1、配置所述源節點隊列中的每個報文的權值;C2、根據所述源節點隊列中的每個報文的權值,通過加權輪循方式將相同優先級內的所述源節點隊列調度到一個對應的優先級輸出隊列中。
所述步驟C1具體為根據所述源節點隊列中每個報文的目的節點配置其權值。
所述步驟D具體為按照加權輪循方式將所述優先級輸出隊列發送到所述分組環路中。
所述步驟D具體為按照嚴格優先級方式將所述優先級輸出隊列發送到所述分組環路中。
所述步驟C1還包括當所述分組環的拓撲結構發生變化后,重新配置所述源節點隊列中的每個報文的權值。
由以上本發明提供的技術方案可以看出,本發明通過在每個節點建立不同優先級的源節點隊列,將需要經過該節點發送的所有報文根據其源地址存入對應的源節點隊列中,并根據其目的地址為該報文分配相應的權值,通過加權輪循的方式將這些不同源節點隊列中的報文調度到一個對應其優先級的輸出隊列中,從而在整個分組環上實現了對同一個優先級內不同源節點報文的公平調度。本發明基于隊列的調度方式,實現簡單、調度速度快,有效地提高了分組環上報文的傳輸速率。
圖1是分組環結構示意圖;圖2是分組環節點上報文組成示意圖;圖3是本發明方法的實現流程圖;圖4是在分組環的一個節點上建立的源節點隊列示意圖;圖5是分組環上節點權值配置示意圖;圖6是鏈路發生故障后的分組環結構示意圖。
具體實施例方式
本發明的核心在于在分組環的各節點上,按照不同的源節點及優先級建立不同優先級的源節點隊列;將來自分組環路上的報文及上本節點的報文按源節點地址及優先級分別入各自的源節點隊列;在同一個優先級內按一定的方式將報文從源節點隊列調度到一個對應的優先級輸出隊列中,使報文在該階段實現同一優先級內的不同源節點報文的公平調度,通過該調度將不同源節點相同優先級的報文合并為一個優先級輸出隊列;然后,再按照預定的方式對這些不同優先級的輸出隊列進行調度,將其發送到分組環路中。
為了使本技術領域的人員更好地理解本發明方案,下面結合附圖和實施方式對本發明作進一步的詳細說明。
參照圖1,圖1是分組環結構示意圖通常,分組環為環狀結構,具有由物理鏈路連接的多個節點。在該圖所示的分組環中,具有四個節點,分別為節點A、節點B、節點C和節點D。這四個節點都可以作為上環業務的源節點或者下環業務的目的節點,每個節點同時還可能作為環路業務的中繼節點。相鄰節點之間通過物理鏈路相連。
在實際應用中,分組環采用雙向單環結構。所有數據流可以通過環路的東向或西向發送到達目的節點,通常采用離目的節點最近的環路方向路徑發送。由于故障原因造成節點間的鏈路中斷(如采用光纖鏈接時,光纖意外斷裂等)時,分組環認為這兩節點間的路徑為無窮大,從而將環路的另外一個方向計算為通過該路徑的分組報文到達目的節點的最短路徑。因此,即使環路中斷,環路上的業務(即數據轉發)也不會中斷,從而提高了環路的可靠性。
參照圖2,一個典型的分組環路節點由以下幾種報文組成分組環路上其他節點發送過來的報文,其中包括發送到分組環路上其他節點的報文和發送到本節點的報文;本節點發送到分組環路上的報文。
為了在分組環路上實現公平共享帶寬資源,也就是要使來自分組環路上的報文和本節點發送到分組環路上的報文公平地共享分組環路的帶寬,為此,本發明按照優先級順序建立不同源節點隊列來實現對這些報文的調度,從而在各節點使不同的報文實現公平共享分組帶寬資源。
圖3示出了本發明方法的實現流程,包括以下步驟首先,在步驟301在分組環的各節點上按照不同的源節點地址及優先級建立不同優先級的源節點隊列。
參照圖1所示分組環,有四個節點,分別為節點A、節點B、節點C和節點D。對于節點A來說,其報文有來自分組環路上節點B、節點C和節點D的報文,這些報文中有發送到環路上除節點A以外其他節點的報文,也有發送到節點A的報文,此外,還有上節點A并發送到環路上的報文。假設所有這些報文共有2個優先級,因此,建立如圖4所示的代表不同優先級的源節點隊列,這些隊列中包括高優先級的四個源節點隊列,低優先級的四個源節點隊列。除此之外,為目的節點為A節點的報文單獨建立一個下節點隊列,該隊列不涉及報文的發送,在此可以不作考慮。
當分組環上有多個節點及多個優先級時,可以依此類推,也就是說總共要建立M×N個源節點隊列,其中M為環路上節點數,N為優先級個數。
這些隊列建立好后,進到步驟302分別將該節點上來自于分組環路的報文及上本節點的報文按照各自報文的源節點地址和優先級存入對應的源節點隊列中。當源節點隊列中不能再存放報文時,丟棄后進入節點的報文。
然后,進到步驟303分別將相同優先級內的源節點隊列調度到一個對應的優先級輸出隊列中。
報文在該階段實現同一個優先級內的不同源節點的公平調度。
首先,為各源節點隊列中的每個報文分配一個權值,該權值可以根據整個分組環網的流量及報文的目的節點來綜合考慮。比如,當某個節點為中心節點(如服務器時),訪問該節點的流量相對其他節點可能會較大,因此,可以將目的節點為該節點的報文的權值配置的較大些。
然后,就可以根據源節點隊列中的每個報文的權值,通過一定的調度方式將相同優先級內的多個源節點隊列調度到一個對應的優先級輸出隊列中。
調度算法可以選擇WRR(加權輪循)算法,當然也可以采用其他類似的調度算法。
這樣,通過該步驟分別將不同優先級的多個源節點報文合并成了一個優先級輸出隊列,也就是說,有幾個優先級就對應幾個優先級輸出隊列。
然后,進到步驟304按預定方式將不同的優先級輸出隊列發送到分組環路中。輸出隊列按一定方式進行調度發送,比如,可以按照WRR、嚴格優先級等方式對這些不同的優先級輸出隊列進行調度,并發送到分組環路。
為了更好地理解本發明,下面對各源節點隊列中報文權值的配置作詳細說明。
假設分組環由N個節點組成,環路工作在各節點完全共享帶寬的狀態,即各節點公平共享環路帶寬資源,此時需要在各節點配置的公平調度算法為WRR,各源節點的分配權值按以下公式配置本節點配置源節點隊列權值為N-1;發送到本節點的上一相鄰節點的源節點隊列權值為N-2;依此類推,...;倒數第二個節點的源節點隊列權值為1;最后一個節點(也就是本節點的下一個目的節點)的源節點隊列權值為0。
總權值為0+1+...+(N-1)=(N-1)*(N-2)/2;因此,本節點的權值比例為2*(N-1)/((N-1)*(N-2));依此類推,...;倒數第二個節點的源節點隊列權值比例為2/((N-1)*(N-2));最后一節點,即本節點的下一個目的節點的源節點隊列權值比例為0。
參照圖5所示分組環該分組環共有8個節點,分別為節點A、節點B、節點C、節點D、節點E、節點F、節點G、節點H。
對于逆時針方向發送的數據流,根據以上公式,在A節點上配置的各源節點隊列的權值比例如下A節點隊列7/21,表示以A節點為源地址的報文可能發送到其余7個節點上;B節點隊列6/21,表示以B節點為源地址的報文可能發送到其余6個節點上;
C節點隊列5/21,表示以C節點為源地址的報文可能發送到其余5個節點上;D節點隊列4/21,表示以D節點為源地址的報文可能發送到其余4個節點上;E節點隊列3/21,表示以E節點為源地址的報文可能發送到其余3個節點上;F節點隊列2/21,表示以F節點為源地址的報文可能發送到其余2個節點上;G節點隊列1/21,表示以G節點為源地址的報文可能發送到其余1個節點上;H節點隊列0/21,表示以H節點為源地址的報文不可能再發送到A節點以外的其他節點上。
對上述同一優先級內的不同源節點隊列按照其權值通過加權輪循方式調度到一個輸出隊列中。這樣,有幾個優先級,就對應了幾個輸出隊列,然后,再將這些不同優先級的輸出隊列按照預定的方式進行發送。具體可采用WRR、嚴格優先級等調度算法進行調度,發送到分組環路。
WRR就是將幾個輸出優先級隊列,以各隊列配置的權值為比例輪流調度各隊列中的報文發送出去。例如,A、B、C三個隊列,按1∶3∶4分別配置A、B、C隊列的權值,則權值的公倍數為1*3*4=12,A、B、C的發送權值計數器分別為cnt_A、cnt_B、cnt_C,其初始值為0,開始由于各計數器相等,可以任意選擇一個隊列發送一個報文,若A隊列發送了100字節,則cnt_A=cnt_A+100*12/1=1200,再比較cnt_A、cnt_B、cnt_C數值較小的隊列發送報文,若B發送500字節,則cnt_B=cnt_B+500*12/3=2000,依此類推,計數器小者發送,最小發送粒度為一個報文。
嚴格優先級就是高優先級的隊列先發送。高優先級的隊列為空時發送次優先級的隊列,每次發送一個報文后從高優先級隊列到低優先級隊列查詢,如果查詢到隊列有報文需要發送,則發送該報文。
本技術領域人員知道,在實際應用中,分組環采用雙向單環結構。在上述對本發明方法的描述中,只描述了一個方向的報文傳送過程。另外一個方向的報文處理過程相同,即在分組環的每個節點上分別建立東、西向的不同優先級的源節點隊列,對東向和西向環路上的報文分別按照上述方法進行調度,使東向、西向環路均實現同一優先級內的不同源節點報文的公平調度。
如果分組環上某個節點的一側鏈路發生故障,此時,環路的拓撲結構發生變化,為了實現同樣的公平性,須重新配置環路各節點的源節點隊列的權值。
比如,圖5所示分組環上節點A和節點H之間的鏈路發生故障,整個環路的拓撲結構可以用圖6來描述。
參照圖6,從任何一個節點上來看,在一個節點的各源節點隊列可能發送的目的節點數是一樣的,因此,配置各源節點隊列的權值為1∶1∶...∶1。這樣各源節點仍然公平共享環路帶寬資源。
雖然通過實施例描繪了本發明,本領域普通技術人員知道,本發明有許多變形和變化而不脫離本發明的精神,希望所附的權利要求包括這些變形和變化而不脫離本發明的精神。
權利要求
1.一種在分組環上傳送報文的方法,所述分組環包括多個節點及連接相鄰節點的物理鏈路,其中,每個節點都可以作為上環業務的源節點或者下環業務的目的節點,其特征在于,所述方法包括A、在所述分組環的各節點上分別按照不同的源節點地址及優先級建立不同優先級的源節點隊列;B、分別將所述節點上來自于分組環路的報文及上本節點的報文按照各自報文的源節點地址和優先級存入對應的所述源節點隊列中;C、分別將相同優先級內的所述源節點隊列調度到一個對應的優先級輸出隊列中;D、按預定方式將所述優先級輸出隊列發送到所述分組環路中。
2.根據權利要求1所述的方法,其特征在于,所述步驟C包括C1、配置所述源節點隊列中的每個報文的權值;C2、根據所述源節點隊列中的每個報文的權值,通過加權輪循方式將相同優先級內的所述源節點隊列調度到一個對應的優先級輸出隊列中。
3.根據權利要求2所述的方法,其特征在于,所述步驟C1具體為根據所述源節點隊列中每個報文的目的節點配置其權值。
4.根據權利要求1或2所述的方法,其特征在于,所述步驟D具體為按照加權輪循方式將所述優先級輸出隊列發送到所述分組環路中。
5.根據權利要求1或2所述的方法,其特征在于,所述步驟D具體為按照嚴格優先級方式將所述優先級輸出隊列發送到所述分組環路中。
6.根據權利要求2所述的方法,其特征在于,所述步驟C1還包括當所述分組環的拓撲結構發生變化后,重新配置所述源節點隊列中的每個報文的權值。
全文摘要
本發明公開了一種在分組環上傳送報文的方法,所述分組環包括多個節點及連接相鄰節點的物理鏈路,其中,每個節點都可以作為上環業務的源節點或者下環業務的目的節點,所述方法包括在分組環的各節點上按照不同的源節點地址及優先級建立不同優先級的源節點隊列;分別將節點上來自于分組環路的報文及上本節點的報文按照各自報文的源節點地址和優先級存入對應的源節點隊列中;分別將相同優先級內的源節點隊列調度到一個對應的優先級輸出隊列中;按預定方式將優先級輸出隊列發送到分組環路中。利用本發明,可以簡單高效地對分組環上各節點的上節點業務實現公平調度。
文檔編號H04L12/42GK1725729SQ200510008879
公開日2006年1月25日 申請日期2005年2月24日 優先權日2005年2月24日
發明者胡榮國 申請人:杭州華為三康技術有限公司