一种报文处理方法和装置与流程

文档序号:17071111发布日期:2019-03-08 23:19阅读:166来源:国知局
一种报文处理方法和装置与流程
本申请涉及计算机网络
技术领域
,特别是涉及一种报文处理方法和装置。
背景技术
:vxlan(virtualextensiblelan,可扩展虚拟局域网络)是一种采用mac(mediaaccesscontrol,媒体访问控制)inudp(userdategramprotocol,用户数据包协议)封装方式的二层vpn(virtualprivatenetwork,虚拟专用网络)技术。vxlan可以基于已有的ip(internetprotocol,网际协议)网络,为分散的物理站点提供二层互联。如图1所示,vxlan组网包括:vtep(vxlantunnelendpoint,vxlan隧道端点)、gw(gateway,网关)设备、多个vm(virtualmachine,虚拟机)。ac(attachmentcircuit,接入电路)1为vtep上与vm1连接的接口。vtep可以接收vm1发送的第一报文,第一报文中可以携带有tag(标签)1。如果ac1的接入方式为ethernet(以太网)接入方式,vtep直接对第一报文进行vxlan封装,并将封装后的第一报文发送至gw设备。gw设备可以将第一报文转发至的目的设备(可以为vm2)。另外,gw设备可以生成vm1对应的arp(addressresolutionprotocol,地址解析协议)表项,该arp表项中记录有vm1和tag(即第一报文中的tag1)的对应关系。当gw设备接收到vm2发往vm1的第二报文时,gw设备可以根据vm1对应的arp表项,将tag1添加到第二报文中,并发送至vtep。vtep将第二报文转发至vm1。如果ac1的接入方式为vlan(virtuallocalareanetwork,虚拟局域网)接入方式,vtep首先删除第一报文中的tag1,然后,对第一报文进行vxlan封装,并将封装后的第一报文发送至gw设备,同理,gw设备可以将第一报文转发至vm2,并生成vm1对应的arp表项,此时,vm1对应的tag为空。当gw设备接收到第二报文时,gw设备根据vm1对应的arp表项,不在第二报文中添加tag,并发送至vtep。vtep将tag1添加到第二报文中,并发送至vm1。然而,如果ac1从以太网接入方式变为虚拟局域网接入方式,此时,接收到第二报文后,gw设备仍为第二报文添加tag1,并发送至vtep。vtep接收到已添加tag1的第二报文后,会再次为第二报文添加tag1,导致报文出错。或者,ac1从虚拟局域网接入方式变为以太网接入方式,此时,接收到第二报文后,gw设备不在第二报文中添加tag1,并发送至vtep。vtep接收到第二报文后,也不在第二报文中添加tag1,同样会导致报文出错。可见,现有技术中,当ac1的接入方式发送变化时,会导致报文出错,进而造成网络业务中断。技术实现要素:本申请实施例的目的在于提供一种报文处理方法和装置,可以避免网络业务中断。具体技术方案如下:第一方面,为了达到上述目的,本申请实施例公开了一种报文处理方法,所述方法应用于可扩展虚拟局域网络vxlan中的可扩展虚拟局域网络隧道端点vtep,所述vxlan还包括网关gw设备,所述方法包括:当接收到针对第一接入电路ac的接入方式的修改指令时,在记录的ac与虚拟机vm的对应关系中,确定所述第一ac对应的第一vm,其中,所述修改指令中携带有目标接入方式的标识;根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文;向所述gw设备发送所述更新提醒报文,以使所述gw设备根据所述更新提醒报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文,包括:如果所述目标接入方式的标识表示以太网ethernet接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标标签tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示虚拟局域网vlan接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。可选的,所述根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文,包括:如果所述目标接入方式的标识表示ethernet接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示vlan接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。第二方面,为了达到上述目的,本申请实施例公开了一种报文处理方法,所述方法应用于可扩展虚拟局域网络vxlan中的网关gw设备,所述vxlan还包括可扩展虚拟局域网络隧道端点vtep,所述方法包括:当接收到所述vtep发送的报文时,判断所述报文中是否携带有预设的更新提醒标志;如果所述报文中携带有所述更新提醒标志,根据所述报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述根据所述报文更新arp表项,包括:解析所述报文的第一预设字段,得到第一虚拟机vm的标识;解析所述报文的第二预设字段;如果所述第二预设字段为空,将arp表项中与所述第一vm对应的标签tag设置为空;如果所述第二预设字段不为空,获取所述第二预设字段携带的目标tag,将所述arp表项中与所述第一vm对应的tag设置为所述目标tag。第三方面,为了达到上述目的,本申请实施例公开了一种报文处理装置,所述装置应用于可扩展虚拟局域网络vxlan中的可扩展虚拟局域网络隧道端点vtep,所述vxlan还包括网关gw设备,所述装置包括:确定模块,用于当接收到针对第一接入电路ac的接入方式的修改指令时,在记录的ac与虚拟机vm的对应关系中,确定所述第一ac对应的第一vm,其中,所述修改指令中携带有目标接入方式的标识;生成模块,用于根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文;发送模块,用于向所述gw设备发送所述更新提醒报文,以使所述gw设备根据所述更新提醒报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述生成模块,具体用于如果所述目标接入方式的标识表示以太网ethernet接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标标签tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示虚拟局域网vlan接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。可选的,所述生成模块,具体用于如果所述目标接入方式的标识表示ethernet接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示vlan接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。第四方面,为了达到上述目的,本申请实施例公开了一种报文处理装置,所述装置应用于可扩展虚拟局域网络vxlan中的网关gw设备,所述vxlan还包括可扩展虚拟局域网络隧道端点vtep,所述装置包括:判断模块,用于当接收到所述vtep发送的报文时,判断所述报文中是否携带有预设的更新提醒标志;更新模块,用于如果所述报文中携带有所述更新提醒标志,根据所述报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述更新模块,具体用于解析所述报文的第一预设字段,得到第一虚拟机vm的标识;解析所述报文的第二预设字段;如果所述第二预设字段为空,将arp表项中与所述第一vm对应的tag设置为空;如果所述第二预设字段不为空,获取所述第二预设字段携带的目标tag,将所述arp表项中与所述第一vm对应的tag设置为所述目标tag。另一方面,为了达到上述目的,本申请实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。另一方面,为了达到上述目的,本申请实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第二方面所述的方法步骤。另一方面,为了达到上述目的,本申请实施提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第一方面所述的方法步骤。另一方面,为了达到上述目的,本申请实施提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第二方面所述的方法步骤。另一方面,为了达到上述目的,本申请实施提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法步骤。另一方面,为了达到上述目的,本申请实施提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第二方面所述的方法步骤。本申请实施例提供的一种报文处理方法和装置,可以应用于vxlan中的vtep和gw设备,以该方法应用于vtep为例,当接收到针对第一ac的接入方式的修改指令时,vtep可以在记录的ac与vm的对应关系中,确定第一ac对应的第一vm,根据第一vm的标识、目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文,并发送至gw设备。gw设备则可以根据更新提醒报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。基于上述处理,当vtep检测到ac的接入方式发送变化时,可以及时提醒gw设备更新arp表项,使得gw设备可以根据更新后的arp表项对接收到的报文进行转发处理,进而避免网络业务中断。当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种组网的框架图;图2为本申请实施例提供的一种报文处理方法的流程图;图3为本申请实施例提供的一种报文处理方法的流程图;图4为本申请实施例提供的一种报文处理方法的示例的流程图;图5为本申请实施例提供的一种报文处理方法的示例的流程图;图6为本申请实施例提供的一种报文处理方法的示例的流程图;图7为本申请实施例提供的一种报文处理方法的示例的流程图;图8为本申请实施例提供的一种报文处理装置的结构图;图9为本申请实施例提供的一种报文处理装置的结构图;图10为本申请实施例提供的一种电子设备的结构图;图11为本申请实施例提供的一种电子设备的结构图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请实施例提供了一种报文处理方法,可以应用于vxlan中的vtep和gw设备。参见图1的应用场景,本申请的报文处理方法可以应用于图1中的vtep。当接收到针对ac1的接入方式的修改指令时,vtep可以确定ac1对应的vm1,其中,修改指令中携带有目标接入方式的标识。vtep可以根据vm1的标识和目标接入方式的标识以及预设的更新提醒标志,生成更新提醒报文,并将更新提醒报文发送至gw设备,以使gw设备根据更新提醒报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。相应的,本申请的报文处理方法还可以应用于图1中的gw设备,gw设备可以接收vtep发送的报文,然后,gw设备可以判断该报文中是否携带有预设的更新提醒标志。如果该报文中携带有更新提醒标志,gw设备可以根据该报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。arp表项可以为gw根据接收到的报文学习得到的,具体的,arp表项可以参见表(1)。表(1)ip地址mac地址出接口tag10.1.1.21-1-1vxlan隧道10表(1)为gw设备中与vm1对应的arp表项,其中,10.1.1.2为vm1的ip地址,1-1-1为vm1的mac地址,vxlan隧道为gw设备与vtep之间的通信隧道。当gw设备接收到目的地址为vm1的ip地址的报文时,可以将该报文通过vxlan隧道发送至vtep。vtep接收到该报文后,可以将该报文发送至vm1,10表示gw设备为发往vm1的报文添加的tag的数值。基于上述处理,当vtep检测到ac1的接入方式发送变化时,可以及时提醒gw设备更新arp表项,使得gw设备可以根据更新后的arp表项对接收到的报文进行转发处理,进而避免网络业务中断。参见图2,图2为本申请实施例提供的一种报文处理方法的流程图,该方法应用于vxlan中的vtep,该vxlan还可以包括gw设备,vtep与gw设备之间可以设置有vxlan隧道,该方法可以包括以下步骤:s201:当接收到针对第一ac的接入方式的修改指令时,在记录的ac与vm的对应关系中,确定第一ac对应的第一vm。其中,修改指令中携带有目标接入方式的标识。第一ac可以为vtep中的任一ac。记录的ac与vm的对应关系可以是vtep根据本地站点内的vm发送的报文,以及vtep接收报文的ac确定的。例如,vtep通过ac1接收到vm1发送的报文,则记录的ac与vm的对应关系中ac1与vm1相对应。具体的,可以参见表(2)。表(2)vmac10.1.1.2ac1vtep通过ac1接收vm1发送的报文,则vtep可以生成如表(2)所示的vm1与ac1的对应关系。其中,表(2)中10.1.1.2为vm1的ip地址,在该对应关系中,可以用vm1的ip地址对vm1进行标识。另外,也可以用vm1的mac地址对vm1进行标识。ac的接入方式可以由技术人员根据业务需求进行设置,例如,技术人员可以对ac1进行以下配置(可以称为配置一):interfaceten1/0/1service-instance10encapsulations-vid10xconnectvsivpnb其中,interfaceten1/0/1表示对接口ten1/0/1进行配置,service-instance10表示采用服务实例10对接口ten1/0/1接收到的报文进行匹配,encapsulations-vid10表示对携带的tag为10的报文进行匹配,xconnectvsivpnb表示以名为vpnb的vsi(virtualswitchinstance,虚拟交换实例)的mac地址表对报文进行转发。配置一表示,根据服务实例10的报文匹配规则,对从接口ten1/0/1接收到的携带有tag为10的报文进行匹配,根据名为vpnb的vsi的mac地址表对符合报文匹配规则的报文进行转发。vsi为vtep上为vxlan提供二层交换服务的虚拟交换实例,它具有传统以太网交换机的所有功能,例如源mac地址学习、mac地址老化、泛洪等功能。配置一中未指定ac1的接入方式,即为默认的vlan接入方式。当ac1的配置为配置一时,vtep可以删除vm1发送的报文中的tag,然后对该报文进行vxlan封装,并发送至gw设备。或者,技术人员可以对ac1进行以下配置(可以称为配置二):interfaceten1/0/1service-instance10encapsulations-vid10xconnectvsivpnbacess-modeethernetinterfaceten1/0/1表示对接口ten1/0/1进行配置,service-instance10表示采用服务实例10对接口ten1/0/1接收到的报文进行匹配,encapsulations-vid10表示对携带的tag为10的报文进行匹配,xconnectvsivpnbacess-modeethernet表示指定接入方式为ethernet接入方式。当ac1的配置为配置二时,vtep对vm1发送的报文中的tag不进行任何处理,直接对该报文进行vxlan封装,并发送至gw设备。在实施中,当更改第一ac的接入方式时,相应的,vtep则可以接收到针对第一ac的接入方式的修改指令。vtep可以在记录的ac与vm的对应关系中,确定第一ac对应的vm(即第一vm)。例如,针对表(2),当vtep接收到针对ac1的修改指令时,vtep可以从表(2)中确定与ac1对应的vm1,并可以获取vm1的标识(即ip地址10.1.1.2)。s202:根据第一vm的标识、目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文。其中,预设的更新提醒标志可以由技术人员根据经验进行设置,gw设备可以识别该更新提醒标志,并更新arp表项。在实施中,当vtep确定第一ac对应的第一vm后,vtep可以根据第一vm的标识、目标接入方式的标识和更新提醒标志,生成更新提醒报文。针对不同的目标接入方式的标识,vtep可以采取不同的方式生成更新提醒报文。可选的,vtep可以根据第一vm发送的数据报文,生成更新提醒报文,则s202可以包括以下两种情况:情况一,如果目标接入方式的标识表示ethernet接入方式,当接收到第一vm发送的数据报文时,对数据报文进行vxlan封装,得到更新提醒报文。其中,更新提醒报文的vxlan报文头中第一预设字段为第一vm的标识、第二预设字段为修改指令中携带的tag(即目标tag)、第三预设字段为更新提醒标志。vtep对数据报文进行vxlan封装,即,将vxlan报文头添加到数据报文的外层udp(userdatagramprotocol,用户数据报协议)报文头和原始二层数据帧之间。参见表(3)。表(3)外层ip报文头外层udp报文头vxlan报文头原始二层数据帧vxlan报文头的结构可以参见表(4)。表(4)表(4)中,vxlanid为vxlan标识符,用于标识vxlan;标志字段rrrrirrl:“i”为1,表示vxlan报文头中的vxlanid有效,“i”为0,表示vxlan报文头中的vxlanid无效。其他为保留未用字段,设置为0。第一预设字段、第二预设字段和第三预设字段可以属于vxlan报文头中的保留未用字段。在实施中,如果目标接入方式为ethernet接入方式,修改指令中可以携带有修改后的tag(即目标tag)。当vtep接收到第一vm发送的数据报文时,vtep可以将vxlan报文头中的第一预设字段设置为第一vm的标识,将vxlan报文头中的第二预设字段设置为目标tag,将vxlan报文头中的第三预设字段设置为更新提醒标志,然后,vtep可以将该vxlan报文头添加到数据报文的外层udp报文头和原始二层数据帧之间,得到更新提醒报文。情况二,如果目标接入方式的标识表示vlan接入方式,当接收到第一vm发送的数据报文时,对数据报文进行vxlan封装,得到更新提醒报文。其中,更新提醒报文的vxlan报文头中第一预设字段为第一vm的标识、第二预设字段为空、第三预设字段为更新提醒标志。vxlan报文头可以参见上述表(4)的详细介绍。第一预设字段、第二预设字段和第三预设字段可以属于vxlan报文头中的保留未用字段。在实施中,如果目标接入方式为vlan接入方式,当vtep接收到第一vm发送的数据报文时,vtep可以将vxlan报文头中的第一预设字段设置为第一vm的标识,将vxlan报文头中的第二预设字段设置为空,将vxlan报文头中的第三预设字段设置为更新提醒标志,然后,vtep可以将该vxlan报文头添加到数据报文的外层udp报文头和原始二层数据帧之间,得到更新提醒报文。可选的,vtep还可以根据协议报文,生成更新提醒报文,则s202还可以包括以下两种情况:情况三,如果目标接入方式的标识表示ethernet接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文。其中,更新提醒报文的vxlan报文头中第一预设字段为第一vm的标识、第二预设字段为修改指令中携带的目标tag、第三预设字段为更新提醒标志。预设的协议报文可以为vxlan隧道协议报文。在实施中,如果目标接入方式为ethernet接入方式,修改指令中可以携带有修改后的tag(即目标tag)。vtep可以将vxlan报文头中的第一预设字段设置为第一vm的标识,将vxlan报文头中的第二预设字段设置为目标tag,将vxlan报文头中的第三预设字段设置为更新提醒标志,然后,vtep可以将该vxlan报文头添加到协议报文的外层udp报文头和原始二层数据帧之间,得到更新提醒报文。情况四,如果目标接入方式的标识表示vlan接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文。其中,更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为更新提醒标志。预设的协议报文可以为vxlan隧道协议报文。在实施中,如果目标接入方式为vlan接入方式,vtep可以将vxlan报文头中的第一预设字段设置为第一vm的标识,将vxlan报文头中的第二预设字段设置为空,将vxlan报文头中的第三预设字段设置为更新提醒标志,然后,vtep可以将该vxlan报文头添加到协议报文的外层udp报文头和原始二层数据帧之间,得到更新提醒报文。s203:向gw设备发送更新提醒报文,以使gw设备根据更新提醒报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。在实施中,vtep可以通过vxlan隧道向gw设备发送更新提醒报文,相应的,gw设备在接收到更新提醒报文后,可以对arp表项进行更新,并根据更新后的arp表项对接收到的报文进行转发处理,进而可以避免业务中断。相应的,参见图3,图3为本申请实施例提供的一种报文处理方法的流程图,该方法应用于vxlan中的gw设备,vxlan还可以包括vtep,vtep与gw设备之间可以设置有vxlan隧道,该方法可以包括以下步骤:s301:当接收到vtep发送的报文时,判断该报文中是否携带有预设的更新提醒标志。其中,预设的更新提醒标志可以由技术人员根据经验进行设置。具体的,vtep可以将更新提醒标志写入报文的vxlan报文头中的一个字段(例如,上文中的第三预设字段)。在实施中,当gw设备通过vxlan隧道接收到vtep发送的报文时,gw设备可以判断该报文中是否携带有更新提醒标志,以确定自身是否要更新arp表项。s302:如果该报文中携带有更新提醒标志,根据该报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。在实施中,当gw设备判定vtep发送的报文中携带有更新提醒标志时,gw设备可以根据该报文更新arp表项,进而,gw设备可以根据更新后的arp表项对接收到的报文进行转发处理。gw设备根据更新后的arp表项对接收到的报文进行转发处理的方法,与现有技术相同,在此不再赘述。例如,gw设备可以解析从vtep接收到的报文的第三预设字段,当gw设备判定该报文的第三预设字段为更新提醒标志时,gw设备可以根据该报文更新arp表项。另外,当gw设备判定该报文的第三预设字段不是更新提醒标志时,gw设备不需要更新arp表项。可选的,gw设备可以根据携带有更新提醒标志的报文中的vxlan报文头携带的信息,对arp表项进行更新。具体的,s302可以包括以下步骤:步骤一,解析该报文的第一预设字段,得到第一虚拟机vm的标识。其中,第一预设字段可以由技术人员根据经验进行设置。具体的,第一预设字段可以属于该报文的vxlan报文头中的保留未用字段。vxlan报文头可以参考表(3)的详细介绍。在实施中,当gw设备判定该报文的第三预设字段为更新提醒标志时,gw设备可以获取该报文中的第一预设字段携带的vm(即第一vm)的标识。步骤二,解析该报文的第二预设字段。其中,第二预设字段可以由技术人员根据经验进行设置。具体的,第二预设字段可以属于该报文的vxlan报文头中的保留未用字段。在实施中,当gw设备判定该报文的第三预设字段为更新提醒标志时,gw设备可以解析该报文的第二预设字段,判断第二预设字段是否为空。步骤三,如果第二预设字段为空,将arp表项中与第一vm对应的tag设置为空。在实施中,当gw设备判定该报文的第二预设字段为空时,gw设备可以将arp表项中与第一vm对应的tag设置为空。例如,如果更新前第一vm对应的arp表项为表(1),gw设备接收到的报文中携带有第一vm的标识和更新提醒标志,且该报文的第二预设字段为空,则更新后第一vm对应的arp表项可以参见表(5)。表(5)ip地址mac地址出接口tag10.1.1.21-1-1vxlan隧道-其中,10.1.1.2表示第一vm的ip地址,1-1-1表示第一vm的mac地址,vxlan隧道为gw设备与vtep之间的通信隧道,-表示gw设备在对报文进行vxlan封装时,不添加tag。步骤四,如果第二预设字段不为空,获取第二预设字段携带的目标tag,将arp表项中与第一vm对应的tag设置为目标tag。在实施中,当gw设备判定该报文的第二预设字段不为空时,gw设备可以获取第二预设字段携带的tag(即目标tag)。gw设备可以将arp表项中与第一vm对应的tag设置为目标tag。例如,如果更新前第一vm对应的arp表项为表(5),gw设备接收到的报文中携带有第一vm的标识和更新提醒标志,且该报文的第二预设字段为20,则更新后第一vm对应的arp表项可以参见表(6)。表(6)ip地址mac地址出接口tag10.1.1.21-1-1vxlan隧道20其中,10.1.1.2表示第一vm的ip地址,1-1-1表示第一vm的mac地址,vxlan隧道为gw设备与vtep之间的通信隧道,20表示gw设备在对报文进行vxlan封装时添加的tag的数值。参见图4,图4为本申请实施例提供的一种报文处理方法的示例的流程图,本实施例以该方法应用于图1中的vtep和gw设备为例进行说明,该方法可以包括以下步骤:s401:当接收到针对ac1的接入方式的修改指令时,vtep在记录的ac与vm的对应关系中,确定ac1对应的vm1,并对vm1发送的数据报文进行vxlan封装,得到目标报文。其中,修改指令中携带有目标接入方式的标识,目标接入方式的标识表示ethernet接入方式,修改指令中还携带有目标tag。目标报文的vxlan报文头中第一预设字段为vm1的标识、第二预设字段为目标tag、第三预设字段为预设的更新提醒标志。s402:vtep向gw设备发送目标报文。s403:gw设备判定目标报文中携带有预设的更新提醒标志,解析目标报文的第一预设字段,得到vm1的标识,获取第二预设字段携带的目标tag,将arp表项中与vm1对应的tag修改为目标tag,并根据更新后的arp表项对发往vm1的报文进行转发处理。参见图5,图5为本申请实施例提供的一种报文处理方法的示例的流程图,本实施例以该方法应用于图1中的vtep和gw设备为例进行说明,该方法可以包括以下步骤:s501:当接收到针对ac1的接入方式的修改指令时,vtep在记录的ac与vm的对应关系中,确定ac1对应的vm1,并对vm1发送的数据报文进行vxlan封装,得到目标报文。其中,修改指令中携带有目标接入方式的标识,目标接入方式的标识表示vlan接入方式。目标报文的vxlan报文头中第一预设字段为vm1的标识、第二预设字段为空、第三预设字段为预设的更新提醒标志。s502:vtep向gw设备发送目标报文。s503:gw设备判定目标报文中携带有预设的更新提醒标志,解析目标报文的第一预设字段,得到vm1的标识,判定目标报文的第二预设字段为空,将arp表项中与vm1对应的tag修改为空,并根据更新后的arp表项对发往vm1的报文进行转发处理。参见图6,图6为本申请实施例提供的一种报文处理方法的示例的流程图,本实施例以该方法应用于图1中的vtep和gw设备为例进行说明,该方法可以包括以下步骤:s601:当接收到针对ac1的接入方式的修改指令时,vtep在记录的ac与vm的对应关系中,确定ac1对应的vm1,并对预设的协议报文进行vxlan封装,得到目标报文。其中,修改指令中携带有目标接入方式的标识,目标接入方式的标识表示ethernet接入方式,修改指令中还携带有目标tag。目标报文的vxlan报文头中第一预设字段为vm1的标识、第二预设字段为目标tag、第三预设字段为预设的更新提醒标志。s602:vtep向gw设备发送目标报文。s603:gw设备判定目标报文中携带有预设的更新提醒标志,解析目标报文的第一预设字段,得到vm1的标识,获取第二预设字段携带的目标tag,将arp表项中与vm1对应的tag修改为目标tag,并根据更新后的arp表项对发往vm1的报文进行转发处理。参见图7,图7为本申请实施例提供的一种报文处理方法的示例的流程图,本实施例以该方法应用于图1中的vtep和gw设备为例进行说明,该方法可以包括以下步骤:s701:当接收到针对ac1的接入方式的修改指令时,vtep在记录的ac与vm的对应关系中,确定ac1对应的vm1,并对预设的协议报文进行vxlan封装,得到目标报文。其中,修改指令中携带有目标接入方式的标识,目标接入方式的标识表示vlan接入方式。目标报文的vxlan报文头中第一预设字段为vm1的标识、第二预设字段为空、第三预设字段为预设的更新提醒标志。s702:vtep向gw设备发送目标报文。s703:gw设备判定目标报文中携带有预设的更新提醒标志,解析目标报文的第一预设字段,得到vm1的标识,判定目标报文的第二预设字段为空,将arp表项中与vm1对应的tag修改为空,并根据更新后的arp表项对发往vm1的报文进行转发处理。由以上示例可见,基于本申请实施例的报文处理方法,当接收到针对ac1的接入方式的修改指令时,vtep可以在记录的ac与vm的对应关系中,确定ac1对应的vm1,根据vm1的标识、目标接入方式的标识和预设的更新提醒标志,生成目标报文,并发送至gw设备。gw设备判定目标报文中携带有预设的更新提醒标志,gw设备可以根据目标报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。基于上述处理,当vtep检测到ac1的接入方式发送变化时,可以及时提醒gw设备更新arp表项,使得gw设备可以根据更新后的arp表项对报文进行转发处理,进而避免网络业务中断。与图2的方法实施例相对应,参见图8,图8为本申请实施例提供的一种报文处理装置的结构图,装置应用于vxlan中的vtep,vxlan还包括gw设备,该装置包括:确定模块801,用于当接收到针对第一接入电路ac的接入方式的修改指令时,在记录的ac与虚拟机vm的对应关系中,确定所述第一ac对应的第一vm,其中,所述修改指令中携带有目标接入方式的标识;生成模块802,用于根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文;发送模块803,用于向所述gw设备发送所述更新提醒报文,以使所述gw设备根据所述更新提醒报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述生成模块802,具体用于如果所述目标接入方式的标识表示以太网ethernet接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标标签tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示虚拟局域网vlan接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。可选的,所述生成模块802,具体用于如果所述目标接入方式的标识表示ethernet接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示vlan接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。与图3的方法实施例相对应,参见图9,图9为本申请实施例提供的一种报文处理装置的结构图,该装置应用于vxlan中的gw设备,vxlan还包括vtep,该装置包括:判断模块901,用于当接收到所述vtep发送的报文时,判断所述报文中是否携带有预设的更新提醒标志;更新模块902,用于如果所述报文中携带有所述更新提醒标志,根据所述报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述更新模块902,具体用于解析所述报文的第一预设字段,得到第一虚拟机vm的标识;解析所述报文的第二预设字段;如果所述第二预设字段为空,将arp表项中与所述第一vm对应的tag设置为空;如果所述第二预设字段不为空,获取所述第二预设字段携带的目标tag,将所述arp表项中与所述第一vm对应的tag设置为所述目标tag。由以上可见,基于本申请实施例的报文处理装置,当接收到针对第一ac的接入方式的修改指令时,在记录的ac与vm的对应关系中,确定第一ac对应的第一vm,根据第一vm的标识、目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文,并发送至gw设备。gw设备可以根据更新提醒报文更新arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。基于上述处理,当vtep检测到ac的接入方式发送变化时,可以及时提醒gw设备更新arp表项,使得gw设备可以根据更新后的arp表项对报文进行转发处理,进而避免网络业务中断。本申请实施例还提供了一种电子设备,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,存储器1003,用于存放计算机程序;处理器1001,用于执行存储器1003上所存放的程序时,以使电子设备执行如下步骤,该步骤包括:当接收到针对第一接入电路ac的接入方式的修改指令时,在记录的ac与虚拟机vm的对应关系中,确定所述第一ac对应的第一vm,其中,所述修改指令中携带有目标接入方式的标识;根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文;向所述gw设备发送所述更新提醒报文,以使所述gw设备根据所述更新提醒报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文,包括:如果所述目标接入方式的标识表示以太网ethernet接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标标签tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示虚拟局域网vlan接入方式,当接收到所述第一vm发送的数据报文时,对所述数据报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。可选的,所述根据所述第一vm的标识、所述目标接入方式的标识和预设的更新提醒标志,生成更新提醒报文,包括:如果所述目标接入方式的标识表示ethernet接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为所述修改指令中携带的目标tag、第三预设字段为所述更新提醒标志;如果所述目标接入方式的标识表示vlan接入方式,对预设的协议报文进行vxlan封装,得到更新提醒报文,其中,所述更新提醒报文的vxlan报文头中第一预设字段为所述第一vm的标识、第二预设字段为空、第三预设字段为所述更新提醒标志。本申请实施例还提供了一种电子设备,如图11所示,包括处理器1101、通信接口1102、存储器1103和通信总线1104,其中,处理器1101,通信接口1102,存储器1103通过通信总线1104完成相互间的通信,存储器1103,用于存放计算机程序;处理器1101,用于执行存储器1103上所存放的程序时,以使电子设备执行如下步骤,该步骤包括:当接收到所述vtep发送的报文时,判断所述报文中是否携带有预设的更新提醒标志;如果所述报文中携带有所述更新提醒标志,根据所述报文更新地址解析协议arp表项,并根据更新后的arp表项对接收到的报文进行转发处理。可选的,所述根据所述报文更新arp表项,包括:解析所述报文的第一预设字段,得到第一虚拟机vm的标识;解析所述报文的第二预设字段;如果所述第二预设字段为空,将arp表项中与所述第一vm对应的标签tag设置为空;如果所述第二预设字段不为空,获取所述第二预设字段携带的目标tag,将所述arp表项中与所述第一vm对应的tag设置为所述目标tag。上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于上述电子设备与其他设备之间的通信。存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一应用于vtep的报文处理方法的步骤。在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一应用于gw设备的报文处理方法的步骤。在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一应用于vtep的报文处理方法。在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一应用于gw设备的报文处理方法。在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1