CN114760263B - 一种地址解析方法、云平台及介质 - Google Patents

一种地址解析方法、云平台及介质 Download PDF

Info

Publication number
CN114760263B
CN114760263B CN202210319411.1A CN202210319411A CN114760263B CN 114760263 B CN114760263 B CN 114760263B CN 202210319411 A CN202210319411 A CN 202210319411A CN 114760263 B CN114760263 B CN 114760263B
Authority
CN
China
Prior art keywords
address resolution
address
request message
resolved
proxy
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
CN202210319411.1A
Other languages
English (en)
Other versions
CN114760263A (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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information 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 Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202210319411.1A priority Critical patent/CN114760263B/zh
Publication of CN114760263A publication Critical patent/CN114760263A/zh
Application granted granted Critical
Publication of CN114760263B publication Critical patent/CN114760263B/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
    • 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]

Landscapes

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

Abstract

本申请公开了一种地址解析方法、云平台及介质,包括:通过云平台中的控制平面将虚拟机信息下发至地址解析服务器;虚拟机信息包括云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息;通过部署于各计算节点的地址解析代理获取本地节点中虚拟机发送的ARP请求报文,并将ARP请求报文封装为地址解析请求报文,发送至地址解析服务器;通过地址解析服务器基于虚拟机信息解析出请求解析的IP地址对应的MAC地址和当前位置信息,以得到解析MAC地址和目标位置信息,基于解析MAC地址和目标位置信息封装地址解析应答报文,并将地址解析应答报文返回至相应的地址解析代理。能够提高控制平面的性能,从而提升用户体验。

Description

一种地址解析方法、云平台及介质
技术领域
本申请涉及云计算领域,特别涉及一种地址解析方法、云平台及介质。
背景技术
大规模公有云平台对于整个系统的性能有着极高的要求,系统的性能包括控制平面性能和数据平面性能。目前,基于全分布式路由架构的虚拟网络实现机制,通过将VPC(即Virtual Private Cloud,虚拟私有云)虚拟路由器分散到各个计算节点,实现东西向三层流量的本地路由和转发,在一定程度了提高了系统的数据平面性能,然而其在计算节点上引入的虚拟网络全量地址解析和虚拟路由器中的VPC内实例的全量地址映射,给系统的控制平面带来了巨大的压力,导致控制平面节点的CPU使用率飙升而无法进行正常操作,严重影响用户的体验。
发明内容
有鉴于此,本申请的目的在于提供一种地址解析方法、云平台及介质,能够提高控制平面的性能,从而提升用户体验。其具体方案如下:
第一方面,本申请公开了一种地址解析方法,包括:
通过云平台中的控制平面将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息;
通过部署于各计算节点的地址解析代理获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址;
通过所述地址解析服务器基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理。
可选的,所述将所述地址解析应答报文返回至相应的所述地址解析代理之后,还包括:
通过所述地址解析代理基于所述地址解析应答报文生成ARP请求报文对应的ARP应答报文,并将所述ARP应答报文下发至相应的所述虚拟机。
可选的,还包括:
通过所述地址解析服务器缓存最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理;
当缓存中的任一所述解析MAC地址对应的虚拟机的当前位置信息变更,或任一所述解析MAC地址或所述请求解析的IP地址发生变更,则将相应的变更信息发送至相应的所述地址解析代理。
可选的,所述将所述地址解析应答报文返回至相应的所述地址解析代理之后,还包括:
通过所述地址解析代理缓存所述地址解析应答报文;
其中,所述地址解析应答报文的缓存时间的时长小于所述最近预设时间段的时长。
可选的,还包括:
向各计算节点中的虚拟交换机下发预设ARP拦截规则;
通过所述虚拟交换机基于所述预设ARP拦截规则拦截本地节点中的虚拟机发送的ARP请求报文,并将所述ARP请求报文发送给本地节点中的所述地址解析代理。
可选的,还包括:
部署地址解析专用虚拟网络;
将所述地址解析代理以及所述地址解析服务器连接到所述地址解析专用虚拟网络。
可选的,还包括:
在所述地址解析代理中配置ECMP路由;
相应的,所述将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器,包括:
将所述ARP请求报文封装为地址解析请求报文,基于所述ECMP路由发送至地址解析服务器集群中的地址解析服务器。
第二方面,本申请公开了一种云平台,包括控制平面、地址解析服务器以及部署于各计算节点的地址解析代理,其中,
所述控制平面,用于将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息;
所述地址解析代理,用于获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址;
所述地址解析服务器,用于基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理。
可选的,所述地址解析服务器还用于:
缓存最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理;
当缓存中的任一所述解析MAC地址对应的虚拟机的当前位置信息变更,或任一所述解析MAC地址或所述请求解析的IP地址发生变更,则将变更后的信息发送至相应的所述地址解析代理。
第三方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述的地址解析方法。
可见,本申请通过云平台中的控制平面将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息,并通过部署于各计算节点的地址解析代理获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址,之后通过所述地址解析服务器基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理。也即,本申请中,控制平面只需将云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息下发至地址解析服务器,在进行地址解析的过程中,通过各计算节点部署的地址解析代理将地址解析请求报文发送至地址解析服务器,由地址解析服务器进行解析,并将相应的响应报文返回至地址解析服务代理,这样,避免了向各计算节点下发全量地址映射规则和虚拟路由器中的VPC内实例的全量地址映射规则,大幅减少了控制平面与数据平面的交互频率,大大降低了控制平面与数据平面的交互的信令开销,能够有效降低控制平面的CPU使用率,提高控制平面的性能,提升用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种地址解析方法流程图;
图2为本申请公开的一种具体的云平台架构图;
图3为本申请公开的一种具体的地址解析请求报文格式示意图;
图4为本申请公开的一种具体的地址解析应答报文格式示意图;
图5为本申请公开的一种具体的集群化地址解析服务器架构的交互示意图;
图6为本申请公开的一种云平台结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,全分布式路由架构在大规模公有云的虚拟网络实现中有着广泛的应用,其通过将租户VPC的虚拟路由器以分布式的方式部署在与该租户虚拟资源有关联的所有计算节点上,各计算节点上的虚拟路由器只负责当前节点上该VPC内虚拟资源间跨子网流量的路由和转发,以及进出网流量的地址转换,如出网流量的SNAT(即Source Network AddressTranslation,源网络地址转换)、入网流量的DNAT(即Destination Network AddressTranslation,目的网络地址转换)。这种分布式架构带来的好处是可大幅提升云平台数据平面的性能,东西向流量,即租户VPC内不同子网之间的三层流量,可直接由发送方所在计算节点的本地虚拟路由器进行路由和转发,无需像传统集中式路由架构那样经过一个集中式的路由器进行路由和转发,这可以大大提高大规模公有云环境下的租户VPC内虚拟实例之间的通信容量,提高底层物理网络的利用率,提升云上业务的用户体验。在提升云平台数据平面性能的同时,这种架构也给控制平面带来了较大压力,如为了解决虚拟网络内大规模ARP(即Address Resolution Protocol,地址解析协议)泛洪问题,OpenStack社区针对全分布式路由架构采取了本地代答的方式实现,即在各个计算节点上下发所有有可能与本节点上虚拟实例进行通信的对端的IP地址和MAC(即Media Access Control,媒体访问控制)地址映射关系规则,这样给系统的控制平面带来了巨大的压力,导致控制平面节点的CPU使用率飙升而无法进行正常操作,严重影响用户的体验。为此,本申请提供了一种地址解析方案,能够提高控制平面的性能,从而提升用户体验。
参见图1所示,本申请实施例公开了一种地址解析方法,包括:
步骤S11:通过云平台中的控制平面将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息。
其中,虚拟机的当前位置信息即为虚拟机当前所在节点,也即,本申请中,控制平面将控制平面将虚拟机信息下发至地址解析服务器,有地址解析服务器记录云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息。
步骤S12:通过部署于各计算节点的地址解析代理获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址。
在具体的实施方式中,本申请实施例可以部署地址解析专用虚拟网络;将所述地址解析代理以及所述地址解析服务器连接到所述地址解析专用虚拟网络。
并且,在具体的实施方式中,可以向各计算节点中的虚拟交换机下发预设ARP拦截规则;通过所述虚拟交换机基于所述预设ARP拦截规则拦截本地节点中的虚拟机发送的ARP请求报文,并将所述ARP请求报文发送给本地节点中的所述地址解析代理。
其中,地址解析请求报文可以本地地址解析代理IP、操作类型(如地址解析请求)、请求方IP、请求方MAC、请求方网络ID和请求解析的IP等。
也即,地址解析代理进行ARP请求报文的协议转换,将转换后携带请求方IP、请求方MAC、请求方网络ID以及请求解析的IP等信息的报文通过地址解析虚拟网络发送给地址解析服务器。
步骤S13:通过所述地址解析服务器基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理。
也即,地址解析服务器根据本地记录,响应地址解析请求,响应报文携带请求解析的IP、请求解析的MAC、请求方IP、请求方MAC、请求方网络ID、资源实例当前所处计算节点的IP等信息。
并且,本申请实施例通过所述地址解析代理基于所述地址解析应答报文生成ARP请求报文对应的ARP应答报文,并将所述ARP应答报文下发至相应的所述虚拟机,同时下发本地转发规则,比如,虚拟交换机的转发流表,从而打通虚拟机实例与目的虚拟机实例之间的一条虚拟通道。
也即,本申请实施例引入专门的地址解析服务器,实现虚拟网络中的IP地址到MAC地址的映射,在各个计算节点上部署一个地址解析代理,用于地址解析请求的中继和协议转换,并且独立部署一个专门用于地址解析的虚拟网络,该虚拟网络拥有独立的网络ID,如VXLAN网络的VXLAN ID或VLAN网络的VLAN ID,地址解析代理和地址解析服务器均连接到该地址解析网络上,在各个计算节点的虚拟交换机上下发一个ARP地址解析的拦截流表,将本地虚拟实例的所有APR地址解析请求拦截下来转交给本地的地址解析代理,本地的地址解析代理根据地址解析请求报文中的信息,重新封装一个地址解析请求报文,报文结构中包含:发起解析请求的节点IP地址和MAC地址,租户的ID(如VXLAN网络的VXLAN ID或VLAN网络的VLAN ID),请求解析的IP地址等信息,封装完成后将请求报文经过地址解析虚拟网络发送给地址解析服务器,而地址解析服务器与控制平面交互,记录整个平台虚拟网络全量的IP地址与MAC地址映射关系及IP和MAC对应虚拟实例当前所在的节点信息,并应答来自各计算节点的地址解析请求,各计算节点上的地址解析代理根据地址解析服务器返回的应答信息,生成本地ARP应答报文应答给源虚拟实例,同时在本计算节点下发通往目的虚拟机的转发规则,如虚拟交换机上的转发流表,打通源虚拟实例与目的虚拟实例之间的一条虚拟通道。
可见,本申请中,控制平面只需将云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息下发至地址解析服务器,在进行地址解析的过程中,通过各计算节点部署的地址解析代理将地址解析请求报文发送至地址解析服务器,由地址解析服务器进行解析,并将相应的响应报文返回至地址解析服务代理,这样,避免了向各计算节点下发全量地址映射规则和虚拟路由器中的VPC内实例的全量地址映射规则,大幅减少了控制平面与数据平面的交互频率,大大降低了控制平面与数据平面的交互的信令开销,能够有效降低控制平面的CPU使用率,提高控制平面的性能,提升用户体验。
进一步的,本申请实施例可以通过所述地址解析服务器缓存最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理;当缓存中的任一所述解析MAC地址对应的虚拟机的当前位置信息变更,或任一所述解析MAC地址或所述请求解析的IP地址发生变更,则将相应的变更信息发送至相应的所述地址解析代理。也即,请求解析的虚拟机发生变更,通知请求解析该虚拟机地址信息的地址解析代理。可以理解的是,本申请实施例中通过地址解析服务器记录最近一段时间被解析过的IP地址和MAC地址对应关系,以及请求解析该IP地址和MAC地址对应关系的地址解析代理列表,当虚机实例发生迁移,或者IP地址发生变更,或MAC地址发生变更时,地址解析服务器根据记录的最近解析过地址解析代理列表,通知相应的地址解析代理更新本地的转发规则,以保证后续通信能够正常进行。
另外,本申请中,在将所述地址解析应答报文返回至相应的所述地址解析代理之后,还可以通过所述地址解析代理缓存所述地址解析应答报文;其中,所述地址解析应答报文的缓存时间的时长小于所述最近预设时间段的时长。并且,所述地址解析代理缓存还缓存本地转发规则。
也即,本申请中,VPC内虚拟资源的IP或MAC发生变更,或因虚拟资源发生迁移而导致位置变更时,地址解析服务器需根据缓存的最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理,比如最近30s缓存信息,将变更后的信息通知给所有与发生变更的表项有关联的地址解析代理,以便刷新远端节点地址解析代理的缓存和通往变更实例的转发规则。并且,地址解析代理对地址解析应答信息的缓存时间和转发规则的缓存时间必须小于地址解析服务器对地址解析请求信息的缓存时间,根据经验,可以将前者的缓存时间设为后者的80%,这样才能保证当IP、MAC或者虚拟资源位置发生变更时,能够第一时间通知到所有必要的节点,保证通信的连续性。
进一步的,本申请实施例可以在所述地址解析代理中配置ECMP路由;相应的,所述将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器,包括:将所述ARP请求报文封装为地址解析请求报文,基于所述ECMP路由发送至地址解析服务器集群中的地址解析服务器。
也即,本申请实施例中地址解析服务器可以单点部署,也可以采用集群化的方式部署,实现高可用,以VIP(即Virtual IP,虚拟IP)的方式对外服务,将VIP配置在各地址解析服务器的环回口上,禁用本地ARP的跨接口代答功能,通过在各计算节点的地址解析代理中配置ECMP(即Equal Cost Multiple Path,等价多路径路由)路由,将整个平台的地址解析请求分担到地址解析服务集群的各个节点上,实现水平扩展和高可用。
例如,参见图2所示,图2为本申请实施例公开的一种具体的云平台架构图。图中以计算节点1和计算节点2、虚拟机:VM1、VM2、VM3、VM4为例,在具体的实施方式可以包括更多的计算节点和虚拟机实例。
在具体的应用场景中,虚拟机通信过程具体包括以下步骤:
1、虚拟机VM1发送ARP请求报文,请求解析虚拟机VM4的MAC地址信息;
2、ARP请求报文到达本地的虚拟交换机,本地虚机交换机通过ARP拦截规则,将该ARP请求报文拦截下来送往本地的地址解析代理;
3、本地地址解析代理收到ARP请求报文后,重新封装一个地址解析请求报文,如图3所示,报文内容包括本地地址解析代理IP、操作类型(如地址解析请求)、请求方IP、请求方MAC、请求方网络ID和请求解析的IP等,报文的外层封装可以采用UDP或IP直接封装,外层报文的源IP为本地地址解析代理的IP,目的IP为地址解析服务器的IP,若地址解析服务器以集群方式部署,则目的IP为地址解析服务器集群对外提供解析服务的虚IP;
4、本地地址解析代理将封装后的报文通过地址解析虚拟网络发送给地址解析服务器(假设地址解析服务器单点部署);
5、地址解析请求报文到达地址解析服务器,地址解析服务器缓存请求报文的信息,根据地址解析请求报文中的内容查找本地地址映射记录,将查询结果封装成地址解析应答报文,如图4所示,报文内容包括地址解析服务器IP、操作类型(如地址解析应答)、请求解析的IP、解析的MAC、请求方IP、请求方MAC、请求方网络ID、解析资源当前所处节点的IP等,报文的外层封装可以采用UDP或IP直接封装,外层报文的目的IP为远端地址解析代理的IP,源IP为当前地址解析服务器的IP,若地址解析服务器以集群方式部署,则源IP为地址解析服务器集群对外提供解析服务的虚IP;
6、地址解析服务器将封装后的地址解析应答报文发送给请求解析的地址解析代理;
7、地址解析代理收到地址解析应答报文,缓存应答报文信息,根据应答报文内容生成本地ARP应答报文,并发送给请求方,此外地址解析代理还需下发从当前节点(即虚拟机VM1所在节点)通往虚拟机VM4的转发规则,实现虚拟机VM1到VM4的单向可达,至此,单向路径已生成;
8、从虚拟机VM4往虚拟机VM1的路径生成方式与上述过程类似,不再赘述;
9、双向路径生成完成后,双方即可正常通信。
其中,对于地址解析服务器集群化部署的场景,在解析代理上配置ECMP的路由规则,目标地址为地址解析服务器集群对外提供服务的虚IP(即VIP),下一跳为集群中各个地址解析服务器的真实接口IP,ECMP算法采用IP层信息哈希。参见图5所示,图5为本申请实施例公开了一种具体的集群化地址解析服务器架构的交互示意图。
需要指出的是,现有技术中,为了解决全分布式路由架构在大规模公有云的虚拟网应用中的问题,如为虚拟网络内大规模ARP泛洪问题,OpenStack社区针对全分布式路由架构采取了本地代答的方式实现,即在各个计算节点上下发所有有可能与本节点上虚拟实例进行通信的对端的IP地址和MAC地址映射关系规则,当租户VPC内的虚拟实例新增、删除或修改IP地址/MAC地址时,控制平面需要将响应的地址映射关系规则同步到所有关联计算节点的虚拟路由器上,另外,在计算节点因故障或系统更新需要重启时,该计算节点上这些虚拟实例的接口事件会触发控制平面进行将本节点上虚拟实例的地址映射关系刷新到其它所有与本节点有潜在通信可能的节点上。这些实现方法在小规模云计算环境下可能能够正常工作,但在大规模公有云环境下,往往会带来巨大的系统压力,导致控制平面节点的CPU使用率飙升而无法进行正常操作,严重影响用户的体验,另外控制平面由于同时需要下发大量的规则,有可能导致部分规则下发不成功,而导致部分虚拟实例之间无法正通信,而通过本申请提供的方案,消除了计算节点上全量的ARP代答规则,减轻了控制平面往数据平面更新和同步的压力;节点重启时,无需控制平面重新大规模下发ARP代答规则和跨节点转发规则,进一步降低了控制平面的压力;并且虚拟路由器中无需再记录当前VPC内全量虚拟实例的IP地址与MAC地址映射关系,改由本地地址解析代理动态按需解析,可以大幅减少控制平面与数据平面虚拟路由器的交互信令,降低控制平面开销;计算节点上虚拟交换机中的流表规模大幅下降,可有效提升虚拟交换机的流表匹配性能,进而提高数据平面的转发性能;地址解析服务器支持集群化部署,计算节点上的地址解析代理通过ECMP将系统的地址解析请求均匀地分摊到集群中的各个地址解析服务器上,一方面支持高可用,另一方面可支持地址解析服务器的水平弹性扩展。提高了控制平面的性能,提升了用户体验。
参见图6所述,本申请实施例公开了一种云平台,包括控制平面11、地址解析服务器12以及部署于各计算节点的地址解析代理13,其中,
所述控制平面11,用于将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息;
所述地址解析代理12,用于获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址;
所述地址解析服务器13,用于基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理。
可见,本申请实施例通过云平台中的控制平面将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息,并通过部署于各计算节点的地址解析代理获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址,之后通过所述地址解析服务器基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理。也即,本申请中,控制平面只需将云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息下发至地址解析服务器,在进行地址解析的过程中,通过各计算节点部署的地址解析代理将地址解析请求报文发送至地址解析服务器,由地址解析服务器进行解析,并将相应的响应报文返回至地址解析服务代理,这样,避免了向各计算节点下发全量地址映射规则和虚拟路由器中的VPC内实例的全量地址映射规则,大幅减少了控制平面与数据平面的交互频率,大大降低了控制平面与数据平面的交互的信令开销,能够有效降低控制平面的CPU使用率,提高控制平面的性能,提升用户体验。
所述地址解析代理12,还用于基于所述地址解析应答报文生成ARP请求报文对应的ARP应答报文,并将所述ARP应答报文下发至相应的所述虚拟机。
其中,所述地址解析服务器13还用于:缓存最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理;当缓存中的任一所述解析MAC地址对应的虚拟机的当前位置信息变更,或任一所述解析MAC地址或所述请求解析的IP地址发生变更,则将变更后的信息发送至相应的所述地址解析代理。
相应的,所述地址解析代理还用于缓存所述地址解析应答报文;其中,所述地址解析应答报文的缓存时间的时长小于所述最近预设时间段的时长。
进一步的,所述云平台还包括:
部署于各计算节点中的虚拟交换机,用于获取预设ARP拦截规则;基于所述预设ARP拦截规则拦截本地节点中的虚拟机发送的ARP请求报文,并将所述ARP请求报文发送给本地节点中的所述地址解析代理。
并且,所述云平台,还包括:
地址解析专用虚拟网络部署模块,用于部署地址解析专用虚拟网络,将所述地址解析代理以及所述地址解析服务器连接到所述地址解析专用虚拟网络。
并且,所述云平台还包括:
ECMP路由配置模块,用于在所述地址解析代理中配置ECMP路由,以便地址解析代理,基于所述ECMP路由将地址解析请求报文发送至地址解析服务器集群中的地址解析服务器。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的地址解析方法。
关于上述地址解析方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的云平台而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种地址解析方法、云平台及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (7)

1.一种地址解析方法,其特征在于,包括:
通过云平台中的控制平面将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息;
通过部署于各计算节点的地址解析代理获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址;
通过所述地址解析服务器基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理;
通过所述地址解析服务器缓存最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理;当缓存中的任一所述解析MAC地址对应的虚拟机的当前位置信息变更,或任一所述解析MAC地址或所述请求解析的IP地址发生变更,则将相应的变更信息发送至相应的所述地址解析代理;
所述将所述地址解析应答报文返回至相应的所述地址解析代理之后,还包括:通过所述地址解析代理缓存所述地址解析应答报文;其中,所述地址解析应答报文的缓存时间的时长小于所述最近预设时间段的时长。
2.根据权利要求1所述的地址解析方法,其特征在于,所述将所述地址解析应答报文返回至相应的所述地址解析代理之后,还包括:
通过所述地址解析代理基于所述地址解析应答报文生成ARP请求报文对应的ARP应答报文,并将所述ARP应答报文下发至相应的所述虚拟机。
3.根据权利要求1所述的地址解析方法,其特征在于,还包括:
向各计算节点中的虚拟交换机下发预设ARP拦截规则;
通过所述虚拟交换机基于所述预设ARP拦截规则拦截本地节点中的虚拟机发送的ARP请求报文,并将所述ARP请求报文发送给本地节点中的所述地址解析代理。
4.根据权利要求1所述的地址解析方法,其特征在于,还包括:
部署地址解析专用虚拟网络;
将所述地址解析代理以及所述地址解析服务器连接到所述地址解析专用虚拟网络。
5.根据权利要求1至4任一项所述的地址解析方法,其特征在于,还包括:
在所述地址解析代理中配置ECMP路由;
相应的,所述将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器,包括:
将所述ARP请求报文封装为地址解析请求报文,基于所述ECMP路由发送至地址解析服务器集群中的地址解析服务器。
6.一种云平台,其特征在于,包括控制平面、地址解析服务器以及部署于各计算节点的地址解析代理,其中,
所述控制平面,用于将虚拟机信息下发至地址解析服务器;所述虚拟机信息包括所述云平台中全部虚拟机的IP地址与MAC地址的映射关系以及当前位置信息;
所述地址解析代理,用于获取本地节点中虚拟机发送的ARP请求报文,并将所述ARP请求报文封装为地址解析请求报文,发送至所述地址解析服务器;所述地址解析请求报文包括请求解析的IP地址;
所述地址解析服务器,用于基于所述虚拟机信息解析出所述请求解析的IP地址对应的MAC地址和所述当前位置信息,以得到解析MAC地址和目标位置信息,基于所述解析MAC地址和所述目标位置信息封装地址解析应答报文,并将所述地址解析应答报文返回至相应的所述地址解析代理;
所述地址解析服务器还用于:
缓存最近预设时间段内解析出的所述解析MAC地址与所述请求解析的IP地址的映射关系,以及所述最近预设时间段发送所述地址解析请求报文的所述地址解析代理;
当缓存中的任一所述解析MAC地址对应的虚拟机的当前位置信息变更,或任一所述解析MAC地址或所述请求解析的IP地址发生变更,则将变更后的信息发送至相应的所述地址解析代理;
相应的,所述地址解析代理还用于缓存所述地址解析应答报文;其中,所述地址解析应答报文的缓存时间的时长小于所述最近预设时间段的时长。
7.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的地址解析方法。
CN202210319411.1A 2022-03-29 2022-03-29 一种地址解析方法、云平台及介质 Active CN114760263B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210319411.1A CN114760263B (zh) 2022-03-29 2022-03-29 一种地址解析方法、云平台及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210319411.1A CN114760263B (zh) 2022-03-29 2022-03-29 一种地址解析方法、云平台及介质

Publications (2)

Publication Number Publication Date
CN114760263A CN114760263A (zh) 2022-07-15
CN114760263B true CN114760263B (zh) 2024-05-03

Family

ID=82327368

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210319411.1A Active CN114760263B (zh) 2022-03-29 2022-03-29 一种地址解析方法、云平台及介质

Country Status (1)

Country Link
CN (1) CN114760263B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117009036B (zh) * 2023-08-09 2024-05-28 北京志凌海纳科技股份有限公司 一种基于分布式proxy解决vpc服务更新方法和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1411210A (zh) * 2002-03-08 2003-04-16 华为技术有限公司 以太网接入应用中代理地址解析协议的方法
CN1815999A (zh) * 2005-02-01 2006-08-09 华为技术有限公司 提高移动IPv4外地代理转发性能的方法
CN101248647A (zh) * 2005-05-23 2008-08-20 艾利森电话股份有限公司 用于本地对等通信量的方法和系统
CN102457586A (zh) * 2010-10-18 2012-05-16 中兴通讯股份有限公司 一种实现二层网络的扩展方法及扩展的二层网络
CN109803029A (zh) * 2017-11-17 2019-05-24 华为技术有限公司 数据处理方法、装置及设备
JP2020137006A (ja) * 2019-02-22 2020-08-31 日本電気株式会社 アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム
CN114238246A (zh) * 2021-11-15 2022-03-25 福建超智集团有限公司 一种arp预留表项方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8767737B2 (en) * 2011-11-30 2014-07-01 Industrial Technology Research Institute Data center network system and packet forwarding method thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1411210A (zh) * 2002-03-08 2003-04-16 华为技术有限公司 以太网接入应用中代理地址解析协议的方法
CN1815999A (zh) * 2005-02-01 2006-08-09 华为技术有限公司 提高移动IPv4外地代理转发性能的方法
CN101248647A (zh) * 2005-05-23 2008-08-20 艾利森电话股份有限公司 用于本地对等通信量的方法和系统
CN102457586A (zh) * 2010-10-18 2012-05-16 中兴通讯股份有限公司 一种实现二层网络的扩展方法及扩展的二层网络
CN109803029A (zh) * 2017-11-17 2019-05-24 华为技术有限公司 数据处理方法、装置及设备
JP2020137006A (ja) * 2019-02-22 2020-08-31 日本電気株式会社 アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム
CN114238246A (zh) * 2021-11-15 2022-03-25 福建超智集团有限公司 一种arp预留表项方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《软件定义网络与传统网络复杂场景下的地址解析协议代理机制》;王君君,孟旭东,王健;CNKI;20141110;全文 *

Also Published As

Publication number Publication date
CN114760263A (zh) 2022-07-15

Similar Documents

Publication Publication Date Title
US10516590B2 (en) External health checking of virtual private cloud network environments
US11108626B2 (en) Rewriting communication headers to manage virtual networks of virtual machines
WO2021136311A1 (zh) 一种vpc之间的通信方法及装置
US10911398B2 (en) Packet generation method based on server cluster and load balancer
CN107846358B (zh) 一种数据传输方法、装置及网络系统
US9225636B2 (en) Method and apparatus for exchanging IP packets among network layer 2 peers
US10887276B1 (en) DNS-based endpoint discovery of resources in cloud edge locations embedded in telecommunications networks
US11095534B1 (en) API-based endpoint discovery of resources in cloud edge locations embedded in telecommunications networks
US20120180122A1 (en) Implementation method and system of virtual private network
Raad et al. Achieving sub-second downtimes in large-scale virtual machine migrations with LISP
Liu et al. SDN-based live VM migration across datacenters
CN111614541B (zh) 公有云网络物理主机加入vpc的方法
US11252126B1 (en) Domain name resolution in environment with interconnected virtual private clouds
CN111756830A (zh) 公有云网络的内网负载均衡实现方法
WO2022001669A1 (zh) 建立vxlan隧道的方法及相关设备
WO2016134624A1 (zh) 路由方法、装置及系统、网关调度方法及装置
CN114760263B (zh) 一种地址解析方法、云平台及介质
JP2012156957A (ja) ネットワークシステム、制御装置、計算機、及び、ネットワーク装置
US11743325B1 (en) Centralized load balancing of resources in cloud edge locations embedded in telecommunications networks
CN114363410B (zh) 应用访问方法、云端代理及节点代理组件、设备、介质
CN115955456A (zh) 基于IPv6的企业园区网及组网方法
CN111654443A (zh) 一种云环境下虚机IPv6地址直接访问公网的方法
WO2022017099A1 (zh) 通信方法、cp设备及nat设备
CN112968965B (zh) Nfv网络节点的元数据服务方法、服务器及存储介质
Li et al. A software-defined address resolution proxy

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