CN108600109B - 一种报文转发方法和装置 - Google Patents
一种报文转发方法和装置 Download PDFInfo
- Publication number
- CN108600109B CN108600109B CN201810224008.4A CN201810224008A CN108600109B CN 108600109 B CN108600109 B CN 108600109B CN 201810224008 A CN201810224008 A CN 201810224008A CN 108600109 B CN108600109 B CN 108600109B
- Authority
- CN
- China
- Prior art keywords
- edge device
- forwarding table
- message
- table entry
- route
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000003068 static effect Effects 0.000 claims abstract description 115
- 230000032683 aging Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000004069 differentiation Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 2
- 102100033213 Teneurin-1 Human genes 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- COCAUCFPFHUGAA-MGNBDDOMSA-N n-[3-[(1s,7s)-5-amino-4-thia-6-azabicyclo[5.1.0]oct-5-en-7-yl]-4-fluorophenyl]-5-chloropyridine-2-carboxamide Chemical compound C=1C=C(F)C([C@@]23N=C(SCC[C@@H]2C3)N)=CC=1NC(=O)C1=CC=C(Cl)C=N1 COCAUCFPFHUGAA-MGNBDDOMSA-N 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 108010063973 teneurin-1 Proteins 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种报文转发方法和装置,该方法包括:接收所述第二边缘设备发送的第一路由通告消息,所述第一路由通告消息携带所述主机的地址信息和ESI;若所述ESI与第一边缘设备为所述主机配置的ESI相同,则根据所述地址信息生成第一静态转发表项;接收第二边缘设备发送的第一路由撤销消息,所述第一路由撤销消息携带所述主机的地址信息,并确定所述地址信息对应的第一静态转发表项;若预设时间窗内接收到与第一静态转发表项匹配的报文,且第一路由撤销消息携带的ESI与第一边缘设备为所述主机配置的ESI相同,将所述第一静态转发表项调整为第一动态转发表项,根据所述第一动态转发表项转发报文。通过本申请的技术方案,提高了可靠性,提高了安全性。
Description
技术领域
本申请涉及通信技术领域,尤其是涉及一种报文转发方法和装置。
背景技术
EVPN(Ethernet Virtual Private Network,以太网虚拟专用网络)是一种二层VPN(Virtual Private Network,虚拟专用网络)技术,控制平面采用MP-BGP(MultiProtocol-Border Gateway Protocol,多协议边界网关协议)通告路由信息,数据平面采用VXLAN(Virtual eXtensible Local Area Network,可扩展虚拟局域网络)封装方式转发报文。其中,VXLAN是一种基于IP网络、采用“MAC(Media Access Control,媒体访问控制)inUDP(User Datagram Protocol,用户数据报协议)”封装形式的二层VPN技术,VXLAN可以基于已有的服务提供商或者企业IP网络,为分散的站点提供二层互联,并能够为不同的租户提供业务的隔离。
在EVPN网络中,为了提高可靠性,可以采用多归属接入组网,即主机通过交换机接入多个VTEP(VXLAN Tunnel End Point,VXLAN隧道端点)设备,假设接入VTEP1和VTEP2。在此组网下,当主机上线后,发送免费ARP(Address Resolution Protocol,地址解析协议)消息,假设交换机将免费ARP消息转发给VTEP1,则VTEP1生成转发表项1,出接口指向主机。此外,VTEP1通过路由通告消息将地址信息同步给VTEP2,VTEP2生成转发表项2,出接口指向主机。
但是,当VTEP1生成的转发表项1被老化时,会向VTEP2发送路由撤销消息,使得VTEP2撤销转发表项2。然后,若VTEP2接收到目的为该主机的数据报文,由于没有该数据报文匹配的转发表项,从而无法正确传输该数据报文。
发明内容
本申请提供一种报文转发方法,第一边缘设备和第二边缘设备用于为主机提供多归属接入服务,所述方法应用于第一边缘设备,所述方法包括:
接收所述第二边缘设备发送的第一路由通告消息,所述第一路由通告消息携带所述主机的地址信息和以太网段标识ESI;若所述ESI与第一边缘设备为所述主机配置的ESI相同,则根据所述地址信息生成第一静态转发表项;
接收所述第二边缘设备发送的第一路由撤销消息,所述第一路由撤销消息携带所述主机的地址信息,并确定所述地址信息对应的第一静态转发表项;
若预设时间窗内接收到与所述第一静态转发表项匹配的报文,且第一路由撤销消息携带的ESI与第一边缘设备为所述主机配置的ESI相同,将所述第一静态转发表项调整为第一动态转发表项,根据所述第一动态转发表项转发报文。
本申请提供一种报文转发装置,第一边缘设备和第二边缘设备用于为主机提供多归属接入服务,所述装置应用于第一边缘设备,所述装置包括:
接收模块,用于接收所述第二边缘设备发送的第一路由通告消息;其中,所述第一路由通告消息携带所述主机的地址信息和以太网段标识ESI;
生成模块,用于当所述ESI与所述第一边缘设备为所述主机配置的ESI相同时,则根据所述地址信息生成第一静态转发表项;
所述接收模块,还用于接收所述第二边缘设备发送的第一路由撤销消息;其中,所述第一路由撤销消息携带所述主机的地址信息;
确定模块,用于确定所述地址信息对应的第一静态转发表项;
处理模块,用于当在预设时间窗内接收到与所述第一静态转发表项匹配的报文,且所述第一路由撤销消息携带的ESI与所述第一边缘设备为所述主机配置的ESI相同时,则将所述第一静态转发表项调整为第一动态转发表项;
发送模块,用于根据所述第一动态转发表项转发报文。
由以上技术方案可见,本申请实施例中,第一边缘设备在接收到第二边缘设备发送的路由通告消息后,可以根据主机的地址信息生成静态转发表项;第一边缘设备在接收到第二边缘设备发送的路由撤销消息后,若预设时间窗内接收到与该静态转发表项匹配的报文,不是直接删除该静态转发表项,而是将静态转发表项调整为动态转发表项,并根据动态转发表项转发报文,也就是说,第一边缘设备接收到目的为该主机的报文后,本地存在与该报文匹配的动态转发表项,并根据该动态转发表项正确传输该报文,提高了可靠性和安全性。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的应用场景示意图;
图2是本申请一种实施方式中的报文转发方法的流程图;
图3是本申请一种实施方式中的报文转发装置的结构图;
图4是本申请一种实施方式中的边缘设备的硬件结构图。
具体实施方式
在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例提出一种报文转发方法,该方法可以应用于采用多归属接入组网的EVPN网络。在EVPN网络中,为了提高可靠性,可以通过至少两个边缘设备(如VTEP设备等)为主机(如VM(Virtual Machine,虚拟机)、物理服务器等)提供多归属接入服务。参见图1所示,为本申请实施例的应用场景示意图,以通过两个边缘设备为主机提供多归属接入服务为例,在实际应用中,还可以通过更多的边缘设备为主机提供多归属接入服务,对此不做限制。
参见图1所示,边缘设备131和边缘设备132用于为主机111提供多归属接入服务,边缘设备131与主机111之间的链路、边缘设备132与主机111之间的链路,可以称为ES(Ethernet Segment,以太网段),且可以通过ESI(Ethernet Segment Identifier,以太网段标识)来标识ES。边缘设备131与主机111之间的链路、边缘设备132与主机111之间的链路对应相同的ESI,假设边缘设备131与主机111之间链路的ESI为1,边缘设备132与主机111之间链路的ESI为1。
参见图1所示,可以在边缘设备131上配置VXLAN业务和AC(Attachment Circuit,接入电路)1311,并在边缘设备132上配置VXLAN业务和AC1321。
其中,在边缘设备131上配置的VXLAN业务可以包括:VSI(Virtual SwitchInstance,虚拟交换实例)是vpnb,VXLAN标识是vxlan 100。此外,在边缘设备132上配置的VXLAN业务与边缘设备131上的VXLAN业务相同。
其中,在边缘设备131上配置的AC1311可以包括:物理端口是ten1/0/1,服务实例是10,VSI是vpnb,这个AC1311的意义在于:从物理端口ten1/0/1进入的数据报文,如果携带的VLAN是tag 10,则会进入vpnb进行转发,又由于vpnb对应的VXLAN标识是vxlan 100,因此,可以完成VLAN tag 10到vxlan 100的映射。此外,在边缘设备132上配置的AC1321可以与AC1311相同。
其中,AC1311还包括ESI 1,表示AC1311对应的链路是ESI为1的链路,即边缘设备131与主机111之间的链路。此外,AC1321还包括ESI 1,表示AC1321对应的链路是ESI为1的链路,即边缘设备132与主机111之间的链路。
参见图1所示,在边缘设备133与边缘设备131之间还建立有VXLAN隧道A,且在边缘设备133与边缘设备132之间还建立有VXLAN隧道B。其中,对于VXLAN隧道A和VXLAN隧道B的建立方式,本实施例中不再赘述。
在上述应用场景下,本申请实施例中的报文转发方法可以包括以下步骤:
步骤311,当主机111上线后,可以发送免费ARP消息,该免费ARP消息可以携带主机111的地址信息,如主机111的IP地址111和MAC地址111。
步骤312,交换机121在接收到该免费ARP消息后,将该免费ARP消息发送给边缘设备131或者边缘设备132,后续以发送给边缘设备131为例。
其中,交换机121可以从边缘设备131和边缘设备132中选择一个边缘设备,如随机选择或采用hash算法选择,对此选择方式不做限制。假设选择边缘设备131,则交换机121可以将该免费ARP消息发送给边缘设备131。
步骤313,边缘设备131在接收到该免费ARP消息后,可以从该免费ARP消息中解析出主机111的地址信息,并根据该地址信息生成动态转发表项。
在一个例子中,本申请实施例中的转发表项可以区分为动态转发表项以及静态转发表项,动态转发表项和静态转发表项均可以是ARP转发表项、或者MAC转发表项等。但是,动态转发表项和静态转发表项的区别可以在于:动态转发表项包括老化定时器,因此,动态转发表项可能由于老化而被删除,而静态转发表项不包括老化定时器,因此,静态转发表项不会由于老化而被删除。
本步骤中,假设通过AC1311接收到免费ARP消息,并从免费ARP消息中解析出主机111的IP地址111和MAC地址111,因此,可以生成表1所示的动态转发表项。当然,表1只是一个示例,还可以包括其它内容,对此不做限制。
表1
IP地址 | MAC地址 | 出接口 | 老化定时器 |
IP地址111 | MAC地址111 | AC1311 | 50毫秒 |
步骤314,边缘设备131向边缘设备132和边缘设备133分别发送路由通告消息(如BGP路由通告消息),该路由通告消息可以携带主机111的IP地址111和MAC地址111,该路由通告消息还可以携带AC1311对应的ESI 1。
步骤315,边缘设备132在接收到该路由通告消息后,可以从该路由通告消息中解析出主机111的地址信息,并根据该地址信息生成静态转发表项。
在一个例子中,边缘设备132根据该地址信息生成静态转发表项,可以包括:若该路由通告消息携带ESI,且该路由通告消息携带的ESI与边缘设备132为主机111配置的ESI相同,则可以根据该地址信息生成静态转发表项,该静态转发表项的出接口为该ESI对应的AC。此外,若该路由通告消息未携带ESI,或者,该路由通告消息携带的ESI与边缘设备132为主机111配置的ESI不同,则可以根据该地址信息生成动态转发表项,该动态转发表项的出接口可以为边缘设备132与边缘设备131之间的VXLAN隧道,对此过程不再详加赘述。
本步骤中,假设边缘设备132从路由通告消息中解析出主机111的IP地址111和MAC地址111,并从该路由通告消息中解析出ESI 1,由于边缘设备132为主机111配置的ESI也是ESI 1,因此,边缘设备132可以生成表2所示的静态转发表项。当然,表2只是一个示例,还可以包括其它内容,对此不做限制。从表2可以看出,该静态转发表项的出接口可以为ESI 1对应的AC1321。
表2
IP地址 | MAC地址 | 出接口 |
IP地址111 | MAC地址111 | AC1321 |
步骤316,边缘设备133在接收到该路由通告消息后,可以从该路由通告消息中解析出主机111的地址信息,并根据该地址信息生成主机转发表项。
其中,该主机转发表项可以是动态转发表项,也可以是静态转发表项,对此不做限制,为了方便描述,后续以该主机转发表项是动态转发表项为例。
其中,边缘设备133在接收到该路由通告消息后,还可以从该路由通告消息中解析出ESI 1,由于边缘设备131和边缘设备132均是ESI 1对应的下一跳,因此,边缘设备133在根据该地址信息生成主机转发表项时,会形成等价表项,出接口分别为边缘设备133与边缘设备131之间的VXLAN隧道A、边缘设备133与边缘设备132之间的VXLAN隧道B。参见表3所示,为主机转发表项的示例,当然,表3只是一个示例,还可以包括其它内容,对此不做限制。
表3
步骤317,当主机112向主机111发送数据报文时,边缘设备133接收该数据报文,利用该数据报文的目的地址(如目的IP地址和/或目的MAC地址)查询表3所示的主机转发表项,得到出接口为VXLAN隧道A和VXLAN隧道B。
步骤318,边缘设备133从VXLAN隧道A和VXLAN隧道B中选择一个VXLAN隧道,如选择VXLAN隧道B,并通过VXLAN隧道B发送数据报文。
其中,边缘设备133可以采用随机算法或采用hash算法,从VXLAN隧道A和VXLAN隧道B中选择一个VXLAN隧道,对此选择方式不做限制,假设选择VXLAN隧道B,则通过VXLAN隧道B将数据报文发送给边缘设备132。
步骤319,边缘设备132在接收到该数据报文后,利用该数据报文的目的地址查询表2所示的静态转发表项,得到出接口为AC1321,并通过AC1321将数据报文发送给主机111。至此,主机112的数据报文被成功发送给主机111。
其中,边缘设备133在发送数据报文时,还可以为该数据报文封装VXLAN隧道头,并将封装有VXLAN隧道头的数据报文发送给边缘设备132。边缘设备132在接收到封装有VXLAN隧道头的数据报文后,先对VXLAN隧道头进行解封装,并利用解封装后的数据报文的目的地址查询表2所示的静态转发表项。
在上述过程中,主机112发送给主机111的数据报文,是通过边缘设备132发送给主机111,而未经过边缘设备131发送给主机111,因此,边缘设备131生成的动态转发表项(参见表1所示),会由于老化而被删除。在表1所示的动态转发表项被边缘设备131删除之后,上述报文转发方法还可以包括:
步骤320,边缘设备131向边缘设备132和边缘设备133分别发送路由撤销消息(如BGP路由撤销消息),该路由撤销消息可以携带主机111的IP地址111和MAC地址111,该路由撤销消息还可以携带AC1311对应的ESI 1。
步骤321,边缘设备132在接收到该路由撤销消息后,可以从该路由撤销消息中解析出主机111的地址信息,并确定该地址信息对应的静态转发表项。
步骤322,若边缘设备132在预设时间(该预设时间可以根据经验进行配置)内接收到与该静态转发表项匹配的报文,则可以将该静态转发表项调整为动态转发表项,并根据该动态转发表项转发该报文。此外,若边缘设备132在预设时间窗内未接收到与该静态转发表项匹配的报文,则可以删除该静态转发表项。
在一个例子中,将该静态转发表项调整为动态转发表项,可以包括:若该路由撤销消息携带ESI,且该路由撤销消息携带的ESI与边缘设备132为主机111配置的ESI相同,则可以将该静态转发表项调整为动态转发表项,该动态转发表项的出接口为该ESI对应的AC。此外,若该路由撤销消息未携带ESI,或者,该路由撤销消息携带的ESI与边缘设备132为主机111配置的ESI不同,则拒绝将该静态转发表项调整为动态转发表项,而是删除该静态转发表项。
在本步骤中,假设边缘设备132从路由撤销消息中解析出主机111的IP地址111和MAC地址111,并从该路由撤销消息中解析出ESI 1,由于边缘设备132为主机111配置的ESI也是ESI 1,因此,边缘设备132可以确定与IP地址111和MAC地址111对应的静态转发表项,如表2所示,并将该静态转发表项调整为动态转发表项,如表4所示。当然,表4只是一个示例,还可以包括其它内容,对此不做限制。从表4可以看出,该动态转发表项的出接口可以为ESI 1对应的AC1321。此外,该动态转发表项可以包括老化定时器,该老化定时器的老化时间可以根据经验进行配置,如50毫秒等,对此老化时间不做限制。
表4
IP地址 | MAC地址 | 出接口 | 老化定时器 |
IP地址111 | MAC地址111 | AC1321 | 50毫秒 |
通过对比表4和表2可以看出,动态转发表项与静态转发表项相比,多了老化定时器。综上所述,将该静态转发表项调整为动态转发表项的过程,可以包括:删除该静态转发表项,并根据该路由撤销消息携带的地址信息(如主机111的IP地址和MAC地址)生成动态转发表项,该动态转发表项可以包括老化定时器;或者,在该静态转发表项中添加老化定时器,以得到动态转发表项。
在上述实施例中,边缘设备132在接收到路由撤销消息后,若预设时间窗内接收到与静态转发表项匹配的报文,是将该静态转发表项调整为动态转发表项,而不是删除该静态转发表项,上述方式可以避免数据报文的错误处理。
例如,边缘设备132接收到路由撤销消息后,若直接删除该静态转发表项,则针对主机112发送给主机111的数据报文,若边缘设备133将该数据报文发送给边缘设备132,由于边缘设备132已经没有与该数据报文匹配的静态转发表项,因此会丢弃该数据报文或者广播该数据报文。针对丢弃该数据报文的方案,则会导致数据报文的丢失,影响用户使用体验。而针对广播该数据报文的方案,则会将该数据报文广播给多个主机,安全性无法保证,而且会消耗大量带宽。
与上述方式不同的是,本实施例中,边缘设备132接收到路由撤销消息后,若是将该静态转发表项调整为动态转发表项,则针对主机112发送给主机111的数据报文,若边缘设备133将该数据报文发送给边缘设备132,由于边缘设备132存在与该数据报文匹配的动态转发表项,因此根据该动态转发表项转发该数据报文,从而将该数据报文转发给主机111,上述方式不会丢弃该数据报文,也不会广播该数据报文,从而避免数据报文的丢失,提高用户使用体验,而且,可以避免将该数据报文广播给多个主机,保证安全性,避免消耗大量带宽。
步骤323,边缘设备132将静态转发表项调整为动态转发表项后,向边缘设备131和边缘设备133发送路由通告消息,该路由通告消息可以携带主机111的IP地址111和MAC地址111,该路由通告消息还携带AC1321对应的ESI 1。
边缘设备132将静态转发表项调整为动态转发表项后,在该动态转发表项老化后,边缘设备132还可以删除该动态转发表项,并向边缘设备131和边缘设备133发送路由撤销消息,其处理参见步骤320及后续步骤,不再重复赘述。
步骤324,边缘设备131在接收到该路由通告消息后,可以从该路由通告消息中解析出主机111的地址信息,并可以根据该地址信息生成静态转发表项。
在一个例子中,边缘设备131根据该地址信息生成静态转发表项,可以包括:若该路由通告消息携带ESI,且该路由通告消息携带的ESI与边缘设备131为主机111配置的ESI相同,则可以根据该地址信息生成静态转发表项,该静态转发表项的出接口为该ESI对应的AC。此外,若该路由通告消息未携带ESI,或者,该路由通告消息携带的ESI与边缘设备131为主机111配置的ESI不同,则可以根据该地址信息生成动态转发表项,该动态转发表项的出接口可以为边缘设备131与边缘设备132之间的VXLAN隧道,对此过程不再详加赘述。
本步骤中,假设边缘设备131从路由通告消息中解析出主机111的IP地址111和MAC地址111,并从路由通告消息中解析出ESI 1,由于边缘设备131为主机111配置的ESI是ESI1,因此边缘设备131生成表5所示的静态转发表项。
表5
IP地址 | MAC地址 | 出接口 |
IP地址111 | MAC地址111 | AC1311 |
步骤325,边缘设备133在接收到该路由通告消息后,可以从该路由通告消息中解析出主机111的地址信息,并根据该地址信息维护主机转发表项。
其中,边缘设备133在接收到路由通告消息后,可以从路由通告消息中解析出ESI1,由于边缘设备131和边缘设备132均是ESI 1对应的下一跳,因此,边缘设备133在根据该地址信息维护主机转发表项时,会存在等价表项,出接口分别为边缘设备133与边缘设备131之间的VXLAN隧道A、边缘设备133与边缘设备132之间的VXLAN隧道B,参见表3所示,为主机转发表项的示例。
在步骤320中,边缘设备131向边缘设备133发送了路由撤销消息,在步骤323中,边缘设备132向边缘设备133发送了路由通告消息,针对该路由撤销消息和该路由通告消息的接收情况,以下结合三种情况对步骤325进行说明。
情况一、边缘设备133先接收到路由撤销消息,后接收到路由通告消息。
在一个例子中,边缘设备133在接收到路由撤销消息后,可以从本地删除表3所示的主机转发表项。在删除该主机转发表项后,边缘设备133在接收到路由通告消息后,可以根据该路由通告消息重新生成表3所示的主机转发表项。
情况二、边缘设备133同时接收到路由通告消息和路由撤销消息。
在一个例子中,边缘设备131向边缘设备132和边缘设备133发送路由撤销消息时,该路由撤销消息中还可以携带序列号,如序列号100。边缘设备132可以记录路由撤销消息的序列号100,且边缘设备132向边缘设备131和边缘设备133发送路由通告消息时,该路由通告消息中还可以携带序列号,且路由通告消息中携带的序列号大于路由撤销消息中携带的序列号,如序列号101。
进一步,边缘设备133在同时接收到路由通告消息和路由撤销消息后,由于路由通告消息中携带的序列号大于路由撤销消息中携带的序列号,因此,边缘设备133会丢弃路由撤销消息,并根据路由通告消息进行处理。由于本地已经存在路由通告消息携带的地址信息对应的主机转发表项,因此,边缘设备133保留表3所示的主机转发表项,即在本地继续维护表3所示的主机转发表项。
情况三、边缘设备133先接收到路由通告消息,后接收到路由撤销消息。
在一个例子中,边缘设备133在接收到路由通告消息后,由于本地已经存在路由通告消息携带的地址信息对应的主机转发表项,因此,边缘设备133保留表3所示的主机转发表项,即在本地继续维护表3所示的主机转发表项。然后,边缘设备133在接收到路由撤销消息后,由于路由通告消息中携带的序列号大于路由撤销消息中携带的序列号(参见情况二所示),因此,边缘设备133会丢弃路由撤销消息,不用根据该路由撤销消息对主机转发表项进行删除处理。
其中,为了在路由通告消息或者路由撤销消息中携带序列号,则序列号可以携带在路由通告消息或者路由撤销消息扩展团体迁徙属性中,对此不做限制。
由以上技术方案可见,本申请实施例中,边缘设备132在接收到边缘设备131发送的路由通告消息后,可以根据主机111的地址信息生成静态转发表项;边缘设备132在接收到边缘设备131发送的路由撤销消息后,若预设时间窗内接收到与该静态转发表项匹配的报文,不是直接删除该静态转发表项,而是将静态转发表项调整为动态转发表项,并根据动态转发表项转发报文,也就是说,边缘设备132接收到目的为该主机的报文后,本地存在与该报文匹配的动态转发表项,并根据该动态转发表项正确传输该报文,提高了可靠性和安全性。
基于与上述方法同样的申请构思,本申请实施例还提出一种报文转发方法,可以应用于采用多归属接入组网的EVPN网络,且EVPN网络的第一边缘设备和第二边缘设备用于为主机提供多归属接入服务。参见图1所示,第一边缘设备为边缘设备131,第二边缘设备为边缘设备132,或者,第一边缘设备为边缘设备132,第二边缘设备为边缘设备131。为了方便描述,在本实施例中,以第一边缘设备为边缘设备132,第二边缘设备为边缘设备131为例进行说明。
参见图2所示,为上述报文转发方法的流程图,该方法可以包括以下步骤:
步骤201,第一边缘设备接收第二边缘设备发送的第一路由通告消息,第一路由通告消息携带主机的地址信息和ESI,若第一路由通告消息携带的ESI与第一边缘设备为所述主机配置的ESI相同,则根据该地址信息生成第一静态转发表项,该第一静态转发表项的出接口为ESI对应的AC。此外,若该第一路由通告消息未携带ESI,或者,该第一路由通告消息携带的ESI与第一边缘设备为主机配置的ESI不同,则可以根据该地址信息生成动态转发表项,该动态转发表项的出接口可以为第一边缘设备与第二边缘设备之间的VXLAN隧道。
其中,参见步骤311-步骤315所示,第二边缘设备可以向第一边缘设备发送路由通告消息(为了区分方便,可以将该路由通告消息称为第一路由通告消息),且第一边缘设备可以根据该第一路由通告消息携带的地址信息生成静态转发表项(为了区分方便,可以将该静态转发表项称为第一静态转发表项)。
步骤202,第一边缘设备接收第二边缘设备发送的第一路由撤销消息,第一路由撤销消息携带主机的地址信息,确定该地址信息对应的第一静态转发表项。
步骤203,若第一边缘设备在预设时间窗内接收到与该第一静态转发表项匹配的报文,且第一路由撤销消息携带的ESI与第一边缘设备为主机配置的ESI相同,则第一边缘设备将该第一静态转发表项调整为第一动态转发表项,并根据该第一动态转发表项转发报文,该第一动态转发表项的出接口为该ESI对应的AC。此外,若第一边缘设备在预设时间窗内未接收到与该第一静态转发表项匹配的报文,则可以直接删除该第一静态转发表项。
此外,若该第一路由撤销消息未携带ESI,或者,该第一路由撤销消息携带的ESI与第一边缘设备为主机配置的ESI不同,则可以删除该静态转发表项。
其中,第一边缘设备将该第一静态转发表项调整为第一动态转发表项,可以包括:第一边缘设备删除该第一静态转发表项,并根据该第一路由撤销消息携带的地址信息生成第一动态转发表项,该第一动态转发表项包括老化定时器;或者,在该第一静态转发表项中添加老化定时器,得到第一动态转发表项。
其中,参见步骤320-步骤322所示,第二边缘设备可以向第一边缘设备发送路由撤销消息(为了区分方便,可以将该路由撤销消息称为第一路由撤销消息),且第一边缘设备可以将第一路由撤销消息对应的静态转发表项调整为动态转发表项(为了区分方便,可以将该动态转发表项称为第一动态转发表项)。
第一边缘设备将第一静态转发表项调整为第一动态转发表项后,还可以向第二边缘设备发送第二路由通告消息,第二路由通告消息携带主机的地址信息,以使第二边缘设备根据该地址信息生成第二静态转发表项。和/或,向第三边缘设备发送第三路由通告消息,第三路由通告消息携带主机的地址信息,以使第三边缘设备根据该地址信息维护主机转发表项,该主机转发表项的出接口包括:第三边缘设备与第一边缘设备之间的隧道、第三边缘设备与第二边缘设备之间的隧道。其中,第一路由撤销消息还携带序列号,第三路由通告消息还携带序列号,第三路由通告消息携带的序列号大于第一路由撤销消息携带的序列号。
其中,参见步骤323-步骤325所示,第一边缘设备可以向第二边缘设备发送路由通告消息(为了区分方便,可以将该路由通告消息称为第二路由通告消息),且第二边缘设备可以根据该第二路由通告消息携带的地址信息生成静态转发表项(为了区分方便,可以将该静态转发表项称为第二静态转发表项)。
此外,第一边缘设备可以向第三边缘设备(如边缘设备133)发送路由通告消息(为了区分方便,可以将该路由通告消息称为第三路由通告消息),且第三边缘设备可以根据该第三路由通告消息携带的地址信息维护主机转发表项。
在一个例子中,若第一边缘设备接收到主机发送的ARP消息,且该ARP消息携带主机的地址信息,则可以根据该地址信息生成第二动态转发表项,并向第二边缘设备发送携带该地址信息的第四路由通告消息;此外,在该第二动态转发表项老化后,第一边缘设备还可以删除该第二动态转发表项,并向第二边缘设备发送携带该地址信息的第二路由撤销消息,对此过程不再详加赘述。
由以上技术方案可见,本申请实施例中,第一边缘设备在接收到第二边缘设备发送的路由通告消息后,可以根据主机的地址信息生成静态转发表项;第一边缘设备在接收到第二边缘设备发送的路由撤销消息后,若预设时间窗内接收到与该静态转发表项匹配的报文,不是直接删除该静态转发表项,而是将静态转发表项调整为动态转发表项,并根据动态转发表项转发报文,也就是说,第一边缘设备接收到目的为该主机的报文后,本地存在与该报文匹配的动态转发表项,并根据该动态转发表项正确传输该报文,提高了可靠性和安全性。
基于与上述方法同样的申请构思,本申请实施例还提出一种报文转发装置,第一边缘设备和第二边缘设备用于为主机提供多归属接入服务,所述装置应用于第一边缘设备,参见图3所示,为所述装置的结构图,所述装置包括:
接收模块301,用于接收所述第二边缘设备发送的第一路由通告消息;其中,所述第一路由通告消息携带所述主机的地址信息和以太网段标识ESI;
生成模块302,用于当所述ESI与所述第一边缘设备为所述主机配置的ESI相同时,则根据所述地址信息生成第一静态转发表项;
所述接收模块301,还用于接收所述第二边缘设备发送的第一路由撤销消息;其中,所述第一路由撤销消息携带所述主机的地址信息;
确定模块303,用于确定所述地址信息对应的第一静态转发表项;
处理模块304,用于当在预设时间窗内接收到与所述第一静态转发表项匹配的报文,且所述第一路由撤销消息携带的ESI与所述第一边缘设备为所述主机配置的ESI相同时,则将所述第一静态转发表项调整为第一动态转发表项;
发送模块305,用于根据所述第一动态转发表项转发报文。
所述处理模块304在将所述第一静态转发表项调整为第一动态转发表项时具体用于:删除所述第一静态转发表项,并根据所述第一路由撤销消息携带的所述地址信息生成第一动态转发表项,所述第一动态转发表项包括老化定时器;或者,在所述第一静态转发表项中添加老化定时器,得到第一动态转发表项。
所述发送模块305将所述第一静态转发表项调整为第一动态转发表项之后还用于:向第二边缘设备发送第二路由通告消息,所述第二路由通告消息携带所述主机的地址信息,以使第二边缘设备根据所述地址信息生成第二静态转发表项;和/或,向第三边缘设备发送第三路由通告消息,所述第三路由通告消息携带所述主机的地址信息,以使所述第三边缘设备根据所述地址信息维护主机转发表项;其中,所述主机转发表项的出接口包括:所述第三边缘设备与所述第一边缘设备之间的隧道、所述第三边缘设备与所述第二边缘设备之间的隧道。
在一个例子中,所述第一路由撤销消息中还携带序列号,所述第三路由通告消息中还携带序列号,所述第三路由通告消息中携带的序列号大于所述第一路由撤销消息中携带的序列号。
本申请实施例提供的边缘设备(如第一边缘设备),从硬件层面而言,硬件架构示意图可以参见图4所示。包括:机器可读存储介质和处理器,其中:
机器可读存储介质:存储指令代码。
处理器:与机器可读存储介质通信,读取和执行机器可读存储介质中存储的所述指令代码,实现本申请上述示例公开的报文转发操作。
这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (11)
1.一种报文转发方法,其特征在于,第一边缘设备和第二边缘设备用于为主机提供多归属接入服务,所述方法应用于第一边缘设备,所述方法包括:
接收所述第二边缘设备发送的第一路由通告消息,所述第一路由通告消息携带所述主机的地址信息和以太网段标识ESI;若所述ESI与第一边缘设备为所述主机配置的ESI相同,则根据所述地址信息生成第一静态转发表项;
接收所述第二边缘设备发送的第一路由撤销消息,所述第一路由撤销消息携带所述主机的地址信息和ESI,并确定所述地址信息对应的第一静态转发表项;
若预设时间窗内接收到与所述第一静态转发表项匹配的报文,且第一路由撤销消息携带的ESI与第一边缘设备为所述主机配置的ESI相同,将所述第一静态转发表项调整为第一动态转发表项,根据所述第一动态转发表项转发报文。
2.根据权利要求1所述的方法,其特征在于,
所述第一静态转发表项的出接口为所述ESI对应的接入电路AC;
所述第一动态转发表项的出接口为所述ESI对应的AC。
3.根据权利要求1所述的方法,其特征在于,
所述将所述第一静态转发表项调整为第一动态转发表项,包括:
删除所述第一静态转发表项,并根据所述第一路由撤销消息携带的所述地址信息生成第一动态转发表项,所述第一动态转发表项包括老化定时器;或者,
在所述第一静态转发表项中添加老化定时器,得到第一动态转发表项。
4.根据权利要求1所述的方法,其特征在于,
所述将所述第一静态转发表项调整为第一动态转发表项后,还包括:
向第二边缘设备发送第二路由通告消息,所述第二路由通告消息携带所述主机的地址信息,以使第二边缘设备根据所述地址信息生成第二静态转发表项。
5.根据权利要求1所述的方法,其特征在于,
所述将所述第一静态转发表项调整为第一动态转发表项后,还包括:
向第三边缘设备发送第三路由通告消息,所述第三路由通告消息携带所述主机的地址信息,以使所述第三边缘设备根据所述地址信息维护主机转发表项;其中,所述主机转发表项的出接口包括:所述第三边缘设备与所述第一边缘设备之间的隧道、所述第三边缘设备与所述第二边缘设备之间的隧道。
6.根据权利要求5所述的方法,其特征在于,所述第一路由撤销消息中还携带序列号,所述第三路由通告消息中还携带序列号,所述第三路由通告消息中携带的序列号大于所述第一路由撤销消息中携带的序列号。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若接收到所述主机发送的地址解析协议ARP消息,且所述ARP消息携带所述主机的地址信息,则根据所述地址信息生成第二动态转发表项,并向所述第二边缘设备发送携带所述地址信息的第四路由通告消息;
在所述第二动态转发表项老化后,删除所述第二动态转发表项,并向所述第二边缘设备发送携带所述地址信息的第二路由撤销消息。
8.一种报文转发装置,其特征在于,第一边缘设备和第二边缘设备用于为主机提供多归属接入服务,所述装置应用于第一边缘设备,所述装置包括:
接收模块,用于接收所述第二边缘设备发送的第一路由通告消息;其中,所述第一路由通告消息携带所述主机的地址信息和以太网段标识ESI;
生成模块,用于当所述ESI与所述第一边缘设备为所述主机配置的ESI相同时,则根据所述地址信息生成第一静态转发表项;
所述接收模块,还用于接收所述第二边缘设备发送的第一路由撤销消息;其中,所述第一路由撤销消息携带所述主机的地址信息和ESI;
确定模块,用于确定所述地址信息对应的第一静态转发表项;
处理模块,用于当在预设时间窗内接收到与所述第一静态转发表项匹配的报文,且所述第一路由撤销消息携带的ESI与所述第一边缘设备为所述主机配置的ESI相同时,则将所述第一静态转发表项调整为第一动态转发表项;
发送模块,用于根据所述第一动态转发表项转发报文。
9.根据权利要求8所述的装置,其特征在于,
所述处理模块在将所述第一静态转发表项调整为第一动态转发表项时具体用于:删除所述第一静态转发表项,并根据所述第一路由撤销消息携带的所述地址信息生成第一动态转发表项,所述第一动态转发表项包括老化定时器;或者,在所述第一静态转发表项中添加老化定时器,得到第一动态转发表项。
10.根据权利要求8所述的装置,其特征在于,
所述发送模块将所述第一静态转发表项调整为第一动态转发表项之后还用于:向第二边缘设备发送第二路由通告消息,所述第二路由通告消息携带所述主机的地址信息,以使第二边缘设备根据所述地址信息生成第二静态转发表项;和/或,向第三边缘设备发送第三路由通告消息,所述第三路由通告消息携带所述主机的地址信息,以使所述第三边缘设备根据所述地址信息维护主机转发表项;其中,所述主机转发表项的出接口包括:所述第三边缘设备与所述第一边缘设备之间的隧道、所述第三边缘设备与所述第二边缘设备之间的隧道。
11.根据权利要求10所述的装置,其特征在于,所述第一路由撤销消息中还携带序列号,所述第三路由通告消息中还携带序列号,所述第三路由通告消息中携带的序列号大于所述第一路由撤销消息中携带的序列号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810224008.4A CN108600109B (zh) | 2018-03-19 | 2018-03-19 | 一种报文转发方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810224008.4A CN108600109B (zh) | 2018-03-19 | 2018-03-19 | 一种报文转发方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108600109A CN108600109A (zh) | 2018-09-28 |
CN108600109B true CN108600109B (zh) | 2020-12-04 |
Family
ID=63626853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810224008.4A Active CN108600109B (zh) | 2018-03-19 | 2018-03-19 | 一种报文转发方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108600109B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109067635B (zh) * | 2018-09-29 | 2021-04-02 | 新华三技术有限公司 | 一种信息处理方法及装置 |
CN109412926B (zh) * | 2018-11-16 | 2021-04-27 | 新华三技术有限公司 | 一种隧道建立方法和装置 |
CN111447131B (zh) | 2019-01-16 | 2022-11-08 | 中兴通讯股份有限公司 | 报文解封装方法及装置、报文封装方法及装置 |
CN110113260B (zh) * | 2019-04-28 | 2021-07-06 | 新华三技术有限公司 | 一种转发表更新方法及装置 |
CN111277482B (zh) * | 2020-01-13 | 2022-01-18 | 新华三大数据技术有限公司 | 一种报文处理方法及装置 |
CN114513453A (zh) * | 2020-10-26 | 2022-05-17 | 华为技术有限公司 | 故障处理方法和装置 |
CN113765783B (zh) * | 2021-08-05 | 2022-11-18 | 新华三大数据技术有限公司 | 通信方法及装置 |
CN115941587B (zh) * | 2022-11-11 | 2024-07-19 | 迈普通信技术股份有限公司 | 多归路由方法、装置、边缘设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616093A (zh) * | 2009-07-17 | 2009-12-30 | 福建星网锐捷网络有限公司 | 一种用户接入多归属网络实现方法、装置及网络设备 |
CN102333024A (zh) * | 2010-07-12 | 2012-01-25 | 华为技术有限公司 | 虚拟专用局域网业务vpls的数据帧的转发方法、设备和系统 |
CN105939261A (zh) * | 2015-09-16 | 2016-09-14 | 杭州迪普科技有限公司 | 静态配置vpn路由方法以及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9634893B2 (en) * | 2015-07-21 | 2017-04-25 | Cisco Technology, Inc. | Auto-provisioning edge devices in a communication network using control plane communications |
-
2018
- 2018-03-19 CN CN201810224008.4A patent/CN108600109B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616093A (zh) * | 2009-07-17 | 2009-12-30 | 福建星网锐捷网络有限公司 | 一种用户接入多归属网络实现方法、装置及网络设备 |
CN102333024A (zh) * | 2010-07-12 | 2012-01-25 | 华为技术有限公司 | 虚拟专用局域网业务vpls的数据帧的转发方法、设备和系统 |
CN105939261A (zh) * | 2015-09-16 | 2016-09-14 | 杭州迪普科技有限公司 | 静态配置vpn路由方法以及装置 |
Non-Patent Citations (1)
Title |
---|
《基于Hose虚拟专用网络模型的网络资源优化与路由方法研究》;王东;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110430;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108600109A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108600109B (zh) | 一种报文转发方法和装置 | |
CN108259299B (zh) | 一种转发表项生成方法、装置及机器可读存储介质 | |
US9992106B2 (en) | Generating a host route | |
US10148573B2 (en) | Packet processing method, node, and system | |
EP3605972B1 (en) | Packet transmission method, edge device, and machine readable storage medium | |
CN106878194B (zh) | 一种报文处理方法和装置 | |
US20160381015A1 (en) | Authentication for VLAN Tunnel Endpoint (VTEP) | |
CN109379241B (zh) | 一种路径信息确定方法及装置 | |
CN108718278B (zh) | 一种报文传输方法和装置 | |
CN109104364B (zh) | 一种指定转发者选举方法和装置 | |
CN106878199B (zh) | 一种接入信息的配置方法和装置 | |
US20150033321A1 (en) | Construct large-scale dvpn | |
CN109412926B (zh) | 一种隧道建立方法和装置 | |
US10122548B2 (en) | Services execution | |
CN107547391B (zh) | 一种报文传输方法和装置 | |
CN107404436A (zh) | 用于虚拟可扩展局域网的通信方法和装置 | |
CN108965092B (zh) | 一种数据报文传输方法和装置 | |
CN106921578B (zh) | 一种转发表项的生成方法和装置 | |
CN106878184B (zh) | 一种数据报文传输方法和装置 | |
CN106878181A (zh) | 一种报文传输方法和装置 | |
CN106998297A (zh) | 一种虚拟机迁移方法和装置 | |
CN108718276B (zh) | 一种报文转发方法和装置 | |
CN107547346B (zh) | 一种报文传输方法和装置 | |
CN112187609B (zh) | 表项生成方法和装置 | |
CN108600070B (zh) | 指定转发者df选举方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |