丟棄該包。
[0088](4)如果在MAX_CELL_DELAY時間內,信元已經完整接收,檢查該數據包的包序號是否與希望的包序號相同,如果相同進行packet重組。如果不同,則設置等待重組的最大時延 MAX_CELL_DELAYo
[0089](5)如果在這段時間內,該描述符的包序號與期望包序號相等,則重組該數據包,并更新期望包序號。如果超過時間門限,該描述符對應的包序號小于期望包序號,就丟棄該信元,如果描述符對應的包序號大于期望包序號,就重組該數據包,同時更新期望包序號。
【主權項】
1.一種支持多業務的網絡交換裝置,采用典型的三級CLOS架構,包括輸入單元、中間交換單元和輸出單元,其特征在于:三級對稱CL0S網絡C(n, m, r)的輸入單元共有r個n*m交換模塊,中間交換單元有m個r*r交換模塊,輸出單元有r個m*n輸出模塊;網絡共有N=n*r個輸入和輸出端口,每個中間交換模塊與每個輸入和輸出模塊至少有1條鏈路連接;各個輸入模塊和各個輸出模塊之間不存在直接連接;輸入模塊實現數據包流量的申請、數據包的切割以及路由和包內負載均衡;交換模塊實現路由、鏈路級負載均衡和信元調度的功能;輸出模塊實現流量控制、信元的排序與數據包的重組;每個中間級交換單元看作一個交換平面,它可以擴展成三級交換結構,由第一級交換單元,第二級交換單元和第三級交換單元構成。2.如權利要求1所述支持多業務的網絡交換裝置實現方法,包括以下步驟: 步驟①、輸入單元數據包流量的申請: 輸入單元的每個輸入模塊緩存針對交換網絡的不同輸出端口構建不同的虛擬輸出隊列,為每個隊列發送一個隊列狀態信元到輸出端口申請流量;申請流量的大小采用更新機制;隊列狀態信元的產生分周期性和非周期性;當新增的數據包流量超過兩個最大包長發送非周期性隊列狀態信元;周期的設定是根據交換架構的規模動態變化,當周期性時鐘定時器觸發時,產生周期性隊列狀態信元; 步驟②、輸出單元的流量控制: 當多個輸入模塊發送流量申請到同一個輸出模塊時,輸出模塊需要根據申請流量的大小做好負載均衡;當接收數據信元的存儲緩存超過最大允許接收緩存的0.75倍時,輸出模塊將產生快速流控通過控制信元直接作用到所有輸入模塊,輸入模塊對應的虛擬隊列則不會再將數據包進行切割和發送; 步驟③、數據包的切割: 接收到輸出模塊的授權之后將得到授權的數據包切割成信元; 步驟④、路由和包內負載均衡: 一個數據包可切割成多個數據信元,接收端重組采用與期望包序號比較的方式,并盡量保證發送到交換單元的數據包的包序號是連續的,期望包序號是指輸出模塊期望重組的來自輸入模塊數據包的包序號;根據路由結果和數據包切割狀態來決定是否需要更新數據包的包序號;路由成功且數據包切割的所有信元都已經得到發送時,更新該業務數據包對應的包序號;數據包的第一個信元路由成功,其他信元路由失敗時,更新對應的包序號;數據包的所有信元都路由失敗時,則不更新該包序號; 步驟⑤、中間交換單元的路由和負載均衡: 從鏈路接收到數據信元后查詢路由表,采用基于鏈路的負載均衡通過輪詢每個鏈路來選擇最終的輸出鏈路,將流量平攤到各個輸出鏈路中去: 步驟⑥、中間交換單元的信元調度: 將信元描述符根據信元類型放入相應描述符隊列中,并根據業務的優先級順序調度信元;信元調度模塊由K*K個V0Q虛擬輸出隊列描述符隊列、2K個組播packet描述符隊列、K個組播0TN光傳送網描述符隊列、一個0TN組播仲裁器、一個組播packet仲裁器、K個輸入端仲裁器、K個輸出端仲裁器和1個輸出控制模塊組成組成; 步驟⑦、中間交換單元的響應授權: 根據信元調度結果,從ram中找到對應的信元,之后通過crossbar將信元發送到輸出ram 中; 步驟⑧、包重組與排序: F0P的重組:設置期望包序號,完整接收的數據包包序號大于期望值時,繼續等待,反之丟棄;當與期望值相等時進行重組。3.如權利要求2所述支持多業務的網絡交換裝置實現方法,其特征在于:所述步驟⑥中調度模塊的具體執行過程如下: (1)業務類分,將從輸入緩存中傳來的描述符根據業務類型發送對應的描述隊列中;組播0TN放入0TN組播描述符VIQ虛擬輸入隊列中,單播packet和單播0TN放入單播描述符隊列中;組播packet根據自身優先級放入組播VIQ隊列中;業務的優先級劃分主要依據業務對時延的要求,0TN業務對時延要求最高,優先級最高,其次是單播packet,最后是組播packet業務; (2)組播0TN的調度,通過0TN仲裁器選出一個輸入請求,并將請求結果發送到輸出控制模塊和K個輸出仲裁器;由于0TN組播的優先級最高,所以采用一次扇出的方式;具體來說,當0TN組播的輸出端口中有幾個暫時處于忙狀態時,會采取如下幾個過程:等待所有目的端口空閑;目的端口中,暫時空閑的端口不再參與調度;停止其他0TN組播的調度; (3)單播輸出端調度,K輸出端仲裁器根據當前的端口忙閑情況,各自調度,將輸入請求發送到輸入端仲裁器; (4)單播輸入端調度,K輸入端口仲裁器根據當前的端口忙閑情況,各自調度,將授權結果發到輸出模塊; (5)組播packet調度,根據組播高低優先級仲裁器,選擇一個組播請求,并將請求結果發送到輸出控制; 由于packet組播的優先級最低,很難同時保證多個輸出端口都空閑,所以采用了多次扇出的方式;具體來說,當packet組播的輸出端口中有幾個端口處于忙狀態;會做如下處理:根據當前空閑的鏈路情況生成授權;等待剩余目的端口空閑;停止其他packet組播的調度; (6)將調度結果發送到ram模塊。4.如權利要求2所述支持多業務的網絡交換裝置實現方法,其特征在于:所述步驟⑧中包重組與排序具體過程如下: (1)F0P接收來自網絡的數據信元,提取該信元的源端口,包優先級和包序號等字段; (2)根據源端口號,包優先級和包序號查詢已有的描述符信息,如果查詢到該描述符信息,就更新描述符信息,如果不存在,且包序號小于期望包序號,就丟棄該信元,如果不存在描述符且包序號大于包期望值,則創建新的描述符信息; (3)創建好描述符信息后,設置等待包內所有信元到達輸出模塊時,最小信元時延與最大信元時延的最大時間間隔MAX_CELL_DELAY,如果在這段時間內數據包沒有完整接收,就認為信元丟棄,丟棄該包; (4)如果在MAX_CELL_DELAY時間內,信元已經完整接收,檢查該數據包的包序號是否與希望的包序號相同,如果相同進行packet重組;如果不同,則設置等待重組的最大時延MAX_CELL_DELAY ; (5)如果在這段時間內,該描述符的包序號與期望包序號相等,則重組該數據包,并更新期望包序號;如果超過時間門限,該描述符對應的包序號小于期望包序號,就丟棄該信元,如果描述符對應的包序號大于期望包序號,就重組該數據包,同時更新期望包序號。
【專利摘要】本發明涉及一種支持多業務的基于輸出單元包重組與排序的網絡交換裝置及其實現方法。該交換裝置采用多級CLOS交換架構,輸入單元、輸出單元和交換單元均帶有緩存。該交換裝置能夠處理多業務流量,根據業務特性來進行交換;在擁塞場景下能夠通過輸出單元產生快速流控作用到輸入端減小輸出端擁塞壓力,使得中間級的擁塞程度小;在鏈路故障場景下能夠通過負載均衡方案減小故障平面的輸入流量,緩解交換單元的擁塞情況;采用輸出單元包排序的方法,減小交換單元的設計復雜度,通過輸入端單元的數據包內信元負載均衡方法使得信元之間的時間差小,從而減小了數據包的時延以及輸出端排序與重組的緩存大小。
【IPC分類】H04L12/861, H04L12/801
【公開號】CN105337883
【申請號】CN201510514292
【發明人】涂曉東, 袁杭江, 秦鈺坤, 謝軍, 孟中樓, 張偉, 黃元波
【申請人】電子科技大學, 烽火通信科技股份有限公司
【公開日】2016年2月17日
【申請日】2015年8月20日