专利名称::一种自动发现并建立mac路由信息表的方法及装置的制作方法
技术领域:
:本发明涉及基于电信级以太网的业务领域,具体涉及基于电信级以太网业务的二层MAC拓朴链路的自动发现和自动建立MAC路由信息表的方法及装置。
背景技术:
:电信级以太网已经在电信网络中占据着很重要的地位。但是在网络中,对网络拓朴链路的发现,MAC路由信息表的建立效率和准确性是需要解决的一大问题。传统局域网中以太网建立MAC路由信息表有两种方式第一种是通过洪泛方式建立起来的动态MAC路由信息表,第二种是人工配置的静态MAC路由信息表。第一种的洪泛方式如果用在电信级网络中,容易导致网络的广播风暴,不符合电信级广域网络的要求,只能用在局域网中。PBT的电信级网络采用了第二种方式,其关闭了MAC自学习功能,采用人工建立静态MAC路由信息表的方式。但是,在网络规模很大的情况下,人工建立庞大的MAC路由信息表效率很低而且容易出错。所以,需要一种类似三层路由协议的方法装置,来自动发现二层链路信息,并自动建立二层MAC路由信息表。
发明内容本发明的目的在于挺出一种自动发现并建立MAC路由信息表的方法及装置,其能够自动建立二层MAC路由信息表。为了实现上述目的,本发明采用如下技术方案本发明提供了一种自动发现并建立MAC路由信息表的方法,所述方法包括以下步骤A、本节点向周围的节点发送二层MAC链路的链路发现协议(LDP)组播报文,同时接收来自其他节点的链路发现协议(LDP)组播报文;B、本节点保存所述链路发现协议(LDP)组播报文中的链路信息;C、本节点转发纟矣收到的所述链路发现协议(LDP)组播报文;D、建立本节点的MAC路由信息表。所述的方法,其中,所述本节点包括网络中的每一个节点。所述的方法,其中,所述步骤A之前还包括以下步骤在电信级以太网节点上配置虚拟MAC地址和虚拟子网掩码。所述的方法,其中,所述步骤A包括以下步骤Al、启用本节点的所有链路发现协议(LDP)端口;A2、通过所有的链路发现协议(LDP)端口对外发送二层MAC链路的链路发现协议(LDP)组播报文;A3、利用链路发现协议(LDP)端口接收来自外部节点的链路发现协议(LDP)组纟番才艮文。所述的方法,其中,所述步骤B包括以下步骤Bl、根据接收到所述链路发现协议(LDP)组播报文,在自身的MAC路由信息表中添加所述链路发现协议(LDP)组播报文的链路信息;B2、将报文跳数加l,并执行步骤C。所述的方法,其中,所述步骤C中采用广播的形式进行报文转发操作。所述的方法,其中,所述步骤B中,每个节点根据接收到的链路发现协议(LDP)组播报文内容,计算获得网络中节点MAC路由的所述链路信台所述的方法,其中,所述链路发现协议(LDP)组才番报文至少包括报文目的地址、报文源地址、报文跳数、报文源地址掩码。本发明还提供了一种自动发现并建立MAC路由信息表的装置,所述装置包括使能开关单元,用于控制是否使能节点的链路发现协议(LDP)端口,并在使能链路发现协议(LDP)端口后分别向发送单元和接收单元发出控制信号;发送单元,用于根据所述使能开关单元发出的控制信号,通过所述链路发现协议(LDP)端口发送二雇MAC链路的链路发现协议(LDP)组播报文,或转发接收到的链路发现协议(LDP)组播报文;接收单元,用于根据所述使能开关单元发出的控制信号,启动接收功能,处理接收到的链路发现协议(LDP)组播报文;MAC路由计算单元,用于根据接收到的链路发现协议(LDP)组播报文内容,计算网络中节点MAC路由的链路信息;MAC路由存储单元,用于存储计算获得的链路信息,并添加到自身的MAC路由信息表中。发明效果本发明通过在网络中发送寻找二层链路发现协议报文LDP(LinkDiscoveryProtoc61,链接层发现协议),以及通过对该报文的发送、处理和转发,可以在网络的每个电信级以太网交换机得到整个网络的链路拓朴图,自动建立起二层MAC路由信息表,从而实现准确高效地在电信级以太网中自动建立二层MAC路由信息表。图1是本发明方法的流程图2是电信级以太网交换机设备的组网示意图3是本发明装置的结构示意图。具体实施例方式本发明的核心思想是基于OSI七层协议栈中的第二层虚拟MAC地址和虚拟子网掩码,采用类似于三层路由协议的方法,实现准确高效地在电信级以太网中自动建立二层MAC路由信息表。在本发明的方法中,每一个节点均需要向周围节点发送链路发现协议(LDP)组播报文,每个节点均需要接收来自外部节点的链路发现协议(LDP)组播报文,并保存链路信息,以及向邻居节点转发链路发现协议(LDP)组播报文。网络中的每个节点收到所有链路信息后,分别自动建立起自己的MAC路由信息表;当节点发送或转发数据报文时,根据自己的MAC路由信息表,选择最优路径对报文进行处理。下面结合附图和实施例对本发明的技术方案作进一步的详细说明。如图l所示,给出了网络中单个节点的工作流程,其过程如下所示步骤110,在电信级以太网节点上配置虚拟MAC地址和虚拟子网掩码;步骤120,启用链路发现协议LDP,开启节点的链路发现协议(LDP)端口步骤130,生成和组播自身的二层MAC链路的链路发现协议(LDP)组播报文,并通过本节点的所有的链路发现协i义(LDP)端口向周围的节点发送该LDP组播4艮文;步骤140,利用本节点的链路发现协议(LDP)端口接收来自其他节点的链路发现协议(LDP)组播报文;步骤150,保存所述链路发现协议(LDP)组播报文中的链路信息,此链路信息通过根据接收到的链路发现协议(LDP)组播报文内容计算获得,其包括链路发现协议(LDP)组播报文源地址信息等等。步骤160,转发接收到的所述链路发现协议(LDP)组播报文。这里的转发对象是除自身以外的其他网络节点,或者是除收到此LDP组播报文的所有其他节点,转发的方式采用广播的形式,并且依据本节点自身的MAC路由信息表,选^^最优路径对报文进行处理。步骤170,自动建立本节点的MAC路由信息表。如图2所示,以下以A节点作为链路发现协议(LDP)组播报文(以下简称"LDP组^^艮文")的初始发送节点为例,具体^i明本发明方法的实现方式。步骤一、A节点从启用LDP协议的所有端口发送LDP组播报文。在这里LDP组播报文至少包括以下字段报文目的地址、报文源地址、报文跳数、报文源地址掩码,如下表1所示。表1<table>tableseeoriginaldocumentpage8</column></row><table>步骤二、B节点从端口int1接收到A节点发送过来的LDP组播才艮文,在自己的MAC路由信息表里添加上A节点的信息,并将报文跳数加l,再向除接收到此报文的所有其他节点广播。步骤三、B的邻居节点C或F收到B转发的LDP组播报文后,也将报文跳数加1,'再向除收到此报文的所有其他节点广播。重复步骤三,直到所有节点都建立起自己的MAC路由信息表。如图2所示,节点B通过端口int2转发LDP组播报文给节点C,节点B通过端口int3转发LDP组播报文给节点F,而节点C再将LDP组播报文转发给节点D,节点F再将LDP组播报文转发给节点E,直到所有的节点都接收到此报文。步骤四、每个节点建立起自己的MAC路由信息表。以B节点为例,B节点的MAC路由信息表如下表2所示表2<table>tableseeoriginaldocumentpage8</column></row><table>步骤五、.以后,当每个节点收到二层数据报文时,就会根据报文的目的MAC地址,在自己的MAC路由信息表查找转发路径,查找的原则是根据Destinationaddress和.Subnetmask。当有多条路径时,将metric值最小的选择为最佳路径,并以最佳路径进行转发。如图2所示,例如A节点向D节点发送报文时,会先发给邻居节点B。当B节点收到此报文后,会根据目的虚拟MAC地址和虚拟子网掩码,在自己的查找MAC链路转发表里查找。查找到的最优路径的下一跳为C节点,出口为int2。于是将报文从接口int2转发到C节点。在根据MAC路由信息表查找转发路径时,可以利用度量值进行最佳路径的选择,其度量值可以是链路的跳数、带宽或链路延迟等等。当到达目的地有多条路径时,可以采用负载均衡的方式,将报文同时从多条路径转发。基于上述方法,本发明还提供了一种自动发现并建立MAC路由信息表的装置,如图3所示,本发明的装置包括使能开果单元310,用于控制是否使能节点的链路发现协议(LDP)端口360,并在使能链路发现协议(LDP)端口360后分别向发送单元320和接收单元330发出控制信号;发送单元320,用于根据所述使能开关单元310发出的控制信号,通过所述链路发现协议(LDP)端口360发送二层MAC4连路的链路发现协议(LDP)组播报文,或转发接收到的链路发现协议(LDP)组播报文;接收单元330,用于根据所述使能开关单元310发出的控制信号,启动接收功能,处理接收到的链路发现协议(LDP)组播报文;MAC路由计算单元340,用于根据接收到的链路发现协议(LDP)组播报文内容,计算网络中节点MAC路由的链路信息;MAC路由存储单元350,用于存储计算获得的链路信息,并添加到自身的MAC路由信息表中,从而形成二层MAC路由信息表。综上所述,本发明的方法和装置能够实现准确高效地在电信级以太网中自动建立二层MAC路由信息表,其可以应用于网络中的各个节点上,此节点可以是交换机设备等等。本发明的方法和装置可以通过软件对现有设备中的技术进行改进,更新方便、快捷,可操作性强。在不背离本发明精神和范围的情况下,熟悉本领域的技术人员显然可以对本发明做出各种相应的改变和扩充,但这些改变和扩充都应当属于本发明所附权利要求所保护的范围。权利要求1、一种自动发现并建立MAC路由信息表的方法,其特征在于,所述方法包括以下步骤:A、本节点向周围的节点发送二层MAC链路的链路发现协议组播报文,同时接收来自其他节点的链路发现协议组播报文;B、本节点保存所述链路发现协议组播报文中的链路信息;C、本节点转发接收到的所述链路发现协议组播报文;D、建立本节点的MAC路由信息表。2、根据权利要求1所述的方法,其特征在于,所述本节点包括网络中的每一个节点。3、根据权利要求1所述的方法,其特征在于,所述步骤A之前还包括以下步骤在电信级以太网节点上配置虚拟MAC地址和虚拟子网掩码。4、根据权利要求l.所述的方法,其特征在于,所述步骤A包括以下步骤Al、启用本节点的所有链路发现协议端口;A2、通过所有的链路发现协议端口对外发送二层MAC链路的链路发现协议組播报文;A3、利用链路发现协议端口接收来自外部节点的链路发现协议组播报文。5、才艮据权利要求l、3或4所述的方法,其特征在于,所述步骤B包括以下步骤Bl、根据接收到所述链路发现协议组播报文,在自身的MAC路由信息表中添加所述链路发现协议组播报文的链路信息;B2、将报文跳数加l,并执行步骤C。6、根据权利要求1所述的方法,其特征在于,所述步骤C中采用广播的形式进行报文转发操作。7、根据权利要求1所述的方法,其特征在于,所述步骤B中,每个节点根据接收到的链路发现协议(LDP)组播报文内容,计算获得网络中节点MAC路由的所述链路信息。8、根据权利要求1所述的方法,其特征在于,所述链路发现协议组播报文至少包括报文目的地址、报文源地址、报文跳数、报文源地址掩码。9、一种自动发现并建立MAC路由信息表的装置,其特征在于,所述装置包括使能开关单元,用于控制是否使能节点的链路发现协议端口,并在使能链路发现协议端口后分别向发送单元和接收单元发出控制信号;发送单元,用于根据所述使能开关单元发出的控制信号,通过所述链路发现协议端口发送二层MAC链路的链路发现协议组播报文,或转发接收到的链路发现协议组4番报文;接收单元,用于根据所述使能开关单元发出的控制信号,启动接收功能,处理接收到的链路发现协议组播报文;MAC路由计算单元,用于根据接收到的链路发现协议组播报文内容,计算网络中节点MAC路由的链路信息;MAC路由存储单元,用于存储计算获得的链路信息,并添加到自身的MAC^各由信息表中。全文摘要本发明公开了一种自动发现并建立MAC路由信息表的方法及装置,所述方法包括以下步骤A.本节点向周围的节点发送二层MAC链路的链路发现协议(LDP)组播报文,同时接收来自其他节点的链路发现协议(LDP)组播报文;B.本节点保存所述链路发现协议(LDP)组播报文中的链路信息;C.本节点转发接收到的所述链路发现协议(LDP)组播报文;D.建立本节点的MAC路由信息表。本发明通过在网络中发送寻找二层链路发现协议报文LDP,以及通过对该报文的发送、处理和转发,可以在网络的每个电信级以太网交换机得到整个网络的链路拓扑图,从而实现准确高效地在电信级以太网中自动建立二层MAC路由信息表。文档编号H04L12/56GK101383772SQ20081021656公开日2009年3月11日申请日期2008年9月26日优先权日2008年9月26日发明者王志雄申请人:中兴通讯股份有限公司