CN105591913B - Trill网络中的报文转发方法和装置 - Google Patents

Trill网络中的报文转发方法和装置 Download PDF

Info

Publication number
CN105591913B
CN105591913B CN201510738727.4A CN201510738727A CN105591913B CN 105591913 B CN105591913 B CN 105591913B CN 201510738727 A CN201510738727 A CN 201510738727A CN 105591913 B CN105591913 B CN 105591913B
Authority
CN
China
Prior art keywords
index
groups
multicast
vlan
list item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510738727.4A
Other languages
English (en)
Other versions
CN105591913A (zh
Inventor
邹文宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201510738727.4A priority Critical patent/CN105591913B/zh
Publication of CN105591913A publication Critical patent/CN105591913A/zh
Application granted granted Critical
Publication of CN105591913B publication Critical patent/CN105591913B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5069Address allocation for group communication, multicast communication or broadcast communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本申请公开了一种TRILL网络中的报文转发方法和装置,其中,该方法应用于RB,RB具有组播转发表项和索引关联表,组播转发表项中包括转发信息与索引的对应关系,转发信息中包含树根RB的标识和至少两个VLAN的标识,索引关联表中包括索引、RB组与出接口列表的对应关系,索引关联表中与组播转发表项的索引相对应的RB组中的RB满足以下条件:该RB是该至少两个VLAN的AVF;该方法包括:接收多目的报文;查找转发信息包含该多目的报文中携带的报文信息的组播转发表项;根据查找到的组播转发表项中的索引查找所述索引关联表,以获取该多目的报文的出接口列表;根据该多目的报文的出接口列表转发该多目的报文。

Description

TRILL网络中的报文转发方法和装置
技术领域
本申请涉及网络通信技术领域,特别涉及一种TRILL网络中的报文转发方法和装置。
背景技术
多链路透明互联(Transparent Interconnection of Lots of Links,TRILL)协议将三层路由技术的中间系统到中间系统(Intermediate System-to-IntermediateSystem,IS-IS)的设计思路引入二层网络,从而将二层网络的简单、灵活性与三层网络的稳定、可扩展和高性能有机融合,非常适合数据中心构建大型二层网络的需要。
运行TRILL协议的设备称为路由桥(RB)。根据RB在TRILL网络中的位置,又可将其分为入口(Ingress)RB、中间(Transit)RB和出口(Egress)RB,分别表示报文进入TRILL网络的入节点、在TRILL网络中经过的中间节点以及离开TRILL网络的出节点。
RB中具有两类转发表项:单播转发表项和组播转发表项。单播转发表项用于转发已知单播报文;组播转发表项用于转发多目的报文,其中,多目的报文包括:组播报文、广播报文和未知单播报文。
在现有技术中,无论是RB+VLAN类型的组播转发表项,还是RB+VLAN+MAC类型的组播转发表项,每一个组播转发表项中的VLAN标识均是单一的,即,VLAN标识是一个指定VLAN的标识,这样,当VLAN数量较多时,RB上需要记录大量的组播转发表项,从而占用了较多的存储资源。
此外,当RB感知到网络拓扑变化时,需要针对每一个组播转发表项进行更新,这样,计算总时间与组播转发表项的数量强相关,当组播转发表项的数量较多时,计算总时间会很长,降低了组播数据量的收敛速度。
发明内容
有鉴于此,本申请提供了一种TRILL网络中的报文转发方法和装置。
本申请的技术方案如下:
一方面,提供了一种TRILL网络中的报文转发方法,该方法应用于RB,RB具有组播转发表项和索引关联表,组播转发表项中包括转发信息与索引的对应关系,转发信息中包含树根RB的标识和至少两个VLAN的标识,索引关联表中包括索引、RB组与出接口列表的对应关系,索引关联表中与组播转发表项的索引相对应的RB组中的RB满足以下条件:该RB是该至少两个VLAN的AVF;该方法包括:
接收多目的报文;
查找转发信息包含该多目的报文中携带的报文信息的组播转发表项,其中,该报文信息包括:树根RB的标识和该多目的报文的内层的VLAN标识;
根据查找到的组播转发表项中的索引查找所述索引关联表,以获取该多目的报文的出接口列表;
根据该多目的报文的出接口列表转发该多目的报文。
其中,组播转发表项的转发信息中还包含组播MAC地址,则索引关联表中与该组播转发表项的索引相对应的RB组中的RB满足的条件具体为:该RB是该至少两个VLAN中的该组播MAC地址的组播接收者;
报文信息中还包括多目的报文的内层的目的组播MAC地址。
其中,该方法中还包括:
当TRILL网络的拓扑变化时,根据变化后的拓扑重新计算用于指导多目的报文转发的组播分发树;
针对索引关联表中的每一个RB组,基于重新计算出的组播分发树,计算到该RB组中的每一个RB的出接口,将该RB组对应的出接口列表更新为计算出的出接口。
其中,该方法中还包括:
当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
针对查找到的每一个组播转发表项,在该组播转发表项的转发信息中仅包含X个VLAN的标识时,判断该组播转发表项中第一索引的引用计数是否大于1;其中,引用计数为索引关联表中的索引被组播转发表项引用的计数;
若等于1,则在索引关联表中查找到与第一索引对应的第一RB组,对第一RB组进行更新;其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,更新为将该其它RB添加到第一RB组中,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,更新为从第一RB组中删除该其它RB;
判断索引关联表中是否存在与更新后的第一RB组相同的RB组;
若不存在与更新后的第一RB组相同的RB组,则将更新后的第一RB组对应的出接口列表更新为到更新后的第一RB组中的每一个RB的出接口;
若存在第二RB组与更新后的第一RB组相同,则将该组播转发表项中的第一索引更新为第二RB组对应的第二索引,将第二索引的引用计数加1,从索引关联表中删除更新后的第一RB组及其对应的第一索引和出接口列表。
其中,在判断该组播转发表项中第一索引的引用计数是否大于1之后,还包括:
若大于1,则在索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断索引关联表中是否存在与第三RB组相同的RB组;
若不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,将该组播转发表项中的第一索引更新为第三索引,将第三索引的引用计数加1,将第一索引的引用计数减1;其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
若存在第四RB组与第三RB组相同,则将该组播转发表项中的第一索引更新为第四RB组对应的第四索引,将第四索引的引用计数加1,将第一索引的引用计数减1。
其中,该方法中还包括:
当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
针对查找到的每一个组播转发表项,在该组播转发表项的转发信息中包含X个VLAN的标识和其它VLAN的标识时,将该组播转发表项拆分成N1+N2个组播转发表项,拆分得到的N1个组播转发表项的转发信息中包含其它VLAN中的至少一个VLAN的标识、索引为拆分前的组播转发表项中的第一索引,其余的N2个组播转发表项的转发信息中包含X个VLAN中的至少一个VLAN的标识,其中,N1和N2为不小于1的自然数;将第一索引的引用计数加N1-1;其中,引用计数为索引关联表中的索引被组播转发表项引用的计数;
在索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断索引关联表中是否存在与第三RB组相同的RB组;
若不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,将N2个组播转发表项中的索引设置为第三索引,将第三索引的引用计数加N2;其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
若存在第四RB组与第三RB组相同,则将N2个组播转发表项中的索引设置为第四RB组对应的第四索引,将第四索引的引用计数加N2。
另一方面,还提供了一种TRILL网络中的报文转发装置,该装置应用于RB中,RB具有组播转发表项和索引关联表,组播转发表项中包括转发信息与索引的对应关系,转发信息中包含树根RB的标识和至少两个VLAN的标识,索引关联表中包括索引、RB组与出接口列表的对应关系,索引关联表中与组播转发表项的索引相对应的RB组中的RB满足以下条件:该RB是该至少两个VLAN的AVF;该装置包括:
接收模块,用于接收多目的报文;
查找模块,用于在接收模块接收到多目的报文之后,查找转发信息包含该多目的报文中携带的报文信息的组播转发表项,其中,该报文信息包括:树根RB的标识和该多目的报文的内层的VLAN标识;还用于根据查找到的组播转发表项中的索引查找索引关联表,以获取该多目的报文的出接口列表;
发送模块,用于根据查找模块获取到的该多目的报文的出接口列表,转发该多目的报文。
其中,组播转发表项的转发信息中还包含组播MAC地址,则索引关联表中与该组播转发表项的索引相对应的RB组中的RB满足的条件具体为:该RB是该至少两个VLAN中的该组播MAC地址的组播接收者;
报文信息还包括该多目的报文的内层的目的组播MAC地址。
其中,该装置中还包括:
计算模块,用于当TRILL网络的拓扑变化时,根据变化后的拓扑重新计算用于指导多目的报文转发的组播分发树,针对索引关联表中的每一个RB组,基于重新计算出的组播分发树,计算到该RB组中的每一个RB的出接口;
索引关联表更新模块,用于在计算模块计算出到RB组中的每一个RB的出接口之后,将该RB组对应的出接口列表更新为计算出的出接口。
其中,该装置中还包括:判断模块、索引关联表更新模块、组播转发表项更新模块和引用计数更新模块,其中:
查找模块,还用于当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
判断模块,用于针对查找模块查找到的每一个组播转发表项,在该组播转发表项的转发信息中仅包含X个VLAN的标识时,判断该组播转发表项中第一索引的引用计数是否大于1,其中,引用计数为索引关联表中的索引被组播转发表项引用的计数;还用于判断索引关联表中是否存在与经过索引关联表更新模块更新后的第一RB组相同的RB组;
索引关联表更新模块,用于若判断模块判断出第一索引的引用计数等于1,则在索引关联表中查找到与第一索引对应的第一RB组,对第一RB组进行更新,其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,更新为将该其它RB添加到第一RB组中,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,更新为从第一RB组中删除该其它RB;还用于若判断模块判断出不存在与更新后的第一RB组相同的RB组,则将更新后的第一RB组对应的出接口列表更新为到更新后的第一RB组中的每一个RB的出接口;还用于在组播转发表项更新模块将该组播转发表项中的第一索引更新为第二RB组对应的第二索引之后,从索引关联表中删除更新后的第一RB组及其对应的第一索引和出接口列表;
组播转发表项更新模块,用于若判断模块判断出存在第二RB组与更新后的第一RB组相同,则将该组播转发表项中的第一索引更新为第二RB组对应的第二索引;
引用计数更新模块,用于在组播转发表项更新模块将该组播转发表项中的第一索引更新为第二RB组对应的第二索引之后,将第二索引的引用计数加1。
其中,该装置中还包括:RB组创建模块,其中:
RB组创建模块,用于若判断模块判断出第一索引的引用计数大于1,则在索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组,其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断模块,还用于判断索引关联表中是否存在与RB组创建模块创建的第三RB组相同的RB组;
索引关联表更新模块,还用于若判断模块判断出不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
组播转发表项更新模块,还用于在索引关联表更新模块将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中之后,将该组播转发表项中的第一索引更新为第三索引;还用于若判断模块判断出存在第四RB组与第三RB组相同,则将该组播转发表项中的第一索引更新为第四RB组对应的第四索引;
引用计数更新模块,还用于在组播转发表项更新模块将该组播转发表项中的第一索引更新为第三索引之后,将第三索引的引用计数加1,将第一索引的引用计数减1;还用于在组播转发表项更新模块将该组播转发表项中的第一索引更新为第四RB组对应的第四索引之后,将第四索引的引用计数加1,将第一索引的引用计数减1。
其中,该装置中还包括:表项拆分模块、RB组创建模块、判断模块、索引关联表更新模块、组播转发表项更新模块和引用计数更新模块,其中:
查找模块,还用于当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
表项拆分模块,用于针对查找模块查找到的每一个组播转发表项,在该组播转发表项的转发信息中包含X个VLAN的标识和其它VLAN的标识时,将该组播转发表项拆分成N1+N2个组播转发表项,拆分得到的N1个组播转发表项的转发信息中包含其它VLAN中的至少一个VLAN的标识、索引为拆分前的组播转发表项中的第一索引,其余的N2个组播转发表项的转发信息中包含X个VLAN中的至少一个VLAN的标识,其中,N1和N2为不小于1的自然数;
RB组创建模块,用于在表项拆分模块将该组播转发表项拆分成N1+N2个组播转发表项之后,在索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断模块,用于判断索引关联表中是否存在与RB组创建模块创建的第三RB组相同的RB组;
索引关联表更新模块,用于若判断模块判断出不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
组播转发表项更新模块,用于在索引关联表更新模块将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中之后,将N2个组播转发表项中的索引设置为第三索引;还用于若判断模块判断出存在第四RB组与第三RB组相同,则将N2个组播转发表项中的索引设置为第四RB组对应的第四索引;
引用计数更新模块,用于在表项拆分模块将该组播转发表项拆分成N1+N2个组播转发表项之后,将第一索引的引用计数加N1-1;其中,引用计数为索引关联表中的索引被组播转发表项引用的计数;还用于在组播转发表项更新模块将N2个组播转发表项中的索引设置为第三索引之后,将第三索引的引用计数加N2;还用于在组播转发表项更新模块将N2个组播转发表项中的索引设置为第四RB组对应的第四索引之后,将第四索引的引用计数加N2。
本申请的以上技术方案中,设置对应于RB组和出接口列表的索引,TRILL网络中的组播转发表项不直接记录多目的报文的出接口列表,而是记录对应于该RB组和该出接口列表的索引,并且,组播转发表项中的VLAN标识不再是一个指定VLAN的标识,而是至少两个VLAN的标识,从而,通过优化TRILL网络中的组播转发表项的组织形式,有效的减少了组播转发表项的数量,节约了存储资源。另外,实现了组播转发表项和出接口列表的分离,实现了表项的复用。
当TRILL网络的拓扑发生变化时,会触发组播路由的重新计算。现有技术中,会以每一个组播转发表项为调度单位,对该组播转发表项进行更新。本申请实施例中,无需更新组播转发表项,而是以索引关联表中的每一个RB组为调度单位,更新该RB组对应的出接口列表。由于无需针对每一个组播转发表项进行更新,因此,计算总时间与组播转发表项的数量无关,缩短了路由计算时间,提高了组播数据量的收敛速度。
尤其是当TRILL网络中的RB较少,而VLAN较多时,RB组的数量远远小于组播转发表项的数量,因此,以每一个RB组为调度单位进行更新,达到的减少路由计算时间的效果更加明显。
当其它RB上增加(或减少)了至少一个VLAN的AVF或者该至少一个VLAN的同一组播MAC地址的组播接收者时,只需针对转发信息满足以下条件的组播转发表项进行相应处理:当增加(或减少)了至少一个VLAN的AVF时,转发信息中包含有该至少一个VLAN中的部分或全部VLAN的标识,当增加(或减少)了至少一个VLAN的同一组播MAC地址的组播接收者时,转发信息中包含有该至少一个VLAN中的部分或全部VLAN的标识、以及该组播MAC地址,由于满足条件的组播转发表项数量较少,因此,大大缩短了组播转发表项的更新时间,加快了组播数据流的收敛速度。
附图说明
图1是本申请实施例的TRILL网络中的报文转发方法的流程图;
图2是本申请实施例的索引关联表的示范性结构图;
图3是本申请实施例的组播转发表项与索引关联表的示范性对应关系图;
图4是本申请实施例的当TRILL网络的拓扑变化时的索引关联表的更新流程图;
图5是本申请实施例的当其它RB上增加了VLAN的AVF或者增加了VLAN中的组播MAC地址的组播接收者时,组播转发表项和索引关联表的更新流程图;
图6是本申请实施例的当其它RB上减少了VLAN的AVF或者减少了VLAN中的组播MAC地址的组播接收者时,组播转发表项和索引关联表的更新流程图;
图7是一种TRILL网络的网络拓扑图;
图8是图7中的RB101与RB201之间的链路故障后的网络拓扑图;
图9是本申请一种实施例的TRILL网络中的报文转发装置的结构示意图;
图10是本申请另一种实施例的TRILL网络中的报文转发装置的结构示意图;
图11是本申请又一种实施例的TRILL网络中的报文转发装置的结构示意图;
图12是图11所示的实施例中的TRILL网络中的报文转发装置的另一种结构示意图;
图13是本申请又一种实施例的TRILL网络中的报文转发装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请作进一步的详细描述。
在TRILL网络中,每一个RB根据网络拓扑计算用于指导多目的报文转发的组播分发树。而且,每一个RB分别基于组播分发树生成各自的组播转发表项。
现有技术中,无论是RB+VLAN类型的组播转发表项(即,组播转发表项的转发信息中包括树根RB和VLAN标识),还是RB+VLAN+MAC类型的组播转发表项(即,组播转发表项的转发信息中包括树根RB、VLAN标识和组播MAC地址),每一个组播转发表项中的VLAN标识(Identity,ID)均是一个指定VLAN的标识,当VLAN数量较多时,RB上需要记录大量的组播转发表项,从而占用了较多的存储资源。
为了解决现有技术中存在的上述问题,在本申请实施例中,优化了TRILL网络中的组播转发表项的组织形式,设置对应于RB组和出接口列表的索引,TRILL网络中的组播转发表项不直接记录多目的报文的出接口列表,而是记录对应于该RB组和该出接口列表的索引,并且,组播转发表项中的VLAN标识不再是一个指定VLAN的标识,而是至少两个VLAN的标识,从而,有效的减少了组播转发表项的数量,节约了存储资源。
图1为本申请实施例的TRILL网络中的报文转发方法的流程图。该方法应用于RB,该RB具有索引关联表和组播转发表项,组播转发表项中包括转发信息与索引的对应关系,索引关联表中包括索引、RB组与出接口列表的对应关系。其中,对于RB+VLAN类型的组播转发表项,转发信息中包含树根RB的标识和至少两个VLAN的标识;对于RB+VLAN+MAC类型的组播转发表项,转发信息中包含树根RB的标识、至少两个VLAN的标识和组播MAC地址。
在实际实施过程中,转发信息中包含的至少两个VLAN标识可以是采用分段的形式记录,也可以采用列表的形式记录,还可以采用bitmap(比特映射)的形式或者其它形式记录,本申请对此不做限定。这样,转发信息中还需要包含有类型(Type),Type用于指示转发信息中包含的VLAN标识所采用的形式,例如,当Type的值置为1时,表示转发信息中包含的VLAN标识采用的是分段的形式,当Type的值置为2时,表示转发信息中包含的VLAN标识采用的是列表的形式,Type的值置为3时,表示转发信息中包含的VLAN标识采用的是bitmap的形式。
具体的,当采用分段的形式时,组播转发表项的转发信息中包含有Type、起始VLAN标识(StartVLANID)和结束VLAN标识(EndVLANID),即,转发信息中包含的VLAN标识是一个VLAN标识区间。例如,转发信息中包含VLAN100~VLAN1000。
当采用列表的形式时,组播转发表项的转发信息中包含有Type、至少两个VLAN标识和Length(长度),其中,至少两个VLAN标识是多个离散的VLAN标识,Length用于表示转发信息中包含的VLAN标识的数量。例如,转发信息中包含VLAN1、VLAN3、VLAN5、VLAN7。
当采用bitmap的形式时,组播转发表项的转发信息中包含有Type、起始VLAN标识(StartVLANID)、bitmap和Length,其中,bitmap中的每一个比特位映射到一个VLAN标识,如第i(i为不小于1的自然数)个比特位映射到VLAN(StartVLANID+i),当第i个比特位的值置为1时,表示转发信息中包含对应的VLAN标识,当第i个比特位的值置为0时,表示转发信息中不包含对应的VLAN标识;Length用于表示bitmap的长度。例如,转发信息中包含的StartVLANID=100,bitmap中的第10个比特位的值置为1,则说明转发信息中包含有VLAN110。
下面分别对RB+VLAN类型的组播转发表项和RB+VLAN+MAC类型的组播转发表项加以介绍。
对于RB+VLAN类型的组播转发表项:
控制层面上,组播转发表项中包括:转发信息和索引(为了描述方便,记为索引1),其中,转发信息中包含树根RB的标识和至少两个VLAN的标识;索引关联表中包括索引1及其对应的RB组和出接口列表,其中,该RB组中的RB是该至少两个VLAN的AVF,出接口列表中包括到该RB组中的每一个RB的出接口。
转发层面上,组播转发表项中包括:上述转发信息和索引1;索引关联表中包括索引1与上述出接口列表的对应关系。
对于RB+VLAN+MAC类型的组播转发表项:
控制层面上,组播转发表项中包括:转发信息和索引(为了描述方便,记为索引1),其中,转发信息中包含树根RB的标识、至少两个VLAN的标识和组播MAC地址;索引关联表中包括索引1及其对应的RB组和出接口列表,其中,该RB组中的RB是该至少两个VLAN中的该组播MAC地址的组播接收者,这里的组播接收者包括:中间转发者和最终接收者;
转发层面上,组播转发表项中包括:上述转发信息和索引1;索引关联表中包括索引1与上述出接口列表的对应关系。
如图1所示,该方法包括以下步骤:
步骤S102,RB接收多目的报文。
在这里,多目的报文包括:组播报文、广播报文和未知单播报文。而且,该RB可以为入口RB、中间RB或出口RB。
步骤S104,RB查找转发信息包含该多目的报文中携带的报文信息的组播转发表项;
其中,报文信息包括:树根RB的标识和该多目的报文的内层的VLAN标识;或者,该报文信息包括:树根RB的标识、该多目的报文的内层的VLAN标识和多目的报文的内层的目的组播MAC地址。
步骤S106,RB根据查找到的组播转发表项中的索引查找索引关联表,以获取该多目的报文的出接口列表。
图2为本申请实施例的索引关联表的示范性结构图。
由图2可见,每一个索引分别对应于多个RB(这多个RB构成一个RB组)和多个出接口,与该索引对应的这多个出接口共同组成一个出接口列表,即RB组和出接口列表与索引具有对应关系。
在图2中,索引1对应于由RB1、RB2和RB3组成的RB组1、以及由出接口1、出接口2和出接口3组成的出接口列表1;索引k对应于由RB1、RB2…RBn组成的RB组k、以及由出接口1、出接口2...出接口n组成的出接口列表k,其中n和k均为整数。
图3为本申请实施例的组播转发表项与索引关联表的示范性对应关系图。在图3中,组播转发表项以RB+VLAN类型的组播转发表项为例进行说明。该组播转发表项中包含转发信息与索引1的对应关系,其中,转发信息中包含树根RB标识m和VALN标识1~n。
RB接收多目的报文,假定该多目的报文携带的报文信息中包含树根RB标识m和VALN标识n。RB利用该报文信息为检索项,查找到转发信息包含该报文信息的组播转发表项,查找到的组播转发表项中的索引为索引1。然后,RB以索引1为检索项查找索引关联表,获得对应于索引1的出接口列表1,该出接口列表1中包含出接口1,出接口2和出接口3。
图3中以RB+VLAN类型的组播转发表项为例说明组播转发表项与索引关联表的示范性对应关系。本领域技术人员可以意识到,组播转发表项实际上还可以实施为其它任意类型,如RB+VLAN+MAC类型,本发明对此并无限定。
步骤S108,RB根据该多目的报文的出接口列表转发该多目的报文。
在这里,RB在出接口列表的各个出接口分别发送该多目的报文。比如,当在步骤106中获得的出接口列表为出接口列表1时,RB分别在出接口1,出接口2和出接口3上发送该多目的报文。
可见,本申请实施例中,设置对应于RB组和出接口列表的索引,TRILL网络中的组播转发表项不直接记录多目的报文的出接口列表,而是记录对应于该RB组和该出接口列表的索引,并且,组播转发表项中的VLAN标识不再是一个指定VLAN的标识,而是至少两个VLAN的标识,从而,通过优化TRILL网络中的组播转发表项的组织形式,有效的减少了组播转发表项的数量,节约了存储资源。另外,实现了组播转发表项和出接口列表的分离,实现了表项的复用。
本申请实施例中还提出了一种能够提高表项更新效率的表项更新方法。
下面详细描述本申请实施例的组播转发表项和索引关联表的更新过程。
图4为本申请实施例的当TRILL网络的拓扑变化时的索引关联表的更新流程图。
如图4所示,该方法包括:
步骤S202,当TRILL网络的拓扑变化时,根据变化后的拓扑重新计算用于指导多目的报文转发的组播分发树;
步骤S204,针对索引关联表中的每一个RB组,基于重新计算出的组播分发树,计算到该RB组中的每一个RB的出接口,将该RB组对应的出接口列表更新为计算出的出接口。
在步骤S204中,当出接口列表发生了变化时,将变化后的出接口列表下发到转发层面。
当TRILL网络的拓扑发生变化时,会触发组播路由的重新计算。现有技术中,会以每一个组播转发表项为调度单位,对该组播转发表项进行更新。本申请实施例中,无需更新组播转发表项,而是以索引关联表中的每一个RB组为调度单位,更新该RB组对应的出接口列表。由于无需针对每一个组播转发表项进行更新,因此,计算总时间与组播转发表项的数量无关,缩短了路由计算时间,提高了组播数据量的收敛速度。
尤其是当TRILL网络中的RB较少,而VLAN较多时,RB组的数量远远小于组播转发表项的数量,因此,以每一个RB组为调度单位进行更新,达到的减少路由计算时间的效果更加明显。
另外,当其它RB上的AVF或者组播接收者发生了变化时,也会导致组播转发表项和索引关联表的更新。图5为本申请实施例的当其它RB上增加了VLAN的AVF或者增加了VLAN中的组播MAC地址的组播接收者时,组播转发表项和索引关联表的更新流程图。图6为本申请实施例的当其它RB上减少了VLAN的AVF或者减少了VLAN中的组播MAC地址的组播接收者时,组播转发表项和索引关联表的更新流程图。
在如图5和图6所示的方法中,第一RB组、第二RB组、…,以及第一索引、第二索引等,只是为了描述方便而做出的命名,并不特指某一特定的RB组和索引。
如图5所示,当其它RB上增加了VLAN的AVF或者增加了VLAN中的组播MAC地址的组播接收者时,组播转发表项和索引关联表的更新方法包括以下步骤:
步骤S302,当其它RB上增加了M个VLAN的AVF或者增加了M个VLAN中的同一组播MAC地址(为了描述方便,记为MAC1)的组播接收者时,查找转发信息满足条件的组播转发表项;
当该其它RB上增加了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加了M个VLAN中的MAC1的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及MAC1。其中,M为不小于1的自然数,X为不小于1且不大于M的自然数。
在实际实施过程中,可以通过其它RB发来的LSP(Link State PDU,链路状态协议数据单元)报文获知该其它RB上增加了M个VLAN的AVF或者增加了M个VLAN中的MAC1的组播接收者。
步骤S304,针对查找到的每一个组播转发表项(为了描述方便,将该组播转发表项的索引称为第一索引),判断该组播转发表项的转发信息中除了包含所述X个VLAN的标识以外,是否还包含其它VLAN的标识,若否,则执行步骤S306,若是,则执行步骤S324;
步骤S306,判断第一索引的引用计数是否大于1,若等于1,则执行步骤S308,否则,若大于1,则执行步骤S316;
其中,引用计数为索引关联表中的索引被组播转发表项引用的计数。
步骤S308,在索引关联表中查找到与第一索引对应的RB组(称为第一RB组),将该其它RB添加到第一RB组中;
步骤S310,判断索引关联表中是否存在与更新后的第一RB组相同的RB组,若不存在与更新后的第一RB组相同的RB组,则执行步骤S312,若存在一RB组(称为第二RB组)与更新后的第一RB组相同,则执行步骤S314;
步骤S312,将所述更新后的第一RB组对应的出接口列表更新为到所述更新后的第一RB组中的每一个RB的出接口;
步骤S314,将该组播转发表项中的第一索引更新为第二RB组对应的索引(称为第二索引),将第二索引的引用计数加1,从索引关联表中删除所述更新后的第一RB组及其对应的第一索引和出接口列表;
步骤S316,在索引关联表中查找到与第一索引对应的第一RB组,创建一个由第一RB组和该其它RB构成的RB组(称为第三RB组);
此时,第三RB组并没有添加到索引关联表中。
步骤S318,判断索引关联表中是否存在与第三RB组相同的RB组,若不存在与第三RB组相同的RB组,则执行步骤S320,若存在一RB组(称为第四RB组)与第三RB组相同,则执行步骤S322;
步骤S320,将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,将该组播转发表项中的第一索引更新为第三索引,将第三索引的引用计数加1,将第一索引的引用计数减1;
其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;第三索引是为第三RB组分配的一个未被占用的索引。
步骤S322,将该组播转发表项中的第一索引更新为第四RB组对应的索引(称为第四索引),将第四索引的引用计数加1,将第一索引的引用计数减1;
步骤S324,将该组播转发表项拆分成N1+N2个组播转发表项,将第一索引的引用计数加N1-1;
在步骤S324中,拆分得到的N1个组播转发表项的转发信息中包含所述其它VLAN中的至少一个VLAN的标识、索引为第一索引,其余的N2个组播转发表项的转发信息中包含X个VLAN中的至少一个VLAN的标识。
其中,N1和N2为不小于1的自然数。
步骤S326,在索引关联表中查找到与第一索引对应的第一RB组,创建一个由第一RB组和该其它RB构成的RB组(称为第三RB组);
此时,第三RB组并没有添加到索引关联表中。
步骤S328,判断索引关联表中是否存在与第三RB组相同的RB组,若不存在与第三RB组相同的RB组,则执行步骤S330,若存在一RB组(称为第四RB组)与第三RB组相同,则执行步骤S332;
步骤S330,将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,将N2个组播转发表项中的索引设置为第三索引,将第三索引的引用计数加N2;
其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口。第三索引是为第三RB组分配的一个未被占用的索引。
步骤S332,将N2个组播转发表项中的索引设置为第四RB组对应的索引(称为第四索引),将第四索引的引用计数加N2。
如图6所示,当其它RB上减少了VLAN的AVF或者减少了VLAN中的组播MAC地址的组播接收者时,组播转发表项和索引关联表的更新方法包括以下步骤:
步骤S402,当其它RB上减少了M个VLAN的AVF或者减少了M个VLAN中的同一组播MAC地址(为了描述方便,记为MAC1)的组播接收者时,查找转发信息满足条件的组播转发表项;
当该其它RB上减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上减少了M个VLAN中的MAC1的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及MAC1。其中,M为不小于1的自然数,X为不小于1且不大于M的自然数。
在实际实施过程中,可以通过其它RB发来的LSP报文获知该其它RB上减少了M个VLAN的AVF或者减少了M个VLAN中的MAC1的组播接收者。
步骤S404,针对查找到的每一个组播转发表项(为了描述方便,将该组播转发表项的索引称为第一索引),判断该组播转发表项的转发信息中除了包含所述X个VLAN的标识以外,是否还包含其它VLAN的标识,若否,则执行步骤S406,若是,则执行步骤S424;
步骤S406,判断第一索引的引用计数是否大于1,若等于1,则执行步骤S408,否则,若大于1,则执行步骤S416;
其中,引用计数为索引关联表中的索引被组播转发表项引用的计数。
步骤S408,在索引关联表中查找到与第一索引对应的RB组(称为第一RB组),从第一RB组中删除该其它RB;
步骤S410,判断索引关联表中是否存在与更新后的第一RB组相同的RB组,若不存在与更新后的第一RB组相同的RB组,则执行步骤S412,若存在一RB组(称为第二RB组)与更新后的第一RB组相同,则执行步骤S414;
步骤S412,将所述更新后的第一RB组对应的出接口列表更新为到所述更新后的第一RB组中的每一个RB的出接口;
步骤S414,将该组播转发表项中的第一索引更新为第二RB组对应的索引(称为第二索引),将第二索引的引用计数加1,从索引关联表中删除所述更新后的第一RB组及其对应的第一索引和出接口列表;
步骤S416,在索引关联表中查找到与第一索引对应的第一RB组,创建一个由第一RB组中除该其它RB以外的RB构成的RB组(称为第三RB组);
此时,第三RB组并没有添加到索引关联表中。
步骤S418,判断索引关联表中是否存在与第三RB组相同的RB组,若不存在与第三RB组相同的RB组,则执行步骤S420,若存在一RB组(称为第四RB组)与第三RB组相同,则执行步骤S422;
步骤S420,将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,将该组播转发表项中的第一索引更新为第三索引,将第三索引的引用计数加1,将第一索引的引用计数减1;
其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;第三索引是为第三RB组分配的一个未被占用的索引。
步骤S422,将该组播转发表项中的第一索引更新为第四RB组对应的索引(称为第四索引),将第四索引的引用计数加1,将第一索引的引用计数减1;
步骤S424,将该组播转发表项拆分成N1+N2个组播转发表项,将第一索引的引用计数加N1-1;
在步骤S424中,拆分得到的N1个组播转发表项的转发信息中包含所述其它VLAN中的至少一个VLAN的标识、索引为第一索引,其余的N2个组播转发表项的转发信息中包含X个VLAN中的至少一个VLAN的标识。
其中,N1和N2为不小于1的自然数。
步骤S426,在索引关联表中查找到与第一索引对应的第一RB组,创建一个由第一RB组中除该其它RB以外的RB构成的RB组(称为第三RB组);
此时,第三RB组并没有添加到索引关联表中。
步骤S428,判断索引关联表中是否存在与第三RB组相同的RB组,若不存在与第三RB组相同的RB组,则执行步骤S430,若存在一RB组(称为第四RB组)与第三RB组相同,则执行步骤S432;
步骤S430,将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,将N2个组播转发表项中的索引设置为第三索引,将第三索引的引用计数加N2;
其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口。第三索引是为第三RB组分配的一个未被占用的索引。
步骤S432,将N2个组播转发表项中的索引设置为第四RB组对应的索引(称为第四索引),将第四索引的引用计数加N2。
其中,在如图5和图6所示的方法中,当组播转发表项发生了变化和/或索引关联表发生了变化时,均需要更新转发层面中的对应内容。
由图5和图6所示的方法可见,当其它RB上增加(或减少)了至少一个VLAN的AVF或者该至少一个VLAN的同一组播MAC地址的组播接收者时,只需针对转发信息满足以下条件的组播转发表项进行相应处理:当增加(或减少)了至少一个VLAN的AVF时,转发信息中包含有该至少一个VLAN中的部分或全部VLAN的标识,当增加(或减少)了至少一个VLAN的同一组播MAC地址的组播接收者时,转发信息中包含有该至少一个VLAN中的部分或全部VLAN的标识、以及该组播MAC地址,由于满足条件的组播转发表项数量较少,因此,大大缩短了组播转发表项的更新时间,加快了组播数据流的收敛速度。
下面以图7所示的实际组网为例,来说明上述实施例的方法。在图7中,RB101为唯一的组播树根,RB101通过接口P1与RB201连接;RB101通过接口P2与RB202连接;RB101通过接口P3与RB203连接。RB201~RB203是多个VLAN的AVF,假定VLAN总数为4094个。以RB+VLAN类型的组播转发表项为例。
(1)网络拓扑变化
初始时的网络拓扑如图7所示,此时,RB201~RB203是VLAN1~VLAN4000的AVF,此时的组播转发表项如表1所示,索引关联表如表2所示:
表1
表2
如图8所示,当RB101感知到RB101与RB203之间的链路故障(即网络拓扑发生了变化)时,根据如图8所示的变化后的网络拓扑重新计算组播分发树,针对如表2所示的索引关联表中的每一个RB组,此时,只有一个由RB201、RB202和RB203构成的RB组1,将该RB组1对应的出接口列表更新为RB101到该RB组1中的每一个RB的出接口,由于RB101到RB201的出接口为P1,RB101到RB202的出接口为P2,RB101到RB203的出接口为P1,因此,RB1对应的出接口列表更新为P1和P2。此时的索引关联表更新为如表3所示,而如表1所示的组播转发表项无需更新。
表3
索引 RB组 出接口列表
1 RB201、RB202、RB203 P1、P2
(2)AVF变化
以如图7所示的网络进行说明。初始时,RB201~RB203是VLAN1~VLAN4000的AVF,此时的组播转发表项如表1所示,索引关联表如表2所示,索引1的引用计数为1。
当RB101接收到用于指示RB203上减少了VLAN1~VLAN2000的AVF的LSP报文之后,查找到如表1所示的组播转发表项的转发信息中包含有VLAN1~VLAN2000,并且,该转发信息中除了包含VLAN1~VLAN2000以外还包含VLAN2001~VLAN4000,则将如表1所示的组播转发表项拆分成了如表4所示的2个组播转发表项,此时,如表4第2行所示的组播转发表项中的索引待定。
表4
根据索引1在如表2所示的索引关联表中查找到对应的RB组1,创建一个由RB组1中除RB203以外的RB构成的RB组2:RB201和RB202;判断如表2所示的索引关联表中是否存在与RB组2相同的RB组,结果是不存在,则将RB组2、索引2与出接口列表的对应关系添加到如表2所示的索引关联表中,将如表4第2行所示的组播转发表项中的索引设置为索引2,将索引2的引用计数置为1。此时的索引关联表如表5所示,组播转发表项如表6所示:
表5
表6
后续,当RB101接收到用于指示RB203上增加了VLAN1~VLAN1000的AVF的LSP报文之后,查找到如表6第2行所示的组播转发表项的转发信息中包含有VLAN1~VLAN1000,并且,该转发信息中除了包含VLAN1~VLAN1000以外还包含VLAN1001~VLAN2000,则将如表6第2行所示的组播转发表项拆分成了如表7第2行和第3行所示的2个组播转发表项,此时,如表7第2行所示的组播转发表项中的索引待定。
表7
根据索引2在如表5所示的索引关联表中查找到对应的RB组2:RB201和RB202,创建一个由RB201、RB202和RB203组成的RB组3;判断如表5所示的索引关联表中是否存在相同的RB组,判断结果是存在RB组1与RB组3相同,则将如表7第2行所示的组播转发表项的索引设置为索引1,此时,如表7的组播转发表项更新为如表8所示,将索引1的引用计数置为2。
表8
以上只是以VLAN标识采用分段形式的组播转发表项为例进行的说明,显然,当VLAN标识采用列表形式或者bitmap形式时,也可以采用类似的方法,本申请实施例对此不做限定。
针对上述实施例中的方法,本申请实施例中提供了一种TRILL网络中的报文转发装置,该装置应用于RB中,RB具有组播转发表项和索引关联表,组播转发表项中包括转发信息与索引的对应关系,转发信息中包含树根RB的标识和至少两个VLAN的标识,索引关联表中包括索引、RB组与出接口列表的对应关系,索引关联表中与组播转发表项的索引相对应的RB组中的RB满足以下条件:该RB是至少两个VLAN的AVF。
如图9所示,该装置中包括以下模块:接收模块501、查找模块502和发送模块503,其中:
接收模块501,用于接收多目的报文;
查找模块502,用于在接收模501块接收到多目的报文之后,查找转发信息包含该多目的报文中携带的报文信息的组播转发表项,其中,该报文信息包括:树根RB的标识和该多目的报文的内层的VLAN标识;还用于根据查找到的组播转发表项中的索引查找索引关联表,以获取该多目的报文的出接口列表;
发送模块503,用于根据查找模块502获取到的该多目的报文的出接口列表,转发该多目的报文。
其中,组播转发表项的转发信息中还包含组播MAC地址,则索引关联表中与该组播转发表项的索引相对应的RB组中的RB满足的条件具体为:该RB是该至少两个VLAN中的该组播MAC地址的组播接收者;报文信息还包括该多目的报文的内层的目的组播MAC地址。
如图10所示,在本申请的一种实施例中,该装置中还包括:计算模块504和索引关联表更新模块505,其中:
计算模块504,用于当TRILL网络的拓扑变化时,根据变化后的拓扑重新计算用于指导多目的报文转发的组播分发树,针对索引关联表中的每一个RB组,基于重新计算出的组播分发树,计算到该RB组中的每一个RB的出接口;
索引关联表更新模块505,用于在计算模块504计算出到RB组中的每一个RB的出接口之后,将该RB组对应的出接口列表更新为计算出的出接口。
如图11所示,另一种实施例中,该装置中还包括:判断模块506、索引关联表更新模块507、组播转发表项更新模块508和引用计数更新模块509,其中:
查找模块502,还用于当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
判断模块506,用于针对查找模块502查找到的每一个组播转发表项,在该组播转发表项的转发信息中仅包含X个VLAN的标识时,判断该组播转发表项中第一索引的引用计数是否大于1,其中,引用计数为索引关联表中的索引被组播转发表项引用的计数;还用于判断索引关联表中是否存在与经过索引关联表更新模块507更新后的第一RB组相同的RB组;
索引关联表更新模块507,用于若判断模块506判断出第一索引的引用计数等于1,则在索引关联表中查找到与第一索引对应的第一RB组,对第一RB组进行更新,其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,更新为将该其它RB添加到第一RB组中,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,更新为从第一RB组中删除该其它RB;还用于若判断模块506判断出不存在与更新后的第一RB组相同的RB组,则将更新后的第一RB组对应的出接口列表更新为到更新后的第一RB组中的每一个RB的出接口;还用于在组播转发表项更新模块508将该组播转发表项中的第一索引更新为第二RB组对应的第二索引之后,从索引关联表中删除更新后的第一RB组及其对应的第一索引和出接口列表;
组播转发表项更新模块508,用于若判断模块506判断出存在第二RB组与更新后的第一RB组相同,则将该组播转发表项中的第一索引更新为第二RB组对应的第二索引;
引用计数更新模块509,用于在组播转发表项更新模块508将该组播转发表项中的第一索引更新为第二RB组对应的第二索引之后,将第二索引的引用计数加1。
另外,在上述如图11所示的实施例中,该装置中还可以包括:RB组创建模块510,如图12所示,其中:
RB组创建模块510,用于若判断模块506判断出第一索引的引用计数大于1,则在索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组,其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断模块506,还用于判断索引关联表中是否存在与RB组创建模块510创建的第三RB组相同的RB组;
索引关联表更新模块507,还用于若判断模块506判断出不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
组播转发表项更新模块508,还用于在索引关联表更新模块507将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中之后,将该组播转发表项中的第一索引更新为第三索引;还用于若判断模块506判断出存在第四RB组与第三RB组相同,则将该组播转发表项中的第一索引更新为第四RB组对应的第四索引;
引用计数更新模块509,还用于在组播转发表项更新模块508将该组播转发表项中的第一索引更新为第三索引之后,将第三索引的引用计数加1,将第一索引的引用计数减1;还用于在组播转发表项更新模块508将该组播转发表项中的第一索引更新为第四RB组对应的第四索引之后,将第四索引的引用计数加1,将第一索引的引用计数减1。
如图13所示,在本申请的另一实施例中,该装置中还包括:表项拆分模块511、RB组创建模块510、判断模块506、索引关联表更新模块507、组播转发表项更新模块508和引用计数更新模块509,其中:
查找模块502,还用于当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
表项拆分模块511,用于针对查找模块502查找到的每一个组播转发表项,在该组播转发表项的转发信息中包含X个VLAN的标识和其它VLAN的标识时,将该组播转发表项拆分成N1+N2个组播转发表项,拆分得到的N1个组播转发表项的转发信息中包含其它VLAN中的至少一个VLAN的标识、索引为拆分前的组播转发表项中的第一索引,其余的N2个组播转发表项的转发信息中包含X个VLAN中的至少一个VLAN的标识,其中,N1和N2为不小于1的自然数;
RB组创建模块510,用于在表项拆分模块511将该组播转发表项拆分成N1+N2个组播转发表项之后,在索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了M个VLAN的AVF或者M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断模块506,用于判断索引关联表中是否存在与RB组创建模块510创建的第三RB组相同的RB组;
索引关联表更新模块507,用于若判断模块506判断出不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中,其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
组播转发表项更新模块508,用于在索引关联表更新模块507将第三RB组、第三索引与出接口列表的对应关系添加到索引关联表中之后,将N2个组播转发表项中的索引设置为第三索引;还用于若判断模块506判断出存在第四RB组与第三RB组相同,则将N2个组播转发表项中的索引设置为第四RB组对应的第四索引;
引用计数更新模块509,用于在表项拆分模块511将该组播转发表项拆分成N1+N2个组播转发表项之后,将第一索引的引用计数加N1-1;其中,引用计数为索引关联表中的索引被组播转发表项引用的计数;还用于在组播转发表项更新模块508将N2个组播转发表项中的索引设置为第三索引之后,将第三索引的引用计数加N2;还用于在组播转发表项更新模块508将N2个组播转发表项中的索引设置为第四RB组对应的第四索引之后,将第四索引的引用计数加N2。
综上,本申请以上实施例可以达到以下技术效果:
(1)设置对应于RB组和出接口列表的索引,TRILL网络中的组播转发表项不直接记录多目的报文的出接口列表,而是记录对应于该RB组和该出接口列表的索引,并且,组播转发表项中的VLAN标识不再是一个指定VLAN的标识,而是至少两个VLAN的标识,从而,通过优化TRILL网络中的组播转发表项的组织形式,有效的减少了组播转发表项的数量,节约了存储资源。另外,实现了组播转发表项和出接口列表的分离,实现了表项的复用。
(2)当TRILL网络的拓扑发生变化时,会触发组播路由的重新计算。现有技术中,会以每一个组播转发表项为调度单位,对该组播转发表项进行更新。本申请实施例中,无需更新组播转发表项,而是以索引关联表中的每一个RB组为调度单位,更新该RB组对应的出接口列表。由于无需针对每一个组播转发表项进行更新,因此,计算总时间与组播转发表项的数量无关,缩短了路由计算时间,提高了组播数据量的收敛速度。
尤其是当TRILL网络中的RB较少,而VLAN较多时,RB组的数量远远小于组播转发表项的数量,因此,以每一个RB组为调度单位进行更新,达到的减少路由计算时间的效果更加明显。
(3)当其它RB上增加(或减少)了至少一个VLAN的AVF或者该至少一个VLAN的同一组播MAC地址的组播接收者时,只需针对转发信息满足以下条件的组播转发表项进行相应处理:当增加(或减少)了至少一个VLAN的AVF时,转发信息中包含有该至少一个VLAN中的部分或全部VLAN的标识,当增加(或减少)了至少一个VLAN的同一组播MAC地址的组播接收者时,转发信息中包含有该至少一个VLAN中的部分或全部VLAN的标识、以及该组播MAC地址,由于满足条件的组播转发表项数量较少,因此,大大缩短了组播转发表项的更新时间,加快了组播数据流的收敛速度。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (12)

1.一种多链路透明互联TRILL网络中的报文转发方法,其特征在于,所述方法应用于路由桥RB,所述RB具有组播转发表项和索引关联表,所述组播转发表项中包括转发信息与索引的对应关系,所述转发信息中包含树根RB的标识和至少两个虚拟局域网VLAN的标识,所述索引关联表中包括索引、RB组与出接口列表的对应关系,所述索引关联表中与所述组播转发表项的索引相对应的RB组中的RB满足以下条件:该RB是所述至少两个VLAN的指定虚拟局域网转发者AVF;所述方法包括:
接收多目的报文;
查找转发信息包含所述多目的报文中携带的报文信息的组播转发表项,其中,所述报文信息包括:树根RB的标识和所述多目的报文的内层的VLAN标识;
根据查找到的组播转发表项中的索引查找所述索引关联表,以获取所述多目的报文的出接口列表;
根据所述多目的报文的出接口列表转发所述多目的报文。
2.根据权利要求1所述的方法,其特征在于,
所述转发信息中还包含组播媒体访问控制MAC地址,则所述索引关联表中与该组播转发表项的索引相对应的RB组中的RB满足的条件具体为:该RB是所述至少两个VLAN中的该组播MAC地址的组播接收者;
所述报文信息中还包括所述多目的报文的内层的目的组播MAC地址。
3.根据权利要求2所述的方法,其特征在于,还包括:
当所述TRILL网络的拓扑变化时,根据变化后的拓扑重新计算用于指导多目的报文转发的组播分发树;
针对所述索引关联表中的每一个RB组,基于重新计算出的组播分发树,计算到该RB组中的每一个RB的出接口,将该RB组对应的出接口列表更新为计算出的出接口。
4.根据权利要求2所述的方法,其特征在于,还包括:
当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了所述M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
针对查找到的每一个组播转发表项,在该组播转发表项的转发信息中仅包含所述X个VLAN的标识时,判断该组播转发表项中第一索引的引用计数是否大于1;其中,所述引用计数为索引关联表中的索引被组播转发表项引用的计数;
若等于1,则在所述索引关联表中查找到与第一索引对应的第一RB组,对第一RB组进行更新;其中,当该其它RB上增加了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,所述更新为将该其它RB添加到第一RB组中,当该其它RB上减少了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,所述更新为从第一RB组中删除该其它RB;
判断所述索引关联表中是否存在与更新后的第一RB组相同的RB组;
若不存在与所述更新后的第一RB组相同的RB组,则将所述更新后的第一RB组对应的出接口列表更新为到所述更新后的第一RB组中的每一个RB的出接口;
若存在第二RB组与所述更新后的第一RB组相同,则将该组播转发表项中的第一索引更新为第二RB组对应的第二索引,将第二索引的引用计数加1,从所述索引关联表中删除所述更新后的第一RB组及其对应的第一索引和出接口列表。
5.根据权利要求4所述的方法,其特征在于,在判断该组播转发表项中第一索引的引用计数是否大于1之后,还包括:
若大于1,则在所述索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断所述索引关联表中是否存在与第三RB组相同的RB组;
若不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到所述索引关联表中,将该组播转发表项中的第一索引更新为第三索引,将第三索引的引用计数加1,将第一索引的引用计数减1;其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
若存在第四RB组与第三RB组相同,则将该组播转发表项中的第一索引更新为第四RB组对应的第四索引,将第四索引的引用计数加1,将第一索引的引用计数减1。
6.根据权利要求2所述的方法,其特征在于,还包括:
当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了所述M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
针对查找到的每一个组播转发表项,在该组播转发表项的转发信息中包含所述X个VLAN的标识和其它VLAN的标识时,将该组播转发表项拆分成N1+N2个组播转发表项,拆分得到的N1个组播转发表项的转发信息中包含所述其它VLAN中的至少一个VLAN的标识、索引为拆分前的组播转发表项中的第一索引,其余的N2个组播转发表项的转发信息中包含所述X个VLAN中的至少一个VLAN的标识,其中,N1和N2为不小于1的自然数;将第一索引的引用计数加N1-1;其中,所述引用计数为索引关联表中的索引被组播转发表项引用的计数;
在所述索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
判断所述索引关联表中是否存在与第三RB组相同的RB组;
若不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到所述索引关联表中,将所述N2个组播转发表项中的索引设置为第三索引,将第三索引的引用计数加N2;其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
若存在第四RB组与第三RB组相同,则将所述N2个组播转发表项中的索引设置为第四RB组对应的第四索引,将第四索引的引用计数加N2。
7.一种多链路透明互联TRILL网络中的报文转发装置,其特征在于,所述装置应用于路由桥RB中,所述RB具有组播转发表项和索引关联表,所述组播转发表项中包括转发信息与索引的对应关系,所述转发信息中包含树根RB的标识和至少两个虚拟局域网VLAN的标识,所述索引关联表中包括索引、RB组与出接口列表的对应关系,所述索引关联表中与所述组播转发表项的索引相对应的RB组中的RB满足以下条件:该RB是所述至少两个VLAN的指定虚拟局域网转发者AVF;所述装置包括:
接收模块,用于接收多目的报文;
查找模块,用于在所述接收模块接收到多目的报文之后,查找转发信息包含所述多目的报文中携带的报文信息的组播转发表项,其中,所述报文信息包括:树根RB的标识和所述多目的报文的内层的VLAN标识;还用于根据查找到的组播转发表项中的索引查找所述索引关联表,以获取所述多目的报文的出接口列表;
发送模块,用于根据所述查找模块获取到的所述多目的报文的出接口列表,转发所述多目的报文。
8.根据权利要求7所述的装置,其特征在于,
所述转发信息中还包含组播媒体访问控制MAC地址,则所述索引关联表中与该组播转发表项的索引相对应的RB组中的RB满足的条件具体为:该RB是所述至少两个VLAN中的该组播MAC地址的组播接收者;
所述报文信息还包括所述多目的报文的内层的目的组播MAC地址。
9.根据权利要求8所述的装置,其特征在于,还包括:
计算模块,用于当所述TRILL网络的拓扑变化时,根据变化后的拓扑重新计算用于指导多目的报文转发的组播分发树,针对所述索引关联表中的每一个RB组,基于重新计算出的组播分发树,计算到该RB组中的每一个RB的出接口;
索引关联表更新模块,用于在所述计算模块计算出到RB组中的每一个RB的出接口之后,将该RB组对应的出接口列表更新为计算出的出接口。
10.根据权利要求8所述的装置,其特征在于,还包括:判断模块、索引关联表更新模块、组播转发表项更新模块和引用计数更新模块,其中:
所述查找模块,还用于当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了所述M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
所述判断模块,用于针对所述查找模块查找到的每一个组播转发表项,在该组播转发表项的转发信息中仅包含所述X个VLAN的标识时,判断该组播转发表项中第一索引的引用计数是否大于1,其中,所述引用计数为索引关联表中的索引被组播转发表项引用的计数;还用于判断所述索引关联表中是否存在与经过所述索引关联表更新模块更新后的第一RB组相同的RB组;
所述索引关联表更新模块,用于若所述判断模块判断出第一索引的引用计数等于1,则在所述索引关联表中查找到与第一索引对应的第一RB组,对第一RB组进行更新,其中,当该其它RB上增加了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,所述更新为将该其它RB添加到第一RB组中,当该其它RB上减少了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,所述更新为从第一RB组中删除该其它RB;还用于若所述判断模块判断出不存在与所述更新后的第一RB组相同的RB组,则将所述更新后的第一RB组对应的出接口列表更新为到所述更新后的第一RB组中的每一个RB的出接口;还用于在所述组播转发表项更新模块将该组播转发表项中的第一索引更新为第二RB组对应的第二索引之后,从所述索引关联表中删除所述更新后的第一RB组及其对应的第一索引和出接口列表;
所述组播转发表项更新模块,用于若所述判断模块判断出存在第二RB组与所述更新后的第一RB组相同,则将该组播转发表项中的第一索引更新为第二RB组对应的第二索引;
所述引用计数更新模块,用于在所述组播转发表项更新模块将该组播转发表项中的第一索引更新为第二RB组对应的第二索引之后,将第二索引的引用计数加1。
11.根据权利要求10所述的装置,其特征在于,还包括:RB组创建模块,其中:
所述RB组创建模块,用于若所述判断模块判断出第一索引的引用计数大于1,则在所述索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组,其中,当该其它RB上增加了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
所述判断模块,还用于判断所述索引关联表中是否存在与所述RB组创建模块创建的第三RB组相同的RB组;
所述索引关联表更新模块,还用于若所述判断模块判断出不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到所述索引关联表中,其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
所述组播转发表项更新模块,还用于在所述索引关联表更新模块将第三RB组、第三索引与出接口列表的对应关系添加到所述索引关联表中之后,将该组播转发表项中的第一索引更新为第三索引;还用于若所述判断模块判断出存在第四RB组与第三RB组相同,则将该组播转发表项中的第一索引更新为第四RB组对应的第四索引;
所述引用计数更新模块,还用于在所述组播转发表项更新模块将该组播转发表项中的第一索引更新为第三索引之后,将第三索引的引用计数加1,将第一索引的引用计数减1;还用于在所述组播转发表项更新模块将该组播转发表项中的第一索引更新为第四RB组对应的第四索引之后,将第四索引的引用计数加1,将第一索引的引用计数减1。
12.根据权利要求8所述的装置,其特征在于,还包括:表项拆分模块、RB组创建模块、判断模块、索引关联表更新模块、组播转发表项更新模块和引用计数更新模块,其中:
所述查找模块,还用于当其它RB上的AVF或者组播接收者发生了变化时,查找转发信息满足以下条件的组播转发表项;其中,当该其它RB上增加或减少了M个VLAN的AVF时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识,当该其它RB上增加或减少了所述M个VLAN中的同一组播MAC地址的组播接收者时,该条件包括:转发信息中包含有所述M个VLAN中的X个VLAN的标识、以及该组播MAC地址,M为不小于1的自然数,X为不小于1且不大于M的自然数;
所述表项拆分模块,用于针对所述查找模块查找到的每一个组播转发表项,在该组播转发表项的转发信息中包含所述X个VLAN的标识和其它VLAN的标识时,将该组播转发表项拆分成N1+N2个组播转发表项,拆分得到的N1个组播转发表项的转发信息中包含所述其它VLAN中的至少一个VLAN的标识、索引为拆分前的组播转发表项中的第一索引,其余的N2个组播转发表项的转发信息中包含所述X个VLAN中的至少一个VLAN的标识,其中,N1和N2为不小于1的自然数;
所述RB组创建模块,用于在所述表项拆分模块将该组播转发表项拆分成N1+N2个组播转发表项之后,在所述索引关联表中查找到与第一索引对应的第一RB组,根据第一RB组创建第三RB组;其中,当该其它RB上增加了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组和该其它RB构成,当该其它RB上减少了所述M个VLAN的AVF或者所述M个VLAN中的同一组播MAC地址的组播接收者时,第三RB组由第一RB组中除该其它RB以外的RB构成;
所述判断模块,用于判断所述索引关联表中是否存在与所述RB组创建模块创建的第三RB组相同的RB组;
所述索引关联表更新模块,用于若所述判断模块判断出不存在与第三RB组相同的RB组,则将第三RB组、第三索引与出接口列表的对应关系添加到所述索引关联表中,其中,第三RB组对应的出接口列表中包括:到第三RB组中的每一个RB的出接口;
所述组播转发表项更新模块,用于在所述索引关联表更新模块将第三RB组、第三索引与出接口列表的对应关系添加到所述索引关联表中之后,将所述N2个组播转发表项中的索引设置为第三索引;还用于若所述判断模块判断出存在第四RB组与第三RB组相同,则将所述N2个组播转发表项中的索引设置为第四RB组对应的第四索引;
所述引用计数更新模块,用于在所述表项拆分模块将该组播转发表项拆分成N1+N2个组播转发表项之后,将第一索引的引用计数加N1-1;其中,所述引用计数为索引关联表中的索引被组播转发表项引用的计数;还用于在所述组播转发表项更新模块将所述N2个组播转发表项中的索引设置为第三索引之后,将第三索引的引用计数加N2;还用于在所述组播转发表项更新模块将所述N2个组播转发表项中的索引设置为第四RB组对应的第四索引之后,将第四索引的引用计数加N2。
CN201510738727.4A 2015-11-04 2015-11-04 Trill网络中的报文转发方法和装置 Active CN105591913B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510738727.4A CN105591913B (zh) 2015-11-04 2015-11-04 Trill网络中的报文转发方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510738727.4A CN105591913B (zh) 2015-11-04 2015-11-04 Trill网络中的报文转发方法和装置

Publications (2)

Publication Number Publication Date
CN105591913A CN105591913A (zh) 2016-05-18
CN105591913B true CN105591913B (zh) 2018-10-12

Family

ID=55931152

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510738727.4A Active CN105591913B (zh) 2015-11-04 2015-11-04 Trill网络中的报文转发方法和装置

Country Status (1)

Country Link
CN (1) CN105591913B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224915B (zh) * 2018-03-01 2021-04-16 上海汽车集团股份有限公司 一种车载混合网络中的局部网络工作方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011113393A2 (zh) * 2011-04-27 2011-09-22 华为技术有限公司 一种实现虚拟局域网标识转换的方法及装置
CN102694721A (zh) * 2011-03-21 2012-09-26 阿瓦雅公司 多链路透明互连路由桥之间掩蔽的以太网地址的使用
US20140146822A1 (en) * 2012-11-28 2014-05-29 Dell Products L.P. Systems and methods for link bandwidth conservation in a local area network connected to a trill network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102694721A (zh) * 2011-03-21 2012-09-26 阿瓦雅公司 多链路透明互连路由桥之间掩蔽的以太网地址的使用
WO2011113393A2 (zh) * 2011-04-27 2011-09-22 华为技术有限公司 一种实现虚拟局域网标识转换的方法及装置
US20140146822A1 (en) * 2012-11-28 2014-05-29 Dell Products L.P. Systems and methods for link bandwidth conservation in a local area network connected to a trill network

Also Published As

Publication number Publication date
CN105591913A (zh) 2016-05-18

Similar Documents

Publication Publication Date Title
CN103227843B (zh) 一种物理链路地址管理方法及装置
US8885643B2 (en) Method for multicast flow routing selection
CN104378296B (zh) 一种报文转发方法及设备
CN103581022B (zh) Mac地址的查找转发方法和装置
CN104272679A (zh) 通信系统、控制装置、通信方法以及程序
CN102150148A (zh) 层2拓扑中针对单播帧和多播帧的差别化服务
CN105227363B (zh) 一种基于sdn的全网络端口隔离方法及装置
CN101160832A (zh) 一种桥接转发方法和装置
CN100531138C (zh) 运营商边界节点、虚拟专用局域网服务通信方法及系统
CN104038425B (zh) 转发以太网报文的方法和装置
US8208418B1 (en) Methods, systems, and computer readable media for conserving multicast port list resources in an internet protocol (IP) packet forwarding device
CN102075438A (zh) 单播数据帧传输方法及装置
CN101494610B (zh) 处理报文的方法及交换机
CN106453091B (zh) 路由器转发平面的等价路由管理方法和装置
CN103200101B (zh) 基于交换芯片的openflow多表查询的方法及装置
CN103209132A (zh) 在透明多链路互联(trill)网络中实现组播的方法、装置及系统
CN101778035B (zh) 一种虚拟专用局域网通信的方法及装置
CN103152265B (zh) 一种spb网络中的报文转发方法和设备
CN108540386A (zh) 一种防止业务流中断方法及装置
CN101132285A (zh) 一种实现mac-in-mac的系统及方法
US20170187622A1 (en) Data forwarding method and apparatus, and access device
CN105591897B (zh) Trill网络的mac地址同步方法及装置
CN105591913B (zh) Trill网络中的报文转发方法和装置
CN103200119B (zh) 一种以太网虚拟化互联站点内负载分担方法和边缘设备
CN105049351A (zh) 基于sdn的多链接透明互联算法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Applicant after: Xinhua three Technology Co., Ltd.

Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Applicant before: Huasan Communication Technology Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant