CN108322376B - 路由同步方法、装置及机器可读存储介质 - Google Patents

路由同步方法、装置及机器可读存储介质 Download PDF

Info

Publication number
CN108322376B
CN108322376B CN201710494639.3A CN201710494639A CN108322376B CN 108322376 B CN108322376 B CN 108322376B CN 201710494639 A CN201710494639 A CN 201710494639A CN 108322376 B CN108322376 B CN 108322376B
Authority
CN
China
Prior art keywords
evpn
route
vteps
equipment
address
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
CN201710494639.3A
Other languages
English (en)
Other versions
CN108322376A (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 CN201710494639.3A priority Critical patent/CN108322376B/zh
Priority to PCT/CN2018/092730 priority patent/WO2019001397A1/zh
Priority to US16/626,825 priority patent/US11177979B2/en
Priority to JP2019571660A priority patent/JP6884891B2/ja
Priority to EP18824679.7A priority patent/EP3627775B1/en
Publication of CN108322376A publication Critical patent/CN108322376A/zh
Application granted granted Critical
Publication of CN108322376B publication Critical patent/CN108322376B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/08Learning-based routing, e.g. using neural networks or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • 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/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种路由同步方法、装置及机器可读存储介质,其中,该方法包括:学习本地VM的地址;若本设备连接了所属EVPN中的其它VTEP,则将该本地VM的地址通过第一EVPN路由发送给该其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将该本地VM的地址通过第一EVPN路由发送给该其它VTEP;第一EVPN路由中携带的用于建立VXLAN隧道的目的IP地址为本设备的IP地址;接收第二EVPN路由,创建包含第二EVPN路由中携带的VM地址的路由表项,该路由表项中包含的下一跳信息为第二EVPN路由中携带的目的IP地址;建立本设备与第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。

Description

路由同步方法、装置及机器可读存储介质
技术领域
本申请涉及网络通信技术领域,特别涉及一种路由同步方法、装置及机器可读存储介质。
背景技术
EVPN(Ethernet Virtual Private Network,以太网虚拟专用网络)是一种二层VPN(Virtual Private Network,虚拟专用网络)技术。在控制平面上,VTEP(VXLAN TunnelEnd Point,VXLAN隧道端点)之间建立EVPN邻居关系,相互通告EVPN路由;在数据平面上,VTEP之间采用VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网络)封装方式转发用户报文。
发明内容
有鉴于此,本申请提供一种路由同步方法、装置及机器可读存储介质。
具体地,本申请是通过如下技术方案实现的:
一方面,提供了一种路由同步方法,上级EVPN中的VTEP连接至少一个下级EVPN,下级EVPN中的VTEP连接VM、上级EVPN中的VTEP、所属EVPN中的其它VTEP中的至少一个设备,该方法应用于VTEP,该方法包括:
学习本地VM的地址;若本设备连接了所属EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给不同级EVPN中的其它VTEP;其中,第一EVPN路由中携带有用于建立VXLAN隧道的目的IP地址,该目的IP地址为本设备的IP地址;
接收第二EVPN路由,创建包含第二EVPN路由中携带的VM地址的路由表项,该路由表项中包含的下一跳信息为第二EVPN路由中携带的目的IP地址;建立本设备与第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。
另一方面,还提供了一种路由同步装置,上级EVPN中的VTEP连接至少一个下级EVPN,下级EVPN中的VTEP连接VM、上级EVPN中的VTEP、所属EVPN中的其它VTEP中的至少一个设备,该装置应用于VTEP上,该装置包括:
学习单元,用于学习本地VM的地址;
发送单元,用于在学习单元学习到本地VM的地址之后,若本设备连接了所属EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给不同级EVPN中的其它VTEP;其中,第一EVPN路由中携带有用于建立VXLAN隧道的目的IP地址,该目的IP地址为本设备的IP地址;
创建单元,用于接收第二EVPN路由,创建包含第二EVPN路由中携带的VM地址的路由表项,该路由表项中包含的下一跳信息为第二EVPN路由中携带的目的IP地址;建立本设备与第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。
又一方面,还提供了一种路由同步装置,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使:实现本申请提供的上述路由同步方法。
又一方面,还提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,机器可执行指令促使处理器:实现本申请提供的上述路由同步方法。
通过本申请的以上技术方案,提出了一种多级EVPN的组网架构,该种组网架构中包括上级EVPN和下级EVPN,上级EVPN中的VTEP连接至少一个下级EVPN,下级EVPN中的VTEP连接VM、和/或上级EVPN中的VTEP、和/或所属下级EVPN中的至少一个其它VTEP。在此种多级EVPN的组网架构中,作为路由发出者的VTEP可以将学习到的本地VM的通过EVPN路由同步给所属EVPN中的其它VTEP和/或不同级EVPN中的其它VTEP,该EVPN路由中携带用于建立VXLAN隧道的目的IP地址,且该目的IP地址为该发出者的IP地址;其它VTEP接收到该EVPN路由后会创建对应的路由表项,并将该路由表项中的下一跳信息设置为该EVPN路由中携带的目的IP地址(即发出者的IP地址),还会建立该其它VTEP与发出者之间的VXLAN隧道。通过采用多级VTEP组网架构,实现了EVPN网络的分级管理。
附图说明
图1是本申请实施例示出的EVPN组网架构示意图;
图2是本申请实施例示出的路由同步方法的流程图;
图3是本申请实施例示出的图1的EVPN组网中路由同步方法的流程图;
图4是本申请实施例示出的路由同步装置的硬件结构示意图;
图5是本申请实施例示出的路由同步装置的一种功能结构示意图;
图6是本申请实施例示出的路由同步装置的另一种功能结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
为了实现EVPN网络的分级管理,本申请实施例中提供了一种路由同步方法,以及一种可以应用该方法的装置。本申请实施例中,建立了一种多级EVPN的组网架构,如图1所示,该组网架构中包括:上级EVPN和下级EVPN,上级EVPN中的VTEP连接至少一个下级EVPN(图1中仅以上级EVPN中的VTEP连接1个下级EVPN为例),下级EVPN中的VTEP连接VM(VirtualMachine,虚拟机)、和/或上级EVPN中的VTEP、和/或所属下级EVPN中的至少一个其它VTEP。
图1中仅示出了2级EVPN的组网架构,显然,在实际实施过程中,也可以构建3级以上的EVPN组网架构,以适应实际组网需求。通过使用如图1所示的组网架构,可以将诸如企业等租户(tenant)进行进一步划分,例如,将企业网络进一步划分成多个部门网络,每个部门网络对应于一个下级EVPN。其中,租户指的是使用设备和网络资源来完成相关业务的客户,不同租户拥有各自的设备资源、网络拓扑、业务规划等。
基于如图1所示的组网架构,本申请实施例中下级VTEP执行的路由同步方法如图2所示,该方法包括:
步骤S201,学习本地VM的地址;若本设备连接了所属EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给不同级EVPN中的其它VTEP;其中,第一EVPN路由中携带有用于建立VXLAN隧道的目的IP地址,该目的IP地址为本设备的IP地址;
步骤S202,接收第二EVPN路由,创建包含第二EVPN路由中携带的VM地址的路由表项,该路由表项中包含的下一跳信息为第二EVPN路由中携带的目的IP地址;建立本设备与第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。
本申请实施例的方法中提出了一种多级EVPN的组网架构,该种组网架构中包括上级EVPN和下级EVPN,上级EVPN中的VTEP连接至少一个下级EVPN,下级EVPN中的VTEP连接VM、和/或上级EVPN中的VTEP、和/或所属下级EVPN中的至少一个其它VTEP。在此种多级EVPN的组网架构中,作为路由发出者的VTEP可以将学习到的本地VM的通过EVPN路由同步给所属EVPN中的其它VTEP和/或不同级EVPN中的其它VTEP,该EVPN路由中携带用于建立VXLAN隧道的目的IP地址,且该目的IP地址为该发出者的IP地址;其它VTEP接收到该EVPN路由后会创建对应的路由表项,并将该路由表项中的下一跳信息设置为该EVPN路由中携带的目的IP地址(即发出者的IP地址),还会建立该其它VTEP与发出者之间的VXLAN隧道。通过采用多级VTEP组网架构,实现了EVPN网络的分级管理。
另外,在接收第二EVPN路由之后,若本设备连接了不同级EVPN中的其它VTEP,则将第二EVPN路由转发给不同级EVPN中的其它VTEP;若本设备连接了所属EVPN中的其它VTEP,则将第二EVPN路由转发给所属EVPN中的其它VTEP。这样,可以将接收到的EVPN路由继续在所属EVPN中和/或不同级EVPN中进行扩散。
另外,当本设备为上级VTEP时,接收第三EVPN路由,其中,第三EVPN路由中携带有用于建立VXLAN隧道的目的IP地址;若本设备连接了所属EVPN中的其它VTEP,则将第三EVPN路由转发给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将第三EVPN路由转发给不同级EVPN中的其它VTEP。这样,上级EVPN作为下级EVPN的承载网络,上级EVPN中的上级VTEP不需要对下级EVPN中的VM路由信息进行管理维护,只需要对下级EVPN中的VM路由信息进行转发,而下级EVPN中的VTEP只需管理维护本租户内的VM路由信息,从而节约了VTEP资源,减轻了VTEP的工作负担。
以如图1所示的2级EVPN组网为例,对上述的路由同步方法进行详细说明。在如图1所示的组网中,上级EVPN中包括:VTEP1_1和VTEP1_2,VTEP1_1连接下级EVPN A,VTEP1_2连接下级EVPN B。在下级EVPN A中,VTEP2_1接入上级EVPN中的VTEP1_1,虚拟机VM1接入VTEP2_1,虚拟机VM2接入VTEP2_2。在下级EVPN B中,VTEP2_3接入上级EVPN中的VTEP1_2,虚拟机VM3接入VTEP2_3,虚拟机VM4接入VTEP2_4。下级EVPN A和下级EVPN B属于同一租户。
其中,同一EVPN中的VTEP之间建立EVPN邻居,相互通告EVPN路由;而不同级EVPN中的VTEP之间建立MP-BGP(Multiprotocol Border Gateway Protocol,多协议边界网关协议)邻居,相互通告MP-BGP路由。由此,同属于上级EVPN的VTEP1_1与VTEP1_2之间建立了EVPN邻居;同属于下级EVPN A的VTEP2_1与VTEP2_2之间建立了EVPN邻居;同属于下级EVPNB的VTEP2_3与VTEP2_4之间建立了EVPN邻居。上级EVPN中的VTEP1_1与下级EVPN A中的VTEP2_1之间建立了MP-BGP邻居;上级EVPN中的VTEP1_2与下级EVPN B中的VTEP2_3之间建立了MP-BGP邻居。
基于如图1所示的组网,本申请实施例的路由同步方法如图3所示,包括以下步骤:
步骤S301,VTEP2_4学习到VM4的地址后,将包含VM4的地址的EVPN路由发送给EVPN邻居VTEP2_3,其中,该EVPN路由中携带VM4所属VPN100对应的RT3_1和RD4_1,以及用于建立VXLAN隧道的目的IP地址,该目的IP地址设置为VTEP2_4的IP地址。
VTEP2_4学习到VM4的MAC地址VM4-MAC以及IP地址VM4-IP后,可以将VM4的地址通过EVPN路由发送给所属下级EVPN B中的VTEP2_3。
为了携带用于建立VXLAN隧道的目的IP地址,本申请实施例中对EVPN路由进行了扩展。具体的,可以在EVPN路由中新增下一跳(Nexthop)字段,在Nexthop字段中携带用于建立VXLAN隧道的目的IP地址,该目的IP地址为发出该EVPN路由的下级VTEP的IP地址,该下级VTEP的IP地址具体可以为该下级VTEP建立EVPN邻居时使用的IP地址,以下均以使用建立EVPN邻居时的IP地址为例进行说明。因此,在步骤S301中,VTEP2_4发送的EVPN路由中携带的主要内容如表1所示。
表1
Figure BDA0001332320610000071
在表1中,RT3_1是VM4所属VPN100对应的RT,RD4_1是VM4所属VPN100对应的RD,VTEP2_4-IP是VTEP2_4建立EVPN邻居时的IP地址。显然,按照现有技术,EVPN路由中还会携带MPLS标签等信息,这里不进行详述。其中,VM4所属的VPN为VTEP2_4上连接VM4的接口所属VPN。
其中,VPN与RT之间可以是多对多的关系。
步骤S302,VTEP2_3接收到该EVPN路由之后,若判断出本设备上存在与该EVPN路由携带的RT3_1对应的VPN200,则在本设备上创建VPN200对应的包含VM4的地址的路由表项,如表2所示;并且,根据该EVPN路由中携带的VTEP2_4的IP地址,建立VTEP2_3与VTEP2_4之间的VXLAN隧道。
表2
VPN ID IP地址 MAC地址 下一跳信息
VPN200 VM4-IP VM4-MAC VTEP2_4-IP
在步骤S302中,VTEP2_3可以根据该EVPN路由的Nexthop字段中携带的VTEP2_4-IP,建立源IP地址为VTEP2_3建立EVPN邻居时使用的IP地址VTEP2_3-IP,目的IP地址为VTEP2_4建立EVPN邻居时使用的IP地址VTEP2_4-IP的VXLAN隧道,记为Tunnel10,从而在VTEP2_3与VTEP2_4之间建立了VXLAN隧道Tunnel10。
假如,接入VTEP2_3的虚拟机VM3属于VPN200,VM3与VM4可以通过VTEP2_3与VTEP2_4之间的VXLAN隧道Tunnel10进行通信。
步骤S303,VTEP2_3将该EVPN路由携带在MP-BGP路由中发送给MP-BGP邻居VTEP1_2。
本申请实施例中对现有的MP-BGP路由的路由类型进行了扩展,新增了一种路由类型,为了描述方便,可以称之为私网MP-BGP路由,用于指示携带的是下级EVPN中的EVPN路由。具体的,在步骤S303中VTEP2_3发送的MP-BGP路由的格式为TLV(Type Length Value,类型长度值)格式。
其中,Type字段用于指示该MP-BGP路由的类型,当Type的值置为特定值时用于表示该MP-BGP路由的类型为私网MP-BGP路由,该MP-BGP路由中携带的是下级EVPN中的EVPN路由,也就是私网侧同步来的EVPN路由。
Length字段用于指示Value字段的长度。
Value字段用于携带MP-BGP路由的具体内容。本实施例中,该MP-BGP路由的具体内容中包括如表1所示的EVPN路由内容。
步骤S304,VTEP1_2接收到该MP-BGP路由之后,确定该MP-BGP路由为私网MP-BGP路由,则解析出该MP-BGP路由中携带的EVPN路由,将该EVPN路由中携带的RD4_1替换为VTEP2_3所属VPN300(即VTEP1_2上连接VTEP2_3的接口所属VPN)对应的RD4_2,在该EVPN路由中添加VPN300对应的RT属性RT3_2,然后将该EVPN路由发送给VTEP1_1。
此时,VTEP1_2发出的EVPN路由中携带RT属性RT3_1和RT3_2。
步骤S305,VTEP1_1接收到该EVPN路由后,若判断出本设备上存在与该EVPN路由中携带的RT3_1或RT3_2对应的VPN400,则将该EVPN路由携带在MP-BGP路由中,发送给VPN400内的MP-BGP邻居VTEP2_1。其中,VTEP1_1上连接VTEP2_1的接口属于VPN400。
其中,VTEP1_1发送的MP-BGP路由为私网MP-BGP。
步骤S306,VTEP2_1接收到该MP-BGP路由后,确定该MP-BGP路由为私网MP-BGP路由,则解析出该MP-BGP路由中携带的EVPN路由,若判断出本设备上存在与该EVPN路由中携带的RT属性RT3_1或RT3_2对应的VPN500,则在本设备上下发VPN500对应的包含VM4的地址的路由表项,如表3所示;并且,根据该EVPN路由中携带的VTEP2_4的IP地址,建立VTEP2_1与VTEP2_4之间的VXLAN隧道。
表3
VPN ID IP地址 MAC地址 下一跳
VPN500 VM4-IP VM4-MAC VTEP2_4-IP
在步骤S306中,VTEP2_1可以根据该EVPN路由的Nexthop字段中携带的VTEP2_4-IP,建立源IP地址为VTEP2_1建立EVPN邻居时的IP地址VTEP2_1-IP,目的IP地址为VTEP2_4建立EVPN邻居时的IP地址VTEP2_4-IP的VXLAN隧道,记为Tunnel20,从而在VTEP2_1与VTEP2_4之间的建立了VXLAN隧道Tunnel20。
假如,接入VTEP2_1的虚拟机VM1属于VPN500,则VM1与VM4可以通过VTEP2_1与VTEP2_4之间的VXLAN隧道Tunnel20进行通信。
步骤S307,VTEP2_1将该EVPN路由转发给EVPN邻居VTEP2_2。
步骤S308,VTEP2_2接收到该EVPN路由后,若判断出本设备上存在与该EVPN路由中携带的RT属性RT3_1或RT3_2对应的VPN600,则在本设备上下发VPN600对应的包含VM4的地址的路由表项,如表4所示;并且,根据该EVPN路由中携带的VTEP2_4的IP地址,建立VTEP2_2与VTEP2_4之间的VXLAN隧道。
表4
VPN ID IP地址 MAC地址 下一跳
VPN600 VM4-IP VM4-MAC VTEP2_4-IP
在步骤S308中,VTEP2_2可以根据该EVPN路由的Nexthop字段中携带的VTEP2_4-IP,建立源IP地址为VTEP2_2建立EVPN邻居时的IP地址VTEP2_2-IP,目的IP地址为VTEP2_4建立EVPN邻居时的IP地址VTEP2_4-IP的VXLAN隧道,记为Tunnel30,从而在VTEP2_2与VTEP2_4之间的建立了VXLAN隧道Tunnel30。
假如,接入VTEP2_2的VM2属于VPN600,则VM2与VM4可以通过VTEP2_2与VTEP2_4之间的VXLAN隧道Tunnel30进行通信。
通过上述实施例的方法,可以在将原有EVPN作为上级EVPN,将上级EVPN管理的租户进一步进行划分,由多个下级EVPN组成一个租户,同时可以借助上级EVPN在下级EVPN之间同步EVPN路由,实现了EVPN网络的分级管理。
与前述路由同步方法的实施例相对应,本申请还提供了一种路由同步装置的实施例,该装置可以应用在VTEP上。图4是本申请实施例提供的路由同步装置的硬件结构示意图。如图4所示,该路由同步装置中可包括:处理器401、存储有机器可执行指令的机器可读存储介质402。处理器401与机器可读存储介质402可经由系统总线403通信。并且,通过读取并执行机器可读存储介质402中的机器可执行指令,处理器401可执行上文描述的路由同步方法。
这里,机器可读存储介质402可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
本申请实施例还提供了一种包括机器可执行指令的机器可读存储介质,例如图4中的机器可读存储介质402,所述机器可执行指令可由路由同步装置中的处理器401执行以实现以上描述的路由同步方法。如图5所示,从功能上划分,本申请实施例提供的路由同步装置中包括:学习单元501、发送单元502和创建单元503,其中:
学习单元501,用于学习本地VM的地址;
发送单元502,用于在学习单元501学习到本地VM的地址之后,若本设备连接了所属EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给不同级EVPN中的其它VTEP;其中,第一EVPN路由中携带有用于建立VXLAN隧道的目的IP地址,该目的IP地址为本设备的IP地址;
创建单元503,用于接收第二EVPN路由,创建包含第二EVPN路由中携带的VM地址的路由表项,该路由表项中包含的下一跳信息为第二EVPN路由中携带的目的IP地址;建立本设备与第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。
其中,发送单元502,还用于若本设备连接了不同级EVPN中的其它VTEP,则将第二EVPN路由转发给不同级EVPN中的其它VTEP;若本设备连接了所属EVPN中的其它VTEP,则将第二EVPN路由转发给所属EVPN中的其它VTEP。
如图6所示,上述路由同步装置中还包括:接收单元504,其中:
接收单元504,用于接收第三EVPN路由,其中,第三EVPN路由中携带有用于建立VXLAN隧道的目的IP地址;
发送单元502,还用于在接收单元504接收到第三EVPN路由之后,若本设备连接了所属EVPN中的其它VTEP,则将第三EVPN路由转发给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将第三EVPN路由转发给不同级EVPN中的其它VTEP。
其中,同一EVPN中的VTEP之间建立EVPN邻居关系,不同级EVPN中的VTEP之间建立MP-BGP邻居关系。
其中,发送单元502具体用于通过以下方式将学习到的本地VM的地址通过第一EVPN路由发送给不同级EVPN中的其它VTEP:将第一EVPN路由携带在MP-BGP路由中发送给与本设备建立了MP-BGP邻居关系的其它VTEP,其中,MP-BGP路由中还携带有私网标识,私网标识用于指示携带的是EVPN路由;
创建单元503具体用于通过以下方式接收第二EVPN路由,创建包含第二EVPN路由中携带的VM地址的路由表项:接收与本设备建立了EVPN邻居关系的其它VTEP发来的第二EVPN路由,在判断出本设备上存在与第二EVPN路由中携带的路由目标RT对应的第一VPN时,创建第一VPN对应的包含第二EVPN路由中携带的VM地址的路由表项;或者,接收与本设备建立了MP-BGP邻居关系的其它VTEP发来的MP-BGP路由,若根据接收到的MP-BGP路由中携带的私网标识判断出携带的是EVPN路由,则从接收到的MP-BGP路由中获取第二EVPN路由,在判断出本设备上存在与第二EVPN路由中携带的RT对应的第一VPN时,创建第一VPN对应的包含第二EVPN路由中携带的VM地址的路由表项。
其中,发送单元502具体用于通过以下方式将第二EVPN路由转发给不同级EVPN中的其它VTEP:将第二EVPN路由携带在MP-BGP路由中发送给与本设备建立了MP-BGP邻居关系的其它VTEP,其中,发送的MP-BGP路由中还携带有私网标识,私网标识用于指示携带的是EVPN路由;
发送单元502具体用于通过以下方式将第二EVPN路由转发给所属EVPN中的其它VTEP:将第二EVPN路由转发给与本设备建立了EVPN邻居关系的其它VTEP。
其中,接收单元504具体用于通过以下方式接收第三EVPN路由:接收与本设备建立了MP-BGP邻居关系的其它VTEP发来的MP-BGP路由,若根据接收到的MP-BGP路由中携带的私网标识判断出携带的是EVPN路由,则从接收到的MP-BGP路由中获取第三EVPN路由;或者,接收与本设备建立了EVPN邻居关系的其它VTEP发来的第三EVPN路由;
发送单元502具体用于通过以下方式将第三EVPN路由转发给所属EVPN中的其它VTEP:将第三EVPN路由中携带的路由区分符RD替换为第三EVPN路由的入端口所属的第二VPN对应的RD,在第三EVPN路由中添加第二VPN对应的RT,之后将第三EVPN路由转发给与本设备建立了EVPN邻居关系的其它VTEP;
发送单元502具体用于通过以下方式将第三EVPN路由转发给不同级EVPN中的其它VTEP:若判断出本设备上存在与第三EVPN路由中携带的RT对应的第三VPN,则将第三EVPN路由携带在MP-BGP路由中转发给与本设备建立了MP-BGP邻居关系的第三VPN内的其它VTEP。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (15)

1.一种路由同步方法,其特征在于,上级以太网虚拟专用网络EVPN中的可扩展虚拟局域网络隧道端点VTEP连接至少一个下级EVPN,下级EVPN中的VTEP连接虚拟机VM、上级EVPN中的VTEP、所属EVPN中的其它VTEP中的至少一个设备,所述方法应用于VTEP,所述方法包括:
学习本地VM的地址;若本设备连接了所属EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将学习到的本地VM的地址通过所述第一EVPN路由发送给不同级EVPN中的其它VTEP;其中,所述第一EVPN路由中携带有用于建立VXLAN隧道的目的IP地址,所述目的IP地址为本设备的IP地址;
接收第二EVPN路由,所述第二EVPN路由来自本设备连接的所属EVPN中或不同级EVPN中的VTEP,创建包含所述第二EVPN路由中携带的VM地址的路由表项,所述路由表项中包含的下一跳信息为所述第二EVPN路由中携带的目的IP地址;建立本设备与所述第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。
2.根据权利要求1所述的方法,其特征在于,在接收第二EVPN路由之后,还包括:
若本设备连接了不同级EVPN中的其它VTEP,则将所述第二EVPN路由转发给不同级EVPN中的其它VTEP;
若本设备连接了所属EVPN中的其它VTEP,则将所述第二EVPN路由转发给所属EVPN中的其它VTEP。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收第三EVPN路由,其中,所述第三EVPN路由中携带有用于建立VXLAN隧道的目的IP地址;
若本设备连接了所属EVPN中的其它VTEP,则将所述第三EVPN路由转发给所属EVPN中的其它VTEP;
若本设备连接了不同级EVPN中的其它VTEP,则将所述第三EVPN路由转发给不同级EVPN中的其它VTEP。
4.根据权利要求3所述的方法,其特征在于,同一EVPN中的VTEP之间建立EVPN邻居关系,不同级EVPN中的VTEP之间建立多协议边界网关协议MP-BGP邻居关系。
5.根据权利要求3所述的方法,其特征在于,
所述将学习到的本地VM的地址通过所述第一EVPN路由发送给不同级EVPN中的其它VTEP,具体包括:将所述第一EVPN路由携带在MP-BGP路由中发送给与本设备建立了MP-BGP邻居关系的其它VTEP,其中,所述MP-BGP路由中还携带有私网标识,所述私网标识用于指示携带的是EVPN路由;
所述接收第二EVPN路由,创建包含所述第二EVPN路由中携带的VM地址的路由表项,具体包括:接收与本设备建立了EVPN邻居关系的其它VTEP发来的所述第二EVPN路由,在判断出本设备上存在与所述第二EVPN路由中携带的路由目标RT对应的第一VPN时,创建所述第一VPN对应的包含所述第二EVPN路由中携带的VM地址的路由表项;或者,接收与本设备建立了MP-BGP邻居关系的其它VTEP发来的MP-BGP路由,若根据接收到的MP-BGP路由中携带的私网标识判断出携带的是EVPN路由,则从接收到的MP-BGP路由中获取所述第二EVPN路由,在判断出本设备上存在与所述第二EVPN路由中携带的RT对应的第一VPN时,创建所述第一VPN对应的包含所述第二EVPN路由中携带的VM地址的路由表项。
6.根据权利要求5所述的方法,其特征在于,
所述将所述第二EVPN路由转发给不同级EVPN中的其它VTEP,具体包括:将所述第二EVPN路由携带在MP-BGP路由中发送给与本设备建立了MP-BGP邻居关系的其它VTEP,其中,发送的MP-BGP路由中还携带有私网标识,所述私网标识用于指示携带的是EVPN路由;
所述将所述第二EVPN路由转发给所属EVPN中的其它VTEP,具体包括:将所述第二EVPN路由转发给与本设备建立了EVPN邻居关系的其它VTEP。
7.根据权利要求6所述的方法,其特征在于,
所述接收第三EVPN路由,具体包括:接收与本设备建立了MP-BGP邻居关系的其它VTEP发来的MP-BGP路由,若根据接收到的MP-BGP路由中携带的私网标识判断出携带的是EVPN路由,则从接收到的MP-BGP路由中获取所述第三EVPN路由;或者,接收与本设备建立了EVPN邻居关系的其它VTEP发来的所述第三EVPN路由;
所述将所述第三EVPN路由转发给所属EVPN中的其它VTEP,具体包括:将所述第三EVPN路由中携带的路由区分符RD替换为所述第三EVPN路由的入端口所属的第二VPN对应的RD,在所述第三EVPN路由中添加所述第二VPN对应的RT,之后将所述第三EVPN路由转发给与本设备建立了EVPN邻居关系的其它VTEP;
所述将所述第三EVPN路由转发给不同级EVPN中的其它VTEP,具体包括:若判断出本设备上存在与所述第三EVPN路由中携带的RT对应的第三VPN,则将所述第三EVPN路由携带在MP-BGP路由中转发给与本设备建立了MP-BGP邻居关系的所述第三VPN内的其它VTEP。
8.一种路由同步装置,其特征在于,上级以太网虚拟专用网络EVPN中的可扩展虚拟局域网络隧道端点VTEP连接至少一个下级EVPN,下级EVPN中的VTEP连接虚拟机VM、上级EVPN中的VTEP、所属EVPN中的其它VTEP中的至少一个设备,所述装置应用于VTEP上,所述装置包括:
学习单元,用于学习本地VM的地址;
发送单元,用于在所述学习单元学习到本地VM的地址之后,若本设备连接了所属EVPN中的其它VTEP,则将学习到的本地VM的地址通过第一EVPN路由发送给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将学习到的本地VM的地址通过所述第一EVPN路由发送给不同级EVPN中的其它VTEP;其中,所述第一EVPN路由中携带有用于建立VXLAN隧道的目的IP地址,所述目的IP地址为本设备的IP地址;
创建单元,用于接收第二EVPN路由,所述第二EVPN路由来自本设备连接的所属EVPN中或不同级EVPN中的VTEP,创建包含所述第二EVPN路由中携带的VM地址的路由表项,所述路由表项中包含的下一跳信息为所述第二EVPN路由中携带的目的IP地址;建立本设备与所述第二EVPN路由中携带的目的IP地址所标识的VTEP之间的VXLAN隧道。
9.根据权利要求8所述的装置,其特征在于,
所述发送单元,还用于若本设备连接了不同级EVPN中的其它VTEP,则将所述第二EVPN路由转发给不同级EVPN中的其它VTEP;若本设备连接了所属EVPN中的其它VTEP,则将所述第二EVPN路由转发给所属EVPN中的其它VTEP。
10.根据权利要求9所述的装置,其特征在于,还包括:接收单元,其中:
所述接收单元,用于接收第三EVPN路由,其中,所述第三EVPN路由中携带有用于建立VXLAN隧道的目的IP地址;
所述发送单元,还用于在所述接收单元接收到所述第三EVPN路由之后,若本设备连接了所属EVPN中的其它VTEP,则将所述第三EVPN路由转发给所属EVPN中的其它VTEP;若本设备连接了不同级EVPN中的其它VTEP,则将所述第三EVPN路由转发给不同级EVPN中的其它VTEP。
11.根据权利要求10所述的装置,其特征在于,
所述发送单元具体用于通过以下方式将学习到的本地VM的地址通过所述第一EVPN路由发送给不同级EVPN中的其它VTEP:将所述第一EVPN路由携带在MP-BGP路由中发送给与本设备建立了MP-BGP邻居关系的其它VTEP,其中,所述MP-BGP路由中还携带有私网标识,所述私网标识用于指示携带的是EVPN路由;
所述创建单元具体用于通过以下方式接收第二EVPN路由,创建包含所述第二EVPN路由中携带的VM地址的路由表项:接收与本设备建立了EVPN邻居关系的其它VTEP发来的所述第二EVPN路由,在判断出本设备上存在与所述第二EVPN路由中携带的路由目标RT对应的第一VPN时,创建所述第一VPN对应的包含所述第二EVPN路由中携带的VM地址的路由表项;或者,接收与本设备建立了MP-BGP邻居关系的其它VTEP发来的MP-BGP路由,若根据接收到的MP-BGP路由中携带的私网标识判断出携带的是EVPN路由,则从接收到的MP-BGP路由中获取所述第二EVPN路由,在判断出本设备上存在与所述第二EVPN路由中携带的RT对应的第一VPN时,创建所述第一VPN对应的包含所述第二EVPN路由中携带的VM地址的路由表项。
12.根据权利要求11所述的装置,其特征在于,
所述发送单元具体用于通过以下方式将所述第二EVPN路由转发给不同级EVPN中的其它VTEP:将所述第二EVPN路由携带在MP-BGP路由中发送给与本设备建立了MP-BGP邻居关系的其它VTEP,其中,发送的MP-BGP路由中还携带有私网标识,所述私网标识用于指示携带的是EVPN路由;
所述发送单元具体用于通过以下方式将所述第二EVPN路由转发给所属EVPN中的其它VTEP:将所述第二EVPN路由转发给与本设备建立了EVPN邻居关系的其它VTEP。
13.根据权利要求12所述的装置,其特征在于,
所述接收单元具体用于通过以下方式接收第三EVPN路由:接收与本设备建立了MP-BGP邻居关系的其它VTEP发来的MP-BGP路由,若根据接收到的MP-BGP路由中携带的私网标识判断出携带的是EVPN路由,则从接收到的MP-BGP路由中获取所述第三EVPN路由;或者,接收与本设备建立了EVPN邻居关系的其它VTEP发来的所述第三EVPN路由;
所述发送单元具体用于通过以下方式将所述第三EVPN路由转发给所属EVPN中的其它VTEP:将所述第三EVPN路由中携带的路由区分符RD替换为所述第三EVPN路由的入端口所属的第二VPN对应的RD,在所述第三EVPN路由中添加所述第二VPN对应的RT,之后将所述第三EVPN路由转发给与本设备建立了EVPN邻居关系的其它VTEP;
所述发送单元具体用于通过以下方式将所述第三EVPN路由转发给不同级EVPN中的其它VTEP:若判断出本设备上存在与所述第三EVPN路由中携带的RT对应的第三VPN,则将所述第三EVPN路由携带在MP-BGP路由中转发给与本设备建立了MP-BGP邻居关系的所述第三VPN内的其它VTEP。
14.一种路由同步装置,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述权利要求1~7任一所述的路由同步方法。
15.一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现上述权利要求1~7任一所述的路由同步方法。
CN201710494639.3A 2017-06-26 2017-06-26 路由同步方法、装置及机器可读存储介质 Active CN108322376B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201710494639.3A CN108322376B (zh) 2017-06-26 2017-06-26 路由同步方法、装置及机器可读存储介质
PCT/CN2018/092730 WO2019001397A1 (zh) 2017-06-26 2018-06-26 路由同步
US16/626,825 US11177979B2 (en) 2017-06-26 2018-06-26 Synchronizing route
JP2019571660A JP6884891B2 (ja) 2017-06-26 2018-06-26 ルート同期
EP18824679.7A EP3627775B1 (en) 2017-06-26 2018-06-26 Route synchronization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710494639.3A CN108322376B (zh) 2017-06-26 2017-06-26 路由同步方法、装置及机器可读存储介质

Publications (2)

Publication Number Publication Date
CN108322376A CN108322376A (zh) 2018-07-24
CN108322376B true CN108322376B (zh) 2020-02-11

Family

ID=62891269

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710494639.3A Active CN108322376B (zh) 2017-06-26 2017-06-26 路由同步方法、装置及机器可读存储介质

Country Status (5)

Country Link
US (1) US11177979B2 (zh)
EP (1) EP3627775B1 (zh)
JP (1) JP6884891B2 (zh)
CN (1) CN108322376B (zh)
WO (1) WO2019001397A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10965592B2 (en) * 2019-05-31 2021-03-30 Juniper Networks, Inc. Inter-network service chaining
CN112511398B (zh) * 2019-09-16 2023-11-28 中兴通讯股份有限公司 一种防止流量绕行的方法及装置
CN111800338B (zh) * 2020-06-01 2022-09-16 锐捷网络股份有限公司 跨as的evpn路由交互方法及装置
CN113556283B (zh) * 2021-06-22 2022-08-19 中国联合网络通信集团有限公司 路由管理方法及隧道端点设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103227745A (zh) * 2013-04-26 2013-07-31 杭州华三通信技术有限公司 最短路径桥网和三层虚拟专网互通方法及公共边缘设备
WO2016066119A1 (en) * 2014-10-29 2016-05-06 Hangzhou H3C Technologies Co., Ltd. Deployment of virtual extensible local area network
CN106453025A (zh) * 2016-11-04 2017-02-22 杭州华三通信技术有限公司 一种隧道创建方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005340937A (ja) 2004-05-24 2005-12-08 Fujitsu Ltd Mplsネットワーク及びその構築方法
US9781037B2 (en) 2015-09-15 2017-10-03 Cisco Technology, Inc. Method and apparatus for advanced statistics collection
US10243916B2 (en) * 2016-04-07 2019-03-26 Cisco Technology, Inc. Control plane based technique for handling multi-destination traffic in overlay networks
US10454877B2 (en) * 2016-04-29 2019-10-22 Cisco Technology, Inc. Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks
CN106059946B (zh) * 2016-05-23 2019-12-06 新华三技术有限公司 一种报文转发方法和装置
CN112486626A (zh) * 2016-08-30 2021-03-12 华为技术有限公司 一种确定虚拟机迁移的方法和装置
CN106878136B (zh) * 2016-12-28 2020-01-03 新华三技术有限公司 一种报文转发方法及装置
US10313153B2 (en) * 2017-02-27 2019-06-04 Cisco Technology, Inc. Adaptive MAC grouping and timeout in EVPN environments using machine learning

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103227745A (zh) * 2013-04-26 2013-07-31 杭州华三通信技术有限公司 最短路径桥网和三层虚拟专网互通方法及公共边缘设备
WO2016066119A1 (en) * 2014-10-29 2016-05-06 Hangzhou H3C Technologies Co., Ltd. Deployment of virtual extensible local area network
CN106453025A (zh) * 2016-11-04 2017-02-22 杭州华三通信技术有限公司 一种隧道创建方法及装置

Also Published As

Publication number Publication date
US11177979B2 (en) 2021-11-16
JP2020526101A (ja) 2020-08-27
EP3627775B1 (en) 2021-12-15
US20200136863A1 (en) 2020-04-30
WO2019001397A1 (zh) 2019-01-03
EP3627775A4 (en) 2020-05-06
JP6884891B2 (ja) 2021-06-09
EP3627775A1 (en) 2020-03-25
CN108322376A (zh) 2018-07-24

Similar Documents

Publication Publication Date Title
CN107733793B (zh) 一种转发表项维护方法及装置
CN109729012B (zh) 一种单播报文传输方法和装置
EP2027679B1 (en) Routing multicast traffic
CN108322376B (zh) 路由同步方法、装置及机器可读存储介质
EP4239973A1 (en) Packet sending method, device, and system
CN114978978B (zh) 一种算力资源调度方法、装置、电子设备及介质
CN110430076B (zh) 一种路由管理方法及装置
EP3337093B1 (en) Optimizing information related to a route and/or a next hop for multicase traffic
CN111010329B (zh) 一种报文传输方法及装置
CN103259725A (zh) 报文发送方法和网络设备
US11362954B2 (en) Tunneling inter-domain stateless internet protocol multicast packets
US10904130B2 (en) Method for scalable computer network partitioning
CN113037527B (zh) 网络切片创建方法、报文转发方法及其装置
CN107872389A (zh) 多归连接的网络中的对称子网间业务负载平衡
CN109412949B (zh) 一种数据报文传输方法和装置
CN112217724A (zh) 路由管理方法、装置、网络设备和可读存储介质
US20200044894A1 (en) Mac address synchronization
CN107896188A (zh) 数据转发方法及装置
CN105763444B (zh) 一种路由同步方法及装置
CN100596087C (zh) Ftn匹配管理方法
CN108259205B (zh) 一种路由发布方法及网络设备
CN103095579A (zh) Trill网络互联方法、装置及系统
CN105939262B (zh) 标签分配的方法及装置
CN112187635B (zh) 报文转发方法及装置
US9544225B2 (en) Method for end point identification in computer networks

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