建立转发过滤表的方法与装置的制作方法

文档序号:7971985阅读:153来源:国知局
专利名称:建立转发过滤表的方法与装置的制作方法
技术领域
本发明涉及信息技术领域的以太网络,尤其涉及一种建立转发过滤表的方 法与装置。
背景技术
以太网是一种能够使计算机相互传递信息的网络,最近几年以太网得到了迅猛的发展,以太网技术也从局域网(LAN, Local Area Network)发展到城 域网(MAN, Metropolitan Area Network )。城域以太网根据连接方式将业务大致分为点到点(PtP, Point to Point)、 点到多点(PtMP, Point to Multipoint)和多点到多点(MPtMP, Multipoint to Multipoint)三种。其中,PtMP业务也被称为中心-辐条(hub-spoke)业务, MPtMP业务也被称为LAN业务。由于以太网工作在开放式系统互联参考才莫型(OSI, Open System Interconnect Reference Model)的第二层,在第二层需要将数据组帧,然后通 过网桥将数据帧转发出去,因此城域以太网对支持点到点、点到多点和多点到 多点业务的网桥就有所要求,例如,支持PtP业务的网桥,业务转发的用户域 内只有两个端口。支持PtMP业务的网桥必须具有以下特征 一个用户域内只 有一个hub端口 ,可以有多个spoke端口 ,数据帧在hub端口和spoke端口之 间可以相互转发,但spoke端口之间的数据帧不能相互转发。支持MPtMP业 务的网桥要符合802.1D标准,并具备以下特性 一个用户域内具备至少两个 端口,数据帧在任意端口之间可以互相转发。其中,第二层就是数据链路层, 通常记为L2 ( Layer2 )。通常用以太网交换机来转发数据帧信息,实际上以太网交换机也是一种网 桥设备,其进行转发的依据就是数据帧中的目的媒介访问控制地址,每帧信息 的报头中都包含有目的媒介访问控制(MAC, Media Access Control)地址和
源MAC地址,根据源MAC地址就可以建立相应的转发过滤表,由转发过滤 表中的信息就可知道相应的MAC地址和相应的端口号,因此如何建立相应的 转发过滤表就成为业务实现的关键。现有技术中的一种建立转发过滤表方式是这样实现的虚拟局域网 (VLAN, Virtual Local Area Network)将具有相同特性的MAC地址捆绑在一 起,每个MAC地址都有虚拟局域网标识(VLAN ID, Virtual Local Area Network Identification),再为每个入口的VLAN ID信息配置一个转发过滤表,这样 VLAN ID就类似于一个虚拟的隧道标识,承栽VLAN域内所有数据帧的转发。由于上述现有技术是配置之前需要了解用户网络的VLANID规划,然后 再静态配置VLAN ID和端口的对应关系,再将对应关系写入转发过滤表,这 对于一些需要实施保密业务的用户要提供VLAN ID规划时不可能的。同时用 户网络的VLANID规划发生变化则可能导致业务中断,从而增加了网络的维 护成本。因此,上述现有技术需要根据用户网络的规划静态配置VLAN ID和 端口的对应关系,并且网络的维护成本也较高。发明内容本发明提供一种建立转发过滤表的方法与装置,该方法与装置能够根据用 户网络动态建立标签信息和端口的对应关系。为解决上述技术问题,本发明的一个实施例提供了一种建立转发过滤表的 方法,该方法包4舌接收数据帧,再从收到的数据帧中提取标签信息;判断数据帧入口属性,若是spoke属性,判断转发过滤表中是否包含所述 数据帧的标签信息,如果包含所述标签信息,刷新转发过滤表的老化信息标记, 然后对转发过滤表中的表项信息进行老化;否则在没有包含所述标签信息时对 该凄t据帧的标签信息和spoke属性端口号进行学习,将所述标签信息和spoke 属性端口的对应关系写入转发过滤表。根据上述方法,本发明也提供了一种建立转发过滤表的装置,所述装置包
括数据处理单元,用于从接收的数据帧中提取标签信息,以及判断数据帧入口属性,在数据帧入口为spoke属性时,判断转发过滤表中是否包含所述数据 帧的标签信息,并在没有包含所述标签信息时将该标签信息和spoke属性端口 号上报给控制单元,以及在包含所述标签信息时对存储器中的老化信息标记进 行刷新;存储器,用于存储转发过滤表,以及向控制单元提供老化信息标记的刷新 结果;控制单元,用于对数据处理单元上报的标签信息和spoke属性端口号进行 学习,以及将所述标签信息和spoke属性端口的对应关系写入转发过滤表,以 及根据存储器提供的老化信息标记的刷新结果对转发过滤表中的表项信息进 行老化。以上技术方案可以看出,本发明的一个实施例是才艮据端口属性、转发过滤 表以及标签信息对数据帧进行处理,在数据帧入口为spoke属性时并且转发过 滤表中没有该数据帧的标签信息时将所述标签信息和spoke属性的端口号上报 给控制单元学习,控制单元建立该标签信息和端口的对应关系,再将所述对应 关系写入转发过滤表,而现有技术在配置标签信息和端口的对应关系需要知道 用户网络的规划,与现有技术相比较,本发明在建立标签信息和端口的对应关 系不需要关心用户网络的规划。


图1是本发明方法实施方式的流程图;图2是本发明方法实施方式转发过滤表项老化的流程图;图3是本发明的一种hub-spoke业务组网图;图4是MPLS数据帧格式;图5是本发明装置实施方式的示意图。
具体实施方式
本发明实施例提供了一种建立转发过滤表的方法与装置,该方法与装置是通过spoke属性端口对用户数据帧携带的标签信息自学习的方式动态建立标签 信息和端口的对应关系,再将标签信息和端口的对应关系写入转发过滤表,然后根据转发过滤表查找标签信息对应的端口号,再将所述数据帧转发至标签信 息对应的端口 。本发明实施例是基于以下情况实现的在一个用户域内只能有一个hub 属性端口,可以有多个spoke属性端口,数据帧在hub属性端口和spoke属性 端口之间可以相互转发,spoke属性端口之间的数据帧不能相互转发。为使本发明实施例更加清楚明了 ,下面结合实施方式和附图对本发明实施 例的#支术方案进行详细描述。首先,对本发明方法实施例的主体流程进行描述,该流程包括i、 接收数据帧,再从收到的数据帧中提取标签信息。ii、 判断数据帧入口属性,如果是spoke属性,执行步骤iii,否则根据提 取的标签信息将数据帧发送给spoke属性端口 ,并结束流程。iii、 判断转发过滤表中是否包含所述数据帧的标签信息,如果包含所述标 签信息,刷新转发过滤表的老化信息标记,然后对转发过滤表中的表项信息进 行老化;否则对该数据帧的标签信息和spoke属性端口号进行学习,将所述标 签信息和spoke属性端口的对应关系写入转发过滤表。参照图1,图1是本发明方法实施方式的流程图,该流程具体包括以下步骤步骤101、获取已配置的用户域的端口以及端口的hub/spoke属性,假设 配置的用户域包括3个端口,分别为端口 1、端口 2和端口 3,端口 1为hub 属性,端口 2和端口 3为spoke属性。步骤102、接收数据帧,再从收到的数据帧中提取VLAN ID信息,所述 VLAN ID信息只占12比特。步骤103、 4艮据已配置的用户域端口以及端口属性判断数据帧入口的端口
属性是否为hub属性,如果是,执行步骤104,否则说明数据帧入口为spoke 属性,再执行步骤108。步骤104、根据提取的VLANID信息查找转发过滤表。步骤105、判断转发过滤表中是否包含该数据帧的VLAN ID信息,如果 是,执行步骤106,否则执行步骤107。步骤106、根据转发过滤表将数据帧转发到VLAN ID信息对应的spoke 属性端口 。步骤107、将数据帧广播到该用户域中的所有spoke属性端口,结束流程。步骤108、在数据帧入口为spoke属性时根据提取的VLAN ID信息查找 转发过滤表。步骤109、判断转发过滤表中是否包含该VLAN ID信息,如果是,执行 步骤lll,否则4丸行步骤110。步骤110、将VLAN ID信息和spoke属性端口号上报给控制单元学习,控 制单元将所述VLAN ID信息和端口的对应关系写入转发过滤表中。依此类推, 所有spoke属性端口的VLAN ID信息和其端口号的对应关系都会被学习到转 发过滤表中,其中,spoke属性端口的数据帧只能转发到hub属性端口 ,而hub 属性端口根据spoke属性端口的VLAN ID自学习建立的转发过滤表转发数据 帧。步骤lll、刷新转发过滤表中的老化信息标记。步骤112、如果转发过滤表中包含所述数据帧的VLAN ID信息,说明控 制单元已经学习过该VLAN ID信息,将spoke属性端口收到的lt据帧直接转 发给hub属性端口 ,结束流程。其中,转发过滤表中包括VLANID信息、端口信息以及老化信息标记。 另外,判断数据帧入口的端口属性和提取数据帧的VLAN ID信息之间没有必 然的先后顺序,可以是先判断数据帧入口的端口属性,再提取该数据帧的 VLAN ID信息,也可以是先提取数据帧的VLANID信息,再判断数据帧入口
的端口属性。下面参照图2,图2是老化单元配合步骤111的刷新老化信息标记,完成转发过滤表项老化的流程图,具体包括以下步骤步骤201、判断转发过滤表的老化时间是否超过预设的阈值,如果是,执 行步骤202,否则结束流程。步骤202、轮询转发过滤表中的每条VLAN ID信息和端口的对应关系项。步骤203、判断所有对应关系项的老化信息标记是否已经被清除,如果是, 执4亍步骤204,否则4丸行步骤205 。步骤204、从转发过滤表中删除该VLAN ID信息和端口的对应关系项, 结束流程。步骤205、清除该对应关系项的老化信息标记。其中,本实施方式中的转发过滤表随spoke属性端口的VLAN自学习而改 变,hub属性端口会根据改变后的转发过滤表查找VLAN ID信息所对应的端 cr 。下面结合图3对上述实施方式进行举例说明,图中包括端口 1、端口2和 端口3,端口l是hub属性,端口 2和端口 3是spoke属性,另外图中还包括 局域网1、局域网2和局域网3,局域网1和端口 1相连,局域网2和端口 2 相连,局i或网3和端口3相连。局域网2中携带虛拟局域网标识VLAN1的教:据帧经过端口 2时,端口 2 提取该数据帧的VLAN 1信息,再根据VLAN 1信息查找转发过滤表,从表中 找到VLAN1信息对应的端口是端口 2,端口 2将数据帧转发给端口 1,这样 建立站点C和站点A之间的数据通信,同样按照该转发方式建立站点D和站 点B之间的数据通信。上述实施方式中是根据VLAN ID自学习转发机制建立转发过滤表,整个系 统支持虚拟局域网,如果系统不支持虚拟局域网或者VLAN信息被服务层的标 签信息所承载时可以扩展使用标签的自学习转发机制来建立转发过滤表,而标
签自学习转发机制与VLAN ID自学习转发机制的唯一区别就是从数据帧中提 取的信息,前者是标签信息,后者是VLANID信息,实际上VLAN信息也可作 为一种标签信息。其中,标签自学习转发机制的标签信息可以使用多协议标签交换(MPLS, Multiprotocol Label Switching )或类似MPLS标签来标识一类具有相同特征的数 据帧。由图4可知,每个MPLS数据帧包括目的MAC地址、源MAC地址、以太 网类型、MPLS、数据帧净荷和帧校验。由本发明方法的实施方式可知,两种自学习转发机制都是建立在点到多点 业务的基础上,PtMP业务也被称为中心-辐条(hub-spoke)业务,通常用于连 接企业的中心节点和分支结构,中心节点的总机构可以对分支机构进行很好的 管理和监控。虽然中心节点的业务可以到达任何一个分支机构,但是分支机构 之间的业务不能互通,只能通过中心节点来转发,其中,中心节点相当于hub 属性的端口,分支结构相当于spoke属性的端口。另外,VLAN ID自学习转发机制中的数据帧必须支持虚拟局域网,而标 签自学习转发机制中的数据帧可以支持虚拟局域网,也可以不支持虚拟局域网。本发明实施例也提供了一种建立转发过滤表的装置,参照图5,图5是本 发明装置实施方式的示意图,该装置包括数据处理单元501、控制单元504和 存储器509。其中,数据处理单元501包括分析单元502:用于从接收的数据帧中提取标签信息,以及由端口管理单 元506提供的端口属性信息判断数据帧入口是hub属性还是spoke属性,再将 端口属性的判断结果发送给转发单元503。转发单元503:用于查找放置在存储器509中的转发过滤表是否包含该数 据帧的标签信息,再才艮据查找结果以及端口属性的判断结果对数据帧进行转发 处理,在转发过滤表中包含该数据帧的标签信息和端口属性的判断结杲是hub 属性时将数据帧转发到标签信息对应的spoke属性端口 ,在转发过滤表中没有
包含该数据帧的标签信息和端口属性的判断结杲为hub属性时将数据帧对整个用户域的所有spoke属性端口进行广播;在转发过滤表中没有包含该数据帧 的标签信息和端口属性的判断结果为spoke属性时将标签信息和spoke属性端 口号上报给学习单元508进行学习,以及在转发过滤表中包含所述标签信息和 端口属性的判断结果为spoke属性时刷新存储器509中的老化信息标记,再将 接收到的数据帧转发给hub属性端口 。其中,控制单元504包括命令接收单元505:用于获取已配置的用户域端口以及端口属性信息,再 将所述配置信息发送给端口管理单元506。端口管理单元506:用于接收命令接收单元505发送的配置信息,以及向 分析单元502提供端口属性的信息。老化单元507:用于从存储器509中获取老化信息标记刷新结果,以及判 断转发过滤表的老化时间是否超过预设的阈值,并在老化时间超过预设的阈值 时轮询转发过滤表中的每条标签信息和spoke属性端口的对应关系项,再判断 所述对应关系项的老化信息标记是否已被清除,并在老化信息标记被清除时从 转发过滤表中删除该标签信息和端口的对应关系项,以及在老化信息标记未清 除时清除该对应关系项的老化信息标记。学习单元508:用于对转发单元503上报的标签信息和spoke属性端口号 进行学习,以及将所述标签信息和spoke属性端口的对应关系写入存储器509 的转发过滤表中。其中,存储器509用于存储转发过滤表以及广播域的表项等,以及向老化 单元507提供老化信息标记的刷新结果。其中,转发过滤表中包括标签信息、 端口信息以及老化信息标记。数据处理单元501从接收的数据帧中提取标签信息,以及根据控制单元 504提供的端口属性信息判断数据帧入口是hub属性还是spoke属性,数据处 理单元501查找存储器509中的转发过滤表是否包含该数据帧的标签信息,再 根据查找结果以及数据帧入口的hub属性或spoke属性对数据帧进行转发处 理,其中,标签信息可以是VLAN ID信息、MPLS标签或类似MPLS标签等。数据处理单元501在转发过滤表中包含该数据帧的标签信息以及数据帧 入口是hub属性时将数据帧转发到标签信息对应的spoke属性端口,以及在转 发过滤表没有包含该数据帧的标签信息和数据帧入口为hub属性时将数据帧 对整个用户域中的所有spoke属性端口进行广播,其中,如果本用户域的hub 属性端口接收到的是第一条数据帧,此时转发过滤表中没有MAC表项,hub 属性的端口也会将数据帧对整个用户域中的所有spoke属性的端口进行广播。数据处理单元501在转发过滤表中包含该数据帧的标签信息以及数据帧 入口为spoke属性时对转发过滤表中的老化信息标记进行刷新,再将收到的数 据帧转发给hub属性端口 ,以及在转发过滤表中没有包含该数据帧的标签信息 和数据帧入口为spoke属性时将标签信息和spoke属性端口号上报给控制单元 504进行学习。控制单元504对数据处理单元501上报的标签信息和spoke属性端口号进 行学习,并将所述标签信息和spoke属性端口的对应关系写入转发过滤表中, 后续数据帧入口为hub属性的端口也要根据spoke属性端口的标签自学习建立 的转发过滤表转发数据帧。另外,在数据帧入口为spoke属性时,控制单元504从存储器509中获取老化信息标记的刷新结果,再判断转发过滤表的老化时间 是否超过预设的阈值,并在老化时间超过预设的阈值时轮询转发过滤表中的每 条标签信息和spoke属性端口的对应关系项,再判断所述对应关系项的老化信 息标记是否已被清除,并在老化信息标记被清除时从转发过滤表中删除该标签 信息和端口的对应关系项,以及在老化信息标记未清除时清除该对应关系项的 老化信息标记,这样使本发明实施例不需要较大的存储空间。由上述可知,本发明方法与装置的实施方式是由spoke属性端口对数据帧 中携带的标签信息进行学习,再动态建立标签信息和端口的对应关系,这样使 本发明实施例可以根据用户网络规划发生的变化建立标签信息和端口的对应 关系,从而不会导致业务中断,进而降低了网络的维护成本。另外,本发明方法与装置的实施方式是将一些具有相同特性的MAC地址
捆绑在一起,所以标签信息就类似于虚拟的隧道标识,承栽用户域内所有数据 帧的转发,并且标签信息只有12比特,这样使本发明实施例可通过线性算法 查找标签信息,从而提高了查找速度,进而提高了数据帧的转发效率。最后,本发明方法与装置的实施方式是采用标签自学习机制建立转发过滤表,并且在数据帧入口为spoke属性时,每次查找标签信息都要判断所有的标 签信息的老化时间是否超过阈值,并在老化时间超过阈值的情况将该标签信息 和spoke属性端口的对应关系从转发过滤表中删除,这样使本发明实施例总共 只需4096个MAC表项,从而缩小了表项占用的存储空间。以上对本发明实施例所提供的一种建立转发过滤表的方法与装置进行了上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本 领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会 有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1、一种建立转发过滤表的方法,其特征在于,该方法包括接收数据帧,再从收到的数据帧中提取标签信息;判断数据帧入口属性,若是spoke属性,判断转发过滤表中是否包含所述数据帧的标签信息,如果包含所述标签信息,刷新转发过滤表的老化信息标记,然后对转发过滤表中的表项信息进行老化;否则在没有包含所述标签信息时对该数据帧的标签信息和spoke属性端口号进行学习,将所述标签信息和spoke属性端口的对应关系写入转发过滤表。
2、 如权利要求1所述的建立转发过滤表的方法,其特征在于,从数据帧 中提取的标签信息是虚拟局域网标识或多协议标签交换信息。
3、 如权利要求1或2所述的建立转发过滤表的方法,其特征在于若判断所述数据帧入口是hub属性,则根据提取的标签信息将数据帧发送 给spoke属性端口 ,并结束流禾呈。
4、 如权利要求3所述的建立转发过滤表的方法,其特征在于,若判断所 述数据帧入口是hub属性时,根据提取的标签信息将数据帧发送给spoke属性 端口具体包括根据提取的标签信息判断转发过滤表是否包含该标签信息,如果是,根据 转发过滤表将所述数据帧转发至标签信息对应的spoke属性端口,否则将数据 帧对用户域的所有spoke属性端口进行广播。
5、 如权利要求1或2所述的建立转发过滤表的方法,其特征在于,对转 发过滤表中的表项信息进行老化包括判断转发过滤表的老化时间是否超过阈值,如果是,轮询转发过滤表中的 每条标签信息和端口的对应关系项;判断每条对应关系项的老化信息标记是否已经被清除,如果是,从转发过 滤表中删除该标签信息和端口的对应关系项,否则清除所述对应关系项的老化 信息标记。
6、 一种建立转发过滤表的装置,其特征在于,所述装置包括数据处理单元,用于从接收的数据帧中提取标签信息,以及判断数据帧入 口属性,在数据帧入口为spoke属性时,判断转发过滤表中是否包含所述数据 帧的标签信息,并在没有包含所述标签信息时将该标签信息和spoke属性端口 号上报给控制单元,以及在包含所述标签信息时对存储器中的老化信息标记进 4亍刷新;存储器,用于存储转发过滤表,以及向控制单元提供老化信息标记的刷新 结果;控制单元,用于对数据处理单元上报的标签信息和spoke属性端口号进行 学习,以及将所述标签信息和spoke属性端口的对应关系写入转发过滤表,以 及根据存储器提供的老化信息标记的刷新结果对转发过滤表中的表项信息进 行老化。
7、 如权利要求6所述的建立转发过滤表的装置,其特征在于,数据处理 单元还进一步用于,在所述数据帧入口是hub属性时,根据提取的标签信息判 断转发过滤表是否包含该标签信息,并在包含所述标签信息时将所述数据帧转 发至标签信息对应的spoke属性端口 ,以及在没有包含所述标签信息时将数据 帧对用户域的所有spoke属性端口进行广播。
8、 如权利要求6或7所述的建立转发过滤表的装置,其特征在于,数据 处理单元包括分析单元,用于从接收的数据帧中提取标签信息,以及从控制单元获取配 置的端口属性信息,再根据所述端口属性信息判断数据帧入口的端口属性,并 将端口属性的判断结果和提取的标签信息发送给转发单元;转发单元,用于判断转发过滤表是否包含分析单元提供的标签信息,以及 根据分析单元提供的端口属性判断结果对数据帧进行处理,在端口属性判断结 果为hub属性时,根据判断结果将数据帧转发至标签信息对应的spoke属性端 口 ,以及将数据帧对用户域所有的spoke属性端口进行广播;在端口属性判断 结果为spoke属性时根据判断结果对转发过滤表中的老化信息标记进行刷新, 将数据帧转发给hub属性端口 ,以及将标签信息和spoke属性端口号上报给控 制单元。
9、如权利要求6所述的建立转发过滤表的装置,其特征在于,控制单元 包括命令接收单元,用于获取已配置的用户域端口以及端口属性信息,再将所 述配置信息发送给端口管理单元;端口管理单元,用于接收命令接收单元的配置信息,以及向数据处理单元 提供端口属性信息;学习单元,用于对数据处理单元上报的标签信息和spoke端口号进行学习, 将所述对应关系写入转发过滤表;老化单元,用于从存储器中获取老化信息标记的刷新结果,以及判断转发 过滤表的老化时间是否超过预设的阈值,以及在老化时间超过阈值时轮询转发 过滤表中的每条标签信息和端口的对应关系项,判断每条对应关系项的老化信 息标记是否已经被清除,在老化信息被清除时,从转发过滤表中删除该虚拟局 域网标识和端口的对应关系项,以及在没有清除老化信息标记时,清除所述对 应关系项的老化信息标记。
全文摘要
本发明公开了一种建立转发过滤表的方法与装置,所述方法包括接收数据帧,再从收到的数据帧中提取标签信息;判断数据帧入口属性,若是spoke属性,判断转发过滤表中是否包含所述数据帧的标签信息,如果包含所述标签信息,刷新转发过滤表的老化信息标记,然后对转发过滤表中的表项信息进行老化;否则在没有包含所述标签信息时对该数据帧的标签信息和spoke属性端口号进行学习,将所述标签信息和spoke属性端口的对应关系写入转发过滤表。相应地,本发明也提供了一种建立转发过滤表的装置。本发明在建立标签信息和端口的对应关系时不需关心用户网络的规划,并且在用户网络规划发生变化时也不会导致业务中断。
文档编号H04L12/56GK101166150SQ20061015054
公开日2008年4月23日 申请日期2006年10月16日 优先权日2006年10月16日
发明者何志群, 徐前锋 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1