CN114866509B - 虚拟ip切换方法、装置和系统 - Google Patents

虚拟ip切换方法、装置和系统 Download PDF

Info

Publication number
CN114866509B
CN114866509B CN202210683349.4A CN202210683349A CN114866509B CN 114866509 B CN114866509 B CN 114866509B CN 202210683349 A CN202210683349 A CN 202210683349A CN 114866509 B CN114866509 B CN 114866509B
Authority
CN
China
Prior art keywords
virtual
message
unit
forwarding table
arp
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
CN202210683349.4A
Other languages
English (en)
Other versions
CN114866509A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202210683349.4A priority Critical patent/CN114866509B/zh
Publication of CN114866509A publication Critical patent/CN114866509A/zh
Priority to US18/063,006 priority patent/US11831598B2/en
Application granted granted Critical
Publication of CN114866509B publication Critical patent/CN114866509B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • 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/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开提供了虚拟IP切换方法、装置和系统,涉及人工智能领域,具体涉及云计算、云网络技术,可应用在智能云场景下。具体实现方案为:接收虚拟IP切换成功的虚拟机发送的免费ARP报文;根据所述免费ARP报文生成高可用虚拟IP的第一转发表;通过VXLAN将所述第一转发表封装在第一UDP报文中;将所述第一UDP报文同步到其它虚拟路由器。该实施方式实现了高可用虚拟IP的快速切换。

Description

虚拟IP切换方法、装置和系统
技术领域
本公开涉及人工智能领域,具体涉及云计算、云网络技术,可应用在智能云场景下。
背景技术
高可用虚拟IP(High-Availability Virtual IP Address,简称HaVip)是一种可以独立创建和释放的私网IP资源。HaVip可以与高可用软件(例如Keepalived)配合使用,搭建高可用主备服务,提高业务的可用性。目前HaVip的需求来源有多种。传统客户从Underlay网络迁移到Overlay网络后,需要客户改造适配负载均衡器或者其他妥协的方案,无法平滑迁移。一些服务强依赖于Havip机制,无法迁移到负载均衡器将极大阻碍迁移到Overlay网络(比如云)。大量的主备高可用需求,形成Havip产品对外售卖。其中,Overlay场景中流量转发网关均采用集群方式部署,ARP(Address Resolution Protocol,地址解析协议)切换后的Havip转发表项快速同步是目前比较难解决一个场景。现有技术主备切换时需要调用南北向接口通道,切换时间比较长。
发明内容
本公开提供了一种虚拟IP切换方法、装置、系统、设备、存储介质以及计算机程序产品。
根据本公开的第一方面,提供了一种虚拟IP切换方法,包括:接收虚拟IP切换成功的虚拟机发送的免费ARP报文;根据所述免费ARP报文生成高可用虚拟IP的第一转发表;通过VXLAN将所述第一转发表封装在第一UDP报文中;将所述第一UDP报文同步到其它虚拟路由器。
根据本公开的第二方面,提供了一种虚拟IP切换装置,包括:接收单元,被配置成接收虚拟IP切换成功的虚拟机发送的免费ARP报文;生成单元,被配置成根据所述免费ARP报文生成高可用虚拟IP的第一转发表;封装单元,被配置成通过VXLAN将所述第一转发表封装在第一UDP报文中;同步单元,被配置成将所述第一UDP报文同步到其它虚拟路由器。
根据本公开的第三方面,提供了一种虚拟IP切换系统,包括:至少两个虚拟路由器,被配置用于执行第一方面中任一项所述的方法;至少两个虚拟机,被配置用于向所述虚拟路由器集群发送免费ARP报文。
根据本公开的第四方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面中任一项所述的方法。
根据本公开的第五方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面中任一项所述的方法。
根据本公开的第六方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现第一方面中任一项所述的方法。
本公开的实施例提供的虚拟IP切换的方法、装置和系统,高可用虚拟IP绑定了虚拟机VM1或者VM2中的一台机器,此处假设先在VM2。在Vswitch(虚拟交换机)侧放行该高可用虚拟IP的免费ARP以及目的地址为网关的ARP响应报文,并将该类ARP导给Vrouter(虚拟路由器)。在高可用虚拟IP切换过程(比如高可用虚拟IP从VM2切到VM1)可以提高切换速度,达到毫秒级。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的虚拟IP切换方法的一个实施例的流程图;
图3是根据本公开的虚拟IP切换方法的一个应用场景的示意图;
图4是根据本公开的虚拟IP切换方法的又一个实施例的流程图;
图5是根据本公开的虚拟IP切换装置的一个实施例的结构示意图;
图6是适于用来实现本公开的实施例的电子设备的计算机系统的结构示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了可以应用本公开的虚拟IP切换方法或虚拟IP切换装置的实施例的示例性系统架构。
如图1所示,系统架构可包括中控节点、控制节点、至少两个虚拟路由器、至少两个虚拟机。
每个虚拟机位于不同的计算节点(CN),每个计算节点对应一个虚拟交换机。多个虚拟机中有一个作为主虚拟机。Havip切换到主虚拟机后,主虚拟机会向虚拟路由器发送免费ARP报文(包括了<havip,mac,vtep>关系)。Gratuitous ARP也称为免费ARP,无故ARP。Gratuitous ARP不同于一般的ARP请求,它并非期待得到ip对应的mac地址,而是当主机启动的时候,将发送一个Gratuitous arp请求,即请求自己的ip地址的mac地址。
虚拟路由器可以接收到免费ARP报文,然后根据所述免费ARP报文生成高可用虚拟IP的转发表。再将转发表同步到其它虚拟路由器。
控制节点用于控制虚拟路由器,可将虚拟路由器中的转发表上传到中控节点,也可将中控节点统一的转发表发给虚拟路由器。虚拟路由器接收到控制节点发送的转发表后更新本地存储的路由表,从而实现虚拟路由器集群中转发表的一致性。这样当业务数据到达任何一个虚拟路由器时,都会被正确的导向主虚拟机。
中控节点可以从控制节点实时采集高可用虚拟IP的转发表。然后从中选择出统一的转发表(可选择最新的转发表或者出现频次最多的转发表,例如5个虚拟路由器中有3个上报相同的转发表,则使用该转发表作为统一的转发表)发送给所有的控制节点。再由控制节点下载到虚拟路由器中。
在本实施例的一些可选的实现方式中,至少两个虚拟机进一步被配置成:响应于接收到ARP PING报文,发送ARP应答消息。这样由虚拟路由器主动发起主虚拟机检测,可以防止主虚拟机发送免费ARP报文丢失,从而导致虚拟路由器无法得知正确的转发表的情况。
在本实施例的一些可选的实现方式中,中控节点,被配置成采集所述至少一个虚拟路由器的高可用虚拟IP的转发表,从中选择出统一的目标转发表,将所述目标转发表添加上时间戳后发送给所述至少一个虚拟路由器。如果虚拟路由器与虚拟机之间的物理网络链路中断,则虚拟路由器中的转发表与从中控节点下载的转发表的时间差距较大。因此通过比对转发表的时间差可以检测虚拟路由器与虚拟机之间的物理网络链路是否中断。
继续参考图2,示出了根据本公开的虚拟IP切换方法的一个实施例的流程200。该虚拟IP切换方法,包括以下步骤:
步骤201,接收虚拟IP切换成功的虚拟机发送的免费ARP报文。
在本实施例中,虚拟IP切换方法的执行主体(例如图1所示的虚拟路由器Vrouter)可通过有线或无线的物理网络接收免费ARP报文。在高可用虚拟IP切换过程(比如高可用虚拟IP从VM2切到VM1),VM1一般会发送多个免费ARP报文,物理网络采用5元组HASH机制,免费ARP流量只到了Vrouter集群中的一台Vrouter机器。5元组为源ip+目的ip+源端口+目的端口+协议。协议可以是TCP、UDP、ICMP等通信协议。
免费ARP报文中包括havip,mac,vtep,还可包括vni。
步骤202,根据免费ARP报文生成高可用虚拟IP的第一转发表。
在本实施例中,根据免费ARP报文中的<havip,mac,vtep>关系生成一条HAVIP转发表项用于指导转发。目前只有单台Vrouter收到并生成转发表。为了和根据其它报文生成的转发表进行区分,根据免费ARP报文生成的转发表命名为第一转发表。对于不同的租户(vni标识)也可生成不同的转发表。
步骤203,通过VXLAN将第一转发表封装在第一UDP报文中。
在本实施例中,为了让全集群学习到该表项,Vrouter将免费ARP中<havip,mac,vtep>关系通过SYN(同步)单元同步到所有Vrouter,不需要与其他Vrouter建立连接(封装在VXLAN中内层为UDP报文,UDP数据部分为上述关系信息)。
步骤204,将第一UDP报文同步到其它虚拟路由器。
在本实施例中,同步不限制采用单独组播、网关组播VXLAN报文的组播方式同步。其他Vrouter收到同步的<havip,mac,vtep>关系,生成HAVIP表项用于指导转发。如果当前生成转发表的虚拟路由器被配置成组播,则可直接将转发表同步给所有的虚拟路由器。如果当前生成转发表的虚拟路由器被配置成单播,则可将转发表同步给组播的虚拟路由器,由该组播的虚拟路由器向其它所有的虚拟路由器同步发送第一UDP报文。其它虚拟路由器接收到第一UDP报文,可以从第一UDP报文中解析出<havip,mac,vtep>关系。从而得到转发表。当有业务数据到达任一虚拟路由器时,该虚拟路由器可根据转发表将业务数据发送到虚拟IP对应的虚拟机。
本公开的上述实施例提供的方法,高可用虚拟IP绑定了VM2时,所有访问高可用虚拟IP的流量均通过Vrouter集群转发到VM2,即使是同CN的其他VM访问该高可用虚拟IP。当高可用虚拟IP切换到VM1时,因为Vrouter采用数据面同步机制将高可用虚拟IP变更的转发表项快速同步到所有Vrouter(MS级别),流量会在MS级别切换到了VM1。远快于在计算节点监听VM的免费ARP,然后调用南北向接口进行切换机制。
在本实施例的一些可选的实现方式中,该方法还包括:接收中控节点下发的包括时间戳的高可用虚拟IP的第三转发表;计算本地存储的第一转发表的时间与所述时间戳的时间差;若时间差大于预定值,则输出物理网络链路故障告警信息。为了发现物理网络链路故障导致的问题,CCTL(中控节点)实时采集对应的HAVIP表项<havip,mac,vtep,timestamp>,每个表项后面带有变更时间戳。CCTL再将该表项下发给所有的虚拟路由器,每个虚拟路由器根据以此进行对比,如果Timestamp距离现在差值较大,且多次不一致将进行故障通知。从而可以快速、准确地检测出物理网络链路故障,方便定位问题。
在本实施例的一些可选的实现方式中,将所述第一UDP报文同步到其它虚拟路由器,包括:在单位时间内将第一预定数目个所述第一UDP报文同步到其它虚拟路由器。为了防止ARP攻击,对ARP的报文按照租户的HAVIP粒度,做一定的限速处理。对于免费ARP报文,当HAVIP切换导致表项变更,可以前0.1ms内连续放行5个报文。
在本实施例的一些可选的实现方式中,将所述第二UDP报文同步到其它虚拟路由器,包括:在单位时间内将第二预定数目个所述第二UDP报文同步到其它虚拟路由器。对于ARPING的由网关发起的ARP请求应答,1s放行3个报文。第二预定数目小于第一预定数目,即,免费ARP的速度比ARP应答消息的速度快。可以防止ARP攻击,保证网络安全可靠。
继续参见图3,图3是根据本实施例的虚拟IP切换方法的应用场景的一个示意图。在图3的应用场景中,虚拟IP从VM1切换到VM2。VM2向根据HASH五元组计算出的vrouter1发免费ARP。vrouter1根据免费ARP中的<havip,mac,vtep>关系生成转发表。并通过VXLAN协议将转发表封装成UDP报文,通过组播的方式发送到vrouter2和vrouter3。vrouter2和vrouter3从UDP报文中解析出转发表存储在本地。后续vrouter1、vrouter2和vrouter3接收到的业务数据都会通过转发表寻址到VM2。
进一步参考图4,其示出了虚拟IP切换方法的又一个实施例的流程400。该虚拟IP切换方法的流程400,包括以下步骤:
步骤401,发送ARP PING报文。
在本实施例中,虚拟IP切换方法的执行主体(例如图1所示的任一虚拟路由器Vrouter)可利用Arping发送ARP PING报文。Arping是一个ARP级别的ping工具,可用来直接ping MAC地址,以及找出虚拟IP被哪个虚拟机使用了。
步骤402,接收虚拟IP切换成功的虚拟机发送的ARP应答消息。
在本实施例中,使用虚拟IP的虚拟机会响应PING报文,ARP应答消息中同样包括havip,mac,vtep,还可包括vni。接收到ARP应答消息的虚拟路由器不一定是发送ARP PING报文的虚拟路由器。而是由五元组HASH确定出哪个虚拟路由器能接收到ARP应答消息。
步骤403,根据ARP应答消息生成高可用虚拟IP的第二转发表。
在本实施例中,根据ARP应答消息中的<havip,mac,vtep>关系生成一条HAVIP转发表项用于指导转发。目前只有单台Vrouter收到并生成转发表。为了和根据其它报文生成的转发表进行区分,根据ARP应答消息生成的转发表命名为第二转发表。
步骤404,通过VXLAN将第二转发表封装在第二UDP报文中。
在本实施例中,为了让全集群学习到该表项,Vrouter将ARP应答消息中<havip,mac,vtep>关系通过SYN(同步)单元同步到所有Vrouter,不需要与其他Vrouter建立连接(封装在VXLAN中内层为UDP报文,UDP数据部分为上述关系信息)。
步骤405,将第二UDP报文同步到其它虚拟路由器。
在本实施例中,同步不限制采用单独组播、网关组播VXLAN报文的组播方式同步。其他Vrouter收到同步的<havip,mac,vtep>关系,生成HAVIP表项用于指导转发。如果当前生成转发表的虚拟路由器被配置成组播,则可直接将转发表同步给所有的虚拟路由器。如果当前生成转发表的虚拟路由器被配置成单播,则可将转发表同步给组播的虚拟路由器,由该组播的虚拟路由器向其它所有的虚拟路由器同步发送第二UDP报文。其它虚拟路由器接收到第二UDP报文,可以从第二UDP报文中解析出<havip,mac,vtep>关系。从而得到转发表。当有业务数据到达任一虚拟路由器时,该虚拟路由器可根据转发表将业务数据发送到虚拟IP对应的虚拟机。
在本实施例的一些可选的实现方式中,将所述第二UDP报文同步到其它虚拟路由器,包括:在单位时间内将第二预定数目个所述第二UDP报文同步到其它虚拟路由器。为了防止ARP攻击,对ARP的报文按照租户的HAVIP粒度,做一定的限速处理。对于ARPING的由网关发起的ARP请求应答,1s放行3个报文。第二预定数目小于第一预定数目,即,免费ARP的速度比ARP应答消息的速度快。可以防止ARP攻击,保证网络安全可靠。
从图4中可以看出,与图2对应的实施例相比,本实施例中的虚拟IP切换方法的流程400体现了对免费ARP报文进行丢失补救的步骤。由此,即使免费ARP报文丢失,也可通过虚拟路由器主动ARPING的方式获得ARP响应消息,从而得到转发表。除了因切换导致的免费ARP切换外,可主动在vouter集群中随机选择一台Vrouter发送ARPing进行秒级探测所有的将会绑定Havip的VM,比如图3中VM1,VM2(其源地址为VM网关地址),绑定了Havip的VM根据Arp请求报文,将触发Havip Arp应答报文到某台Vrouter。Vrouter同时识别该类由Vrouter网关接口发送的ARP响应进行如流程200所述步骤的学习,从而达到自愈能力。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种虚拟IP切换装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的虚拟IP切换装置500包括:接收单元501、生成单元502、封装单元503和同步单元504。其中,接收单元501、生成单元502、封装单元503和同步单元504。其中,接收单元501,被配置成接收虚拟IP切换成功的虚拟机发送的免费ARP报文;生成单元502,被配置成根据所述免费ARP报文生成高可用虚拟IP的第一转发表;封装单元503,被配置成通过VXLAN将所述第一转发表封装在第一UDP报文中;同步单元504,被配置成将所述第一UDP报文同步到其它虚拟路由器。
在本实施例中,虚拟IP切换装置500的接收单元501、生成单元502、封装单元503和同步单元504的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203、步骤204。
在本实施例的一些可选的实现方式中,装置500还包括:检测单元(附图中未示出),被配置成发送ARP PING报文;接收单元进一步被配置成:接收虚拟IP切换成功的虚拟机发送的ARP应答消息;生成单元进一步被配置成:根据所述ARP应答消息生成高可用虚拟IP的第二转发表;封装单元进一步被配置成:通过VXLAN将所述第二转发表封装在第二UDP报文中;同步单元进一步被配置成:将所述第二UDP报文同步到其它虚拟路由器。
在本实施例的一些可选的实现方式中,装置500还包括网络排障单元(附图中未示出),被配置成:接收中控节点下发的包括时间戳的高可用虚拟IP的第三转发表;计算本地存储的第一转发表的时间与所述时间戳的时间差;若时间差大于预定值,则输出物理网络链路故障告警信息。
在本实施例的一些可选的实现方式中,装置500还包括限速单元(附图中未示出),被配置成:在单位时间内将第一预定数目个所述第一UDP报文发送到同步单元;同步单元进一步被配置成将从限速单元接收到的第一UDP报文同步到其它虚拟路由器。
在本实施例的一些可选的实现方式中,装置500还包括限速单元,被配置成:在单位时间内将第二预定数目个所述第一UDP报文发送到同步单元;同步单元进一步被配置成将从限速单元接收到的第二UDP报文同步到其它虚拟路由器。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行流程200或400所述的方法。
一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行流程200或400所述的方法。
一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现流程200或400所述的方法。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如虚拟IP切换方法。例如,在一些实施例中,虚拟IP切换方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的虚拟IP切换方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行虚拟IP切换方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (16)

1.一种虚拟IP切换方法,包括:
接收虚拟IP切换成功的虚拟机发送的免费ARP报文,其中,所述免费ARP报文中包括havip,mac,vtep和vni;
根据所述免费ARP报文生成针对不同租户的高可用虚拟IP的第一转发表;
通过VXLAN将所述第一转发表封装在第一UDP报文中;
将所述第一UDP报文同步到其它虚拟路由器,其中,对ARP的报文按照租户的havip粒度,做限速处理,同步方式采用单独组播或网关组播VXLAN报文的组播方式。
2.根据权利要求1所述的方法,其中,所述方法还包括:
发送ARP PING报文;
接收虚拟IP切换成功的虚拟机发送的ARP应答消息;
根据所述ARP应答消息生成高可用虚拟IP的第二转发表;
通过VXLAN将所述第二转发表封装在第二UDP报文中;
将所述第二UDP报文同步到其它虚拟路由器。
3.根据权利要求1所述的方法,其中,所述方法还包括:
接收中控节点下发的包括时间戳的高可用虚拟IP的第三转发表;
计算本地存储的第一转发表的时间与所述时间戳的时间差;
若时间差大于预定值,则输出物理网络链路故障告警信息。
4.根据权利要求1所述的方法,其中,所述将所述第一UDP报文同步到其它虚拟路由器,包括:
在单位时间内将第一预定数目个所述第一UDP报文同步到其它虚拟路由器。
5.根据权利要求2所述的方法,其中,所述将所述第二UDP报文同步到其它虚拟路由器,包括:
在单位时间内将第二预定数目个所述第二UDP报文同步到其它虚拟路由器。
6.一种虚拟IP切换装置,包括:
接收单元,被配置成接收虚拟IP切换成功的虚拟机发送的免费ARP报文,其中,所述免费ARP报文中包括havip,mac,vtep和vni;
生成单元,被配置成根据所述免费ARP报文生成针对不同租户的高可用虚拟IP的第一转发表;
封装单元,被配置成通过VXLAN将所述第一转发表封装在第一UDP报文中;
同步单元,被配置成将所述第一UDP报文同步到其它虚拟路由器,其中,对ARP的报文按照租户的havip粒度,做限速处理,同步方式采用单独组播或网关组播VXLAN报文的组播方式。
7.根据权利要求6所述的装置,其中,所述装置还包括:
检测单元,被配置成发送ARP PING报文;
接收单元进一步被配置成:接收虚拟IP切换成功的虚拟机发送的ARP应答消息;
生成单元进一步被配置成:根据所述ARP应答消息生成高可用虚拟IP的第二转发表;
封装单元进一步被配置成:通过VXLAN将所述第二转发表封装在第二UDP报文中;
同步单元进一步被配置成:将所述第二UDP报文同步到其它虚拟路由器。
8.根据权利要求6所述的装置,其中,所述装置还包括网络排障单元,被配置成:
接收中控节点下发的包括时间戳的高可用虚拟IP的第三转发表;
计算本地存储的第一转发表的时间与所述时间戳的时间差;
若时间差大于预定值,则输出物理网络链路故障告警信息。
9.根据权利要求6所述的装置,其中,所述装置还包括限速单元,被配置成:
在单位时间内将第一预定数目个所述第一UDP报文发送到同步单元;
同步单元进一步被配置成将从限速单元接收到的第一UDP报文同步到其它虚拟路由器。
10.根据权利要求7所述的装置,其中,所述装置还包括限速单元,被配置成:
在单位时间内将第二预定数目个所述第一UDP报文发送到同步单元;
同步单元进一步被配置成将从限速单元接收到的第二UDP报文同步到其它虚拟路由器。
11.一种虚拟IP切换系统,包括:
至少两个虚拟路由器,被配置用于执行权利要求1-5中任一项所述的方法;
至少两个虚拟机,被配置用于向所述虚拟路由器集群发送免费ARP报文。
12.根据权利要求11所述的系统,其中,所述至少两个虚拟机进一步被配置成:
响应于接收到ARPING报文,发送ARP应答消息。
13.根据权利要求11所述的系统,其中,所述系统还包括:
中控节点,被配置成采集所述至少一个虚拟路由器的高可用虚拟IP的转发表,从中选择出统一的目标转发表,将所述目标转发表添加上时间戳后发送给所述至少一个虚拟路由器。
14.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-5中任一项所述的方法。
16.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-5中任一项所述的方法。
CN202210683349.4A 2022-06-16 2022-06-16 虚拟ip切换方法、装置和系统 Active CN114866509B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210683349.4A CN114866509B (zh) 2022-06-16 2022-06-16 虚拟ip切换方法、装置和系统
US18/063,006 US11831598B2 (en) 2022-06-16 2022-12-07 Method, apparatus and system for switching virtual IP

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210683349.4A CN114866509B (zh) 2022-06-16 2022-06-16 虚拟ip切换方法、装置和系统

Publications (2)

Publication Number Publication Date
CN114866509A CN114866509A (zh) 2022-08-05
CN114866509B true CN114866509B (zh) 2024-04-26

Family

ID=82625323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210683349.4A Active CN114866509B (zh) 2022-06-16 2022-06-16 虚拟ip切换方法、装置和系统

Country Status (2)

Country Link
US (1) US11831598B2 (zh)
CN (1) CN114866509B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2536068A1 (en) * 2011-06-18 2012-12-19 Deutsche Telekom AG Virtual subscriber management
WO2017113344A1 (zh) * 2015-12-31 2017-07-06 华为技术有限公司 一种软件定义数据中心及其中的服务集群的部署方法
CN112637105A (zh) * 2019-09-24 2021-04-09 中国电信股份有限公司 切换防火墙的方法、系统、装置及计算机可读存储介质
CN114244810A (zh) * 2020-09-07 2022-03-25 中兴通讯股份有限公司 虚拟ip管理方法、装置、电子设备和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840395B2 (en) * 2006-03-10 2010-11-23 Edsa Micro Corporation Systems and methods for predictive monitoring including real-time strength and security analysis in an electrical power distribution system
US9374323B2 (en) * 2013-07-08 2016-06-21 Futurewei Technologies, Inc. Communication between endpoints in different VXLAN networks
US11550616B2 (en) * 2019-08-30 2023-01-10 Nutanix, Inc. Virtual IP support for bare metal cloud infrastructures
US11658933B2 (en) * 2020-12-31 2023-05-23 Juniper Networks, Inc. Dynamically learning media access control and internet protocol addresses
US11570097B1 (en) * 2021-07-22 2023-01-31 Vmware, Inc> Overlay broadcast network for management traffic
US11595470B1 (en) * 2021-09-17 2023-02-28 Vmware, Inc. Resolving L2 mapping conflicts without reporter synchronization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2536068A1 (en) * 2011-06-18 2012-12-19 Deutsche Telekom AG Virtual subscriber management
WO2017113344A1 (zh) * 2015-12-31 2017-07-06 华为技术有限公司 一种软件定义数据中心及其中的服务集群的部署方法
CN112637105A (zh) * 2019-09-24 2021-04-09 中国电信股份有限公司 切换防火墙的方法、系统、装置及计算机可读存储介质
CN114244810A (zh) * 2020-09-07 2022-03-25 中兴通讯股份有限公司 虚拟ip管理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN114866509A (zh) 2022-08-05
US11831598B2 (en) 2023-11-28
US20230108522A1 (en) 2023-04-06

Similar Documents

Publication Publication Date Title
US10033667B1 (en) Enhanced virtual router redundancy protocol
EP3346661B1 (en) Path detection method and device
US10061664B2 (en) High availability and failover
US20240345988A1 (en) Message forwarding method and apparatus based on remote direct data storage, and network card and device
US9529623B2 (en) Method, migration management apparatus, network device, and virtual machine server for migrating virtual machine parameters
US9036638B2 (en) Avoiding unknown unicast floods resulting from MAC address table overflows
CN113261240A (zh) 使用可编程客户机进行多租户隔离
CN111736958B (zh) 虚拟机迁移方法、系统、计算机设备及存储介质
US20160173267A1 (en) Method and Apparatus for Processing Time Synchronization
US20160352633A1 (en) Operations, administration and management (oam) in overlay data center environments
WO2020135568A1 (en) Client-equipment-peering virtual route controller
CN113261242A (zh) 使用可编程交换机进行覆盖网络路由
US20240272932A1 (en) Method and apparatus for live migration based on remote direct memory access, and device
CN115225634B (zh) 虚拟网络下的数据转发方法、装置及计算机程序产品
CN107682406B (zh) 一种业务处理的方法、装置以及系统
CN106302076B (zh) 建立vxlan隧道的方法、系统及sdn控制器
US20180262387A1 (en) Restoring control-plane connectivity with a network management entity
CN111988439A (zh) 一种arp请求抑制系统、方法、设备及存储介质
CN106716870B (zh) 卫星设备处的本地分组交换
Yang et al. A case for SDN-based network virtualization
US11303701B2 (en) Handling failure at logical routers
CN109120556B (zh) 一种云主机访问对象存储服务器的方法及系统
US20150055662A1 (en) Internet group management protocol (igmp) leave message processing synchronization
Zhang et al. Fast network flow resumption for live virtual machine migration on sdn
CN106921553B (zh) 在虚拟网络中实现高可用的方法及系统

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