CN105591907A - 一种路由获取方法和装置 - Google Patents
一种路由获取方法和装置 Download PDFInfo
- Publication number
- CN105591907A CN105591907A CN201510449812.9A CN201510449812A CN105591907A CN 105591907 A CN105591907 A CN 105591907A CN 201510449812 A CN201510449812 A CN 201510449812A CN 105591907 A CN105591907 A CN 105591907A
- Authority
- CN
- China
- Prior art keywords
- address
- rloc
- main frame
- eid
- data message
- 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.)
- Granted
Links
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/26—Route discovery packet
-
- 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/44—Distributed routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种路由获取方法,该方法包括:VTEP设备将本地主机的路由信息同步到MS上,在本地不存在转发数据报文对应的路由表项时,向MS获取对应的EID地址和RLOC地址的映射关系,生成对应的路由表项。基于同样的发明构思,本申请还提出一种路由获取装置,能够在不受设备硬件限制的情况下,高效获取其它VTEP设备上的主机的路由。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种路由获取方法和装置。
背景技术
身份标识与位置分离协议(Locator/IdentitySeparationProtocol,LISP)这种建网思想形成两个独立的地址空间:终端标识(EndpointIdentifier,EID)地址和路由位置(RoutingLocator,RLOC)地址。EID为通信端点的主机地址与现有实现相同,在LISP中的作用类似于域名系统(DomainNameSystem,DNS),拥有独立的空间。在LISP网络中,EID可以独立于RLOC进行迁移,RLOC可在现有Internet中路由转发,可全局路由,且根据网络拓扑情况进行聚合。EID之间通信的报文封装在RLOC之间的隧道中进行转发。
LISP在多点服务接入的组网下,可以不需要通过边界网关协议(BorderGatewayProtocol,BGP)把站点路由导入,简化流量的控制策略,减少核心网的路由表。
可扩展虚拟局域网络(VirtualeXtensibleLAN,VXLAN)是基于IP网络、采用“MACinUDP”封装形式的二层VPN技术。VXLAN可以基于已有的服务提供商或企业IP网络,为分散的物理站点提供二层互联,并能够为不同的租户提供业务隔离。VXLAN主要应用于数据中心网络。
在分布式VXLANIP网关的组网中,所有的分布式VXLANIP网关上都需要创建虚拟交换接口(VirtualSwitchInterface,VSI)虚接口,并在虚接口上配置相同的IP地址,作为VXLAN内虚拟机的网关地址。在分布式VXLANIP网关上还需要使能本地代理地址解析协议(ARP)功能(IPv4网络)或本地邻居发现(ND)代理功能(IPv6网络)。边界网关(Border)上也需要创建VSI虚接口,并配置IP地址。
设备配置虚接口并配置虚MAC地址,在接收到目的MAC地址为所述虚MAC地址的数据报文时,可以认为是发送给本设备的数据报文,从而由本设备进行相关处理。
采用分布式VXLANIP网关组网方案时,流量都通过查找ARP表项(IPv4网络)或ND表项(IPv6网络)进行三层转发。
在进行VXLAN转发时,需要获知所有VXLAN的主机路由,目前获取的方式主要有两种:
一种为通过MAC地址学习,该种方式需要泛洪ARP(IPv4),扩大了VXLAN的广播域,导致带宽和硬件表项浪费,效率低下;一种是通过扩展中间系统到中间系统(IntermediateSystem-to-IntermediateSystem,IS-IS)携带主机路由,则需要通过VXLAN隧道建立IS-IS邻居来同步主机路由,建立IS-IS邻居会受设备硬件限制,网络性能不好。
发明内容
有鉴于此,本申请提供一种路由获取装置,能够在不受设备的硬件限制的情况下,高效地获取其它VTEP设备上的主机的路由。
为解决上述技术问题,本申请的技术方案是这样实现的:
一种路由获取方法,应用于作为分布式网关的可扩展虚拟局域网络隧道端点VTEP设备上,该方法包括:
该VTEP设备学习到本地主机的邻接表项时,向映射服务器MS注册该主机的终端标识EID地址和路由位置RLOC地址的映射关系;所述EID地址包括所述主机的IP地址和所述IP地址所属的可扩展虚拟局域网网络标识VNI;RLOC地址包括:本VTEP的公网因特网协议IP地址和虚媒体访问控制MAC地址;
接收到本地主机发送的数据报文时,若未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI;
接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的可扩展虚拟局域网络VXLAN隧道,并生成所述目的IP地址对应的路由表项。
一种路由获取装置,应用于作为分布式网关的可扩展虚拟局域网络隧道端点VTEP设备上,该装置包括:学习单元、注册单元、接收单元、处理单元和发送单元;
所述学习单元,用于学习本地主机的邻接表项;
所述注册单元,用于当所述学习单元学习到本地主机的邻接表项时,向映射服务器MS注册该主机的终端标识EID地址和路由位置RLOC地址的映射关系;所述EID地址包括所述主机的IP地址和所述IP地址所属的可扩展虚拟局域网网络标识VNI;RLOC地址包括:所述VTEP的公网因特网协议IP地址和虚媒体访问控制MAC地址;
所述接收单元,用于接收本地主机发送的数据报文;接收MS响应的RLOC地址和VNI;
所述处理单元,用于当所述接收单元接收到本地主机发送的数据报文时,查找该数据报文的目的IP地址对应的路由表项;当所述接收单元接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的可扩展虚拟局域网络VXLAN隧道,并生成所述目的IP地址对应的路由表项;
所述发送单元,用于若所述处理单元未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI。
由上面的技术方案可知,本申请中通过VTEP设备将本地主机的路由信息同步到MS上,在本地不存在转发数据报文对应的路由表项时,向MS获取对应的EID地址和RLOC地址的映射关系,生成对应的路由表项。本申请的技术方案能够在不受设备硬件限制的情况下,高效获取其它VTEP设备上的主机的路由。
附图说明
图1为本申请实施例中组网示意图;
图2为本申请实施例中EID地址在报文中的携带方式示意图;
图3为本申请实施例中RLOC地址在报文中的携带方式示意图;
图4为本申请实施例中路由获取流程示意图;
图5为本申请实施例中数据报文转发流程示意图;
图6为本申请实施例中应用于上述技术的装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并举实施例,对本发明的技术方案进行详细说明。
本申请实施例中提供一种路由获取方法,应用于作为分布式网关的可扩展虚拟局域网络隧道端点(VXLANTunnelEndPoint,VTEP)设备上。在本申请实施例中的VXLAN分布式网关的组网中增加映射服务器(MappingServer,MS)。
参见图1,图1为本申请实施例中组网示意图。图1中VTEP设备1和VTEP设备2为分布式网关,MS为本申请实施例中新增设备。在具体实现时,可以增加一个MS,为了实现负载分担,也可以增加多个MS,下文均以一个MS为例来进行实例说明。
VTEP设备学习到本地主机的邻接表项时,会向MS注册该主机的EID地址和RLOC地址的映射关系;所述EID地址包括所述主机的IP地址和所述IP地址所属的可扩展虚拟局域网网络标识(VNI);RLOC地址包括:本VTEP的公网IP地址和虚MAC地址。
本申请实施例中的主机包括:物理主机和/或虚拟主机。
本申请实施例中虚MAC地址用以响应本地主机的MAC地址请求,在本地主机请求非本地主机的MAC地址时,VTEP设备将配置的虚MAC地址响应给发送MAC地址请求的主机,使该主机使用该虚MAC地址向其它VTEP设备上的主机发送报文。
在具体实现时,可以根据实际需要,VTEP设备配置多个VSI虚接口,并针对各VSI虚接口配置或默认生成虚MAC地址和IP地址,各虚MAC地址响应给与对应IP地址同一网段的主机,进行数据报文的发送,本申请实施例中以一个虚接口,一个虚MAC地址为例。
VTEP设备在学习到本地主机的邻接表项时,先会生成本地主机的路由表项(该步骤的实现同现有实现),然后再向MS注册该主机的EID地址和RLOC地址的映射关系。
VTEP设备学习到的邻接表项,针对IPv4为ARP表项,针对IPv6为ND表项。
VTEP设备学习到本地主机的邻接表项时,先判断本地是否已存储该主机的邻接表项,如果是,则确定当前学习到的邻接表项与存储的对应邻接表项是否相同,即表项包含的具体内容是否相同。
若确定当前学习到的主机的邻接表项与本地存储的该主机的邻接表项相同,即已存储该主机的邻接表项,且与当前学习到的该主机的邻接表项相同,则不向该MS注册该主机的EID地址和RLOC地址的映射关系;否则(本地未存储该主机的邻接表项,或存储该主机的邻接表项,且当前学习到的与存储的该主机的邻接表项不同),向MS注册该主机的EID地址和RLOC地址的映射关系,使所述MS更新存储该主机的EID地址和RLOC地址的映射关系。
MS接收到VTEP设备注册的主机的EID地址和RLOC地址的映射关系时,若确定本地不存在该主机的EID地址和RLOC地址的映射关系,则存储该主机的EID地址和RLOC地址的映射关系;若确定本地存在该主机的EID地址和RLOC地址的映射关系,则使用接收到的该主机的EID地址和RLOC地址的映射关系更新存储的该主机的EID地址和RLOC地址的映射关系。
本申请实施是,较佳的实现方式为:VTEP设备向MS注册EID地址和RLOC地址的映射关系时,还通知所述MS代答该主机的EID地址和RLOC地址的映射关系,即MS代理各主机,各VTEP设备应答其它VTEP设备请求的RLOC地址。
在具体实现时,也可以不通知所述MS代答主机的EID地址和RLOC地址的映射关系,而在MS接收到相关请求时,转发给对应的VTEP设备或主机进行应答。
VTEP设备接收到本地任一主机删除的消息时,向MS发送针对该主机的去注册消息,使所述MS删除该主机的EID地址和RLOC地址的映射关系。
VTEP设备接收到主机删除的消息时,针对本地的存储的该主机对应的邻接表项和路由表项的处理同现有实现。
本申请实施例中,VTEP设备向MS注册EID地址和RLOC地址的映射关系时,使用同现有LISP注册报文格式相同的报文进行注册。VTEP设备向MS发送的去注册消息,也同现有实现,下面给出本申请实施例中EID地址和RLOC地址在报文中的具体携带方式。
参见图2,图2为本申请实施例中EID地址在报文中的携带方式示意图。图2以IPv4地址为例,EID地址包括主机的IP地址和主机IP地址所属的VNI,其中,VNI和IP地址的具体位置在图2中使用下划线标注。
对应的VNI为接收到的该主机发送的报文中携带的VNI,或者接收该主机发送的报文的接口对应的VNI,具体使用哪种方式确定对应的VNI,则根据具体实现方式确定。
参见图3,图3为本申请实施例中RLOC地址在报文中的携带方式示意图。图3以IPv4地址为例,RLOC地址包括:本VTEP的公网IP地址和配置的虚MAC地址。其中,IP地址和MAC地址的具体位置在图3中使用下划线标注。
下面结合附图,详细说明数据报文转发的过程。
任一主机在需要向其它主机发送数据报文时,会先向VTEP设备发送MAC地址请求。
其中,针对IPv6,发送的MAC地址请求为ARP请求,针对IPv6,发送的MAC地址请求为ND报文。
VTEP设备作为分布式网关,直接应答该MAC地址请求,不会将MAC地址请求泛洪到网络中。
VTEP设备在接收到本地主机发送的MAC地址请求时,若请求的MAC地址不为本VTEP设备下挂的主机的MAC地址,则向该主机响应虚MAC地址。
在具体实现时,根据MAC地址请求的目的IP地址和所述IP地址所属的VNI确定请求的MAC地址是否为本VTEP设备下挂的主机的MAC地址。
当本地针对不同网段分别配置了VSI虚接口,则将对应网段的VSI虚接口对应的虚MAC地址响应给本地主机,用于数据报文的转发。
参见图4,图4为本申请实施例中路由获取流程示意图。具体步骤为:
步骤401,VTEP设备接收到本地主机发送的数据报文时,若未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI。
本步骤中接收到本地主机发送的数据报文时,先确定所述数据报文的目的MAC地址是否为所述虚MAC地址,如果是,执行所述查找到该数据报文的目的IP地址所对应的路由表项;否则,根据该数据报文的目的MAC地址进行二层转发。
若查找到对应的路由表项,则根据查找到的路由表项进行转发。
步骤402,该VTEP设备接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的VXLAN隧道,并生成所述目的IP地址对应的路由表项。
MS接收到该VTEP设备发送的请求RLOC地址和VNI的报文时,根据所述数据报文的目的IP地址在本地的映射关系中查找到对应的RLOC地址和VNI,并响应给该VTEP设备。
本步骤中,根据响应的RLOC地址生成与响应的RLOC地址对应VTEP设备之间的VXLAN隧道具体为:配置VXLAN隧道的目的IP地址为RLOC地址中的IP地址,源IP地址为本VTEP设备的公网IP地址,VXLAN隧道口为本VTEP设备到RLOC地址中的IP地址对应的VTEP设备之间的接口。
所述目的IP地址对应的路由表项包括:EID地址、RLOC地址和VXLAN隧道口,所述EID地址为所述目的IP地址和响应的VNI。
参见图5,图5为本申请实施例中数据报文转发流程示意图。具体步骤为:
步骤501,VTEP设备接收到本地主机发送的数据报文时,若确定该数据报文的目的MAC地址为虚MAC地址,则剥掉该数据报文的二层头,并根据该数据报文的目的IP地址查找路由表项。
步骤502,该VTEP设备确定是否查找到对应的路由表项,如果是,执行步骤505;否则,执行步骤503。
步骤503,该VTEP设备向MS请求所述目的IP地址对应的RLOC地址和VNI。
步骤504,该VTEP设备接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的VXLAN隧道,并生成所述目的IP地址对应的路由表项。
步骤505,该VTEP设备根据所述路由表项转发所述剥掉二层头的数据报文。
本步骤中转发所述剥掉二层头的数据报文的具体过程为:根据所述路由表项中的RLOC地址为所述剥掉二层头的数据报文封装新的二层头后,进行VXLAN封装,并通过VXLAN隧道口发送;其中,新封装的二层头的目的MAC地址为RLOC地址中的MAC地址,源MAC地址为本VTEP设备上配置的虚MAC地址;VXLAN封装的目的IP地址为RLOC地址中的IP地址,源IP地址为本VTEP设备的公网IP地址。
封装后的VXLAN报文到达对端VTEP设备后,进行VXLAN解封装后,确定内部二层头的目的MAC地址为本VTEP设备的配置虚MAC地址,则去掉二层头,根据目的IP地址查找本地主机的路由表项,进行转发。
到此,数据报文由一个主机发送到跨VTEP设备的另一个主机上。
下面结合具体组网,详细描述VTEP设备转发数据报文的过程。仍然以图1的组网为例。
以IPv4网络为例,图1中VTEP设备1和VTEP设备2为VXLAN的分布式网关,其中,VTEP设备1的公网地址为1.1.1.1;该设备上有VSI虚接口,该虚接口的虚MAC地址为0000-fc00-0b01,IP地址为10.1.1.1/24,并在VSI虚接口上配置MAC地址代理,VTEP设备1下,接入VNI10,下挂主机1,主机1的IP地址为10.1.1.10。
VTEP设备2的公网地址为2.2.2.2;该设备上也由VSI虚接口,该虚接口的虚MAC地址为0000-fc00-0b02,IP地址为20.1.1.1/24;并在VSI虚接口上配置MAC地址代理,VTEP设备2下,接入VNI20,下挂主机2,主机2的IP地址为20.1.1.10。
VTEP设备1学习到主机1的ARP表项时,生成主机1的路由表项,并向MS注册主机1的EID地址和RLOC地址的映射关系(EID地址:10.1.1.10和VNI10;RLOC地址:1.1.1.1和0000-fc00-0b01),并通知MS代答该主机的EID地址和RLOC地址的映射关系,具体实现时,在注册的报文中携带设置的MS代答标志。
针对VTEP设备2,同样向MS注册主机2的EID地址和RLOC地址的映射关系(EID地址:20.1.1.10和VNI20;RLOC地址:2.2.2.2和0000-fc00-0b02),并通知MS代答该主机的EID地址和RLOC地址的映射关系,具体实现时,在注册的报文中携带设置的MS代答标志。
MS接收到VTEP设备1和VTEP设备2注册的主机的EID地址和RLOC地址的映射关系,则存储两条路由表项,一条是(10.1.1.10,10)/(1.1.1.1,0000-fc00-0b01),另一条是(20.1.1.10,20)/(2.2.2.2,0000-fc00-0b02)。
主机1向主机2发送数据报文时,向VTEP设备发送MAC地址请求,请求IP地址20.1.1.10和VNI10对应的MAC地址。
VTEP设备1接收到该MAC地址请求时,向主机1代答MAC地址0000-fc00-0b01。
主机1发送目的IP地址为20.1.1.10,目的MAC设置为0000-fc00-0b01的数据报文。
VTEP设备1接收到该数据报文时,确定该数据报文的目的IP地址为虚MAC地址(虚接口的虚MAC地址),则剥掉该数据报文的二层头,并根据该数据报文的目的IP地址20.1.1.10查找路由表项。
由于主机1首次向主机2发送数据报文,因此,未查找到对应的路由表项,将去掉二层头的数据报文缓存。VTEP设备1向MS请求目的IP地址20.1.1.10对应的RLOC地址和VNI。
在具体实现时,也可以将去掉二层头的数据报文上送给MS,由MS对首包数据报文进行转发。
本实施例中以缓存数据报文,由VTEP设备转发为例。
MS接收到VTEP设备1发送的请求目的IP地址20.1.1.10对应的RLOC地址和VNI时,查找到(20.1.1.10,20)/(2.2.2.2,0000-fc00-0b02)这条映射关系,向VTEP设备1响应目的IP地址20.1.1.10对应的RLOC地址(2.2.2.2,0000-fc00-0b02)和VNI20。
VTEP设备1接收到MS响应的RLOC地址和VNI时,本地建立一条VXLAN隧道,源为1.1.1.1,目的为2.2.2.2,VNI为20,同时生成目的IP地址20.1.1.10对应的路由表项,该表项包含的内容为:
EID地址(20.1.1.10,20)、RLOC地址(2.2.2.2,0000-fc00-0b02)和VXLAN隧道接口。
VTEP设备1根据该路由表项为缓存的剥掉二层头的数据报文增加二层头,目的MAC地址为0000-fc00-0b02,源MAC地址为0000-fc00-0b01;再进行VXLAN封装,目的IP地址为2.2.2.2,源IP地址为1.1.1.1,VNI为20;并通过隧道接口发送。
VTEP设备2接收到上述VXLAN报文时,进行VXLAN解封装,接封装后的数据报文的二层头的MAC是本地配置的虚MAC地址0000-fc00-0b02,则去掉该数据报文的二层头,并根据该数据报文的目的IP地址20.1.1.10和VNI20查找路由表项,根据查找到的路由表项转发该数据报文到主机2,本步骤的实现同现有实现,这里不再详细描述。
针对上述实施例中的方法,本申请实施例中提供了一种可以应用该方法的路由获取装置。
本申请具体实施例中的VTEP设备是可以软硬件结合的可编程设备,从硬件层面而言,具体参见图6,图6为本申请具体实施例中包含路由获取装置的VTEP设备的硬件结构示意图。VTEP设备中包括:非易失性存储器、CPU(中央处理器)和内存;其中:
所述非易失性存储器,存储有用于实现VTEP设备获取路由的指令代码;所述指令代码被CPU读取到内存中执行时完成的操作主要为内存中的路由获取装置完成的功能。
所述CPU,用于将所述非易失性存储器中的所述计算机程序加载到所述内存中运行,形成计算机可执行指令,所述计算机可执行指令存储在应用于VTEP设备中的路由获取装置中的学习单元601、注册单元602、接收单元603、处理单元604和发送单元605中。
图6所示VTEP设备进一步包括转发芯片。
所述CPU,进一步用于与转发芯片通信,进行各种数据的收发,例如:向所述MS请求所述目的IP地址对应的RLOC地址和VNI,向本地主机响应虚MAC地址;接收本地主机发送的数据报文;接收MS响应的RLOC地址和VNI;接收删除主机的消息;接收本地主机发送的MAC地址请求;用于与非易失性存储器通信,读取和执行非易失性存储器中存储的所述指令代码,完成路由获取装置完成的功能,以及对从转发芯片上送的主机发送的数据报文、MS响应的RLOC地址和VNI,主机发送的删除主机消息的处理。
所述转发芯片,用于各种数据的收发处理,例如,将CPU发来的向所述MS请求所述目的IP地址对应的RLOC地址和VNI发送给MS,向本地主机响应虚MAC地址发送给所述主机;将本地主机发送的MAC地址请求,主机发送的删除主机的消息,以及MS响应的RLOC地址和VNI上送给CPU。
从软件层面而言,应用于VTEP设备中的路由获取装置包括以下单元:学习单元601、注册单元602、接收单元603、处理单元604和发送单元605,其中:
学习单元601,用于学习本地主机的邻接表项;
注册单元602,用于当学习单元601学习到本地主机的邻接表项时,向MS注册该主机的EID地址和RLOC地址的映射关系;所述EID地址包括所述主机的IP地址和所述IP地址所属的VNI;RLOC地址包括:所述VTEP的公网IP地址和虚MAC地址;
接收单元603,用于接收本地主机发送的数据报文;接收MS响应的RLOC地址和VNI;
处理单元604,用于当接收单元603接收到本地主机发送的数据报文时,查找该数据报文的目的IP地址对应的路由表项;当接收单元603接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的VXLAN隧道,并生成所述目的IP地址对应的路由表项;
发送单元605,用于若处理单元604未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI。
另外,所述目的IP地址对应的路由表项,包括:
EID地址、RLOC地址和VXLAN隧道口,所述EID地址为所述目的IP地址和响应的VNI。
另外,注册单元602,进一步用于向MS注册该主机的EID地址和RLOC地址的映射关系时,通知所述MS代答该主机的EID地址和RLOC地址的映射关系。
另外,
接收单元603,进一步用于接收删除主机的消息;
注册单元602,进一步用于在学习单元601学习到本地主机的邻接表项时,若确定当前学习到的主机的邻接表项与本地存储的该主机的邻接表项相同,则不向该MS注册该主机的EID地址和RLOC地址的映射关系;否则,向MS注册该主机的EID地址和RLOC地址的映射关系,使所述MS存储更新该主机的EID地址和RLOC地址的映射关系;当接收单元603接收到本地任一主机删除的消息时,向MS发送针对该主机的去注册消息,使所述MS删除该主机的EID地址和RLOC地址的映射关系。
另外,
接收单元603,进一步用于接收本地主机发送的MAC地址请求;
发送单元605,进一步用于当接收单元603接收到本地主机发送的MAC地址请求时,若确定请求的MAC地址不为本VTEP设备下挂的主机的MAC地址,则向该主机响应所述虚MAC地址;
处理单元604,进一步用于当接收单元603接收到本地主机发送的数据报文时,确定所述数据报文的目的MAC地址是否为所述虚MAC地址,如果是,确定是否查找到该数据报文的目的IP地址所对应的路由表项。
另外,
处理单元604,进一步用于若确定该数据报文的目的MAC地址为虚MAC地址时,剥掉该数据报文的二层头;生成所述目的IP地址对应的路由表项时,根据所述路由表项中的RLOC地址为所述剥掉二层头的数据报文封装新的二层头后,进行VXLAN封装,并触发发送单元605通过VXLAN隧道口发送;其中,新封装的二层头的目的MAC地址为RLOC地址中的MAC地址,VXLAN封装的目的IP地址为RLOC地址中的IP地址。
上述的路由获取装置作为一个逻辑意义上的装置,其是通过CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。当对应的计算机程序指令被执行时,形成的网关迁徙处理装置用于按照上述方法执行相应操作。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本申请通过VTEP设备将本地主机的路由信息同步到MS上,在本地不存在转发数据报文对应的路由表项时,向MS获取对应的EID地址和RLOC地址的映射关系,生成对应的路由表项。本申请的技术方案能够在不受设备硬件限制的情况下,高效获取其它VTEP设备上的主机的路由。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (12)
1.一种路由获取方法,应用于作为分布式网关的可扩展虚拟局域网络隧道端点VTEP设备上,其特征在于,该方法包括:
该VTEP设备学习到本地主机的邻接表项时,向映射服务器MS注册该主机的终端标识EID地址和路由位置RLOC地址的映射关系;所述EID地址包括所述主机的IP地址和所述IP地址所属的可扩展虚拟局域网网络标识VNI;RLOC地址包括:本VTEP的公网因特网协议IP地址和虚媒体访问控制MAC地址;
接收到本地主机发送的数据报文时,若未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI;
接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的可扩展虚拟局域网络VXLAN隧道,并生成所述目的IP地址对应的路由表项。
2.根据权利要求1所述的方法,其特征在于,所述目的IP地址对应的路由表项,包括:
EID地址、RLOC地址和VXLAN隧道口,所述EID地址为所述目的IP地址和响应的VNI。
3.根据权利要求1所述的方法,其特征在于,所述向MS注册该主机的EID地址和RLOC地址的映射关系时,所述方法进一步包括:
通知所述MS代答该主机的EID地址和RLOC地址的映射关系。
4.根据权利要求1所述的方法,其特征在于,所述VTEP设备学习到本地主机的邻接表项时,所述向MS注册该主机的EID地址和RLOC地址的映射关系之前,所述方法进一步包括:
若确定当前学习到的主机的邻接表项与本地存储的该主机的邻接表项相同,则不向该MS注册该主机的EID地址和RLOC地址的映射关系;否则,向MS注册该主机的EID地址和RLOC地址的映射关系,使所述MS存储更新该主机的EID地址和RLOC地址的映射关系;
所述方法进一步包括:
接收到本地任一主机删除的消息时,向MS发送针对该主机的去注册消息,使所述MS删除该主机的EID地址和RLOC地址的映射关系。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述方法进一步包括:
接收到本地主机发送的MAC地址请求时,若确定请求的MAC地址不为本VTEP设备下挂的主机的MAC地址,则向该主机响应所述虚MAC地址;
所述接收到本地主机发送的数据报文时,所述方法进一步包括:
确定所述数据报文的目的MAC地址是否为所述虚MAC地址,如果是,执行所述若未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI步骤。
6.根据权利要求5所述的方法,其特征在于,所述方法进一步包括:若确定该数据报文的目的MAC地址为虚MAC地址时,剥掉该数据报文的二层头;
所述生成所述目的IP地址对应的路由表项时,所述方法进一步包括:根据所述路由表项中的RLOC地址为所述剥掉二层头的数据报文封装新的二层头后,进行VXLAN封装,并通过VXLAN隧道口发送;其中,新封装的二层头的目的MAC地址为RLOC地址中的MAC地址,VXLAN封装的目的IP地址为RLOC地址中的IP地址。
7.一种路由获取装置,应用于作为分布式网关的可扩展虚拟局域网络隧道端点VTEP设备上,其特征在于,该装置包括:学习单元、注册单元、接收单元、处理单元和发送单元;
所述学习单元,用于学习本地主机的邻接表项;
所述注册单元,用于当所述学习单元学习到本地主机的邻接表项时,向映射服务器MS注册该主机的终端标识EID地址和路由位置RLOC地址的映射关系;所述EID地址包括所述主机的IP地址和所述IP地址所属的可扩展虚拟局域网网络标识VNI;RLOC地址包括:所述VTEP的公网因特网协议IP地址和虚媒体访问控制MAC地址;
所述接收单元,用于接收本地主机发送的数据报文;接收MS响应的RLOC地址和VNI;
所述处理单元,用于当所述接收单元接收到本地主机发送的数据报文时,查找该数据报文的目的IP地址对应的路由表项;当所述接收单元接收到所述MS响应的RLOC地址和VNI时,建立与响应的RLOC地址对应VTEP设备之间的可扩展虚拟局域网络VXLAN隧道,并生成所述目的IP地址对应的路由表项;
所述发送单元,用于若所述处理单元未查找到该数据报文的目的IP地址所对应的路由表项,则向所述MS请求所述目的IP地址对应的RLOC地址和VNI。
8.根据权利要求7所述的装置,其特征在于,所述目的IP地址对应的路由表项,包括:
EID地址、RLOC地址和VXLAN隧道口,所述EID地址为所述目的IP地址和响应的VNI。
9.根据权利要求7所述的装置,其特征在于,
所述注册单元,进一步用于向MS注册该主机的EID地址和RLOC地址的映射关系时,通知所述MS代答该主机的EID地址和RLOC地址的映射关系。
10.根据权利要求7所述的装置,其特征在于,
所述接收单元,进一步用于接收删除主机的消息;
所述注册单元,进一步用于在所述学习单元学习到本地主机的邻接表项时,若确定当前学习到的主机的邻接表项与本地存储的该主机的邻接表项相同,则不向该MS注册该主机的EID地址和RLOC地址的映射关系;否则,向MS注册该主机的EID地址和RLOC地址的映射关系,使所述MS存储更新该主机的EID地址和RLOC地址的映射关系;当所述接收单元接收到本地任一主机删除的消息时,向MS发送针对该主机的去注册消息,使所述MS删除该主机的EID地址和RLOC地址的映射关系。
11.根据权利要求7-10任意一项所述的装置,其特征在于,
所述接收单元,进一步用于接收本地主机发送的MAC地址请求;
所述发送单元,进一步用于当所述接收单元接收到本地主机发送的MAC地址请求时,若确定请求的MAC地址不为本VTEP设备下挂的主机的MAC地址,则向该主机响应所述虚MAC地址;
所述处理单元,进一步用于当所述接收单元接收到本地主机发送的数据报文时,确定所述数据报文的目的MAC地址是否为所述虚MAC地址,如果是,确定是否查找到该数据报文的目的IP地址所对应的路由表项。
12.根据权利要求11所述的装置,其特征在于,
所述处理单元,进一步用于若确定该数据报文的目的MAC地址为虚MAC地址时,剥掉该数据报文的二层头;生成所述目的IP地址对应的路由表项时,根据所述路由表项中的RLOC地址为所述剥掉二层头的数据报文封装新的二层头后,进行VXLAN封装,并触发所述发送单元通过VXLAN隧道口发送;其中,新封装的二层头的目的MAC地址为RLOC地址中的MAC地址,VXLAN封装的目的IP地址为RLOC地址中的IP地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510449812.9A CN105591907B (zh) | 2015-07-28 | 2015-07-28 | 一种路由获取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510449812.9A CN105591907B (zh) | 2015-07-28 | 2015-07-28 | 一种路由获取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105591907A true CN105591907A (zh) | 2016-05-18 |
CN105591907B CN105591907B (zh) | 2018-11-09 |
Family
ID=55931146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510449812.9A Active CN105591907B (zh) | 2015-07-28 | 2015-07-28 | 一种路由获取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105591907B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603511A (zh) * | 2016-11-30 | 2017-04-26 | 中国人民解放军国防科学技术大学 | 一种基于独立内核模块的lisp数据流处理方法 |
CN108259304A (zh) * | 2017-12-28 | 2018-07-06 | 新华三技术有限公司 | 一种转发表项同步方法及装置 |
CN108632400A (zh) * | 2017-08-31 | 2018-10-09 | 新华三技术有限公司 | 一种IPv6地址分配方法和Leaf节点设备 |
CN109218158A (zh) * | 2017-07-05 | 2019-01-15 | 中国电信股份有限公司 | 基于VxLAN的数据传输方法、控制方法及控制器、网关、中间网元和系统 |
CN109347748A (zh) * | 2018-11-29 | 2019-02-15 | 新华三技术有限公司 | 一种同步路由信息的方法和装置 |
CN111786882A (zh) * | 2020-06-30 | 2020-10-16 | 中国联合网络通信集团有限公司 | 一种路由处理方法及装置 |
CN113595849A (zh) * | 2021-08-17 | 2021-11-02 | 中国联合网络通信集团有限公司 | 报文转发方法、发送端vtep及网关vtep |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841028A (zh) * | 2014-03-24 | 2014-06-04 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN104115453A (zh) * | 2013-12-31 | 2014-10-22 | 华为技术有限公司 | 一种实现虚拟机通信的方法和装置 |
CN104486246A (zh) * | 2014-12-23 | 2015-04-01 | 上海斐讯数据通信技术有限公司 | 一种基于SDN架构的VXLAN的QoS机制实现方法 |
CN104601472A (zh) * | 2015-02-04 | 2015-05-06 | 盛科网络(苏州)有限公司 | 在芯片中实现vxlan网关分布式路由的方法及报文处理系统 |
-
2015
- 2015-07-28 CN CN201510449812.9A patent/CN105591907B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104115453A (zh) * | 2013-12-31 | 2014-10-22 | 华为技术有限公司 | 一种实现虚拟机通信的方法和装置 |
CN103841028A (zh) * | 2014-03-24 | 2014-06-04 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN104486246A (zh) * | 2014-12-23 | 2015-04-01 | 上海斐讯数据通信技术有限公司 | 一种基于SDN架构的VXLAN的QoS机制实现方法 |
CN104601472A (zh) * | 2015-02-04 | 2015-05-06 | 盛科网络(苏州)有限公司 | 在芯片中实现vxlan网关分布式路由的方法及报文处理系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603511A (zh) * | 2016-11-30 | 2017-04-26 | 中国人民解放军国防科学技术大学 | 一种基于独立内核模块的lisp数据流处理方法 |
CN109218158A (zh) * | 2017-07-05 | 2019-01-15 | 中国电信股份有限公司 | 基于VxLAN的数据传输方法、控制方法及控制器、网关、中间网元和系统 |
CN109218158B (zh) * | 2017-07-05 | 2021-05-11 | 中国电信股份有限公司 | 基于VxLAN的数据传输方法、控制方法及控制器、网关、中间网元和系统 |
CN108632400A (zh) * | 2017-08-31 | 2018-10-09 | 新华三技术有限公司 | 一种IPv6地址分配方法和Leaf节点设备 |
CN108259304A (zh) * | 2017-12-28 | 2018-07-06 | 新华三技术有限公司 | 一种转发表项同步方法及装置 |
CN109347748A (zh) * | 2018-11-29 | 2019-02-15 | 新华三技术有限公司 | 一种同步路由信息的方法和装置 |
CN111786882A (zh) * | 2020-06-30 | 2020-10-16 | 中国联合网络通信集团有限公司 | 一种路由处理方法及装置 |
CN113595849A (zh) * | 2021-08-17 | 2021-11-02 | 中国联合网络通信集团有限公司 | 报文转发方法、发送端vtep及网关vtep |
CN113595849B (zh) * | 2021-08-17 | 2022-05-20 | 中国联合网络通信集团有限公司 | 报文转发方法、发送端vtep及网关vtep |
Also Published As
Publication number | Publication date |
---|---|
CN105591907B (zh) | 2018-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105591907A (zh) | 一种路由获取方法和装置 | |
JP6934142B2 (ja) | データ処理 | |
US10476796B2 (en) | Packet processing method, and device and system | |
EP3313025B1 (en) | Data packet forwarding | |
TWI500305B (zh) | 利用nat64致能ipv6之行動通訊 | |
CN113645136B (zh) | 网络中报文转发的方法、网络节点、网络系统 | |
CN106209643B (zh) | 报文转发方法及装置 | |
JP7023989B2 (ja) | 転送エントリの生成 | |
CN102710509B (zh) | 一种数据中心自动配置方法及其设备 | |
CN105227466B (zh) | 通信处理方法和装置 | |
CN107547349A (zh) | 一种虚拟机迁移的方法及装置 | |
CN103841028A (zh) | 一种报文转发方法及设备 | |
WO2015124041A1 (zh) | 虚拟子网中的主机路由处理方法及相关设备和通信系统 | |
CN106878288B (zh) | 一种报文转发方法及装置 | |
CN107094110B (zh) | 一种dhcp报文转发方法及装置 | |
CN113411243A (zh) | 数据传输方法及装置 | |
CN107682275B (zh) | 报文监控方法及装置 | |
CN103957161B (zh) | 一种报文转发方法及其装置 | |
CN103731349A (zh) | 一种以太网虚拟化互联邻居间报文转发方法和边缘设备 | |
CN110505621A (zh) | 一种终端迁移的处理方法及装置 | |
CN104796338A (zh) | 虚拟机迁移方法及装置 | |
CN111953607B (zh) | 路由更新的方法及装置 | |
US9553764B2 (en) | Migration of guest bridge | |
US10764234B2 (en) | Method and system for host discovery and tracking in a network using associations between hosts and tunnel end points | |
US10148616B1 (en) | System and method for interconnecting local systems and cloud systems to provide seamless communications |
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 | ||
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. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |