本發(fā)明專利技術(shù)是基于交換網(wǎng)絡的一種廣播調(diào)度方法,實現(xiàn)廣播的線速轉(zhuǎn)發(fā),確保廣播消息可以同時到達所有目的端口;在多端口發(fā)送廣播時,無死鎖,各發(fā)送端口發(fā)送負載保持均衡;并且支持兩交換機級聯(lián)網(wǎng)絡。本發(fā)明專利技術(shù)通過設計一個全局的廣播仲裁器,對所有需要發(fā)送廣播消息的端口進行仲裁;然后得到許可的端口向所有目的端口發(fā)送請求,得到所有目的端口許可后,發(fā)送數(shù)據(jù)幀并撤銷廣播發(fā)送請求;然后轉(zhuǎn)入下一輪仲裁。
【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)屬于計算機通信技術(shù),涉及通信網(wǎng)絡中交換機的一種廣播的調(diào)度方法。
技術(shù)介紹
現(xiàn)代交換式通信網(wǎng)絡,都由節(jié)點機和交換機組成,所有節(jié)點機均通過鏈路與交換機相連,實現(xiàn)分布式通信。交換機作為整個交換網(wǎng)絡的核心部件,負責為網(wǎng)絡中所有節(jié)點提供單播、組播和廣播的數(shù)據(jù)交換支持。為了支持更多的網(wǎng)絡節(jié)點,通常將多個交換機進行級聯(lián)來實現(xiàn)。 在一些實時通信系統(tǒng)中,對廣播消息有特殊要求,要求廣播消息同時達到各目的端ロ,這樣就要求所有目的端ロ全部就緒后才能發(fā)送廣播消息。當有多個端ロ需要同時發(fā)送廣播消息時,可能會出現(xiàn)多個端ロ相互等待而造成廣播死鎖問題。另外,在兩個交換機組成的級聯(lián)網(wǎng)絡中,如何實現(xiàn)廣播消息同時到達各目的端ロ,暫無相關技術(shù)文獻。
技術(shù)實現(xiàn)思路
本專利技術(shù)的目的是提供基于交換網(wǎng)絡的ー種廣播調(diào)度方法,實現(xiàn)廣播的線速轉(zhuǎn)發(fā),確保廣播消息可以同時到達所有目的端ロ ;在多端ロ發(fā)送廣播時,無死鎖,各發(fā)送端ロ發(fā)送負載保持均衡;并且支持兩交換機級聯(lián)網(wǎng)絡。本專利技術(shù)通過設計ー個全局的廣播仲裁器,對所有需要發(fā)送廣播消息的端ロ進行仲裁;然后得到許可的端ロ向所有目的端ロ發(fā)送請求,得到所有目的端ロ許可后,發(fā)送數(shù)據(jù)幀并撤銷廣播發(fā)送請求;然后轉(zhuǎn)入下ー輪仲裁。據(jù)此,本專利技術(shù)提出以下方案基于交換網(wǎng)絡的ー種廣播調(diào)度方法,包括以下環(huán)節(jié)I)當ー個或多個Ingress端ロ的廣播隊列非空時,即處于等待發(fā)送的巾貞為廣播中貞狀態(tài),每個Ingress端ロ向廣播仲裁器發(fā)送各自的“廣播調(diào)度請求”,同時還發(fā)送級聯(lián)擴展端ロ標志信號以及優(yōu)先級標志信號給廣播仲裁器;廣播仲裁器進行仲裁,根據(jù)仲裁結(jié)果向選定的Ingress端ロ發(fā)送“廣播調(diào)度許可”;2) Ingress端ロ如果未收到“廣播調(diào)度許可”,則持續(xù)發(fā)送“廣播調(diào)度請求”;如果收到“廣播調(diào)度許可”,則根據(jù)主機配置的廣播隔離寄存器,Ingress端ロ向除廣播隔離端ロ外的其他所有的Egress目的端ロ發(fā)送“廣播發(fā)送請求”;3) Egress目的端ロ接收到Ingress端ロ發(fā)送的“廣播發(fā)送請求”后,根據(jù)步驟I)所述的優(yōu)先級標志信號優(yōu)先選擇對高優(yōu)先級“廣播發(fā)送請求”采用Round Robin算法進行仲裁,根據(jù)該仲裁結(jié)果,Egress目的端ロ向相應的Ingress端ロ發(fā)送“廣播發(fā)送許可”;當Egress目的端ロ接收到Ingress端ロ發(fā)送的“接受廣播發(fā)送許可”后,轉(zhuǎn)入下ー輪仲裁;否則,Egress目的端ロ持續(xù)發(fā)送“廣播消息發(fā)送許可”;4) Ingress端ロ收齊所有Egress目的端ロ的“廣播發(fā)送許可”后,向所有Egress目的端ロ發(fā)送“接受廣播發(fā)送許可”;同吋,Ingress端ロ控制邏輯產(chǎn)生“廣播數(shù)據(jù)幀出隊請求”,其有效狀態(tài)維持到該幀結(jié)束;控制邏輯根據(jù)優(yōu)先級標志信號選擇相應優(yōu)先級的廣播幀隊列,進入廣播發(fā)送狀態(tài);5) Ingress端口進入廣播發(fā)送狀態(tài)后,撤銷向廣播仲裁器發(fā)送的“廣播調(diào)度請求”;同時,廣播仲裁器轉(zhuǎn)入下一輪仲裁,再次執(zhí)行步驟I)至5);所述廣播仲裁器在收到“廣播調(diào)度請求”后的執(zhí)行內(nèi)容是a、檢測級聯(lián)擴展端口是否有“廣播調(diào)度請求”,如果有,向該級聯(lián)擴展端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟d);否則,轉(zhuǎn)步驟b);b、檢測是否有高優(yōu)先級的“廣播調(diào)度請求”,如果有,利用Round Robin算法對接收到的高優(yōu)先級“廣播調(diào)度請求”進行仲裁,并根據(jù)仲裁結(jié)果,向該端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟d);否則轉(zhuǎn)步驟c); C、采用Round Robin算法對接收到的低優(yōu)先級“廣播調(diào)度請求”進行仲裁,并根據(jù)仲裁結(jié)果,向該端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟4);d、檢測被許可端口是否已撤銷“廣播調(diào)度請求”,如果是,轉(zhuǎn)步驟a),進行下一輪仲裁;否則,繼續(xù)檢測該端口是否已撤銷“廣播調(diào)度請求”。本專利技術(shù)的優(yōu)點是可靠性高在單交換機及兩交換機級聯(lián)網(wǎng)絡中,出現(xiàn)多個端口同時發(fā)送廣播時,可以確保不會出現(xiàn)死鎖。傳輸效率高單端口發(fā)送廣播可以達到線速;多端口發(fā)送廣播時,各發(fā)送端口發(fā)送均衡。可擴展性強只需要對仲裁器Round Robin端口數(shù)目進行擴充,即可支持更多端口的交換機廣播的設計和實現(xiàn)。支持廣播隔離可以根據(jù)實際情況,通過主機配置,使部分端口不接收廣播幀。附圖說明圖1是廣播實現(xiàn)方案示意圖;圖2是廣播仲裁器工作流程示意圖;圖3是廣播發(fā)送流程示意圖。具體實施例方式本專利技術(shù)的實現(xiàn)方式分為廣播整體方案、廣播仲裁器、廣播發(fā)送流程三個部分。下面以支持兩級優(yōu)先級的32端口交換機為例,對三個部分進行具體介紹。1.廣播實現(xiàn)方案如圖1所示,當交換機的某個或某些Ingress端口(端口輸入端)接收到廣播數(shù)據(jù)幀時,需要向廣播仲裁器發(fā)送“廣播調(diào)度請求”,同時執(zhí)行下述過程I)廣播仲裁器從所有的“廣播調(diào)度請求”端口中,通過“廣播仲裁器”仲裁出某一個端口,向它發(fā)送“廣播調(diào)度許可”;2)收到“廣播調(diào)度許可”的Ingress端口,向所有需要接收廣播的Egress目的端口(端口輸出端)發(fā)送“廣播發(fā)送請求”信號,在收齊所有Egress目的端口回復的“廣播發(fā)送許可”后,轉(zhuǎn)入發(fā)送狀態(tài),并撤銷向廣播仲裁器發(fā)送的“廣播調(diào)度請求”信號;沒有收到“廣播調(diào)度許可”的Ingress端口,則持續(xù)向廣播仲裁器發(fā)送“廣播調(diào)度請求”;3)廣播仲裁器在向某Ingress端口發(fā)送出“廣播調(diào)度許可”后,持續(xù)檢測該端口的“廣播調(diào)度請求”信號是否已被撤銷,當檢測到該信號撤銷后,轉(zhuǎn)步驟1),進行下一輪仲裁。2.廣播仲裁器為避免出現(xiàn)廣播風暴,廣播消息只能通過一個級聯(lián)擴展端口。廣播仲裁器采用基于優(yōu)先級的Round Robin算法,優(yōu)先接受高優(yōu)先級的請求,其中,級聯(lián)擴展端口優(yōu)先級最高,其它端口優(yōu)先級為相應廣播幀的優(yōu)先級。如圖2所示,廣播仲裁器工作流程如下I)檢測級聯(lián)擴展端口是否有“廣播調(diào)度請求”,如果有,向該級聯(lián)擴展端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟4);否則,轉(zhuǎn)步驟2);2)檢測是否有高優(yōu)先級的“廣播調(diào)度請求”,如果有,利用Round Robin算法對接收 到的高優(yōu)先級“廣播調(diào)度請求”進行仲裁,并根據(jù)仲裁結(jié)果,向該端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟4);否則轉(zhuǎn)步驟3);3)利用Round Robin算法對接收到的低優(yōu)先級“廣播調(diào)度請求”進行仲裁,并根據(jù)仲裁結(jié)果,向該端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟4);4)檢測被許可端口是否已撤銷“廣播調(diào)度請求”,如果是,轉(zhuǎn)步驟I ),進行下一輪仲裁;否則,繼續(xù)檢測該端口是否已撤銷“廣播調(diào)度請求”。3.廣播發(fā)送流程每個數(shù)據(jù)端口的Ingress端口有一個輸入緩存,用來緩存接收到的各種數(shù)據(jù)幀。該緩存被分成大小相同的N個分區(qū)(典型值為4,8,12,14,16),每個緩存分區(qū)足夠存儲一個最大幀。每個緩存分區(qū)有一個對應的位置指針,取值分別為O N。尚未使用的緩存分區(qū)以及剛釋放的緩存分區(qū)的位置指針存放在一個指針池中,該指針池用FIFO來實現(xiàn)。每個數(shù)據(jù)端口的Ingress端口有若干個隊列32個單播低優(yōu)先級隊列,32個單播高優(yōu)先級隊列,I個多播低優(yōu)先級隊列,I個多播高優(yōu)先級隊列,I個廣播低優(yōu)先級隊列,I個廣播高優(yōu)先級隊列。當一個數(shù)據(jù)幀進入Ingress端口時,從指針池讀出未被使用的緩存分區(qū)位置指針,然后根據(jù)該指針將數(shù)據(jù)幀寫入到輸入緩存中對應的位置。同時,根據(jù)該數(shù)據(jù)幀的目的地址,將位置指針寫入對應的隊列隊尾。如圖3所示本文檔來自技高網(wǎng)...
【技術(shù)保護點】
基于交換網(wǎng)絡的一種廣播調(diào)度方法,包括以下環(huán)節(jié):1)當一個或多個Ingress端口的廣播隊列非空時,即處于等待發(fā)送的幀為廣播幀狀態(tài),每個Ingress端口向廣播仲裁器發(fā)送各自的“廣播調(diào)度請求”,同時還發(fā)送級聯(lián)擴展端口標志信號以及優(yōu)先級標志信號給廣播仲裁器;廣播仲裁器進行仲裁,根據(jù)仲裁結(jié)果向選定的Ingress端口發(fā)送“廣播調(diào)度許可”;2)Ingress端口如果未收到“廣播調(diào)度許可”,則持續(xù)發(fā)送“廣播調(diào)度請求”;如果收到“廣播調(diào)度許可”,則根據(jù)主機配置的廣播隔離寄存器,Ingress端口向除廣播隔離端口外的其他所有的Egress目的端口發(fā)送“廣播發(fā)送請求”;3)Egress目的端口接收到Ingress端口發(fā)送的“廣播發(fā)送請求”后,根據(jù)步驟1)所述的優(yōu)先級標志信號優(yōu)先選擇對高優(yōu)先級“廣播發(fā)送請求”采用Round?Robin算法進行仲裁,根據(jù)該仲裁結(jié)果,Egress目的端口向相應的Ingress端口發(fā)送“廣播發(fā)送許可”;當Egress目的端口接收到Ingress端口發(fā)送的“接受廣播發(fā)送許可”后,轉(zhuǎn)入下一輪仲裁;否則,Egress目的端口持續(xù)發(fā)送“廣播消息發(fā)送許可”;4)Ingress端口收齊所有Egress目的端口的“廣播發(fā)送許可”后,向所有Egress目的端口發(fā)送“接受廣播發(fā)送許可”;同時,Ingress端口控制邏輯產(chǎn)生“廣播數(shù)據(jù)幀出隊請求”,其有效狀態(tài)維持到該幀結(jié)束;控制邏輯根據(jù)優(yōu)先級標志信號選擇相應優(yōu)先級的廣播幀隊列,進入廣播發(fā) 送狀態(tài);5)Ingress端口進入廣播發(fā)送狀態(tài)后,撤銷向廣播仲裁器發(fā)送的“廣播調(diào)度請求”;同時,廣播仲裁器轉(zhuǎn)入下一輪仲裁,再次執(zhí)行步驟1)至5);所述廣播仲裁器在收到“廣播調(diào)度請求”后的執(zhí)行內(nèi)容是:a、檢測級聯(lián)擴展端口是否有“廣播調(diào)度請求”,如果有,向該級聯(lián)擴展端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟d);否則,轉(zhuǎn)步驟b);b、檢測是否有高優(yōu)先級的“廣播調(diào)度請求”,如果有,利用Round?Robin算法對接收到的高優(yōu)先級“廣播調(diào)度請求”進行仲裁,并根據(jù)仲裁結(jié)果,向該端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟d);否則轉(zhuǎn)步驟c);c、采用Round?Robin算法對接收到的低優(yōu)先級“廣播調(diào)度請求”進行仲裁,并根據(jù)仲裁結(jié)果,向該端口發(fā)送“廣播調(diào)度許可”,然后轉(zhuǎn)步驟4);d、檢測被許可端口是否已撤銷“廣播調(diào)度請求”,如果是,轉(zhuǎn)步驟a),進行下一輪仲裁;否則,繼續(xù)檢測該端口是否已撤銷“廣播調(diào)度請求”。...
【技術(shù)特征摘要】
1.基于交換網(wǎng)絡的一種廣播調(diào)度方法,包括以下環(huán)節(jié)O當一個或多個Ingress端口的廣播隊列非空時,即處于等待發(fā)送的幀為廣播幀狀態(tài),每個Ingress端口向廣播仲裁器發(fā)送各自的“廣播調(diào)度請求”,同時還發(fā)送級聯(lián)擴展端口標志信號以及優(yōu)先級標志信號給廣播仲裁器;廣播仲裁器進行仲裁,根據(jù)仲裁結(jié)果向選定的Ingress端口發(fā)送“廣播調(diào)度許可”;2)Ingress端口如果未收到“廣播調(diào)度許可”,則持續(xù)發(fā)送“廣播調(diào)度請求”;如果收到 “廣播調(diào)度許可”,則根據(jù)主機配置的廣播隔離寄存器,Ingress端口向除廣播隔離端口外的其他所有的Egress目的端口發(fā)送“廣播發(fā)送請求”;3)Egress目的端口接收到Ingress端口發(fā)送的“廣播發(fā)送請求”后,根據(jù)步驟I)所述的優(yōu)先級標志信號優(yōu)先選擇對高優(yōu)先級“廣播發(fā)送請求”采用Round Robin算法進行仲裁, 根據(jù)該仲裁結(jié)果,Egress目的端口向相應的Ingress端口發(fā)送“廣播發(fā)送許可”;當Egress目的端口接收到Ingress端口發(fā)送的“接受廣播發(fā)送許可”后,轉(zhuǎn)入下一輪仲裁;否則,Egress目的端口持續(xù)發(fā)送“廣播消息發(fā)送許可”;4)Ingress端口收齊所有Egress目的...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:李玉發(fā),李大鵬,黃韜,王紅春,王曉華,田園,蒲愷,
申請(專利權(quán))人:中國航空工業(yè)集團公司第六三一研究所,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。