專利名稱:報文調(diào)度方法及裝置的制作方法
技術領域:
本發(fā)明涉及報文轉(zhuǎn)發(fā)技術,更確切地說,涉及通信系統(tǒng)中的報文調(diào)度方法及裝置。
背景技術:
通常,高端路由器使用硬件轉(zhuǎn)發(fā)技術提供快速轉(zhuǎn)發(fā),其使用的交換系統(tǒng)主要由交換網(wǎng)、網(wǎng)絡處理器及流量管理器等組成。其中,交換網(wǎng)實現(xiàn)快速交換;網(wǎng)絡處理器負責快速路由,并對報文進行分類、接入控制等;流量管理器管理到達路由器的流量,通過流量管理策略的實施來實現(xiàn)擁塞管理和擁塞避免。所述擁塞管理即當報文到達網(wǎng)絡設備接口的速度大于接口的發(fā)送能力時,即將產(chǎn)生擁塞,擁塞發(fā)生時,一般采用隊列調(diào)度技術加以解決,每一種隊列調(diào)度技術均用于解決特定問題,均會對網(wǎng)絡性能產(chǎn)生特定影響;目前所提供的隊列調(diào)度技術包括先入先出、優(yōu)先隊列、公平隊列、加權(quán)公平隊列等。所述擁塞避免即用于監(jiān)控網(wǎng)絡負載,預見并避免擁塞的發(fā)生,擁塞避免一般通過丟包技術實現(xiàn),包括尾丟棄、隨機早期檢測、加權(quán)隨機早期檢測等技術。
隊列與調(diào)度是用于實現(xiàn)擁塞管理的主要技術。在目前常用的系統(tǒng)中,于交換網(wǎng)的兩側(cè),即系統(tǒng)的上行及下行,均可提供流量管理功能。報文于上下行均可進行緩存,分別進行調(diào)度,如圖1所示,圖1為現(xiàn)有的報文調(diào)度模型。使用圖1所示的調(diào)度模型時報文的調(diào)度過程為(1)上行入隊在報文到達之后,根據(jù)報文報頭中的目的地址及服務等級等屬性進行入隊操作,報文被入到不同的隊列緩存起來;
(2)上行調(diào)度根據(jù)上行調(diào)度策略,對報文進行調(diào)度;(3)上行出隊報文出隊,發(fā)往交換網(wǎng);(4)下行入隊報文到達之后,根據(jù)一定的規(guī)則進行分類,緩存到不同的隊列中;(5)下行調(diào)度根據(jù)下行調(diào)度策略,對報文進行調(diào)度;(6)下行出隊報文出隊,發(fā)往下行網(wǎng)絡處理器或者物理接口;(7)分片和重組對于高速的交換系統(tǒng),報文在發(fā)到交換網(wǎng)前要進行分片,在下行進行重組。
上述的調(diào)度模型是采用上下行調(diào)度的調(diào)度模型,其于上下行均需要足夠大小的內(nèi)存以進行數(shù)據(jù)緩存,因此,不但造成內(nèi)存空間的浪費,而且由于模型設計較為復雜,導致報文調(diào)度的執(zhí)行及管理均較為復雜,大大降低的系統(tǒng)的性能。
發(fā)明內(nèi)容
本發(fā)明解決的技術問題是提供一種報文調(diào)度方法及裝置,其可簡化現(xiàn)有報文調(diào)度機制,簡化報文調(diào)度裝置的設計及管理,提高報文調(diào)度的效率。
為解決上述問題,本發(fā)明提供的報文調(diào)度方法包括(a)在上行將接收的報文緩存到各個調(diào)度管道對應的隊列;(b)對報文進行調(diào)度時,下行確定傳送報文的調(diào)度管道,并通過所述確定的調(diào)度管道向上行發(fā)送調(diào)度消息;(c)上行接收到下行的所述調(diào)度消息之后,按照所述調(diào)度消息所指定的報文數(shù)量,將所述報文通過所述調(diào)度管道發(fā)往下行;(d)下行收到所述報文后,直接將所述報文發(fā)送出去。
可選地,所述步驟(a)包括(a1)對所述接收報文進行分類;(a2)將所述分類后的報文列入不同的調(diào)度管道對應的隊列中進行緩存。
其中,步驟(a1)中根據(jù)報文的源IP地址、目的IP地址、源端口號、目的端口號及服務類型中的一元或幾元組對報文進行分類。
可選地,步驟(a2)之前還包括對分類的報文進行擁塞管理及擁塞避免。
可選地,在執(zhí)行步驟(b)之前還包括對所述報文進行分片,在執(zhí)行步驟(c)之前還包括對所述報文進行重組。
其中,所述調(diào)度采用嚴格優(yōu)先級調(diào)度、加權(quán)輪轉(zhuǎn)調(diào)度、定制調(diào)度或分級調(diào)度。
相應地,本發(fā)明提供的報文調(diào)度裝置包括控制單元及轉(zhuǎn)發(fā)單元,其中,所述控制單元用以建立及維護調(diào)度管道、建立上下行管道調(diào)度表及下發(fā)不同調(diào)度策略及算法的配置;所述轉(zhuǎn)發(fā)單元用于響應所述控制單元進行分配和管理調(diào)度的流量。
可選地,所述控制單元包括主控制單元、上行控制單元及下行控制單元,其中,所述主控制單元用于向所述上行控制單元及所述下行控制單元發(fā)送建立調(diào)度管道的消息;所述上行控制單元及下行控制單元用于根據(jù)所述建立調(diào)度管道的消息發(fā)送分配隊列資源的消息至所述轉(zhuǎn)發(fā)單元。
可選地,所述轉(zhuǎn)發(fā)單元包括上行硬件控制單元及下行硬件控制單元,其中,所述上行硬件控制單元用于為上行控制單元分配上行硬件資源;所述下行硬件控制單元用于為下行控制單元分配下行硬件資源。
相應地,本發(fā)明提供的調(diào)度管道的建立方法包括
A、主控制單元分別向上行控制單元及下行控制單元發(fā)起建立調(diào)度管道的消息并建立調(diào)度管道表;B、上行控制單元接收所述的建立調(diào)度管道的消息,激活上行硬件單元所對應的上行調(diào)度資源,使能所述調(diào)度管道表中相應的表項,建立上行調(diào)度管道,并向下行控制單元發(fā)送所述上行調(diào)度管道建立完成的消息;C、下行控制單元接收所述的發(fā)起建立調(diào)度管道的消息,激活下行硬件單元所對應的下行調(diào)度資源,使能所述調(diào)度管道表中相應的表項,建立下行調(diào)度管道,并向上行控制單元發(fā)送所述下行調(diào)度管道建立完成的消息;D、當下行控制單元接收到所述的上行調(diào)度管道建立完成的消息且所述下行調(diào)度管道的狀態(tài)為等待所述上行調(diào)度管道反饋的狀態(tài),則使能下行硬件控制單元的下行調(diào)度資源的調(diào)度標志位,將所述下行調(diào)度管道的狀態(tài)改為可調(diào)度。
可選地,在所述步驟A中,若所述要建立的調(diào)度管道為靜態(tài)調(diào)度管道,則不建立調(diào)度管道表項。
可選地,在所述步驟B中,所述建立的上行調(diào)度管道為靜態(tài)調(diào)度管道時,還包括激活上行硬件單元所對應的上行隊列,使能所述調(diào)度管道表中相應的表項。
可選地,在所述步驟B中,所述建立的上行調(diào)度管道為動態(tài)調(diào)度管道時,還包括向上行硬件單元申請分配上行隊列并激活。
可選地,在所述步驟C中,所述建立的下行調(diào)度管道為靜態(tài)調(diào)度管道時,還包括激活下行硬件單元所對應的下行調(diào)度資源,激活所述調(diào)度管道表中相應的表項。
可選地,在所述步驟C中,所述建立的下行調(diào)度管道為動態(tài)調(diào)度管道時,還包括向下行硬件單元申請下行調(diào)度資源并動態(tài)建立調(diào)度管道表表項,將下行調(diào)度管道的狀態(tài)修改為等待上行調(diào)度管道反饋的狀態(tài)。
可選地,在所述步驟D中,所述建立的下行調(diào)度管道為動態(tài)調(diào)度管道時,還包括向主控制單元發(fā)送調(diào)度管道建立完成消息。
與現(xiàn)有技術相比,本發(fā)明具有以下有益效果本發(fā)明所提供的報文調(diào)度方法、報文調(diào)度裝置及調(diào)度管道的建立方法采用上下行配合的單步調(diào)度模式,可簡化目前的調(diào)度機制,其中,上行只進行數(shù)據(jù)緩存,而不需要維護調(diào)度模型,所有調(diào)度工作均由下行完成。所以,本發(fā)明所提供的報文調(diào)度方法、報文調(diào)度裝置及調(diào)度管道的建立方法在設計及管理上較為簡單,由此,簡化了現(xiàn)有的報文調(diào)度機制,提高了報文調(diào)度的效率,從而提高系統(tǒng)的性能。
圖1是現(xiàn)有的現(xiàn)有的報文調(diào)度模型示意圖;圖2是本發(fā)明的報文調(diào)度方法流程圖;圖3是本發(fā)明的報文調(diào)度裝置的方框圖。
具體實施例方式
請參照圖2所示,圖2是本發(fā)明的報文調(diào)度方法示意圖。在上行側(cè),接收到報文后,首先對所述接收的報文進行分類,其中,該分類可根據(jù)所接收報文的源IP地址、目的IP地址、源端口號、目的端口號及服務類型中的一元或幾元組對其進行分類;然后,將所述分類后的報文列入不同的調(diào)度管道所對應的隊列中進行緩存,其中,在對報文進行緩存之前,也可先對分類后的報文進行擁塞管理及擁塞避免,本實施方式中,所述擁塞管理及擁塞避免采用丟包技術實現(xiàn),包括可通過尾丟棄、隨機早期檢測或加權(quán)隨機早期檢測等算法加以實現(xiàn)。
另外,對于高速的交換系統(tǒng),可在報文被發(fā)送至交換網(wǎng)之前對其進行分片處理。接下來,在下行側(cè),在對報文進行調(diào)度時,下行確定傳送報文的調(diào)度管道,并通過所述確定的調(diào)度管道向上行發(fā)送調(diào)度消息。
上行接收到下行的所述調(diào)度消息之后,按照所述調(diào)度消息所指定的報文數(shù)量,將所述報文通過所述調(diào)度管道發(fā)往下行,其中,可在將所述報文發(fā)往下行之前對所述報文進行重組。最后,下行收到所述報文后,直接將所述報文發(fā)送出去。
可以理解,本發(fā)明所述的報文調(diào)度方法中所述的調(diào)度可采用嚴格優(yōu)先級調(diào)度、加權(quán)輪轉(zhuǎn)調(diào)度、定制調(diào)度或分級調(diào)度。
請參照圖3所示,圖3為本發(fā)明報文調(diào)度裝置的方框圖。本發(fā)明的報文調(diào)度裝置包括控制單元及轉(zhuǎn)發(fā)單元,其中,所述控制單元用以建立及維護調(diào)度管道、建立上下行管道調(diào)度表及下發(fā)不同調(diào)度策略及算法的配置;所述轉(zhuǎn)發(fā)單元用于響應所述控制單元進行分配和管理調(diào)度的流量。
其中,所述控制單元包括主控制單元、上行控制單元及下行控制單元;所述轉(zhuǎn)發(fā)單元包括上行硬件控制單元及下行硬件控制單元。
所述主控制單元用于發(fā)起調(diào)度管道的建立及管理,通過向所述上行控制單元及所述下行控制單元發(fā)送建立調(diào)度管道的消息實現(xiàn),調(diào)度管道的上行和下行分別由上行控制單元和下行控制單元管理,當調(diào)度管道的狀態(tài)處于可調(diào)度狀態(tài)時,即完成了整個調(diào)度管道的建立,數(shù)據(jù)可以入相應調(diào)度管道所對應的隊列中,然后,由調(diào)度管道所對應的下行調(diào)度資源調(diào)度至出端口。所述上行控制單元及下行控制單元用于根據(jù)所述建立調(diào)度管道的消息發(fā)送分配隊列資源的消息至所述轉(zhuǎn)發(fā)單元。其中,所述上行控制單元負責向上行硬件控制單元申請隊列資源,維護隊列與調(diào)度管道的對應關系,并管理上行調(diào)度管道表,對于靜態(tài)調(diào)度管道,所述上行控制單元只管理調(diào)度管道的狀態(tài),而對于動態(tài)調(diào)度管道,所述上行控制單元除管理調(diào)度管道的狀態(tài)之外,還要負責資源的分配和釋放。所述下行控制單元負責向下行硬件控制單元申請硬件資源并管理下行調(diào)度管道,當下行調(diào)度管道建立完成,通知主控制單元調(diào)度管道處于可調(diào)度狀態(tài)。
所述上行硬件控制單元用于為上行控制單元分配上行硬件資源,以實現(xiàn)硬件的入隊列算法,其支持尾丟棄、隨機早期檢測及加權(quán)隨機早期檢測等算法,當調(diào)度管道處于可調(diào)度狀態(tài)時,此時通過控制通道接收下行硬件控制的各種控制單元或控制數(shù)據(jù)包,并通過數(shù)據(jù)通道向下行發(fā)送數(shù)據(jù)。所述下行硬件控制單元用于為下行控制單元分配下行硬件資源,以實現(xiàn)硬件的調(diào)度算法,支持嚴格優(yōu)先級調(diào)度、加權(quán)輪轉(zhuǎn)調(diào)度和定制調(diào)度等調(diào)度算法,當調(diào)度管道處于可調(diào)度狀態(tài)時,通過控制通道向上行硬件控制發(fā)送調(diào)度消息并通過數(shù)據(jù)通道接收數(shù)據(jù)。
同樣請參照圖3所示,其還揭示了本發(fā)明所述的調(diào)度管道的建立方法。該方法包括A、主控制單元分別向上行控制單元及下行控制單元發(fā)起建立調(diào)度管道的消息并建立調(diào)度管道表;B、上行控制單元接收所述的建立調(diào)度管道的消息,激活上行硬件單元所對應的上行調(diào)度資源,使能所述調(diào)度管道表中相應的表項,建立上行調(diào)度管道,并向下行控制單元發(fā)送所述上行調(diào)度管道建立完成的消息;
C、下行控制單元接收所述的發(fā)起建立調(diào)度管道的消息,激活下行硬件單元所對應的下行調(diào)度資源,使能所述調(diào)度管道表中相應的表項,建立下行調(diào)度管道,并向上行控制單元發(fā)送所述下行調(diào)度管道建立完成的消息;D、當下行控制單元接收到所述的上行調(diào)度管道建立完成的消息且所述下行調(diào)度管道的狀態(tài)為等待所述上行調(diào)度管道反饋的狀態(tài),則使能下行硬件控制單元的下行調(diào)度資源的調(diào)度標志位,將所述下行調(diào)度管道的狀態(tài)改為可調(diào)度。
可以理解,對于上述本發(fā)明所述的調(diào)度管道的建立方法,若所述要建立的調(diào)度管道為靜態(tài)調(diào)度管道,在所述步驟A中,則不建立調(diào)度管道表項;在所述步驟B中,還包括激活上行硬件單元所對應的上行隊列,使能所述調(diào)度管道表中相應的表項;在所述步驟C中,還包括激活下行硬件單元所對應的下行調(diào)度資源,激活所述調(diào)度管道表中相應的表項。另外,若所述建立的上行調(diào)度管道為動態(tài)調(diào)度管道時,在所述步驟B中,還包括向上行硬件單元申請分配上行隊列并激活;在所述步驟C中,還包括向下行硬件單元申請下行調(diào)度資源并動態(tài)建立調(diào)度管道表表項,將下行調(diào)度管道的狀態(tài)修改為等待上行調(diào)度管道反饋的狀態(tài);在所述步驟D中,還包括向主控制單元發(fā)送調(diào)度管道建立完成消息。
本發(fā)明所提供的報文調(diào)度方法、報文調(diào)度裝置及調(diào)度管道的建立方法采用上下行配合的單步調(diào)度模式,可簡化目前的調(diào)度機制,其中,上行只進行數(shù)據(jù)緩存,而不需要維護調(diào)度模型,所有調(diào)度工作均由下行完成。所以,本發(fā)明所提供的報文調(diào)度方法、報文調(diào)度裝置及調(diào)度管道的建立方法在設計及管理上較為簡單,由此,簡化了現(xiàn)有的報文調(diào)度機制,提高了報文調(diào)度的效率,從而提高系統(tǒng)的性能。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
權(quán)利要求
1.一種報文調(diào)度方法,其特征在于,該方法包括(a)在上行將接收的報文緩存到各個調(diào)度管道對應的隊列;(b)對報文進行調(diào)度時,下行確定傳送報文的調(diào)度管道,并通過所述確定的調(diào)度管道向上行發(fā)送調(diào)度消息;(c)上行接收到下行的所述調(diào)度消息之后,按照所述調(diào)度消息所指定的報文數(shù)量,將所述報文通過所述調(diào)度管道發(fā)往下行;(d)下行收到所述報文后,直接將所述報文發(fā)送出去。
2.如權(quán)利要求1所述的報文調(diào)度方法,其特征在于,所述步驟(a)包括(a1)對所述接收報文進行分類;(a2)將所述分類后的報文列入不同的調(diào)度管道對應的隊列中進行緩存。
3.如權(quán)利要求2所述的報文調(diào)度方法,其特征在于,步驟(a1)中根據(jù)報文的源IP地址、目的IP地址、源端口號、目的端口號及服務類型中的一元或幾元組對報文進行分類。
4.如權(quán)利要求2所述的報文調(diào)度方法,其特征在于,步驟(a2)之前還包括對分類的報文進行擁塞管理及擁塞避免。
5.如權(quán)利要求1所述的報文調(diào)度方法,其特征在于,在執(zhí)行步驟(b)之前還包括對所述報文進行分片,在執(zhí)行步驟(c)之前還包括對所述報文進行重組。
6.如權(quán)利要求1-5任一項所述的報文調(diào)度方法,其特征在于,所述調(diào)度采用嚴格優(yōu)先級調(diào)度、加權(quán)輪轉(zhuǎn)調(diào)度、定制調(diào)度或分級調(diào)度。
7.一種報文調(diào)度裝置,其特征在于,該裝置包括控制單元及轉(zhuǎn)發(fā)單元,其中,所述控制單元用以建立及維護調(diào)度管道、建立上下行管道調(diào)度表及下發(fā)不同調(diào)度策略及算法的配置;所述轉(zhuǎn)發(fā)單元用于響應所述控制單元進行分配和管理調(diào)度的流量。
8.如權(quán)利要求7所述的報文調(diào)度裝置,其特征在于,所述控制單元包括主控制單元、上行控制單元及下行控制單元,其中,所述主控制單元用于向所述上行控制單元及所述下行控制單元發(fā)送建立調(diào)度管道的消息;所述上行控制單元及下行控制單元用于根據(jù)所述建立調(diào)度管道的消息發(fā)送分配隊列資源的消息至所述轉(zhuǎn)發(fā)單元。
9.如權(quán)利要求8所述的報文調(diào)度裝置,其特征在于,所述轉(zhuǎn)發(fā)單元包括上行硬件控制單元及下行硬件控制單元,其中,所述上行硬件控制單元用于為上行控制單元分配上行硬件資源;所述下行硬件控制單元用于為下行控制單元分配下行硬件資源。
10.一種調(diào)度管道的建立方法,其特征在于,所述方法包括A、主控制單元分別向上行控制單元及下行控制單元發(fā)起建立調(diào)度管道的消息并建立調(diào)度管道表;B、上行控制單元接收所述的建立調(diào)度管道的消息,激活上行硬件單元所對應的上行調(diào)度資源,使能所述調(diào)度管道表中相應的表項,建立上行調(diào)度管道,并向下行控制單元發(fā)送所述上行調(diào)度管道建立完成的消息;C、下行控制單元接收所述的發(fā)起建立調(diào)度管道的消息,激活下行硬件單元所對應的下行調(diào)度資源,使能所述調(diào)度管道表中相應的表項,建立下行調(diào)度管道,并向上行控制單元發(fā)送所述下行調(diào)度管道建立完成的消息;D、當下行控制單元接收到所述的上行調(diào)度管道建立完成的消息且所述下行調(diào)度管道的狀態(tài)為等待所述上行調(diào)度管道反饋的狀態(tài),則使能下行硬件控制單元的下行調(diào)度資源的調(diào)度標志位,將所述下行調(diào)度管道的狀態(tài)改為可調(diào)度。
11.如權(quán)利要求10所述的調(diào)度管道的建立方法,其特征在于在所述步驟A中,若所述要建立的調(diào)度管道為靜態(tài)調(diào)度管道,則不建立調(diào)度管道表項。
12.如權(quán)利要求10所述的調(diào)度管道的建立方法,其特征在于在所述步驟B中,所述建立的上行調(diào)度管道為靜態(tài)調(diào)度管道時,還包括激活上行硬件單元所對應的上行隊列,使能所述調(diào)度管道表中相應的表項。
13.如權(quán)利要求10所述的調(diào)度管道的建立方法,其特征在于在所述步驟B中,所述建立的上行調(diào)度管道為動態(tài)調(diào)度管道時,還包括向上行硬件單元申請分配上行隊列并激活。
14.如權(quán)利要求10所述的調(diào)度管道的建立方法,其特征在于在所述步驟C中,所述建立的下行調(diào)度管道為靜態(tài)調(diào)度管道時,還包括激活下行硬件單元所對應的下行調(diào)度資源,激活所述調(diào)度管道表中相應的表項。
15.如權(quán)利要求10所述的調(diào)度管道的建立方法,其特征在于在所述步驟C中,所述建立的下行調(diào)度管道為動態(tài)調(diào)度管道時,還包括向下行硬件單元申請下行調(diào)度資源并動態(tài)建立調(diào)度管道表表項,將下行調(diào)度管道的狀態(tài)修改為等待上行調(diào)度管道反饋的狀態(tài)。
16.如權(quán)利要求10所述的調(diào)度管道的建立方法,其特征在于在所述步驟D中,所述建立的下行調(diào)度管道為動態(tài)調(diào)度管道時,還包括向主控制單元發(fā)送調(diào)度管道建立完成消息。
全文摘要
一種報文調(diào)度方法包括在上行將接收的報文緩存到各個調(diào)度管道對應的隊列;對報文進行調(diào)度時,下行確定傳送報文的調(diào)度管道,并通過所述確定的調(diào)度管道向上行發(fā)送調(diào)度消息;上行接收到下行的所述調(diào)度消息之后,按照所述調(diào)度消息所指定的報文數(shù)量,將所述報文通過所述調(diào)度管道發(fā)往下行;下行收到所述報文后,直接將所述報文發(fā)送出去。報文調(diào)度裝置包括控制單元及轉(zhuǎn)發(fā)單元。采用上下行配合的單步調(diào)度模式,可簡化目前的調(diào)度機制,在設計及管理上較為簡單,由此,簡化了現(xiàn)有的報文調(diào)度機制,提高了報文調(diào)度的效率,從而提高系統(tǒng)的性能。
文檔編號H04L12/56GK1859283SQ200510100829
公開日2006年11月8日 申請日期2005年10月28日 優(yōu)先權(quán)日2005年10月28日
發(fā)明者滕新東, 朱建波, 吳海洋 申請人:華為技術有限公司