專利名稱:一種交換網(wǎng)數(shù)據(jù)調(diào)度方法、設(shè)備和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種交換網(wǎng)數(shù)據(jù)調(diào)度方法、設(shè)備和系統(tǒng)。
背景技術(shù):
交換網(wǎng)為多個輸入數(shù)據(jù)流提供緩存和鏈路帶寬等共享資源以降低獨占資源的成本并提高擴展性。但是多個輸入流為竟?fàn)幑蚕碣Y源會形成沖突。對于共享的資源需要調(diào)度和流控機制協(xié)調(diào)各個輸入流,使交換網(wǎng)盡可能滿足其如時延,抖動,丟失等不同的服務(wù)需求,并充分利用交換網(wǎng)的各種資源。
基于令牌的調(diào)度方式是對交換網(wǎng)絡(luò)的數(shù)據(jù)進行流量控制的一種方法。令牌可由作為目的端的輸出端產(chǎn)生,用來反映其接收數(shù)據(jù)的能力。令牌傳遞給
數(shù)據(jù)輸入端。數(shù)據(jù)輸入端把令牌解析成可以向交換網(wǎng)發(fā)送的數(shù)據(jù)量,嚴格按照令牌賦予的發(fā)送分組的權(quán)利向交換結(jié)構(gòu)中發(fā)送數(shù)據(jù)。
現(xiàn)有的調(diào)度機制中的多播功能主要是在輸入端的流量管理器上實現(xiàn)的,舉例如圖l所示。實現(xiàn)多播數(shù)據(jù)與單播數(shù)據(jù)調(diào)度的功能模塊主要由隊列數(shù)據(jù)處理單元和緩存管理單元組成。其中,隊列數(shù)據(jù)處理單元負責(zé)調(diào)度策略實施,緩存管理單元負責(zé)多播和單播隊列存儲及隊列管理。其中多播隊列共有四個。多播隊列可以被進一步劃分為擁有不同的優(yōu)先級,如圖1所示,在所有的多播隊列中,優(yōu)先發(fā)送具有的多播隊列中的數(shù)據(jù),而其他的多播隊列則以輪詢
(round robin)的方式進4亍處理。
在具體的實現(xiàn)過程中,流量管理器中的多播調(diào)度器(MS, MulticastScheduler)監(jiān)測多播隊列狀態(tài),根據(jù)隊列狀態(tài),輸出端的多4t^塞指示(MCI,Multicast congestion indication), 全局擁塞才旨示(GCI, Global congestionindication),和MS設(shè)置,生成多播令牌。多播令牌會^J^送給出隊邏輯,出隊邏輯再根據(jù)令牌將對應(yīng)的隊列中的數(shù)據(jù)發(fā)送到交換網(wǎng)中。而多播數(shù)據(jù)流量與單播數(shù)據(jù)流量間的調(diào)度主要是通過以下兩個邏輯來實現(xiàn)的
交換機管理員給MS設(shè)定一個多播數(shù)據(jù)占用的絕對的最大速率界限,同時設(shè)定一個多播數(shù)據(jù)流量與單播數(shù)據(jù)流量的比例,這樣,MS便實現(xiàn)了對多播數(shù)據(jù)的調(diào)度。
但是,現(xiàn)有的多播調(diào)度方法在實現(xiàn)的多播時存在不可避免的問題。即,在系統(tǒng)內(nèi)流量較低的情況下,原有方法可以保證的多播得以實現(xiàn),但隨著多播數(shù)據(jù)流量的增大,如果有多播擁塞指示和全局擁塞指示發(fā)送到圖l所示的擁塞處理器中,擁塞處理器會增加自身的漏桶值,當(dāng)漏桶值到一定門限時,會使生成的多播令牌無效,進而,無論是的多播數(shù)據(jù)還是低優(yōu)先級的多播數(shù)據(jù),都無法進行發(fā)送,這樣,的多播數(shù)據(jù)就無法優(yōu)先地凈皮發(fā)送,因此在流量變大時,現(xiàn)有方法會出現(xiàn)多播數(shù)據(jù)的發(fā)送被停止,以相對地保證單播數(shù)據(jù)的發(fā)送,可知,現(xiàn)有的技術(shù)雖然在交換網(wǎng)中實現(xiàn)了多播數(shù)據(jù)的發(fā)送,但是卻只能讓的多播數(shù)據(jù)的發(fā)送處于一個低優(yōu)先級的地位,即低于單播數(shù)據(jù)的優(yōu)先級。
發(fā)明內(nèi)容
本發(fā)明實施例提供了一種交換網(wǎng)數(shù)據(jù)調(diào)度方法、設(shè)備和系統(tǒng),使用本發(fā)明實施例提供的技術(shù)方案,能夠在交換網(wǎng)中實現(xiàn)優(yōu)先級高于單播數(shù)據(jù)的多播數(shù)據(jù)的傳輸。
本發(fā)明實施例的目的是通過以下技術(shù)方案實現(xiàn)的本發(fā)明實施例提供一種交換網(wǎng)數(shù)據(jù)調(diào)度方法,包括輸出流量管理器接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值;所述輸出流量管理器根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;所述輸出流量管理器向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;
所述輸出流量管理器接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
本發(fā)明實施例提供另一種交換網(wǎng)數(shù)據(jù)調(diào)度方法,包括輸入流量管理器獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率總值;向所述輸出流量管理器發(fā)送所述速率總值;輸出流量管理器接收所述輸入流量管理器發(fā)送的速率總值;根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;輸入流量管理器接收所述單播令牌;才艮據(jù)所述單播令牌和自身生成的多播令牌分別發(fā)送單播數(shù)據(jù)和多播數(shù)據(jù);輸出流量管理器接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
本發(fā)明實施例提供一種輸入流量管理器,包括
速率獲取單元,用于獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率總
值;
速率發(fā)送單元,用于向所述輸出流量管理器發(fā)送所述速率總值,所述速率總值用于指示所述輸出流量管理器反向調(diào)整單播令牌的生成速率;
令牌接收單元,用于接收所述輸出流量管理器以調(diào)整后的生成速率生成
的單播令牌;
數(shù)據(jù)發(fā)送單元,用于根據(jù)所述單播令牌和生成的多播令牌分別發(fā)送單播數(shù)據(jù)和多播數(shù)據(jù)。
本發(fā)明實施例提供一種輸出流量管理器,包括
速率接收單元,用于接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值;
速率調(diào)整單元,用于根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;令牌發(fā)送單元,用于向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;
數(shù)據(jù)接收單元,用于接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
本發(fā)明實施例提供一種通信系統(tǒng),包括
輸入流量管理器,用于獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率總值;向所述輸出流量管理器發(fā)送所述速率總值,所述速率總值用于指示所述輸出流量管理器反向調(diào)整單播令牌的生成速率;接收所述輸出流量管理器以調(diào)整后的生成速率生成的單播令牌;根據(jù)所述單播令牌和自身生成的多播令牌分別發(fā)送單播數(shù)據(jù)和多播數(shù)據(jù);
輸出流量管理器,用于接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值;根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。量管理器接收的單播令牌是輸出流量管理器根據(jù)多播數(shù)據(jù)的速率總值調(diào)整而生成,即是,當(dāng)多播數(shù)據(jù)所需的帶寬與當(dāng)前的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用總帶寬時,輸出流量管理器會減'J、單播令牌的生成速率,輸入流量管理器根據(jù)單播令牌發(fā)送的單播數(shù)據(jù)流就會減少,節(jié)約出的帶寬就可以用于對多播數(shù)據(jù)流的傳輸。
圖1是現(xiàn)有技術(shù)中輸入流量管理器多播實現(xiàn)機制的示意圖2是本發(fā)明實施例中 一種交換網(wǎng)數(shù)據(jù)調(diào)度方法的實施例的流程示意圖3是本發(fā)明實施例中另 一種交換網(wǎng)數(shù)據(jù)調(diào)度方法的實施例的流程示意
圖4是圖3所示方法的綜合場景示意圖;圖5是本發(fā)明實施例中輸入流量管理器實施例的結(jié)構(gòu)示意圖;圖6是本發(fā)明實施例中輸入流量管理器多播實現(xiàn)機制的示意圖;圖7是本發(fā)明實施例中輸出流量管理器實施例的結(jié)構(gòu)示意圖;圖8是本發(fā)明實施例中輸出流量管理器單播令牌生成機制示意圖;圖9是本發(fā)明實施例中通信系統(tǒng)實施例的結(jié)構(gòu)示意圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案、及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明進一步詳細說明。
在對實施例進行列舉前,先對輸入流量管理器要處理的數(shù)據(jù)進行簡要的說明輸入流量管理器要發(fā)送的數(shù)據(jù),分為多播數(shù)據(jù)和單播數(shù)據(jù),在本發(fā)明實施例中,可以包括兩種情況, 一種是多播數(shù)據(jù)都優(yōu)先于單播數(shù)據(jù),另一種情況是有一部分多播數(shù)據(jù)是優(yōu)先于單播數(shù)據(jù)的高優(yōu)先級多播數(shù)據(jù),有一部分多播數(shù)據(jù)是次于單手數(shù)據(jù)的次優(yōu)先級多播數(shù)據(jù)。兩種情況的共性是都存
在優(yōu)先于單播數(shù)據(jù)的多播數(shù)據(jù)。
交換網(wǎng)數(shù)據(jù)調(diào)度方法的另 一 種實施例如圖3所示
步驟101:輸出流量管理器接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總
值;
其中,所述速率總值是指單位時間內(nèi)要發(fā)送的多播數(shù)據(jù)的速率總值。
9步驟102:輸出流量管理器根據(jù)根據(jù)所述速率總值調(diào)整單播令牌的生成速
率;
步驟103:輸出流量管理器向所述輸入流量管理器發(fā)送以調(diào)整后的生成速 率生成的單播令牌;
步驟104:輸出流量管理器接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多 播數(shù)據(jù)。
進一步,步驟102具體包括
A:所述輸出流量管理器根據(jù)所述速率總值獲取所述多播數(shù)據(jù)所需的帶
寬;
B:若所述帶寬與所述輸出流量管理器的當(dāng)前的單^番令牌生成速率決定的 單播數(shù)據(jù)所需帶寬之和大于可用總帶寬時,所述輸出流量管理器減小單播令 牌的生成速率。
從交換網(wǎng)數(shù)據(jù)調(diào)度方法的另 一種實施例可知,由于輸入流量管理器接收 的單播令牌是輸出流量管理器才艮據(jù)多播數(shù)據(jù)的速率總值調(diào)整而生成,即是, 當(dāng)多播數(shù)據(jù)所需的帶寬與當(dāng)前的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬 之和大于可用總帶寬時,輸出流量管理器會減小單播令牌的生成速率,輸入 流量管理器根據(jù)單播令牌發(fā)送的單播數(shù)據(jù)流就會減少,節(jié)約出的帶寬就可以 用于對多播數(shù)據(jù)流的傳輸。
進一步,在步驟A后還可包括
C:將以本輸出流量管理器作為目的端口的所有多播數(shù)據(jù)所需的帶寬之和 與本輸出流量管理器作為目的端口 、多個輸入流量管理器作為發(fā)送端口時的 本輸出流量管理器上限總帶寬相比;當(dāng)所述帶寬之和大于上限總帶寬時,所 述輸出流量管理器向所述輸入流量管理器發(fā)送速率上限指令,所述速率上限 指令用于指示所述輸入流量管理器為所述多播數(shù)據(jù)設(shè)定速率上限;當(dāng)所述帶 寬之和小于上限總帶寬時,所述輸出流量管理器向所述輸入流量管理器發(fā)送 指示取消多播數(shù)據(jù)速率上限的取消指令。當(dāng)然,還可以考慮當(dāng)以本輸出流量 管理器作為目的端口的所有多播數(shù)據(jù)和單播數(shù)據(jù)所需的帶寬之和與上限總帶 寬相比;當(dāng)所述帶寬之和大于上限總帶寬時,所述輸出流量管理器向所述輸 入流量管理器發(fā)送速率上限指令,以限制多播數(shù)據(jù)的發(fā)送。從上可知,當(dāng)根據(jù)以一個輸出端為目的端的每一個輸入端發(fā)送的多播數(shù)
據(jù)的速率總值之和計算得到出現(xiàn)多播數(shù)據(jù)所需的帶寬超過上限總帶寬的結(jié) 果時,輸出端會對相應(yīng)的每一個輸入端發(fā)送速率上限指令,輸入端會對相應(yīng) 的多播數(shù)據(jù)設(shè)定速率上限?;蛘咴诘玫饺∠噶顣r,取消速率上限。如果沒 有這個速率上限指令,可能出現(xiàn)的情況是,同一個目的端接收的所有多播數(shù) 據(jù)占用的帶寬會超過目的端配置的帶寬,產(chǎn)生擁塞。所以,設(shè)置速率上限指 令,可以更好的控制多播數(shù)據(jù)的發(fā)送,解決擁塞的問題。 如圖3所示,本發(fā)明中另一種交換網(wǎng)數(shù)據(jù)調(diào)度方法包括 步驟201:輸入流量管理器獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速 率總值;
步驟202:向所述輸出流量管理器發(fā)送所述速率總值;
步驟203:輸出流量管理器接收所述輸入流量管理器發(fā)送的速率總值;
步驟204:輸出流量管理器4艮據(jù)所述速率總值反向調(diào)整單播令牌的生成速
率; 步驟205:輸出流量管理器向所述輸入流量管理器發(fā)送以調(diào)整后的生成速 率生成的單播令牌;
步驟206:輸入流量管理器接收所述單播令牌;
步驟207:輸入流量管理器4艮據(jù)所述單播令牌和自身生成的多播令牌分別 發(fā)送單播數(shù)據(jù)和多播數(shù)據(jù);
步驟208:輸出流量管理器接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多 播數(shù)據(jù)。
從所述另一種交換網(wǎng)數(shù)據(jù)調(diào)度方法的實施例可知,由于輸入流量管理器 接收的單播令牌是輸出流量管理器根據(jù)多播數(shù)據(jù)的速率總值調(diào)整而生成,即
是,當(dāng)多播數(shù)據(jù)所需的帶寬與當(dāng)前的單播令牌生成速率決定的單播數(shù)據(jù)所需 帶寬之和大于可用總帶寬時,輸出流量管理器會減小單播令牌的生成速率, 輸入流量管理器根據(jù)單播令牌發(fā)送的單播數(shù)據(jù)流就會減少,節(jié)約出的帶寬就 可以用于對多播數(shù)據(jù)流的傳輸。
現(xiàn)以圖4所示為例說明上述圖2與圖3所示的兩個方法 圖4表示的場景是輸入端O將有一個以輸出端O、 1、 3為目的端的多播數(shù)據(jù)a,輸入端1將有一個以輸出端0、 1、 2、 3為目的端的多播數(shù)據(jù)b,輸入端l 還將有一個以輸出端l、 2、 3為目的端的多播數(shù)據(jù)c,并且,輸入端0將有一個 以輸入端3為目的端的單播數(shù)據(jù)d,輸入端1將有一個以輸入端3為目的端的單 播數(shù)據(jù)e。
以輸出端3作為重點描述的目的端,輸出端3將接收這樣幾個數(shù)據(jù)即輸入 端0將發(fā)送的多播數(shù)據(jù)a,輸入端l發(fā)送的多播數(shù)據(jù)b,輸入端l發(fā)送的多播數(shù)據(jù) c,并且還有輸入端O發(fā)送的單播數(shù)據(jù)d,輸入端l發(fā)送的單播數(shù)據(jù)e。其中,輸 入端0發(fā)送給輸出端3的速率總值即是多播數(shù)據(jù)a的速率,輸入端l發(fā)送給輸出 端3的速率總值即是多播數(shù)據(jù)b與多播數(shù)據(jù)c的速率之和。
輸出端3接收到輸入端0發(fā)送的多播數(shù)據(jù)a的速率后,輸出端3的輸出流量 管理器根據(jù)多播數(shù)據(jù)a獲取所述多播數(shù)據(jù)所需的帶寬;
若所述帶寬與所述輸出流量管理器的單播令牌生成速率決定的單播數(shù)據(jù) 所需帶寬之和大于輸入端0到輸出端3的可用總帶寬時,所述輸出端3的輸出流 量管理器減小到輸入端O單播令牌的生成速率。輸出端3與輸入端1之間同理。
進一步,當(dāng)輸出端3接收到的輸入端0和輸入端l的所有的多播數(shù)據(jù)a、 b、 c所需帶寬大用輸出端3的上限總帶寬時,輸出端3向輸入端0和輸入端l發(fā)出速 率上限指令,指示它們對發(fā)送的的多播數(shù)據(jù)設(shè)定速率上限。
輸入流量管理器實施例如圖5所示
速率獲取單元301,用于獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率 總值;
速率發(fā)送單元302,用于向輸出流量管理器發(fā)送速率總值,所述速率總值 用于指示所述輸出流量管理器反向調(diào)整單播令牌的生成速率;
令牌接收單元303,用于接收輸出流量管理器以調(diào)整后的生成速率生成的
單播令牌;
數(shù)據(jù)發(fā)送單元304,用于根據(jù)所述單播令牌和生成的多播令牌分別發(fā)送單 播數(shù)據(jù)和多播數(shù)據(jù)。
進一步,輸入流量管理器還可以包括 存儲單元,用于存儲多播數(shù)據(jù)。
從輸入流量管理器的實施例可知,由于輸入流量管理器接收的單播令牌是輸出流量管理器根據(jù)多播數(shù)據(jù)速率反向調(diào)整而生成,即是,當(dāng)多播數(shù)據(jù)所 需的帶寬與當(dāng)前的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用 總帶寬時,輸出流量管理器會減小單播令牌的生成速率,輸入流量管理器才艮 據(jù)單播令牌發(fā)送的單播數(shù)據(jù)流就會減少,節(jié)約出的帶寬就可以用于對多播數(shù)
據(jù)流的傳輸。
進一步,數(shù)據(jù)發(fā)送單元304具體包括上限接收單元、設(shè)限單元和數(shù)據(jù)設(shè)限 發(fā)送單元
上限接收單元,用于接收所述輸出流量管理器發(fā)送的指示為多播數(shù)據(jù)設(shè) 定速率上限的速率上限指令或指示取消多播數(shù)據(jù)速率上限的取消指令;
設(shè)限單元用于根據(jù)所述速率上限指令為所述多播數(shù)據(jù)設(shè)定速率上限,或, 根據(jù)所述取消指令取消所述多播數(shù)據(jù)的速率上限;
數(shù)據(jù)設(shè)限發(fā)送單元,用于才艮據(jù)所述單播令牌發(fā)送單播數(shù)據(jù),才艮據(jù)自身生 成的多播令牌以及所述速率上限發(fā)送多播數(shù)據(jù),或
用于根據(jù)所述單播令牌發(fā)送單播數(shù)據(jù),根據(jù)自身生成的多播令牌以無速 率上限模式發(fā)送多播數(shù)據(jù)。
從上可知,當(dāng)根據(jù)以一個輸出端為目的端的每一個輸入端發(fā)送的多播數(shù) 據(jù)的速率總值之和計算得到出現(xiàn)多播數(shù)據(jù)所需的帶寬超過上限總帶寬的結(jié) 果時,輸出端會對相應(yīng)的每一個輸入端發(fā)送速率上限指令,輸入端會對相應(yīng) 的多播數(shù)據(jù)設(shè)定速率上限。或者在得到取消指令時,取消速率上限。如果沒 有這個速率上限指令,可能出現(xiàn)的情況是,同一個目的端接收的所有多播數(shù) 據(jù)占用的帶寬會超過目的端配置的上限總帶寬,產(chǎn)生擁塞。所以,設(shè)置速率 上限指令,可以更好的控制多播數(shù)據(jù)的發(fā)送,解決擁塞的問題。
為更加清楚地闡述以上輸入流量管理器實施例,結(jié)合圖6說明輸入流量管 理器多播實現(xiàn)機制
圖中的多播數(shù)據(jù)速率監(jiān)測模塊即是速率獲取單元301,出隊邏輯即是速率 發(fā)送單元302和數(shù)據(jù)發(fā)送單元304,加權(quán)輪詢調(diào)度器(WRR, Weighted Round Robin)即是令牌接收單元303。緩存管理單元即是存儲單元。
本發(fā)明的方案是加入多播數(shù)據(jù)速率監(jiān)測機制,利用多播數(shù)據(jù)速率監(jiān)測模 塊對多播隊列的速率總值進行監(jiān)測。這里,可以使用單獨的多播狀態(tài)隊列向輸出流量管理器發(fā)送速率總值信息,當(dāng)然,還可以用其它方式實現(xiàn),比如在輸入流量管理器例行地發(fā)送給輸出流量管理器的隊列狀態(tài)信息中捎帶速率總值信息給輸出流量管理器,當(dāng)然,更優(yōu)的是,先發(fā)送速率總值信息給輸出流量管理器,以便輸出流量管理器可根據(jù)速率總值來調(diào)整單播令牌生成速率,將速率總值放入多播隊列等隊列中, 一起發(fā)送給輸出流量管理器,這時,輸出流量管理器還沒有能調(diào)整單播令牌的生成速率,在開始階段,會產(chǎn)生一定的擁塞,不過,現(xiàn)有的交換網(wǎng)的性能是能處理這種暫時的擁塞的。
多播數(shù)據(jù)速率監(jiān)測機制對以本輸入端為根的每棵多播樹進入交換機的數(shù)據(jù)速率進行監(jiān)測,然后把監(jiān)測結(jié)果記錄在如表l所示的表中。該表同時記錄了每棵多播樹目的端的輸出流量管理器。通過這張表,發(fā)送端的輸入流量管理器可以計算出從自己出發(fā)到達每個輸出流量管理器的多播數(shù)據(jù)量的速率總
值。發(fā)送端周期性地計算這個速率總和值,并將其發(fā)送到對應(yīng)的輸出流量管理器。
^l中可以看到,這樣的記錄結(jié)構(gòu)所占用的存儲空間是極為有限的,實現(xiàn)難度較低。
輸出端 1輸出端 2輸出端3…輸出端 N-l輸出端N速率
多播l10010Sl
多播211001S2
多播301001S3
多播411001S4
多播M00001SM
輸出端 速率和S1+S2+ S4+……
注N為交換機的輸出端的輸出流量管理器端口數(shù),M為每個端口支持的最大多播數(shù)據(jù)流的數(shù)量,在每個多播數(shù)據(jù)流對應(yīng)的行中,接收該多播數(shù)據(jù)流
的輸出端對應(yīng)的行值為1 ,其它不接收該數(shù)據(jù)流的輸出端對應(yīng)的行值為0。
表l發(fā)送端的輸入流量管理器發(fā)往每個輸出端的輸出流量管理器的數(shù)
14據(jù)總速率的記錄表
該表的總大小是{ M*N+(M+N)*S }bit 其中速率值4吏用Sbit記錄,粗線區(qū)域是M+N bit 其余是(M+NfS bit,要實現(xiàn)多播一般都會有多播表即粗線區(qū)域來記錄多播樹,所以需要增加的表項只有"速率,,列和"輸出端速率和"行即(M+NfSbit。對于現(xiàn)在的流量管理器來說,這樣的容量占用是容易實現(xiàn)的。
前述圖4所示的具體例證中,輸入端1發(fā)送給輸出端3的速率總值即是多播數(shù)據(jù)b與多播數(shù)據(jù)c的速率之和,輸入端l所記錄的表就是
輸出端O輸出端 1輸出端 2輸出端3速率
多播b1111Sl
多播c0111S2
輸出端 速率總 值SlSl+S2Sl+S2Sl+S2
表2:
表中顯示,輸入端1發(fā)送給輸出端3的輸出流量管理器的速率總值就是"S1+S2"。
輸出流量管理器實施例如圖7所示
速率接收單元401,用于接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總
值;
速率調(diào)整單元402,用于根據(jù)所述速率總值反向調(diào)整單播令牌的生成速
率;
令牌發(fā)送單元403,用于向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;
數(shù)據(jù)接收單元404,用于接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
進一步,速率調(diào)整單元402具體包括
帶寬獲取單元,用于根據(jù)所述速率總值獲取所述多播數(shù)據(jù)所需的帶寬;計算比較單元,用于將所述帶寬與所述輸出流量管理器的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬相加,與可用總帶寬比較;
速率減小單元,用于當(dāng)所述帶寬與所述輸出流量管理器的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用總帶寬時,減小單播令牌的生成速率。
從輸出流量管理器的實施例可知,由于輸入流量管理器接收的單播令牌是輸出流量管理器根據(jù)多播數(shù)據(jù)速率反向調(diào)整而生成,即是,當(dāng)多播數(shù)據(jù)所需的帶寬與當(dāng)前的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用總帶寬時,輸出流量管理器會減小單播令牌的生成速率,輸入流量管理器根據(jù)單播令牌發(fā)送的單播數(shù)據(jù)流就會減少,節(jié)約出的帶寬就可以用于對多播數(shù)
據(jù)流的傳輸。
進一步,輸出流量管理器還可以包括
指令發(fā)送單元,用于當(dāng)所述計算單元將以本輸入流量管理器作為目的端口的所有多播數(shù)據(jù)所需的帶寬之和與上限總帶寬相比,當(dāng)所述帶寬之和大于上限總帶寬時,向所述輸入流量管理器發(fā)送速率上限指令,所述速率上限指
令用于指示所述輸入流量管理器為所述多播數(shù)據(jù)設(shè)定速率上限;
當(dāng)所述帶寬之和小于上限總帶寬時,向所述輸入流量管理器發(fā)送指示取消多播數(shù)據(jù)速率上限的取消指令;
所述計算比較單元還用于將以本輸入流量管理器作為目的端口的所有多播數(shù)據(jù)所需的帶寬之和與上限總帶寬相比。
從上可知,當(dāng)根據(jù)以一個輸出端為目的端的每一個輸入端發(fā)送的多播數(shù)據(jù)的速率總值之和計算得到出現(xiàn)多播數(shù)據(jù)所需的帶寬超過上限總帶寬的結(jié)果時,輸出端會對相應(yīng)的每一個輸入端發(fā)送速率上限指令,輸入端會對相應(yīng)的多播數(shù)據(jù)設(shè)定速率上限?;蛘咴诘玫饺∠噶顣r,取消速率上限。如果沒有這個速率上限指令,可能出現(xiàn)的情況是,同一個目的端接收的所有多播數(shù)據(jù)占用的帶寬會超過目的端配置的上限總帶寬,產(chǎn)生擁塞。所以,設(shè)置速率上限指令,可以更好的控制多播數(shù)據(jù)的發(fā)送,解決擁塞的問題。
為更加清楚地闡述以上輸出流量管理器實施例,結(jié)合圖8說明輸出流量管理器多播實現(xiàn)機制
各個多播數(shù)據(jù)的目的端的輸出流量管理器接收輸入流量管理器監(jiān)測到的多播數(shù)據(jù)的速率總值。根據(jù)速率總值計算多播數(shù)據(jù)所需要占用的帶寬,輸出 流量管理器減小令牌生成器即令牌生成單元402的生成單播令牌的速率,這 樣,發(fā)送端的輸入流量管理器由于接收到的單播令牌在單位時間內(nèi)變少,調(diào) 度的單播數(shù)據(jù)流就會變少,可以達到通過減小單播數(shù)據(jù)流量,為多播數(shù)據(jù)流 量預(yù)留出足夠帶寬的目的。
從輸出流量管理器的實施例可知,由于輸出流量管理器根據(jù)多播數(shù)據(jù)速 率生成單播令牌,必然地,輸入流量管理器根據(jù)單播令牌調(diào)度的單播數(shù)據(jù)流 就會減少,節(jié)約出的帶寬就可以用于對多播數(shù)據(jù)流的傳輸。能夠在交換網(wǎng)中 更優(yōu)地實現(xiàn)對多播數(shù)據(jù)的傳輸,而不會引起擁塞。
通信系統(tǒng)實施例如圖9所示
輸入流量管理器501,用于獲取將發(fā)送到輸出流量管理器502的多播數(shù)據(jù) 的速率總值;向所述輸出流量管理器502發(fā)送所述速率總值,所述速率總值用 于指示所述輸出流量管理器502反向調(diào)整單播令牌的生成速率;接收所述輸出 流量管理器502以調(diào)整后的生成速率生成的單播令牌;根據(jù)所述單播令牌和自 身生成的多播令牌分別發(fā)送單播數(shù)據(jù)和多播數(shù)據(jù);
輸出流量管理器502,用于接收輸入流量管理器501發(fā)送的多播數(shù)據(jù)的速 率總值;根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;向所述輸入流量 管理器501發(fā)送以調(diào)整后的生成速率生成的單播令牌;接收所述輸入流量管理 器501發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
從通信系統(tǒng)的實施例可知,由于輸入流量管理器接收的單播令牌是輸出 流量管理器根據(jù)多播數(shù)據(jù)速率反向調(diào)整而生成,即是,當(dāng)多播數(shù)據(jù)所需的帶 寬與當(dāng)前的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用總帶寬
時,輸出流量管理器會減小單播令牌的生成速率,輸入流量管理器根據(jù)單播 令牌發(fā)送的單播數(shù)據(jù)流就會減少,節(jié)約出的帶寬就可以用于對多播數(shù)據(jù)流的 傳輸。
領(lǐng)i或普通4支術(shù)人貝可。 是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機 可讀存儲介質(zhì)中,所述存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上對本發(fā)明實施例所提供的 一種交換網(wǎng)數(shù)據(jù)調(diào)度方法、設(shè)備和系統(tǒng)進行了詳細介紹,
述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,
對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范 圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1、一種交換網(wǎng)數(shù)據(jù)調(diào)度方法,其特征在于,包括輸出流量管理器接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值;所述輸出流量管理器根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;所述輸出流量管理器向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;所述輸出流量管理器接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
2、 根據(jù)權(quán)利要求l所述的交換網(wǎng)數(shù)據(jù)調(diào)度方法,其特征在于,所述多播 數(shù)據(jù)是高優(yōu)先級的多播數(shù)據(jù)。
3、 根據(jù)權(quán)利要求l所述的交換網(wǎng)數(shù)據(jù)調(diào)度方法,其特征在于,所述輸出 流量管理器根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率的步驟具體包 括所述輸出流量管理器根據(jù)所述速率總值獲取所述多播數(shù)據(jù)所需的帶寬; 若所述帶寬與所述輸出流量管理器的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用總帶寬時,所述輸出流量管理器減小單播令牌的生成速率。
4、 根據(jù)權(quán)利要求3所述的交換網(wǎng)數(shù)據(jù)調(diào)度方法,其特征在于,在所述輸 出流量管理器根據(jù)所述速率總值獲取所述多播數(shù)據(jù)所需的帶寬的步驟之后還 包括將以本輸入流量管理器作為目的端口的所有多播數(shù)據(jù)所需的帶寬之和 與本輸出流量管理器作為目的端口 、多個輸入流量管理器作為發(fā)送端口時的 本輸出流量管理器的上限總帶寬相比;當(dāng)所述帶寬之和大于所述上限總帶寬 時,所述輸出流量管理器減小單播令牌的生成速率的同時或之后還包括所述輸出流量管理器向所述輸入流量管理器發(fā)送速率上限指令,所述速 率上限指令用于指示所述輸入流量管理器為所述多播數(shù)據(jù)設(shè)定速率上限;當(dāng)所述帶寬之和小于所述上限總帶寬時,所述輸出流量管理器減小單播 令牌的生成速率的同時或之后還包括所述輸出流量管理器向所述輸入流量管理器發(fā)送指示取消多播數(shù)據(jù)速率 上限的取消指令。
5、 一種交換網(wǎng)數(shù)據(jù)調(diào)度方法,其特征在于,包括輸入流量管理器獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率總值; 向所述輸出流量管理器發(fā)送所述速率總值;輸出流量管理器接收所述輸入流 量管理器發(fā)送的速率總值;根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率; 向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;輸入流量 管理器接收所述單播令牌;根據(jù)所述單播令牌和自身生成的多播令牌分別發(fā) 送單播數(shù)據(jù)和多播數(shù)據(jù);輸出流量管理器接收所述輸入流量管理器發(fā)送的單 播數(shù)據(jù)和多播數(shù)據(jù)。
6、 一種輸入流量管理器,其特征在于,包括速率獲取單元,用于獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率總值;速率發(fā)送單元,用于向所述輸出流量管理器發(fā)送所述速率總值,所述速 率總值用于指示所述輸出流量管理器反向調(diào)整單l番令牌的生成速率;令牌接收單元,用于接收所述輸出流量管理器以調(diào)整后的生成速率生成的單播令牌;數(shù)據(jù)發(fā)送單元,用于根據(jù)所述單播令牌和生成的多播令牌分別發(fā)送單播 數(shù)據(jù)和多播數(shù)據(jù)。
7、 根據(jù)權(quán)利要求6所述的輸入流量管理器,其特征在于,還包括 存儲單元,用于存儲多播數(shù)據(jù)。
8、 根據(jù)權(quán)利要求6所述的輸入流量管理器,其特征在于,數(shù)據(jù)發(fā)送單元 具體包括上限接收單元,用于接收所述輸出流量管理器發(fā)送的指示為多播數(shù)據(jù)設(shè) 定速率上限的速率上限指令或指示取消多播數(shù)據(jù)速率上限的取消指令;設(shè)限單元,用于根據(jù)所述速率上限指令為所述多播數(shù)據(jù)設(shè)定速率上限, 或,根據(jù)所述取消指令取消所述多播數(shù)據(jù)的速率上限;數(shù)據(jù)設(shè)限發(fā)送單元,用于根據(jù)所述單播令牌發(fā)送單播數(shù)據(jù),根據(jù)自身生 成的多播令牌以及所述速率上限發(fā)送多播數(shù)據(jù),或用于根據(jù)所述單播令牌發(fā)送單播數(shù)據(jù),根據(jù)自身生成的多播令牌以無速 率上限模式發(fā)送多播數(shù)據(jù)。
9、 一種輸出流量管理器,其特征在于,包括速率接收單元,用于接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值; 速率調(diào)整單元,用于根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率; 令牌發(fā)送單元,用于向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生 成的單播令牌;數(shù)據(jù)接收單元,用于接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。
10、 根據(jù)權(quán)利要求9所述的輸出流量管理器,其特征在于,所述速率調(diào)整 單元具體包括帶寬獲取單元,用于根據(jù)所述速率總值獲取所述多播數(shù)據(jù)所需的帶寬; 計算比較單元,用于將所述帶寬與所述輸出流量管理器的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬相加,與可用總帶寬比較;速率減小單元,用于當(dāng)所述帶寬與所述輸出流量管理器的單播令牌生成速率決定的單播數(shù)據(jù)所需帶寬之和大于可用總帶寬時,減小單播令牌的生成速率。
11、 根據(jù)權(quán)利要求10所述的輸出流量管理器,其特征在于,還包括 指令發(fā)送單元,用于當(dāng)所述計算單元將以本輸入流量管理器作為目的端口的所有多播數(shù)據(jù)所需的帶寬之和與本輸出流量管理器作為目的端口 、多個 輸入流量管理器作為發(fā)送端口時的本輸出流量管理器的上限總帶寬相比,當(dāng) 所述帶寬之和大于所述上限總帶寬時,向所述輸入流量管理器發(fā)送速率上限 指令,所述速率上限指令用于指示所述輸入流量管理器為所述多播數(shù)據(jù)設(shè)定 速率上限;當(dāng)所述帶寬之和小于所述上限總帶寬時,向所述輸入流量管理器發(fā)送指 示取消多播數(shù)據(jù)速率上限的取消指令;所述計算比較單元還用于將以本輸入流量管理器作為目的端口的所有多 播數(shù)據(jù)所需的帶寬之和與所述上限總帶寬相比。
12、 一種通信系統(tǒng),其特征在于,包括輸入流量管理器,用于獲取將發(fā)送到輸出流量管理器的多播數(shù)據(jù)的速率 總值;向所述輸出流量管理器發(fā)送所述速率總值,所述速率總值用于指示所 述輸出流量管理器反向調(diào)整單播令牌的生成速率;接收所述輸出流量管理器以調(diào)整后的生成速率生成的單播令牌;根據(jù)所述單播令牌和自身生成的多播 令牌分別發(fā)送單播數(shù)據(jù)和多播數(shù)據(jù);輸出流量管理器,用于接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值; 根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;向所述輸入流量管理器發(fā) 送以調(diào)整后的生成速率生成的單播令牌;接收所述輸入流量管理器發(fā)送的單 播數(shù)據(jù)和多播數(shù)據(jù)。
全文摘要
本發(fā)明實施例提供一種交換網(wǎng)數(shù)據(jù)調(diào)度方法、設(shè)備和系統(tǒng),方法包括輸出流量管理器接收輸入流量管理器發(fā)送的多播數(shù)據(jù)的速率總值;所述輸出流量管理器根據(jù)所述速率總值反向調(diào)整單播令牌的生成速率;所述輸出流量管理器向所述輸入流量管理器發(fā)送以調(diào)整后的生成速率生成的單播令牌;所述輸出流量管理器接收所述輸入流量管理器發(fā)送的單播數(shù)據(jù)和多播數(shù)據(jù)。使用該方法,能夠在交換網(wǎng)中實現(xiàn)優(yōu)先級高于單播數(shù)據(jù)的多播數(shù)據(jù)的傳輸。
文檔編號H04L12/56GK101478486SQ20091000604
公開日2009年7月8日 申請日期2009年1月22日 優(yōu)先權(quán)日2009年1月22日
發(fā)明者晗 劉, 春 華, 云 林, 涂曉東, 勇 謝 申請人:華為技術(shù)有限公司;電子科技大學(xué)