一种路由信息的同步方法及装置与流程

文档序号:15878415发布日期:2018-11-09 17:25阅读:350来源:国知局
一种路由信息的同步方法及装置与流程

本申请涉及通信技术领域,具体而言,涉及一种路由信息的同步方法及装置。

背景技术

如图1所示,在数据中心技术中,第一虚拟机(virtualmachine,vm1)首次在源可扩展虚拟局域网络(virtualextensiblelan,vxlan)隧道端点(vxlantunnelendpoint,vtep)(即图1中的vtep1)上线后,源vtep通过以太网虚拟专用网络(ethernetvirtualprivatenetwork,evpn)基于mp-bgp(向后兼容)向其他vtep(即图1中的vtep2)同步vm1在源vtep中学习到的转发表项,这样,其他vtep下挂的第二vm(即图1中的vm2)可以基于同步的转发表项访问vm1。

如图2所示,当vm1从vtep1迁徙到vtep3下后,vtep3将对应于vm1的携带有迁徙扩展团体属性值的evpn路由信息同步给vtep1和vtep2;其中,迁徙扩展团体属性值即number值,vm1每次发生1次迁徙,vtep维护number加1。vtep1和vtep2在接收到evpn路由信息后,将evpn路由信息中number值与自身维护的number值进行比较,当evpn路由信息中number值大于维护的number值时,进行vm1迁徙的转发表项切换动作。

但是,当vm在多个vtep之间反复迁徙时,若vtep之间发生网络阻塞时,则可能会导致迁徙的number值不能很好进行同步记录,这样就会出现vm1迁徙之后,vm1当前所在的目标vtep下发的number值小于源vtep和同步vtep(简称其他vtep)当前记录的number值,进而导致迁徙功能失败的问题。



技术实现要素:

有鉴于此,本申请实施例的目的在于提供一种路由信息的同步方法及装置,其他vtep在检测到迁徙标识信息后,直接根据第一本地转发表项更新已存储的针对迁徙vm的转发表项,解决了在虚拟机迁徙过于频繁时,其他vtep需要比较迁徙前后的number值而产生的迁徙失败的问题。

第一方面,本申请实施例提供了一种路由信息的同步方法,应用于目标可扩展虚拟局域网络vxlan隧道端点vtep,所述方法包括:

在感知到迁入的虚拟机vm时,生成携带有针对所述vm的第一本地转发表项和迁徙标识信息的第一以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是目标vtep针对所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项;

向其他vtep发送第一evpn路由信息,以使所述其他vtep在检测到所述迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

第二方面,本申请实施例还提供了一种路由信息的同步方法,应用于其他可扩展虚拟局域网络vxlan隧道端点vtep,所述方法包括:

接收目标vtep发送的携带有迁入的虚拟机vm的第一本地转发表项和迁徙标识信息的以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是所述目标vtep针对接入的所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项;

在检测到所述evpn路由信息中的迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

第三方面,本申请实施例提供了一种路由信息的同步装置,包括:

生成模块,用于在感知到迁入的虚拟机vm时,生成携带有针对所述vm的第一本地转发表项和迁徙标识信息的第一以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是目标vtep针对所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项;

第一发送模块,用于向其他vtep发送第一evpn路由信息,以使所述其他vtep在检测到所述迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

第四方面,本申请实施例提供了一种路由信息的同步装置,包括:

接收模块,用于接收目标vtep发送的携带有迁入的虚拟机vm的第一本地转发表项和迁徙标识信息的以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是所述目标vtep针对接入的所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项;

更新模块,用于在检测到所述evpn路由信息中的迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

本申请实施例提供的一种路由信息的同步方法及装置,目标vtep在感知到迁入的虚拟机vm时,向其他vtep生成携带有针对vm的第一本地转发表项和迁徙标识信息的evpn路由信息,其他vtep在接收到evpn路由信息后,若检测到迁徙标识信息,则直接根据第一本地转发表项更新已存储的针对vm的转发表项。在本申请实施例中,在vm迁徙的过程中,无需记录迁徙对应的number值以及无需比较迁徙前后的number值,其他vtep只要检测到来自目标vtep的第一evpn路由信息中存在迁徙标识信息,即可更新本地已存储的针对迁徙vm的转发表项,解决了现有技术中在虚拟机迁徙过于频繁时,其他vtep需要比较迁徙前后的number值而产生的迁徙失败的问题。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例所提供的一种现有技术中数据中心架构的应用场景示意图。

图2示出了本申请实施例所提供的另一种现有技术中数据中心架构的应用场景示意图。

图3示出了本申请实施例所提供的数据中心架构的应用场景示意图。

图4示出了本申请实施例所提供的一种路由信息的同步方法的流程图。

图5示出了本申请实施例所提供的另一种路由信息的同步方法的流程图。

图6示出了本申请实施例所提供的另一种路由信息的同步方法的流程图。

图7示出了本申请实施例所提供的另一种路由信息的同步方法的流程图。

图8示出了本申请实施例所提供的另一种路由信息的同步装置的结构示意图。

图9示出了本申请实施例所提供的另一种路由信息的同步装置的结构示意图。

图10示出了本申请一实施例所提供的计算机设备40的结构示意图。

图11示出了本申请一实施例所提供的计算机设备50的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

图3示出了本申请实施例提供的一种数据中心的整体架构图。如图3所示,包括源可扩展虚拟局域网络(virtualextensiblelan,vxlan)隧道端点(vxlantunnelendpoint,vtep)(即图3中的vtep1,对应的ip地址为1.1.1.1),目标vtep(即图3中的vtep3,对应的ip地址为3.3.3.3)和同步vtep(即图3中的vtep2,对应的ip地址为2.2.2.2)。其中,源vtep指的是发生迁徙(本申请实施例中均指一次迁徙)的虚拟机在迁徙之前所接入的vtep,目标vtep指的是发生迁徙的虚拟机在迁徙之后所接入的vtep;同步vtep指的是数据中心中除源vtep和目标vtep之外的指定的其他vtep,这样,指定的其他vtep可以是除源vtep和目标vtep之外所有的其他vtep,也可以是除源vtep和目标vtep之外部分的其他vtep。第一虚拟机(virtualmachine,vm1)首先在vtep1中上线,vtep1本地学习上线的vm1的转发表项(这里,学习转发表项即通过查找路由表来构建对应vm1的转发表项)。本申请实施例中,学习到的转发表项中包括vm1的地址信息和出接口信息,其中,地址信息为vm1的网络之间互连的协议(internetprotocol,ip)或者/物理地址(mediaaccesscontrol或者mediumaccesscontrol,mac)地址(本申请实施例中以地址信息为ip地址为例进行说明),出接口信息为vtep1连接vm1的ac1接口。

vtep1在学习到vm1的转发表项后,向vtep2和vtep3同步携带所述转发表项的第二evpn路由信息(这里的第二evpn路由信息与后面vm1迁徙到vtep3下面后,vtep3同步的第一evpn路由信息不同),vtep2和vtep3在收到第二evpn路由信息之后,vtep2上面建立到vtep1的vxlan隧道1,vtep3上面建立到vtep1的vxaln隧道3,并生成针对vm1的第二同步转发表项;其中,vtep2和vtep3各自生成的第二同步转发表项不同,分别为第二其他转发表项和第二目标同步转发表项,其中,第二其他转发表项中的地址信息为vm1的ip/mac地址,出接口vtep2到vtep1的vxlan隧道1,第二目标同步转发表项中的地址信息为vm1的ip/mac地址,出接口vtep3到vtep1的vxlan隧道3。

当vtep1故障时可以被迁徙到vtep2或者vtep3中,以保证vm1能够正常运行。当vtep1恢复后,可以从vtep2或者vtep3迁徙回到vtep1中。因此,vm1可以在vtep1、vtep2和vtep3之间进行反复迁徙。若vm1从vtep1下面迁徙到vtep3下面,vtep3需要向vtep1和vtep2同步第二以太网虚拟专用网络(ethernetvirtualprivatenetwork,evpn)路由信息,上述第一evpn路由信息中携带有针对vm1(即迁入vm)的第一本地转发表项和迁徙标识信息。vtep1和vtep2在检测到迁徙标识信息后,直接根据第一本地转发表项更新已存储的针对vm1的转发表项,解决了在虚拟机迁徙过于频繁时,其他vtep需要比较迁徙前后的number值而产生的迁徙失败的问题。下面通过实施例进行描述本申请实施例提供的路由信息的同步方法。

如图4所示,为本申请第一实施例提供的一种路由信息的同步方法,应用于目标可扩展虚拟局域网络(virtualextensiblelan,vxlan)隧道端点(vxlantunnelendpoint,vtep),所述方法包括:

s101、在感知到迁入的虚拟机vm时,生成携带有针对所述vm的第一本地转发表项和迁徙标识信息的第一以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是目标vtep针对所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项。

本申请实施例中,目标vtep在接收到vm发送的上线请求信息后,验证所述上线请求信中携带的vm的身份信息是否正确,若身份信息验证通过,则将vm标记为在线状态,同时本地学习vm的第一本地转发表项。另外,目标vtep在验证身份信息验证通过,还会检测本地是否存在所述vm的第二目标同步转发表项,若存在,则确定该vm为迁入vm,若不存在,则确定该vm为新接入的vm。

其中,上线的vm是否为迁入vm,影响生成的第一evpn路由信息是否携带针对该vm的迁徙标识信息。当vm为迁入vm时,生成的第一evpn路由信息携带有针对所述vm的第一本地转发表项和迁徙标识信息;当vm为新接入的vm时,生成的第一evpn路由信息仅携带有针对所述vm的第一本地转发表项,而不携带迁徙标识信息。这里,第二目标同步转发表项是目标vtep基于迁徙之前的vm所接入的源vtep同步的第二evpn路由信息生成的。

如图3所示,以迁入vm为vm1,目标vtep为vtep3、源vtep为vtep1、同步vtep为vtep2为例,vtep3生成的第一evpn路由信息(这里为了区别vm1迁徙到vtep3之前,vtep1同步的第二evpn路由信息)携带的第一本地转发表项中地址信息为vm1的ip/mac地址,出接口为vtep3连接vm1的ac2接口。

本申请实施例中,第一evpn路由信息中携带的迁徙标识信息为迁徙扩展团体标记,该迁徙扩展团体标记携带在第一evpn路由信息所在报文的预留字段中,这里的预留字段如type字段和sub-type字段。其中,字段type和字段sub-type标识该迁徙标识信息的类型,作为一种可选的实施方式,本申请实施例中定义type为0x07,sub-type=0x00即表示该迁徙类型;macmove标志标识该evpn路由信息是虚拟机迁徙路由。

上述迁徙标识信息的作用是用于指示数据中心中的vtep1和vtep2在检测到该迁徙标识信息时,直接根据所述第一本地转发表项更新各自已存储的针对所述vm的转发表项。

s102、向其他vtep发送第一evpn路由信息,以使所述其他vtep在检测到所述迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

本申请实施例中,vtep3将携带有第一本地转发表项和迁徙标识信息的第一evpn路由信息同步给vtep1和vtep2。

vtep1和vtep2在接收到所述第一evpn路由信息后,若检测到迁徙标识信息,直接根据第一evpn路由信息中的第一本地转发表项更新本地已存储的针对所述vm1的转发表项。这里的迁徙标识信息不同于现有技术中的number值,在现有技术中,vtep1和vtep2在检测到number值后需要先判断number值是否大于各自当前维护的number值,只有当number值大于自己当前维护的number值才会更新各自已存储的针对所述vm1的转发表项,而本申请中,vtep1和vtep2只要检测到迁徙标识信息,则可直接根据第一本地转发表项更新各自已存储的针对所述vm1的转发表项,无需进行number值的判断,这样就解决了现有技术中在虚拟机迁徙过于频繁时,其他vtep需要比较迁徙前后的number值而产生的迁徙失败的问题。

这里,源vtep和同步vtep根据所述第一本地转发表项更新已存储的针对所述迁入vm的转发表项的方法如下:

所述源vtep根据所述第一本地转发表项中的地址信息和预先建立的所述源vtep到所述目标vtep的隧道信息,生成针对所述vm的第一源同步转发表项。所述同步vtep根据所述第一本地转发表项中的地址信息和预先建立的所述同步vtep到所述目标vtep的隧道信息,生成针对所述vm的第一其他同步转发表项。

如图3所示,以迁入vm为vm1,目标vtep为vtep3、源vtep为vtep1、同步vtep为vtep2为例,这里,vtep1和vtep2对应的第一同步转发表项不同,分别为第一源同步转发表项和第一其他同步转发表项。vtep1和vtep2在收到第一evpn路由信息之后,vtep2上面建立到vtep3的vxlan隧道2,vtep1上面建立到vtep3的vxlan隧道4。对应的,vtep1生成的针对vm1的第一源同步转发表项中:地址信息为vm1的ip地址/mac地址,出接口信息为vtep1到所述vtep3的vxlan隧道4。vtep2生成的针对vm1的第一其他同步转发表项中,地址信息为vm1的ip地址/mac地址,出接口信息为vtep2到vtep3的vxlan隧道2。

考虑到攻击报文的情况,目标vtep接收到的上线请求信息可能伪造者通过伪造vm的ip地址/mac地址发送的攻击报文,而实际中,vm并未迁移到目标vtep中,而是仍然下挂在源vtep中,针对这种情况,本申请实施例中提供的路由信息的同步方法,采用的解决方式如下:

所述其他vtep包括源vtep和同步vtep;源vtep在基于接收到的第一evpn路由信息更新自身已存储的针对所述vm的转发表项后,向所述目标vtep发送反馈信息;所述反馈信息中携带有本地是否接入所述vm的检测结果。如图5所示,对应的,所述目标vtep在向所述源vtep发送第一所述evpn路由信息之后,还包括:

s201、若根据所述源vtep返回的反馈信息确定所述源vtep中存在接入的所述vm,则检测本地是否接入所述vm;其中,所述反馈信息中携带有所述源vtep中是否接入所述vm的检测结果。

本申请实施例中,目标vtep若接收到源vtep返回的反馈信息,则提取反馈信息中的检测结果,如果该检测结果为源vtep中存在接入的所述vm,那么目标vtep检测本地是否接入所述vm。具体检测方法为,目标vtep基于vm的ip/mac地址向vm发送探测报文,判断是否接收到vm返回的应答报文,若接收到vm返回的应答报文,则确认存在接入的vm,若未接收到vm返回的应答报文,则确认未接入的vm(这种情况下,视接收到的上线请求信息为攻击报文)。

s202、若检测到本地未接入所述vm,则删除所述第一本地转发表项,以及,通知所述其他vtep删除针对所述vm的第一同步转发表项;其中,所述第一同步转发表项是所述其他vtep基于所述evpn路由信息生成的。

本申请实施例中,目标vtep向vm发送探测报文后,若未接收到vm返回的响应答报文,则确认本地未接入vm,则视为接收到的上线请求信息为攻击报文。对应的,目标vtep删除针对所述vm的第一本地转发表项,同时,通知所述源vtep和所述同步vtep删除针对所述迁入vm的第一同步转发表项。

这里,目标vtep通过向所述源vtep和所述同步vtep发送针对所述迁入vm的第二同步路由删除信息(这里的同步路由删除信息为了与源vtep发送的第一同步路由删除信息进行区分),来通知所述源vtep和所述同步vtep删除针对所述迁入vm的第一同步转发表项。其中,源vtep基于所述第一evpn路由信息生成的第一同步转发表项为第一源同步转发表项,源vtep若接收来自目标vtep的第二路由删除信息,则删除第一源同步转发表项。同步vtep基于所述第一evpn路由信息生成的第一同步转发表项为第一其他同步转发表项,同步vtep若接收来自目标vtep的第二路由删除信息,则删除第一其他同步转发表项。

进一步的,本申请实施例提供的路由信息的同步方法中,所述目标vtep中存储有针对所述vm的第二目标同步转发表项(即上述第二目标同步转发表项,第二目标同步转发表项中的地址信息为vm1的ip/mac地址,出接口为vtep3到vtep1的vxlan隧道3),所述第二同步转发表项是vtep3基于接入所述vm1的vtep1同步的第二evpn路由信息生成的;所述方法还包括:

在根据所述源vtep返回的反馈信息确定所述源vtep中未接入所述vm时,若接收到所述源vtep发送的针对所述vm的第一同步路由删除信息,则根据所述第一同步路由删除信息,删除已存储的针对所述vm的所述第二目标同步转发表项。

本申请实施例中,vtep1如果检测到本地未接入与第一本地转发表项中的地址信息对应的vm1,那么会向vtep3和vtep2发送第一同步路由删除信息,通知vtep3和vtep2删除各自已存储的针对vm1的第二目标同步转发表项和第二其他转发表项。

对应的,vtep3接收到vtep1返回的携带有检测结果的反馈信息后,提取反馈信息中的检测结果,若判断该检测结果为vtep1中不存在接入的迁入vm1,那么在接收到第一同步路由删除信息后,删除已存储的迁入vm1的第二目标同步转发表项。

如图6所示,为本申请第二实施例提供的一种路由信息的同步方法,应用于其他vtep,所述方法包括:

s301、接收目标vtep发送的携带有迁入的虚拟机vm的第一本地转发表项和迁徙标识信息的以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是所述目标vtep针对接入的所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项。

如图3所示,以迁入vm为vm1,目标vtep为vtep3、源vtep为vtep1、同步vtep为vtep2为例。vtep3生成的第一evpn路由信息携带的第一本地转发表项中地址信息为迁入vm1的ip/mac地址,出接口为vtep3连接迁入vm1的ac2接口。

第一evpn路由信息中携带的迁徙标识信息为迁徙扩展团体标记,该迁徙扩展团体标记携带在第一evpn路由信息(即报文)的预留字段中,这里的预留字段如type字段和sub-type字段。其中,字段type和字段sub-type标识该迁徙标识信息的类型,作为一种可选的实施方式,本申请实施例中定义type为0x07,sub-type=0x00即表示该迁徙类型;macmove标志标识该evpn路由信息是虚拟机迁徙路由。

上述迁徙标识信息的作用是用于指示数据中心中的vtep1和vtep2在检测到该迁徙标识信息时,直接根据所述第一本地转发表项更新各自已存储的针对vm1的转发表项。

s302、在检测到所述evpn路由信息中的迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

这里,源vtep和同步vtep根据所述第一本地转发表项更新已存储的针对所述vm的转发表项的方法如下:

所述源vtep根据所述第一本地转发表项中所述vm的地址信息和预先建立的所述源vtep到所述目标vtep的隧道信息,生成针对所述vm的第一源同步转发表项。所述同步vtep根据所述第一本地转发表项中所述vm的地址信息和预先建立的所述同步vtep到所述目标vtep的隧道信息,生成针对所述vm的第一其他同步转发表项。

如图3所示,源vtep(vtep1)和同步vtep(vtep2)对应的第一同步转发表项不同,分别为第一源同步转发表项和第一其他同步转发表项。vtep1和vtep2在收到第一evpn路由信息之后,vtep2上面建立到vtep3的vxlan隧道2,vtep1上面建立到vtep3的vxlan隧道4。对应的,vtep1生成的针对vm1的第一源同步转发表项中:地址信息为vm1的ip地址/mac地址,出接口信息为vtep1到所述vtep3的vxlan隧道4。vtep2生成的针对vm1的第一其他同步转发表项中,地址信息为vm1的ip地址/mac地址,出接口信息为vtep2到vtep3的vxlan隧道2。

进一步的,本申请实施例提供的路由信息的同步方法中,所述其他vtep包括源vtep,所述源vtep根据所述第一本地转发表项更新已存储的针对所述vm的转发表项之后,还包括:

所述源vtep向所述目标vtep发送反馈信息;所述反馈信息中携带有所述源vtep是否接入与所述第一本地转发表项对应的vm的检测结果。

本申请实施例中,vtep1在基于接收到的第一evpn路由信息更新自身已存储的针对vm1的转发表项后,向目标vtep3发送反馈信息;所述反馈信息中携带有本地是否接入vm1的检测结果。

进一步的,本申请实施例提供的路由信息的同步方法中,所述其他vtep还包括同步vtep;所述源vtep根据所述第一本地转发表项更新已存储的针对所述vm的转发表项之后,还包括:

所述源vtep若检测到本地未接入所述vm,则删除已存储的针对所述vm的第二本地转发表项,并向所述目标vtep和所述同步vtep发送针对所述vm的第二同步路由删除信息,以使所述目标vtep和所述同步vtep删除各自已存储的针对所述vm的第二目标同步转发表项和第二其他同步转发表项;所述第二本地转发表项是所述源vtep在接入所述vm时建立的出接口为连接所述vm的ac接口的转发表项。

本申请实施例中,如图3所示,vtep1(即源vtep)在接收到第一evpn路由信息之后,建立vtep1上面建立到vtep3的vxlan隧道4,生成地址信息为vm1的ip/mac地址,出接口vtep1到vtep3的vxlan隧道4的第一源同步转发表项。

之后,如果vtep1检测到本地未接入vm1,则会删除已存储的第一源同步转发表项,同时,还会向vtep3和vtep2发送第一同步路由删除信息,通知vtep3和vtep2删除各自已存储的针对迁入vm1的第二目标同步转发表项和第二其他转发表项。

本申请实施例中,第二其他转发表项和第二目标同步转发表项是vtep2和vtep3基于vtep1同步的第二evpn路由信息生成的,其中,第二其他转发表项中,地址信息为vm1的ip/mac地址,出接口vtep2到vtep1的vxlan隧道1;第二目标同步转发表项中,地址信息为vm1的ip/mac地址,出接口vtep3到vtep1的vxlan隧道3。

进一步的,本申请实施例提供的路由信息的同步方法中,所述源vtep根据所述第一本地转发表项更新已存储的针对所述vm的转发表项之后,还包括:

所述源vtep在检测到本地接入所述vm后,若接收到所述目标vtep发送的第二同步路由删除信息,则删除所述第一源同步转发表项。

本申请实施例中,vtep3在确认本地未接入vm1,则视为接收到的上线请求信息为攻击报文。对应的,vtep3删除针对vm1的第一evpn路由信息,同时,并向vtep1和vtep2下发第二同步路由删除信息,以通知vtep1和vtep2删除各自已存储的针对vm1的第一源同步转发表项和第一其他同步转发表项。这里,vtep1接收到第二同步路由删除信息后,删除生成的第一源同步转发表项。

进一步的,本申请实施例提供的路由信息的同步方法中,所述同步vtep根据所述第一本地转发表项更新已存储的针对所述vm的转发表项之后,还包括:

所述同步vtep若接收到所述目标vtep发送的第二同步路由删除信息,则根据所述第二同步路由删除信息,删除针对所述vm的所述第一其他同步转发表项;

或者,

所述同步vtep若接收到所述源vtep发送的第一同步路由删除信息,则根据所述第一同步路由删除信息,删除已存储的针对所述vm的第二其他同步转发表项;其中,所述第二其他同步转发表项是所述同步vtep基于接入所述vm的所述源vtep同步的第二evpn路由信息生成的。

如图3所示,vtep2(即同步vtep)若接收到源vtep发送的第一同步路由删除信息,则删除已存储的针对所述vm1的第二其他转发表项,其中,第二其他转发表项中的地址信息为vm1的ip/mac地址,出接口vtep2到vtep1的vxlan隧道1。

进一步的,如图7所示,本申请实施例中提供的路由信息的同步方法中,所述同步vtep根据所述第一本地转发表项更新已存储的针对所述vm的转发表项之后,还包括:

s401、在接收到目的地址为所述vm的数据报文后,若检测到同时存在多个针对所述vm的同步转发表项,则根据所述同步转发表项的生成时间的先后顺序,确定多个所述同步转发表项的优先级;其中,所述生成时间越靠后,所述优先级越高。

本申请实施例中,vtep2若接收到其下挂的vm2发送的数据报文,则提取该数据报文的目的地址,若确定该数据报文的目的地址为原来下挂在vtep1但现在下挂在vtep3中的vm1,则需要根据生成的针对vm1的同步转发表项转发所述数据报文。

这里,若vtep2中同时存在两个针对vm1的同步转发表项,如上述第一其他同步转发表项和第二其他同步转发表项,vtep2会根据上述两个同步转发表项的生成时间确定这两个同步转发表项的优先级。

本申请实施例中,第一其他同步转发表项的生成时间靠后,因此,第一其他同步转发表项的优先级高于第二其他同步转发表项的优先级。

s402、基于优先级最高的同步转发表项,转发所述数据报文。

本申请实施例中,vtep2在确定了优先级最高的同步转发表项为第一其他同步转发表项后,基于第一其他同步转发表项转发所述数据报文。

本申请实施例提供的一种路由信息的同步方法,目标vtep在感知到迁入的虚拟机vm时,向其他vtep生成携带有针对vm的第一本地转发表项和迁徙标识信息的evpn路由信息,其他vtep在接收到evpn路由信息后,若检测到迁徙标识信息,则直接根据第一本地转发表项更新已存储的针对vm的转发表项。在本申请实施例中,在vm迁徙的过程中,无需记录迁徙对应的number值以及无需比较迁徙前后的number值,其他vtep只要检测到来自目标vtep的第一evpn路由信息中存在迁徙标识信息,即可更新本地已存储的针对迁徙vm的转发表项,解决了现有技术中在虚拟机迁徙过于频繁时,其他vtep需要比较迁徙前后的number值而产生的迁徙失败的问题。

如图8所示,为本申请第三实施例提供的一种路由信息的同步装置,用于执行本申请第二实施例中的路由信息的同步方法,所述装置包括:

生成模块11,用于在感知到迁入的虚拟机vm时,生成携带有针对所述vm的第一本地转发表项和迁徙标识信息的第一以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是目标vtep针对所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项;

第一发送模块12,用于向其他vtep发送第一evpn路由信息,以使所述其他vtep在检测到所述迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

进一步的,本申请实施例提供的路由信息的同步装置中,所述其他vtep包括源vtep;所述装置还包括:

检测模块,用于在根据所述源vtep返回的反馈信息确定所述源vtep中存在接入的所述vm时,检测本地是否接入所述vm;其中,所述反馈信息中携带有所述源vtep中是否接入所述vm的检测结果;

第一删除模块,用于在检测到本地未接入所述vm时,删除所述第一本地转发表项,以及,通知所述其他vtep删除针对所述vm的第一同步转发表项;其中,所述第一同步转发表项是所述其他vtep基于所述evpn路由信息生成的。

进一步的,本申请实施例提供的路由信息的同步装置中,所述目标vtep中存储有针对所述vm的第二目标同步转发表项,所述第二目标同步转发表项是基于接入所述vm的所述源vtep同步的第二evpn路由信息生成的;所述第一删除模块,还用于:

在根据所述源vtep返回的反馈信息确定所述源vtep中未接入所述vm时,若接收到所述源vtep发送的针对所述vm的第一同步路由删除信息,则根据所述第一同步路由删除信息,删除已存储的针对所述vm的所述第二目标同步转发表项。

如图9所示,为本申请第四实施例提供的一种路由信息的同步装置,用于执行本申请第二实施例提供的一种路由信息的同步方法,所述装置包括:

接收模块21,用于接收目标vtep发送的携带有迁入的虚拟机vm的第一本地转发表项和迁徙标识信息的以太网虚拟专用网络evpn路由信息;其中,所述第一本地转发表项是所述目标vtep针对接入的所述vm建立的出接口为连接所述vm的接入电路ac接口的转发表项;

更新模块22,用于在检测到所述evpn路由信息中的迁徙标识信息后,根据所述第一本地转发表项更新已存储的针对所述vm的转发表项。

进一步的,本申请实施例提供的路由信息的同步装置中,所述装置还包括:

第二发送模块,用于向所述目标vtep发送反馈信息;所述反馈信息中携带有所述源vtep是否接入与所述第一本地转发表项对应的vm的检测结果。

进一步的,本申请实施例提供的路由信息的同步装置中,所述装置还包括:

第二删除模块,用于在检测到本地未接入所述vm时,删除已存储的针对所述vm的第二本地转发表项,并向所述目标vtep和所述同步vtep发送针对所述vm的第二同步路由删除信息,以使所述目标vtep和所述同步vtep删除各自已存储的针对所述vm的第二目标同步转发表项和第二其他同步转发表项;所述第二本地转发表项是所述源vtep在接入所述vm时建立的出接口为连接所述vm的ac接口的转发表项。

进一步的,本申请实施例提供的路由信息的同步装置中,所述第一本地转发表项中包括所述vm的地址信息,所述更新模块,具体用于:

根据所述第一本地转发表项中所述vm的地址信息和预先建立的所述源vtep到所述目标vtep的隧道信息,生成针对所述vm的第一源同步转发表项;

所述第二删除模块还用于,在检测到本地接入所述vm后,若接收到所述目标vtep发送的第二同步路由删除信息,则删除所述第一源同步转发表项。

进一步的,本申请实施例提供的路由信息的同步装置中,所述第一本地转发表项中包括所述vm的地址信息,所述更新模块,具体用于:

根据所述第一本地转发表项中所述vm的地址信息和预先建立的所述同步vtep到所述目标vtep的隧道信息,生成针对所述vm的第一其他同步转发表项;

所述第二删除模块还用于,在接收到所述目标vtep发送的第二同步路由删除信息时,根据所述第二同步路由删除信息,删除针对所述vm的所述第一其他同步转发表项;

或者,

所述第二删除模块还用于,在接收到所述源vtep发送的第一同步路由删除信息时,根据所述第一同步路由删除信息,删除已存储的针对所述vm的第二其他同步转发表项;其中,所述第二其他同步转发表项是所述同步vtep基于接入所述vm的所述源vtep同步的第二evpn路由信息生成的。

进一步的,本申请实施例提供的路由信息的同步装置中,还包括:

确定模块,用于在接收到目的地址为所述vm的数据报文后,若检测到同时存在多个针对所述vm的同步转发表项,则根据所述同步转发表项的生成时间的先后顺序,确定多个所述同步转发表项的优先级;其中,所述生成时间越靠后,所述优先级越高;

转发模块,用于基于优先级最高的同步转发表项,转发所述数据报文。

本申请实施例提供的一种路由信息的同步装置,目标vtep在感知到迁入的虚拟机vm时,向其他vtep生成携带有针对vm的第一本地转发表项和迁徙标识信息的evpn路由信息,其他vtep在接收到evpn路由信息后,若检测到迁徙标识信息,则直接根据第一本地转发表项更新已存储的针对vm的转发表项。在本申请实施例中,在vm迁徙的过程中,无需记录迁徙对应的number值以及无需比较迁徙前后的number值,其他vtep只要检测到来自目标vtep的第一evpn路由信息中存在迁徙标识信息,即可更新本地已存储的针对迁徙vm的转发表项,解决了现有技术中在虚拟机迁徙过于频繁时,其他vtep需要比较迁徙前后的number值而产生的迁徙失败的问题。

图10为本申请一实施例提供的计算机设备40的结构示意图,如图10所示,用于执行图4中的路由信息的同步方法,该设备包括存储器401、处理器402及存储在该存储器401上并可在该处理器402上运行的计算机程序,其中,上述处理器402执行上述计算机程序时实现上述路由信息的同步方法的步骤。

具体地,上述存储器401和处理器402能够为通用的存储器和处理器,这里不做具体限定,当处理器402运行存储器401存储的计算机程序时,能够执行上述路由信息的同步方法。

对应于图4中的路由信息的同步方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述路由信息的同步方法的步骤。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述路由信息的同步方法。

图11为本申请另一实施例提供的计算机设备50的结构示意图,如图11所示,用于执行图6中的路由信息的同步方法,该设备包括存储器501、处理器402及存储在该存储器501上并可在该处理器502上运行的计算机程序,其中,上述处理器502执行上述计算机程序时实现上述路由信息的同步方法的步骤。

具体地,上述存储器501和处理器502能够为通用的存储器和处理器,这里不做具体限定,当处理器502运行存储器501存储的计算机程序时,能够执行上述路由信息的同步方法。

对应于图6中的路由信息的同步方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述路由信息的同步方法的步骤。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述路由信息的同步方法。

本申请实施例所提供的路由信息的同步装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1