麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種建立鄰居關系時的hello報文發送方法和裝置的制作方法

文檔序號:7977719閱讀:286來源:國知局
專利名稱:一種建立鄰居關系時的hello報文發送方法和裝置的制作方法
技術領域
本發明涉及通信技術領域,具體涉及一種建立鄰居關系時的hello報文發送方法和裝置。
背景技術
TRILL是互聯網工程任務組(IETF)推薦的鏈路層(L2)網絡標準,用于解決大型數據中心中生成樹(STP)協議的不足。在TRILL網絡中,運行TRILL協議的設備稱為路由橋(RB,Routing Bridge)設備, 同一鏈路上直連的RB設備之間使用Hello報文進行信息交互。同一鏈路上的RB之間會選舉出指定RB (DRB),由該DRB選出用于后續封裝TRILL控制報文和數據報文的指定VLAN,并為鏈路上的每個使能VLAN分配唯一的發送和接收端口作為該使能VLAN的指定VLAN轉發者(AVF)。當為某個使能VLAN分配AVF后,作為AVF的RB端口負責將本地網絡中的與該 VLAN相關的數據報文上送TRILL網絡,使用指定VLAN進行TRILL封裝后傳遞到遠端的目的 RB,遠端的目的RB接收到封裝后的TRILL數據報文后,解封裝該TRILL數據報文,并通過目的RB上對應的AVF端口發送到遠端的本地網絡中。當一個新的RB設備接入鏈路時,為了充分發現鏈路上的其它RB設備,需要在所有使能VLAN中發送Hello報文。當鏈路上的其它RB設備收到新的鄰居RB設備發送的Hello 報文時,需要立刻回應Hello報文,其中,對于DRB,需要在所有使能VLAN中回應Hello報文;對于非DRB,則需要在指定VLAN和分配了 AVF的VLAN中回應Hello報文。這樣,當同時有多個RB設備接入鏈路時,短時間內鏈路上會出現大量的Hello報文。大量的HELLO報文不但會消耗大量鏈路帶寬,而且還會占用鏈路上各RB設備的CPU處理能力。

發明內容
有鑒于此,本發明的目的在于提供一種建立鄰居關系時的hello報文發送方法, 該方法能夠減少建立鄰居關系時Hello報文的發送數量。為了達到上述目的,本發明提供了一種建立鄰居關系時的hello報文發送方法, 該方法包括接收到新的鄰居路由橋RB發送的Hello報文時,如果定時器T已經啟動,則將該 Hello報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一 VLAN集合,如果定時器T未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一 VLAN集合;定時器T超時后,根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合, 在第二 VLAN集合中的每個VLAN中發送Hello報文。本發明還提供了一種路由橋RB設備,該RB設備包括接收單元、控制單元、發送單元;所述接收單元,用于接收新的鄰居RB發送的Hello報文;
所述控制單元,用于在接收單元接收到新的鄰居RB發送的Hello報文時,如果定時器T已經啟動,則將該Hello報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一 VLAN集合,如果定時器T未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一 VLAN集合;用于在定時器T超時后,根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合;所述發送單元,用于在控制單元根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合后,在第二 VLAN集合中的每個VLAN中發送Hel Io報文。由上面的技術方案可知,本發明中,對于定時器T時間內接收到新的鄰居RB發送的Hello報文,將該Hello報文所屬的VLAN加入該新的鄰居RB對應的第一 VLAN集合;當定時器T超時后,根據所有新的鄰居RB對應的第一 VLAN集合進行處理,生成包含較少VLAN 的第二 VLAN集合,在第二 VLAN集合中的每個VLAN中發送Hello報文,使得所有新的鄰居 RB均可以和當前RB建立鄰居關系,并且減少了 Hello報文的發送數量,進而,由于Hello報文的數量的減少,可以減少鏈路帶寬消耗,并減少占用鏈路上各RB設備的CPU處理能力。


圖1是本發明實施例建立鄰居關系時的hello報文發送方法流程圖;圖2是TRILL網絡的組網示意圖;圖3是本發明實施例路由橋的結構示意圖
具體實施例方式為了使本發明的目的、技術方案及優點更加清楚明白,下面結合附圖并舉實施例, 對本發明的技術方案進行詳細說明。參見圖1,圖1是本發明實施例建立鄰居關系時的hello報文發送方法流程圖,應用于TRILL網絡中,該方法包括步驟101、接收到新的鄰居路由橋RB發送的Hello報文時,如果定時器T已經啟動,則將該Hello報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一 VLAN集合,如果定時器T未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一 VLAN集合。本步驟中,定時器T是預先定義的。在有新的鄰居RB接入鏈路時,從首次接收到新的鄰居RB發送的Hello報文時開始計時,并對定時器T超時前接收到的所有新的鄰居RB 發送的Hello報文進行VLAN記錄,將接收到的每個新的鄰居RB發送的Hello報文所屬的 VLAN記錄到該鄰居RB對應的第一 VLAN集合中。步驟102、定時器T超時后,根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合,在第二 VLAN集合中的每個VLAN中發送Hello報文。本步驟中,所述根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合的方法具體可以為對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計,將出現次數最多的VLAN加入到第二 VLAN集合,如果存在不包含第二 VLAN集合中的任一 VLAN的新的鄰居RB對應的第一 VLAN集合,則對不包含第二 VLAN集合中的任一 VLAN的所有新的鄰居 RB對應的第一 VLAN集合中的VLAN再次進行統計;如果每個新的鄰居RB對應的第一 VLAN集合中與第二 VLAN集合的交集均不為空,則VLAN統計結束。在上述生成第二 VLAN集合的方法中,在所有新的鄰居RB對應的第一 VLAN集合中統計出現次數最多的VLAN,假設為VLANx,則將VLANx加入到第二 VLAN集合。這樣,當在 VLANx中回應Hello報文時,對于包含VLANx的每個第一 VLAN集合關聯的新的鄰居RB均能接收到該回應的Hello報文,因此,當前RB只需在VLANx中回應一個Hello報文,包含 VLANx的每個第一 VLAN集合關聯的新的鄰居RB就能夠建立與當前RB的鄰居關系。之后,對于已經可以在VLANx中建立與當前RB間的鄰居關系的每個新的鄰居RB, 可以不再考慮該新的鄰居RB對應的第一 VLAN集合,只需對不能在VLANx中建立與當前RB 間的鄰居關系的新的RB對應的第一 VLAN集合繼續進行統計,也即如果還存在新的鄰居 RB對應的第一 VLAN集合中不包含VLANx,則可以繼續在不包含VLANx的所有新的鄰居RB 對應的第一 VLAN集合中再次統計出現次數最多的VLAN,假設為VLANy,則將該統計出的出現次數最多的VLANy加入到第二 VLAN集合中。之后,如果還存在新的鄰居RB對應的第一 VLAN集合中既不包含VLANx,又不包含 VLANy,還可以繼續在不包含VLANx和VLANy的所有新的鄰居RB對應的第一 VLAN集合中再次統計出現次數最多的VLAN,直到每個新的鄰居RB對應的第一 VLAN集合與第二 VLAN集合的交集不為空。這樣,當前RB在第二 VLAN集合中的每個VLAN中回應Hello報文時,每個新的鄰居RB至少能夠接收到當前RB在其中一個VLAN中回應的Hello報文,因而可以建立與當前 RB的鄰居關系。另外,對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計之后,將出現次數最多的VLAN加入到第二 VLAN集合之前,進一步包括如果出現次數最多的VLAN只有一個,則將該出現次數最多的VLAN加入到第二 VLAN集合,如果出現次數最多的VLAN有多個,則可以在多個出現次數最多的VLAN中選擇一個加入到第二 VLAN集合。這里,可以是選擇其中最小的VLAN加入到第二 VLAN集合,或可以選擇其中最大的VLAN加入到第二 VLAN 集合,或隨機選擇其中一個VLAN加入到第二 VLAN集合。圖1所示本發明實施例中,由于不再對接收到的每個新的鄰居RB的Hello報文進行回應,而是在對定時器T時間內的多個新的RB發送的Hello報文所屬的VLAN進行記錄, 并在定時器超時后進行統一處理,只在有限的幾個VLAN中回應Hello報文,即可建立與每個新的鄰居RB建立鄰居關系,因此,可以減少當前RB回應Hello報文的數量,進而,可以減少鏈路上的帶寬浪費,并能夠減少當前RB的CPU處理能力的占用。實際上,也可以采用其他方法生成第二 VLAN集合。例如,可以先根據每個新的鄰居RB對應的VLAN集合,統計出每個VLAN對應的新的鄰居RB集合;然后,根據所有VLAN對應的新的鄰居RB集合與其他VLAN對應的新的鄰居RB集合的包含關系,將完全包含于其他 VLAN對應的新的鄰居RB集合刪除,只保留不能完全被其他VLAN對應的新的鄰居RB集合; 最后,對保留的所有不能完全被其他VLAN對應的新的鄰居RB集合,確定并集能夠包含所有新的鄰居RB的一個或多個VLAN對應的新的鄰居RB集合,將該一個或多個VLAN加入到第二 VLAN集合。下面結合圖2,對圖1所示本發明實施例進行舉例說明。圖2是TRILL網絡的組網示意圖,包括通過交換機SWl連接到同一鏈路上的路由橋RBI、RB2、RB3,另外,通過虛線連接到交換機SWl的路由橋RB4、RB5、RB6、RB7是將要加入到鏈路中的RB。假設RBl、RB2、RB3 上的使能 VLAN 均包括 VLANl 到 VLAN9 ;假設RB4 上的使能 VLAN 包括 VLAm、VLAN2、VLAN3、VLAN4 ;RB5 上的使能 VLAN 包括 VLAN3、VLAN4、VLAN5、VLAN6 ;RB6 上的使能 VLAN 包括 VLAN4、VLAN6、VLAN7、VLAN8 ;RB7 上的使能 VLAN 包括VLAN6、VLAN7、VLAN8、VLAN9。按照圖1所示本發明實施例,路由橋RB4、RB5、RB6、RB7同時加入RB1、RB2、RB3所
在的鏈路后,與RB 1建立鄰居關系的過程如下RB4 分別在 VLAm、VLAN2、VLAN3、VLAN4 中發送 Hello 報文;RB5 分別在 VLAN3、 VLAN4、VLAN5、VLAN6 中發送 Hello 報文;RB6 分別在 VLAN4、VLAN6、VLAN7、VLAN8 中發送 Hello 報文;RB7 分別在 VLAN6、VLAN7、VLAN8、VLAN9 中發送 Hello 報文;假設RB 1先接收到RB4在VLANl發送的Hello報文,判斷發現定時器T未啟動, 因此,將定時器T啟動,并將VLANl加入到RB4對應的第一 VLAN集合;接著,假設RB 1又接收到了 RB5在VLAN4中發送的Hello報文,判斷發現定時器 T已經啟動,因此,直接將VLAN4加入到RB5對應的第一 VLAN集合;依次類推,RB 1接收到RB4分別在不同使能VLAN發送的He 1 Io報文,并得到RB4對應的第一 VLAN集合為{VLAN1、VLAN2、VLAN3、VLAN4} ;RBl接收到RB5分別在不同使能VLAN 發送的Hello報文,并得到RB5對應的第一 VLAN集合為{VLAN3、VLAN4、VLAN5、VLAN6} ;RBl 接收到RB6分別在不同使能VLAN發送的Hello報文,并得到RB6對應的第一 VLAN集合為 {VLAN4、VLAN6、VLAN7、VLAN8} ;RBl接收到RB7分別在不同使能VLAN發送的Hello報文,并得到 RB7 對應的第一 VLAN 集合為{VLAN6、VLAN7、VLAN8、VLAN9};假設RB 1分別得到RB4、RB5、RB6、RB7對應的第一 VLAN集合后,定時器T超時, 則RB 1開始根據RB4、RB5、RB6、RB7對應的第一 VLAN集合生成第二 VLAN集合的過程為首先統計VLAm-VLAN9在RB4、RB5、RB6、RB7中的出現次數,確定VLAN4和VLAN6 均出現3次,次數最多,因此,在VLAN4和VLAN6中選擇一個加入到第二 VLAN集合,假設選擇將VLAN4加入到第二 VLAN集合;此時,只剩下RB7的第一 VLAN集合中不包含VLAN4,因此,對RB7對應的第一 VLAN 集合中各VLAN的統計結果是VLAN6、VLAN7、VLAN8、VLAN9均出現一次,因此,在VLAN6、 VLAN7、VLAN8、VLAN9中選擇一個加入到第二 VLAN集合,假設選擇將VLAN8加入到第二 VLAN 集合;至此,得到第二VLAN 集合為{VLAN4,VLAN8},而且 RB4、RB5、RB6、RB7 對應的第一 VLAN集合與第二 VLAN集合的交集均不為空;RBl根據RB4、RB5、RB6、RB7對應的第一 VLAN集合生成第二 VLAN集合后,在第二集合中的每個VLAN上發送Hello報文,這樣,RB4、RB5、RB6可以接收到RB 1在VLAN4上發送的Hello報文,RB4、RB5、RB6分別與RB 1建立了鄰居關系;RB7可以接收到RBl在VLAN8 上發送的Hello報文,RB7與RBl建立了鄰居關系。上述過程中,RBl只需要分別在VLAN4和VLAN8上發送Hello報文,即可建立與新加入的鄰居RB的鄰居關系,與現有技術相比,減少了鄰居關系建立時Hello報文的發送數量。另外,RB4、RB5、RB6、RB7分別于RB2、RB3建立鄰居關系的過程與上述過程的原理相同,因此不再贅述。另外,上述過程中,是假設RBl在接收完RB4、RB5、RB6、RB7發送的所有Hello報文后定時器T超時為例進行說明的。實際上,如果RBl只接收到RB4、RB5、RB6、RB7發送的部分Hello報文,或者,RBl只接收到其中一個RB發送的Hello報文后定時器T超時,則生成第二 VLAN集合的過程與上述生成第二 VLAN集合的原理也相同。但是,由于RBl未接收到所有的Hello報文,因此,RB4、RB5、RB6、RB7對應的第一 VLAN集合中可能未包含各自的全部使能VLAN,因此,計算出的第二 VLAN集合的結果可能會有很大的不同。則生成第二 VLAN 集合的過程與上述生成第二 VLAN集合的原理也相同。以上對本發明實施例建立鄰居關系時的hello報文發送方法進行了詳細說明,本發明還提供了一種路由橋,應用于TRILL網絡中,該路由橋能夠減少建立鄰居關系時Hello 報文的發送數量。參見圖3,圖3是本發明實施例路由橋的結構示意圖,該路由橋包括接收單元 301、控制單元302、發送單元303 ;其中,接收單元301,用于接收新的鄰居RB發送的Hello報文;控制單元302,用于在接收單元301接收到新的鄰居RB發送的Hello報文時,如果定時器T已經啟動,則將該Hello報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一 VLAN集合,如果定時器T未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一 VLAN集合;用于在定時器T超時后,根據所有新的鄰居RB 對應的第一 VLAN集合生成第二 VLAN集合;發送單元303,用于在控制單元302根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合后,在第二 VLAN集合中的每個VLAN中發送Hello報文。所述控制單元302在根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN 集合時,用于對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計,將出現次數最多的VLAN加入到第二 VLAN集合,如果存在不包含第二 VLAN集合中的任一 VLAN的新的鄰居RB對應的第一 VLAN集合,則對不包含第二 VLAN集合中的任一 VLAN的所有新的鄰居RB 對應的第一 VLAN集合中的VLAN再次進行統計;如果每個新的鄰居RB對應的第一 VLAN集合中與第二 VLAN集合的交集均不為空,則VLAN統計結束。所述控制單元302在對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計之后,將出現次數最多的VLAN加入到第二 VLAN集合之前,進一步用于如果出現次數最多的VLAN只有一個,則將該出現次數最多的VLAN加入到第二 VLAN集合,如果出現次數最多的VLAN有多個,則在多個出現次數最多的VLAN中選擇一個加入到第二 VLAN集合。以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的范圍之內。
權利要求
1.一種建立鄰居關系時的hello報文發送方法,其特征在于,該方法包括接收到新的鄰居路由橋RB發送的Hello報文時,如果定時器T已經啟動,則將該Hello 報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一 VLAN集合,如果定時器T 未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一 VLAN集合;定時器T超時后,根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合,在第二 VLAN集合中的每個VLAN中發送Hello報文。
2.根據權利要求1所述的建立鄰居關系時的hello報文發送方法,其特征在于,所述根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合的方法為對所有新的鄰居 RB對應的第一 VLAN集合中的VLAN進行統計,將出現次數最多的VLAN加入到第二 VLAN集合,如果存在不包含第二 VLAN集合中的任一 VLAN的新的鄰居RB對應的第一 VLAN集合,則對不包含第二 VLAN集合中的任一 VLAN的所有新的鄰居RB對應的第一 VLAN集合中的VLAN 再次進行統計;如果每個新的鄰居RB對應的第一 VLAN集合中與第二 VLAN集合的交集均不為空,則VLAN統計結束。
3.根據權利要求2所述的建立鄰居關系時的hello報文發送方法,其特征在于,所述對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計之后,將出現次數最多的VLAN 加入到第二 VLAN集合之前,進一步包括如果出現次數最多的VLAN只有一個,則將該出現次數最多的VLAN加入到第二 VLAN集合,如果出現次數最多的VLAN有多個,則在多個出現次數最多的VLAN中選擇一個加入到第二 VLAN集合。
4.一種路由橋RB設備,應用于TRILL網絡中,其特征在于,該RB設備包括接收單元、 控制單元、發送單元;所述接收單元,用于接收新的鄰居RB發送的Hello報文;所述控制單元,用于在接收單元接收到新的鄰居RB發送的Hello報文時,如果定時器 T已經啟動,則將該Hello報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一 VLAN集合,如果定時器T未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一 VLAN集合;用于在定時器T超時后,根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合;所述發送單元,用于在控制單元根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合后,在第二 VLAN集合中的每個VLAN中發送Hello報文。
5.根據權利要求4所述的RB設備,其特征在于,所述控制單元在根據所有新的鄰居RB對應的第一 VLAN集合生成第二 VLAN集合時,用于對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計,將出現次數最多的VLAN 加入到第二 VLAN集合,如果存在不包含第二 VLAN集合中的任一 VLAN的新的鄰居RB對應的第一 VLAN集合,則對不包含第二 VLAN集合中的任一 VLAN的所有新的鄰居RB對應的第一VLAN集合中的VLAN再次進行統計;如果每個新的鄰居RB對應的第一 VLAN集合中與第二VLAN集合的交集均不為空,則VLAN統計結束。
6.根據權利要求5所述的RB設備,其特征在于,所述控制單元在對所有新的鄰居RB對應的第一 VLAN集合中的VLAN進行統計之后,將出現次數最多的VLAN加入到第二 VLAN集合之前,進一步用于如果出現次數最多的VLAN只有一個,則將該出現次數最多的VLAN加入到第二 VLAN集合,如果出現次數最多的VLAN 有多個,則在多個出現次數最多的VLAN中選擇一個加入到第二 VLAN集合。
全文摘要
本發明提供了一種建立鄰居關系時的hello報文發送方法和裝置,該方法包括接收到新的鄰居路由橋RB發送的Hello報文時,如果定時器T已經啟動,則將該Hello報文所屬的虛擬局域網VLAN加入到該新的鄰居RB對應的第一VLAN集合,如果定時器T未啟動,則啟動定時器T,并將該Hello報文所屬的VLAN加入到該新的鄰居RB對應的第一VLAN集合;定時器T超時后,根據所有新的鄰居RB對應的第一VLAN集合生成第二VLAN集合,在第二VLAN集合中的每個VLAN中發送Hello報文。本發明能夠減少建立鄰居關系時Hello報文的發送數量。
文檔編號H04L12/56GK102571555SQ201110366360
公開日2012年7月11日 申請日期2011年11月17日 優先權日2011年11月17日
發明者曲進, 曹輝, 鄒文宇 申請人:杭州華三通信技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 定边县| 黄平县| 周至县| 房产| 金堂县| 安化县| 深泽县| 衡东县| 张家川| 宁陵县| 凉城县| 永福县| 元江| 旬阳县| 太保市| 遂昌县| 隆安县| 黄陵县| 观塘区| 张北县| 淮安市| 龙州县| 伊宁市| 延庆县| 连云港市| 封开县| 新龙县| 米林县| 西安市| 汶川县| 嘉鱼县| 柳江县| 南城县| 兰考县| 汶上县| 靖江市| 孙吴县| 盐城市| 天气| 遵义县| 巫溪县|