《TRILL网络中的报文转发方法和路由网桥.pdf》由会员分享,可在线阅读,更多相关《TRILL网络中的报文转发方法和路由网桥.pdf(18页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102868614 A (43)申请公布日 2013.01.09 CN 102868614 A *CN102868614A* (21)申请号 201210337378.1 (22)申请日 2012.09.13 H04L 12/741(2013.01) H04L 12/947(2013.01) H04L 12/761(2013.01) (71)申请人 杭州华三通信技术有限公司 地址 310053 浙江省杭州市高新技术产业开 发区之江科技工业园六和路 310 号华 为杭州生产基地 (72)发明人 周万 (74)专利代理机构 北京德琦知识产权代理有限 公司 11018 代理。
2、人 王一斌 王琦 (54) 发明名称 TRILL 网络中的报文转发方法和路由网桥 (57) 摘要 本发明公开了一种 TRILL 网络中的报文转发 方法和路由网桥 : 入口 RB 和出口 RB 都为本地端 口分配本地唯一的标签, 将本地主机的 MAC 地址 及为本地端口分配的标签学习到本地 MAC 地址表 项中 ; 入口 RB 在本地 MAC 地址表中查找由本地主 机发送的待转发报文的目的 MAC 地址对应的 MAC 地址表项, 根据查找结果对待转发报文进行包含 入口RB、 入口标签和出口RB、 出口标签的TRILL封 装, 将封装后的 TRILL 报文发送给出口 RB ; 出口 RB 将 TR。
3、ILL 报文进行 TRILL 解封装, 进行内层源 MAC 地址学习, 将内层源 MAC 地址、 入口 RB 及入口 标签学习到本地 MAC 地址表项中, 并根据出口标 签对解封装后的报文进行转发。应用本发明所述 的方法和路由网桥, 能够实现依据标签对报文的 转发, 减少对 MAC 地址表的查找, 降低报文转发的 复杂度。 (51)Int.Cl. 权利要求书 4 页 说明书 11 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 4 页 说明书 11 页 附图 2 页 1/4 页 2 1. 一种多链接透明互联 TRILL 网络中的报文转发方法, 其特征在。
4、于, 该方法应用于 TRILL 网络中的入口 RB, 包括 : 入口RB为每个本地端口分配本地唯一的标签, 将本地主机的MAC地址及为接收本地主 机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 入口RB接收到由本地主机发送的待转发报文后, 在本地MAC地址表中查找待转发报文 的目的 MAC 地址对应的 MAC 地址表项, 根据查找结果对待转发报文进行包含入口 RB、 入口 标签和出口RB、 出口标签的TRILL封装, 将封装后的TRILL报文发送给出口RB ; 所述入口标 签为入口 RB 为接收所述待转发报文的端口分配的标签, 所述出口标签由入口 RB 根据目的 MAC 地址。
5、查找的结果确定 ; 所述出口标签用于指示出口 RB 在完成对所述 TRILL 报文的解封装后根据该出口标签 对解封装后的 TRILL 报文进行转发。 2. 根据权利要求 1 所述的方法, 其特征在于, 当所述入口 RB 接收到的待转发报文为已知单播报文时, 则所述出口标签为交换标签 类型, 所述出口RB根据出口标签对解封装后的报文进行转发包括 : 出口RB将解封装后的报 文从出口标签所对应的出口 RB 的端口进行转发 ; 当所述入口 RB 接收到的待转发报文为未知单播报文时, 所述出口标签为单播标签类 型, 则所述出口RB根据出口标签对解封装后的报文进行转发包括 : 出口RB将解封装后的报 文。
6、进行目的 MAC 地址查找, 如果查找到对应的 MAC 地址, 则从对应的端口转发 ; 如果未查找 到, 则进行本地端口泛洪 ; 当所述入口 RB 接收到的待转发报文为已知组播报文时, 所述出口标签为组播标签类 型, 则所述出口RB根据出口标签对解封装后的报文进行转发包括 : 出口RB将解封装后的报 文进行组播组查找, 根据查找结果对报文进行组播复制转发 ; 当所述入口 RB 接收到的待转发报文为未知组播报文或广播报文时, 所述出口标签为 广播标签类型, 则所述出口RB根据出口标签对解封装后的报文进行转发包括 : 出口RB对解 封装后的报文进行本地端口泛洪。 3.根据权利要求1或2所述的方法,。
7、 其特征在于, 当MAC地址迁移时, 所述方法还包括 : 入口 RB 在本地检测到有主机迁入时, 更新本地 MAC 地址表中该迁入主机对应的 MAC 表项关 联的标签。 4. 根据权利要求 1 或 2 所述的方法, 其特征在于, 当入口 RB 的接收所述待转发报文的 端口不能正常工作时, 该方法进一步包括 : 入口 RB 向其它每一个 RB 发送标签无效消息, 所述标签无效消息包含入口 RB 的标号 Nickname 和为所述接收待转发报文的端口分配的标签 ; 所述标签无效消息用于指示收到标签无效消息的 RB 将本地 MAC 地址表中包含相同入 口 RB 的标号 Nickname 和相同标签的。
8、 MAC 地址表项中的标签更新为单播标签。 5. 一种多链接透明互联 TRILL 网络中的报文转发方法, 其特征在于, 该方法应用于 TRILL 网络中的出口 RB, 包括 : 出口RB为每个本地端口分配本地唯一的标签, 将本地主机的MAC地址及为接收本地主 机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 出口 RB 接收到由入口 RB 发送的包含入口 RB、 入口标签、 出口 RB 和出口标签的 TRILL 权 利 要 求 书 CN 102868614 A 2 2/4 页 3 报文后, 进行 TRILL 解封装, 并进行内层源 MAC 地址学习, 将内层源 MAC 地址、 。
9、入口 RB 及入 口标签学习到本地MAC地址表项中 ; 所述入口标签为入口RB为接收主机发送的报文的端口 分配的标签, 所述出口标签为入口 RB 根据目的 MAC 地址查找的结果所确定的标签 ; 出口 RB 根据出口标签对解封装后的报文进行转发。 6. 根据权利要求 5 所述的方法, 其特征在于, 当所述出口标签为交换标签类型时, 所述出口 RB 根据出口标签对解封装后的报文进 行转发包括 : 出口 RB 将解封装后的报文从出口标签所对应的出口 RB 的端口进行转发 ; 当所述出口标签为单播标签类型, 则所述出口 RB 根据出口标签对解封装后的报文进 行转发包括 : 出口 RB 将解封装后的报。
10、文进行目的 MAC 地址查找, 如果查找到对应的 MAC 地 址, 则从对应的端口转发 ; 如果未查找到, 则进行本地端口泛洪 ; 当所述出口标签为组播标签类型, 则所述出口 RB 根据出口标签对解封装后的报文进 行转发包括 : 出口 RB 将解封装后的报文进行组播组查找, 根据查找结果对报文进行组播复 制转发 ; 当所述出口标签为广播标签类型, 则所述出口 RB 根据出口标签对解封装后的报文进 行转发包括 : 出口 RB 对解封装后的报文进行本地端口泛洪。 7. 根据权利要求 5 或 6 所述的方法, 其特征在于, 在 MAC 地址迁移的情况下, 所述出口 RB 对接收到的 TRILL 报文。
11、进行解封装, 进行内层源 MAC 地址学习时, 该方法还包括 : 当出口 RB 判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址 表项中的 RB 有变化, 则使用报文中的入口 RB 更新本地 MAC 地址表中该源 MAC 地址对应的 MAC 地址表项中的 RB ; 和 / 或, 当出口 RB 判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址 表项中的标签有变化, 则使用报文中的入口标签更新本地 MAC 地址表项中该源 MAC 地址对 应的 MAC 地址表项中的标签。 8. 根据权利要求 5 或 6 所述的方法,。
12、 其特征在于, 该方法进一步包括 : 当出口 RB 接收到入口 RB 发送的包含入口 RB 的标号 Nickname 和不能正常工作的端 口对应的标签的标签无效消息时, 查看本地 MAC 地址表项, 当本地 MAC 地址表项中 RB 的 Nickname 为标签无效消息中入口 RB 的 Nickname、 且本地 MAC 地址表项中包含标签无效消 息中的标签时, 将本地 MAC 地址表项中的标签更新为单播标签。 9. 一种多链接透明互联 TRILL 网络中的路由网桥, 该路由网桥为接收报文的入口路由 网桥 RB, 其特征在于, 该路由网桥包括 : 标签处理单元, 用于为每个端口分配本地唯一的标。
13、签 ; 将本地主机的 MAC 地址及为接 收本地主机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 报文接收单元, 用于接收由本地主机发送的待转发报文 ; 报文封装单元, 用于在本地 MAC 地址表中查找待转发报文的目的 MAC 地址对应的 MAC 地址表项, 根据查找结果对待转发报文进行包含入口 RB、 入口标签和出口 RB、 出口标签的 TRILL 封装 ; 所述入口标签为入口 RB 为接收所述待转发报文的端口分配的标签, 所述出口 标签根据目的 MAC 地址查找的结果确定 ; 所述报文发送单元, 用于将所述报文封装单元进行 TRILL 封装后的报文发送给出口 RB, 以使。
14、出口 RB 根据目的 MAC 和出口标签对报文进行转发。 权 利 要 求 书 CN 102868614 A 3 3/4 页 4 10. 根据权利要求 9 所述的路由网桥, 其特征在于, 当所述报文接收单元接收到的主机发送的待转发报文为已知单播报文时, 所述报文封 装单元封装的TRILL报文的出口标签为交换标签类型, 所述交互标签指示出口RB将解封装 后的报文从出口标签所对应的出口 RB 的端口进行转发 ; 当所述报文接收单元接收到的主机发送的待转发报文为未知单播报文时, 所述报文封 装单元封装的TRILL报文的出口标签为单播标签类型, 所述单播标签指示出口RB对解封装 后的报文进行目的 MAC。
15、 地址查找, 如果查找到对应的 MAC 地址, 则从对应的端口转发 ; 如果 未查找到, 则进行本地端口泛洪 ; 当所述报文接收单元接收到的主机发送的待转发报文为已知组播报文时, 所述报文封 装单元封装的TRILL报文的出口标签为组播标签类型, 所述组播标签指示出口RB对解封装 后的报文进行组播组查找, 根据查找结果对报文进行组播复制转发 ; 当所述报文接收单元接收到的主机发送的待转发报文为未知组播报文或广播报文时, 所述报文封装单元封装的 TRILL 报文的出口标签为组播标签类型, 所述组播标签指示出口 RB 对解封装后的报文进行本地端口泛洪。 11.根据权利要求9或10所述的路由网桥, 其。
16、特征在于, 该路由网桥还包括标签更新单 元, 用于在本地检测到有主机迁入时, 更新本地MAC地址表中该迁入主机对应的MAC表项关 联的标签。 12. 根据权利要求 9 或 10 所述的路由网桥, 其特征在于, 该路由网桥还包括无效发送 单元, 用于当所述报文接收单元的接收报文的端口不能正常工作时, 向其它每一个 RB 发送 标签无效消息, 所述标签无效消息用于指示每一个收到标签无效消息的 RB 在判定本地 MAC 地址表项中RB的Nickname为标签无效消息中携带的入口RB的Nickname、 且该本地MAC地 址表项中包含标签无效消息中携带的标签时, 将本地 MAC 地址表项中的标签更新为。
17、单播标 签。 13. 一种多链接透明互联 TRILL 网络中的路由网桥, 该路由网桥为转发报文的出口路 由网桥 RB, 其特征在于, 该路由网桥包括 : 标签处理单元, 用于为每个端口分配本地唯一的标签 ; 将本地主机的 MAC 地址及为接 收本地主机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 报文接收单元, 用于接收由入口 RB 发送的由入口 RB 进行包含入口 RB、 入口标签和出 口 RB、 出口标签的 TRILL 封装后的 TRILL 报文, 所述入口标签为入口 RB 为接收主机发送的 报文的端口分配的标签, 所述出口标签由入口 RB 根据目的 MAC 地址查找的结。
18、果确定 ; 报文解封装单元, 用于对所述报文接收单元接收到的报文进行 TRILL 解封装 ; 地址学习单元, 用于对报文解封装单元解封装后的报文进行内层源 MAC 地址学习, 将 内层源 MAC 地址、 入口 RB 及入口标签学习到本地 MAC 地址表项中 ; 报文转发单元, 用于根据出口标签对所述报文解封装单元解封装后的报文进行转发。 14. 根据权利要求 13 所述的路由网桥, 其特征在于, 当所述报文接收单元接收的 TRILL 报文中的出口标签为交换标签类型时, 所述报文转 发单元用于将解封装后的报文从出口标签所对应的端口进行转发 ; 当所述报文接收单元接收的 TRILL 报文中的出口标。
19、签为单播标签类型时, 所述报文转 发单元用于将解封装后的报文进行目的MAC地址查找, 如果查找到对应的MAC地址, 则从对 权 利 要 求 书 CN 102868614 A 4 4/4 页 5 应的端口转发 ; 如果未查找到, 则进行本地端口泛洪 ; 当所述报文接收单元接收的 TRILL 报文中的出口标签为组播标签类型时, 所述报文转 发单元用于将解封装后的报文进行组播组查找, 根据查找结果对报文进行组播复制转发 ; 当所述报文接收单元接收的 TRILL 报文中的出口标签为广播标签类型时, 所述报文转 发单元用于将解封装后的报文进行本地端口泛洪。 15. 根据权利要求 13 或 14 所述的路。
20、由网桥, 其特征在于, 所述地址学习单元还用于 : 在判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址表项中的 RB有变化时, 使用报文中的入口RB更新本地MAC地址表中该源MAC地址对应的MAC地址表 项中的 RB ; 和 / 或, 在判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址表项中的 标签有变化时, 使用报文中的入口标签更新本地 MAC 地址表中该源 MAC 地址对应的 MAC 地 址表项中的标签。 16. 根据权利要求 13 或 14 所述的路由网桥, 其特征在于, 该路由网桥还包括无效接收 单元和。
21、标签更新单元, 其中, 所述无效接收单元, 用于当入口 RB 的接收报文的端口不能正常工作时, 接收由入口 RB 发送的标签无效消息, 所述标签无效消息包含入口 RB 的 Nickname 和为该端口分配的标 签 ; 所述标签更新单元, 用于当所述无效接收单元接收到标签无效消息后, 查看本地 MAC 地址表, 当判定本地 MAC 地址表项中 RB 的 Nickname 为标签无效消息中携带的入口 RB 的 Nickname、 且该本地MAC地址表项中包含标签无效消息中携带的标签时, 将本地MAC地址表 项中的标签更新为单播标签。 权 利 要 求 书 CN 102868614 A 5 1/11 。
22、页 6 TRILL 网络中的报文转发方法和路由网桥 技术领域 0001 本申请涉及通信技术领域, 特别涉及一种多链接透明互联 (TRILL, Transparent Interconnection of Lots of Links) 网络中的报文转发方法和路由网桥。 背景技术 0002 TRILL是互联网工程任务组 (IETF, Internet Engineering Task Force) 推荐的连 接层 (L2) 网络标准, 用于解决大型数据中心生成树协议 (STP, Spanning Tree Protocol) 的 不足。 在L2网络中, STP通过阻塞冗余链路来避免环路, 但同时也。
23、造成了冗余链路带宽的浪 费, 而TRILL则通过将中间系统对中间系统 (ISIS, Intermediate system to intermediate system) 路由协议引入 L2 网络, 不仅解决了 L2 环路问题, 而且还能够支持冗余路径和负载 分担。 0003 在TRILL网络中, 运行TRILL协议的设备称为路由网桥 (RB, Router Bridge) , 且该 RB 是交换机和路由器功能的综合体。图 1 给出了现有单播报文转发方法的过程示意图, 如 图 1 所示, 以主机 C 向主机 A 发送单播报文为例, 该单播报文转发过程可包括 : 0004 、 主机 C 发送单播。
24、报文, 由交换机对该单播报文进行普通二层转发 ; 0005 、 RB2 的交换功能模块对交换机发送的单播报文进行普通 MAC 学习和查找, 查找 到主机 A 的表项出端口为 2, 并且出口 RB 为 RB4 后, 对该单播报文进行 TRILL 封装, 从端口 2发送到路由功能模块 ; 路由功能模块进行TRILL路由查找, 查找到RB4的下一跳为RB1, 查 找邻接表获取 RB1 的 MAC 地址 F 和控制 VLAN200, 进行封装后将单播报文发送给 RB1 ; 0006 c、 RB1 对接收到的单播报文进行 TRILL 路由查找转发过程, 发送到 RB4 ; 0007 d、 RB4 发现出。
25、口 RB 为自身, 则对接收到的单播报文进行解封装过程, 剥离 TRILL 头, 进行内层 MAC 地址查找, 得到出端口, 进而将单播报文发送给主机 A。 0008 通过上述分析可以看出, 现有在 TRILL 网络中转发单播报文时, 在入口 RB 和出口 RB都要进行MAC地址查找得到出端口, 进而根据查找到的出端口转发该单播报文。 然而, 由 于 MAC 地址表很大, 因而查找 MAC 地址的过程可能会很长, 不仅延长了报文转发时间, 而且 提高了转发复杂度。 发明内容 0009 有鉴于此, 本发明提供了一种 TRILL 网络中的报文转发方法, 能够实现依据标签 对报文的转发, 减少对 M。
26、AC 地址表的查找, 降低报文转发的复杂度。 0010 本发明还提供了一种路由网桥, 能够实现依据标签对报文的转发, 减少对 MAC 地 址表的查找, 降低报文转发的复杂度。 0011 为了达到上述目的, 本发明提出的技术方案为 : 0012 一种多链接透明互联 TRILL 网络中的报文转发方法, 该方法应用于 TRILL 网络中 的入口 RB, 包括 : 0013 入口RB为每个本地端口分配本地唯一的标签, 将本地主机的MAC地址及为接收本 说 明 书 CN 102868614 A 6 2/11 页 7 地主机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 0014 入口RB。
27、接收到由本地主机发送的待转发报文后, 在本地MAC地址表中查找待转发 报文的目的MAC地址对应的MAC地址表项, 根据查找结果对待转发报文进行包含入口RB、 入 口标签和出口RB、 出口标签的TRILL封装, 将封装后的TRILL报文发送给出口RB ; 所述入口 标签为入口 RB 为接收所述待转发报文的端口分配的标签, 所述出口标签由入口 RB 根据目 的 MAC 地址查找的结果确定 ; 0015 所述出口标签用于指示出口 RB 在完成对所述 TRILL 报文的解封装后根据该出口 标签对解封装后的 TRILL 报文进行转发。 0016 当所述入口 RB 接收到的待转发报文为已知单播报文时, 则。
28、所述出口标签为交换 标签类型, 所述出口RB根据出口标签对解封装后的报文进行转发包括 : 出口RB将解封装后 的报文从出口标签所对应的出口 RB 的端口进行转发 ; 0017 当所述入口 RB 接收到的待转发报文为未知单播报文时, 所述出口标签为单播标 签类型, 则所述出口RB根据出口标签对解封装后的报文进行转发包括 : 出口RB将解封装后 的报文进行目的 MAC 地址查找, 如果查找到对应的 MAC 地址, 则从对应的端口转发 ; 如果未 查找到, 则进行本地端口泛洪 ; 0018 当所述入口 RB 接收到的待转发报文为已知组播报文时, 所述出口标签为组播标 签类型, 则所述出口RB根据出口。
29、标签对解封装后的报文进行转发包括 : 出口RB将解封装后 的报文进行组播组查找, 根据查找结果对报文进行组播复制转发 ; 0019 当所述入口 RB 接收到的待转发报文为未知组播报文或广播报文时, 所述出口标 签为广播标签类型, 则所述出口 RB 根据出口标签对解封装后的报文进行转发包括 : 出口 RB 对解封装后的报文进行本地端口泛洪。 0020 当MAC地址迁移时, 所述方法还包括 : 入口RB在本地检测到有主机迁入时, 更新本 地 MAC 地址表中该迁入主机对应的 MAC 表项关联的标签。 0021 当入口 RB 的接收所述待转发报文的端口不能正常工作时, 该方法进一步包括 : 0022。
30、 入口 RB 向其它每一个 RB 发送标签无效消息, 所述标签无效消息包含入口 RB 的标 号 Nickname 和为所述接收待转发报文的端口分配的标签 ; 0023 所述标签无效消息用于指示收到标签无效消息的 RB 将本地 MAC 地址表中包含相 同入口 RB 的标号 Nickname 和相同标签的 MAC 地址表项中的标签更新为单播标签。 0024 一种多链接透明互联 TRILL 网络中的报文转发方法, 该方法应用于 TRILL 网络中 的出口 RB, 包括 : 0025 出口RB为每个本地端口分配本地唯一的标签, 将本地主机的MAC地址及为接收本 地主机发送报文的本地端口分配的标签学习到。
31、本地 MAC 地址表项中 ; 0026 出口 RB 接收到由入口 RB 发送的包含入口 RB、 入口标签、 出口 RB 和出口标签的 TRILL 报文后, 进行 TRILL 解封装, 并进行内层源 MAC 地址学习, 将内层源 MAC 地址、 入口 RB 及入口标签学习到本地MAC地址表项中 ; 所述入口标签为入口RB为接收主机发送的报文的 端口分配的标签, 所述出口标签为入口 RB 根据目的 MAC 地址查找的结果所确定的标签 ; 0027 出口 RB 根据出口标签对解封装后的报文进行转发。 0028 当所述出口标签为交换标签类型时, 所述出口 RB 根据出口标签对解封装后的报 文进行转发包。
32、括 : 出口 RB 将解封装后的报文从出口标签所对应的出口 RB 的端口进行转 说 明 书 CN 102868614 A 7 3/11 页 8 发 ; 0029 当所述出口标签为单播标签类型, 则所述出口 RB 根据出口标签对解封装后的报 文进行转发包括 : 出口 RB 将解封装后的报文进行目的 MAC 地址查找, 如果查找到对应的 MAC 地址, 则从对应的端口转发 ; 如果未查找到, 则进行本地端口泛洪 ; 0030 当所述出口标签为组播标签类型, 则所述出口 RB 根据出口标签对解封装后的报 文进行转发包括 : 出口 RB 将解封装后的报文进行组播组查找, 根据查找结果对报文进行组 播复。
33、制转发 ; 0031 当所述出口标签为广播标签类型, 则所述出口 RB 根据出口标签对解封装后的报 文进行转发包括 : 出口 RB 对解封装后的报文进行本地端口泛洪。 0032 在 MAC 地址迁移的情况下, 所述出口 RB 对接收到的 TRILL 报文进行解封装, 进行 内层源 MAC 地址学习时, 该方法还包括 : 0033 当出口 RB 判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址表项中的 RB 有变化, 则使用报文中的入口 RB 更新本地 MAC 地址表中该源 MAC 地址对 应的 MAC 地址表项中的 RB ; 和 / 或, 0034 当。
34、出口 RB 判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址表项中的标签有变化, 则使用报文中的入口标签更新本地 MAC 地址表项中该源 MAC 地 址对应的 MAC 地址表项中的标签。 0035 该方法进一步包括 : 0036 当出口 RB 接收到入口 RB 发送的包含入口 RB 的标号 Nickname 和不能正常工作的 端口对应的标签的标签无效消息时, 查看本地 MAC 地址表项, 当本地 MAC 地址表项中 RB 的 Nickname 为标签无效消息中入口 RB 的 Nickname、 且本地 MAC 地址表项中包含标签无效消 息中的标签时, 。
35、将本地 MAC 地址表项中的标签更新为单播标签。 0037 一种多链接透明互联 TRILL 网络中的路由网桥, 该路由网桥为接收报文的入口路 由网桥 RB, 该路由网桥包括 : 0038 标签处理单元, 用于为每个端口分配本地唯一的标签 ; 将本地主机的 MAC 地址及 为接收本地主机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 0039 报文接收单元, 用于接收由本地主机发送的待转发报文 ; 0040 报文封装单元, 用于在本地 MAC 地址表中查找待转发报文的目的 MAC 地址对应的 MAC 地址表项, 根据查找结果对待转发报文进行包含入口 RB、 入口标签和出口 RB、。
36、 出口标签 的 TRILL 封装 ; 所述入口标签为入口 RB 为接收所述待转发报文的端口分配的标签, 所述出 口标签根据目的 MAC 地址查找的结果确定 ; 0041 所述报文发送单元, 用于将所述报文封装单元进行 TRILL 封装后的报文发送给出 口 RB, 以使出口 RB 根据目的 MAC 和出口标签对报文进行转发。 0042 当所述报文接收单元接收到的主机发送的待转发报文为已知单播报文时, 所述报 文封装单元封装的TRILL报文的出口标签为交换标签类型, 所述交互标签指示出口RB将解 封装后的报文从出口标签所对应的出口 RB 的端口进行转发 ; 0043 当所述报文接收单元接收到的主机。
37、发送的待转发报文为未知单播报文时, 所述报 文封装单元封装的TRILL报文的出口标签为单播标签类型, 所述单播标签指示出口RB对解 封装后的报文进行目的 MAC 地址查找, 如果查找到对应的 MAC 地址, 则从对应的端口转发 ; 说 明 书 CN 102868614 A 8 4/11 页 9 如果未查找到, 则进行本地端口泛洪 ; 0044 当所述报文接收单元接收到的主机发送的待转发报文为已知组播报文时, 所述报 文封装单元封装的TRILL报文的出口标签为组播标签类型, 所述组播标签指示出口RB对解 封装后的报文进行组播组查找, 根据查找结果对报文进行组播复制转发 ; 0045 当所述报文接。
38、收单元接收到的主机发送的待转发报文为未知组播报文或广播报 文时, 所述报文封装单元封装的 TRILL 报文的出口标签为组播标签类型, 所述组播标签指 示出口 RB 对解封装后的报文进行本地端口泛洪。 0046 该路由网桥还包括标签更新单元, 用于在本地检测到有主机迁入时, 更新本地 MAC 地址表中该迁入主机对应的 MAC 表项关联的标签。 0047 该路由网桥还包括无效发送单元, 用于当所述报文接收单元的接收报文的端口不 能正常工作时, 向其它每一个 RB 发送标签无效消息, 所述标签无效消息用于指示每一个收 到标签无效消息的 RB 在判定本地 MAC 地址表项中 RB 的 Nickname。
39、 为标签无效消息中携带 的入口 RB 的 Nickname、 且该本地 MAC 地址表项中包含标签无效消息中携带的标签时, 将本 地 MAC 地址表项中的标签更新为单播标签。 0048 一种多链接透明互联 TRILL 网络中的路由网桥, 该路由网桥为转发报文的出口路 由网桥 RB, 该路由网桥包括 : 0049 标签处理单元, 用于为每个端口分配本地唯一的标签 ; 将本地主机的 MAC 地址及 为接收本地主机发送报文的本地端口分配的标签学习到本地 MAC 地址表项中 ; 0050 报文接收单元, 用于接收由入口RB发送的由入口RB进行包含入口RB、 入口标签和 出口 RB、 出口标签的 TRI。
40、LL 封装后的 TRILL 报文, 所述入口标签为入口 RB 为接收主机发送 的报文的端口分配的标签, 所述出口标签由入口 RB 根据目的 MAC 地址查找的结果确定 ; 0051 报文解封装单元, 用于对所述报文接收单元接收到的报文进行 TRILL 解封装 ; 0052 地址学习单元, 用于对报文解封装单元解封装后的报文进行内层源 MAC 地址学 习, 将内层源 MAC 地址、 入口 RB 及入口标签学习到本地 MAC 地址表项中 ; 0053 报文转发单元, 用于根据出口标签对所述报文解封装单元解封装后的报文进行转 发。 0054 当所述报文接收单元接收的 TRILL 报文中的出口标签为交。
41、换标签类型时, 所述报 文转发单元用于将解封装后的报文从出口标签所对应的端口进行转发 ; 0055 当所述报文接收单元接收的 TRILL 报文中的出口标签为单播标签类型时, 所述报 文转发单元用于将解封装后的报文进行目的MAC地址查找, 如果查找到对应的MAC地址, 则 从对应的端口转发 ; 如果未查找到, 则进行本地端口泛洪 ; 0056 当所述报文接收单元接收的 TRILL 报文中的出口标签为组播标签类型时, 所述报 文转发单元用于将解封装后的报文进行组播组查找, 根据查找结果对报文进行组播复制转 发 ; 0057 当所述报文接收单元接收的 TRILL 报文中的出口标签为广播标签类型时, 。
42、所述报 文转发单元用于将解封装后的报文进行本地端口泛洪。 0058 所述地址学习单元还用于 : 0059 在判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址表项 中的 RB 有变化时, 使用报文中的入口 RB 更新本地 MAC 地址表中该源 MAC 地址对应的 MAC 说 明 书 CN 102868614 A 9 5/11 页 10 地址表项中的 RB ; 和 / 或, 0060 在判定本地 MAC 地址表中该 TRILL 报文中的内层源 MAC 地址对应的 MAC 地址表项 中的标签有变化时, 使用报文中的入口标签更新本地MAC地址表中该源MAC地址。
43、对应的MAC 地址表项中的标签。 0061 该路由网桥还包括无效接收单元和标签更新单元, 其中, 0062 所述无效接收单元, 用于当入口 RB 的接收报文的端口不能正常工作时, 接收由入 口 RB 发送的标签无效消息, 所述标签无效消息包含入口 RB 的 Nickname 和为该端口分配的 标签 ; 0063 所述标签更新单元, 用于当所述无效接收单元接收到标签无效消息后, 查看本地 MAC 地址表, 当判定本地 MAC 地址表项中 RB 的 Nickname 为标签无效消息中携带的入口 RB 的Nickname、 且该本地MAC地址表项中包含标签无效消息中携带的标签时, 将本地MAC地址 。
44、表项中的标签更新为单播标签。 0064 综上所述, 本发明所采用的 TRILL 网络中的报文转发方法, 是通过由入口 RB 和出 口RB分别为本地端口分配本地唯一的标签, 将本地主机的MAC地址及为接收本地主机发送 报文的本地端口分配的标签学习到本地 MAC 地址表项中, 当入口 RB 接收到由本地主机发 送的待转发报文后, 在本地 MAC 地址表中查找待转发报文的目的 MAC 地址对应的 MAC 地址 表项, 根据查找结果对待转发报文进行包含入口 RB、 入口标签和出口 RB、 出口标签的 TRILL 封装, 将封装后的 TRILL 报文发送给出口 RB, 由出口 RB 将接收到的包含入口 。
45、RB、 入口标签、 出口 RB 和出口标签的 TRILL 报文进行 TRILL 解封装, 并进行内层源 MAC 地址学习, 将内层 源 MAC 地址、 入口 RB 及入口标签学习到本地 MAC 地址表项中, 并根据出口标签对解封装后 的报文进行转发。由于本发明建立标签与接收主机报文的端口之间的对应关系, RB 进行源 MAC 地址的学习后, 能够实现基于标签的报文转发, 从而减少了 MAC 地址查找, 因此, 本发明 方法不仅避免了由于查找大的 MAC 地址表可能造成的时间浪费问题, 而且还降低了转发复 杂度。 附图说明 0065 图 1 为现有 TRILL 网络中单播报文转发方法的过程示意图。
46、 ; 0066 图 2 为本发明 TRILL 网络中报文转发方法的工作流程图 ; 0067 图 3 为本发明扩展后的 TRILL 报文结构示意图 ; 0068 图 4 为本发明所采用的路由网桥实施例一的结构示意图 ; 0069 图 5 为本发明所采用的路由网桥实施例二的结构示意图。 具体实施方式 0070 为了解决本发明提出的技术问题, 本发明所述方案的具体实现包括 : 0071 入口RB为每个本地端口分配本地唯一的标签, 将本地主机的MAC地址及为接收本 地主机发送报文的本地端口分配的标签学习到本地MAC地址表项中 ; 入口RB接收到由本地 主机发送的待转发报文后, 在本地MAC地址表中查找。
47、待转发报文的目的MAC地址对应的MAC 地址表项, 根据查找结果对待转发报文进行包含入口 RB、 入口标签和出口 RB、 出口标签的 TRILL 封装, 将封装后的 TRILL 报文发送给出口 RB ; 所述入口标签为入口 RB 为接收所述待 说 明 书 CN 102868614 A 10 6/11 页 11 转发报文的端口分配的标签, 所述出口标签由入口 RB 根据目的 MAC 地址查找的结果确定 ; 所述出口标签用于指示出口 RB 在完成对所述 TRILL 报文的解封装后根据该出口标签对解 封装后的 TRILL 报文进行转发 ; 0072 出口RB为每个本地端口分配本地唯一的标签, 将本地。
48、主机的MAC地址及为接收本 地主机发送报文的本地端口分配的标签学习到本地MAC地址表项中 ; 出口RB接收到由入口 RB 发送的包含入口 RB、 入口标签、 出口 RB 和出口标签的 TRILL 报文后, 进行 TRILL 解封装, 并进行内层源 MAC 地址学习, 将内层源 MAC 地址、 入口 RB 及入口标签学习到本地 MAC 地址 表项中 ; 所述入口标签为入口 RB 为接收主机发送的报文的端口分配的标签, 所述出口标签 为入口 RB 根据目的 MAC 地址查找的结果所确定的标签 ; 出口 RB 根据出口标签对解封装后 的报文进行转发。 0073 为使本发明的目的、 技术方案和优点更加。
49、清楚, 下面将结合附图及具体实施例对 本发明作进一步地详细描述。 0074 图 2 为本发明 TRILL 网络中报文转发方法的工作流程图, 如图 2 所示, 该流程包 括 : 0075 步骤201 : 定义标签类型, TRILL网络内的每个RB都需要为每个本地端口分配本地 唯一的标签。 0076 本发明中, 在各个 RB 启动时, 会给本地的每个端口分配一个本地具有唯一性的标 签 ; 0077 本发明对 TRILL 报文的结构进行了扩展, 在 TRILL 报文中增加入口标签和出口标 签的信元, 扩展后的 TRILL 报文结构示例如图 3 所示。在本发明优选实施例中, 在 TRILL 报文的出口标号 Egress Nickname 和入口标号 Ingress Nickname 的后面添加出口标签 Egress Label和入口标签Ingress Label。 其中Ingress Label信元表示报文进入入口RB 时的入端口, 只能是交换标签 ; Egress Label 信元。