传输网络信息的方法及装置制造方法

文档序号:7989041阅读:183来源:国知局
传输网络信息的方法及装置制造方法
【专利摘要】本发明实施例公开了一种传输网络信息的方法及装置,涉及云计算【技术领域】,能够降低构建大规模虚拟网络的成本。本发明的方法包括:信息服务器获取虚拟网络中虚拟机的地址信息,地址信息包括:虚拟机的IP和MAC、虚拟机所在的物理设备的IP和MAC,虚拟网络的VNI号;接收第一虚拟机所在的物理设备根据第一虚拟机的请求生成的查询请求消息,根据查询请求消息获取第二虚拟机的地址信息,其中,查询请求消息包括第二虚拟机的IP;通过第一虚拟机所在的物理设备向第一虚拟机反馈第二虚拟机的地址信息。
【专利说明】传输网络信息的方法及装置
【技术领域】
[0001]本发明涉及云计算【技术领域】,尤其涉及一种传输网络信息的方法及装置。
【背景技术】
[0002]随着电子信息技术的发展,许多物理网络都需要生成虚拟机来构建虚拟网络,以满足各种各样业务的需求。
[0003]现有技术中,常用的虚拟网络技术有虚拟扩展局域网(Virtual extensibleLocal Area Network,简称VXLAN),即在现有的物理三层网络上构建跨越多个服务器的虚拟化二层网络。在实际应用中,VXLAN需要通过占用物理交换机的密集模式协议无关组播(PIM Dense Mode,简称PIM-DM)来进行虚拟机的介质访问控制(Media Access Control,简称MAC)地址学习和隧道端点网络之间互连的协议(Internet ProtocoI,简称IP )地址的学习。
[0004]目前,物理交换机所容纳的PM-DM都比较少,普遍在500-2000个组左右。而在物理交换机上运行的虚拟网络的规模越大,需要占用的PM-DM越多,并且在同一个物理交换机上可能同时运行多个虚拟网络,从而在实际应用中常常造成物理交换机中的PM-DM不够用,使得物理交换机难以支持更大规模虚拟网络。而若要增加PM-DM以使物理交换机能够支持更大规模虚拟网络,则需要增加很多成本来给物理交换机增设额外的运算设备和存储设备,或是使用具有更多PM-DM的大容量物理交换机,但是这类大容量物理交换机的价格普遍较高,从而使得现有技术中构建大规模虚拟网络的成本较高,限制了虚拟网络技术的应用。

【发明内容】

[0005]本发明的实施例提供一种传输网络信息的方法及装置,能够在避免使用物理交换机的PM-DM的情况下进行虚拟机的MAC地址学习和隧道端点IP地址的学习,从而降低构建大规模虚拟网络的成本,扩大虚拟网络的应用范围。
[0006]为达到上述目的,本发明的实施例采用如下技术方案:
[0007]第一方面,本发明的实施例提供一种传输网络信息的方法,包括:
[0008]信息服务器获取虚拟网络中虚拟机的地址信息,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号;
[0009]接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址;
[0010]通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
[0011]结合第一方面,在第一方面的第一种可能的实现方式中,所述信息服务器获取虚拟网络中虚拟机的地址信息,包括:
[0012]所述虚拟机所在的物理设备获取所述虚拟机的IP地址和MAC地址,并将获取的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号发送至所述信息服务器。
[0013]结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述虚拟机所在的物理设备获取所述虚拟机的IP地址和MAC地址,包括:
[0014]所述虚拟网络中的虚拟机启动后,所述虚拟机所在的物理设备截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息,所述DHCP消息包括所述虚拟机的IP地址和MAC地址;
[0015]所述虚拟机所在的物理设备从所述DHCP消息中获取所述虚拟机的IP地址和MAC地址。
[0016]结合第一方面,在第一方面的第三种可能的实现方式中,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
[0017]结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,包括:
[0018]所述第一虚拟机所在的物理设备接收所述第一虚拟机发送的ARP请求,从所述ARP请求中提取所述第二虚拟机的IP地址,根据所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号生成所述查询请求消息并将所述查询请求消息发送给所述信息服务器;
[0019]所述信息服务器根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0020]结合第一方面,以及第一方面的任意一种可能的实现方式,在第五种可能的实现方式中,所述通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息,包括:
[0021]将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
[0022]第二方面,本发明的实施例提供一种传输网络信息的装置,包括:信息获取模块,用于获取虚拟网络中虚拟机的地址信息,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号;
[0023]请求接收模块,用于接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址;
[0024]信息反馈模块,用于通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。[0025]结合第二方面,在第二方面的第一种可能的实现方式中,所述信息获取模块,具体用于接收所述虚拟机所在的物理设备发送的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号,其中,所述虚拟机的IP地址和MAC地址是由所述虚拟机所在的物理设备在所述虚拟网络中的虚拟机启动后,通过截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息获取的,所述DHCP消息包括所述虚拟机的IP地址和MAC地址。
[0026]结合第二方面,在第二方面的第二种可能的实现方式中,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
[0027]结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述请求接收模块,具体用于接收所述第一虚拟机所在的物理设备根据所述第一虚拟机发送的ARP请求生成的所述查询请求消息,所述查询请求消息包括所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号;根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0028]结合第二方面,以及第二方面的任意一种可能的实现方式,在第四种可能的实现方式中,所述信息反馈模块,具体用于将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
[0029]第三方面,本发明的实施例提供一种传输网络信息的信息服务器,包括:处理器、通信接口、存储器、总线,所述处理器、所述通信接口和所述存储器通过所述总线完成相互间的通信,其中,所述处理器用于:
[0030]通过所述通信接口,获取虚拟网络中虚拟机的地址信息并储存在所述存储器中,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号;
[0031]通过所述通信接口,接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址;
[0032]通过所述通信接口,通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
[0033]结合第三方面,在第三方面的第一种可能的实现方式中,所述处理器,具体用于通过所述通信接口,接收所述虚拟机所在的物理设备发送的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号,其中,所述虚拟机的IP地址和MAC地址是由所述虚拟机所在的物理设备在所述虚拟网络中的虚拟机启动后,通过截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息获取的,所述DHCP消息包括所述虚拟机的IP地址和MAC地址。
[0034]结合第三方面,在第三方面的第二种可能的实现方式中,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。[0035]结合第三方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理器,具体用于通过所述通信接口,接收所述第一虚拟机所在的物理设备根据所述第一虚拟机发送的ARP请求生成的所述查询请求消息,所述查询请求消息包括所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号;根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取储存在所述存储器中的所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0036]结合第三方面,以及第三方面的任意一种可能的实现方式,在第四种可能的实现方式中,所述处理器,具体用于通过所述通信接口,将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
[0037]本发明实施例提供的传输网络信息的方法及装置,能够通过在网络中设置专门的服务器来记录网络中的虚拟机的地址信息,并在虚拟机运行过程中根据虚拟机所发出的请求反馈所需的地址信息,从而在虚拟机的运行过程中不必再使用现有技术中所采用的物理交换机及PM-DM技术,避免了在支持更大规模虚拟网络时为了增加物理交换机的PM-DM容量所需的成本,从而降低了构建大规模虚拟网络的成本,扩大了虚拟网络技术的应用范围。
【专利附图】

【附图说明】
[0038]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。
[0039]图1为本发明实施例提供的一种传输网络信息的方法的流程图;
[0040]图2a为本发明实施例提供的另一种传输网络信息的方法的流程图;
[0041]图2b为本发明实施例提供的另一种传输网络信息的方法的一种具体实例的信令交互图;
[0042]图2c为本发明实施例提供的另一种传输网络信息的方法的另一种具体实例的信令交互图;
[0043]图2d为本发明实施例提供的另一种传输网络信息的方法的再一种具体实例的信令交互图;
[0044]图3为本发明实施例提供的一种传输网络信息的装置的结构示意图;
[0045]图4为本发明实施例提供的一种传输网络信息的信息服务器的结构示意图。
【具体实施方式】
[0046]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0047]本发明实施例提供一种传输网络信息的方法,如图1所示,包括以下步骤:
[0048]101,信息服务器获取虚拟网络中的虚拟机的地址信息。[0049]需要说明的是,本实施例所述的方法可以由信息服务器执行,信息服务器为一种具备计算和存储功能的、用于记录虚拟机的地址信息的设备,例如:服务器、移动工作站、终端设备等。进一步的,信息服务器可以是一个专门的硬件设备,例如:在物理层面上,服务器I和服务器2分别用于承载虚拟机的运行,而作为信息服务器的服务器3则用于在服务器I和服务器2上的虚拟机进行数据交互时,执行本实施例所述的方法;可选的,信息服务器也可以由一个硬件设备所划分出的部分运算/存储资源构成,例如:在物理层面上,服务器I和服务器2分别用于承载虚拟机的运行,同时服务器I还分出了一部分的运算/存储资源来承担本实施例中信息服务器的功能,即服务器I还用于执行本实施例所述的方法,因此本领域技术人员可以通过时分复用等技术手段实现一个服务器同时承载虚拟机的运行并执行本实施例所述的方法。
[0050]进一步的,所述地址信息包括:所述虚拟机的IP地址和MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址和所述虚拟机所在的虚拟网络的虚拟网络标识(VirtualNetwork Identifier,简称VNI)号。在本发明实施例的实际应用中,虚拟机发出的数据包包括了用于表示该虚拟机的IP地址和MAC地址,当该虚拟机发出的数据到达了该虚拟机所在的物理设备后,可以由物理设备对该虚拟机发出的数据进行重新封装,并添加该虚拟机所在的物理设备的IP地址和MAC地址以及该虚拟机所在的虚拟网络的VNI号。
[0051]在本实施例中,信息服务器可以在虚拟网络中的虚拟机启动时,通过所述虚拟机所在的物理设备获取所述虚拟机的IP地址和MAC地址,并将获取的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号发送至所述信息服务器。
[0052]具体的,信息服务器可以通过现有的技术手段获取并储存虚拟网络中的各个虚拟机的IP地址和MAC地址、虚拟机所在的诸如服务器等物理设备的IP地址和MAC地址,以及虚拟机所在的虚拟网络的VNI号等地址信息。其中,信息服务器获取地址信息的具体方式可以有多种,例如:虚拟机在启动时可以自动发起动态主机配置协议(Dynamic HostConfiguration Protocol,简称DHCP)进程,以便于虚拟机所在的物理服务器通过执行该进程,可以截获由DHCP服务器发送至所述虚拟机的用于给所述虚拟机分配IP地址和MAC地址的DHCP消息,并从中获取所述虚拟机的IP地址和MAC地址;然后,所述物理服务器再将自身的IP地址和MAC地址,以及所述虚拟机所在的虚拟网络的VNI号等信息,同所述虚拟机的IP地址和MAC地址一起发送至信息服务器。需要说明的是,当虚拟网络运行时,物理层面上的物理设备可以获取本物理设备上承载的虚拟网络的VNI号,具体实现方式可以是本领域技术人员所熟知的任意方式,在此不再赘述。
[0053]102,接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息。
[0054]其中,所述请求消息中包括用于识别第二虚拟机的信息。例如:当第一虚拟机发出的请求消息为地址解析协议(Address Resolution Protocol,简称ARP)请求时,ARP请求中包括的用于识别第二虚拟机的信息为第二虚拟机的IP地址。需要说明的是,第一虚拟机获取第二虚拟机的IP地址的具体实现方式可以是本领域技术人员所熟知的任意方式,在此不再赘述。
[0055]在实际应用中,作为本地虚拟机的第一虚拟机若要与目的虚拟机实现数据交互,则需要获取作为目的虚拟机的第二虚拟机的MAC地址。同时,本地虚拟机所在的物理设备需要获取目的虚拟机所在的物理设备的IP地址和MAC地址。
[0056]在本实施例中,信息服务器接收到第一虚拟机发出的请求消息,该请求消息表示第一虚拟机需要与第二虚拟机进行数据交互,信息服务器可以根据所述请求消息中包含的第二虚拟机的IP地址在已获取的虚拟机的地址信息中查找该第二虚拟机对应的MAC地址、第二虚拟机所在物理设备的IP地址和MAC地址等地址信息,并将查找到的第二虚拟机的MAC地址、第二虚拟机所在物理设备的IP地址和MAC地址等地址信息发送至第一虚拟机,以便第一虚拟机使用所述地址信息与第二虚拟机进行数据交互。
[0057]103,通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
[0058]本发明实施例提供的传输网络信息的方法,能够通过在网络中设置专门的服务器来记录网络中的虚拟机的地址信息,并在虚拟机运行过程中根据虚拟机所发出的请求反馈所需的地址信息,从而在虚拟机的运行过程中不必再使用现有技术采用的物理交换机及PM-DM技术,避免了在支持更大规模虚拟网络时为了增加物理交换机的PM-DM容量所需的成本,从而降低了构建大规模虚拟网络的成本,扩大了虚拟网络技术的应用范围。
[0059]如图2a所示,为本发明实施例提供的另一种传输网络信息的方法的流程图,包括以下步骤:
[0060]201,虚拟网络中的虚拟机启动后,信息服务器获取虚拟机的MAC地址和IP地址、所述虚拟机所在的物理设备的MAC地址和IP地址以及所述虚拟机所在的虚拟网络的VNI号。
[0061]其中,虚拟机的MAC地址和IP地址是由虚拟机所在的物理设备通过截获DHCP服务器发送至虚拟机的DHCP消息获取的,所述DHCP消息包括虚拟机的IP地址和MAC地址。进而,虚拟机所在的物理设备将所述虚拟机的MAC地址和IP地址、虚拟机所在的物理设备的MAC地址和IP地址以及所述虚拟机所在的虚拟网络的VNI号发送至所述信息服务器。在本实施例中,DHCP消息的具体传输过程可以与现有技术中常用的DHCP技术的具体实施过程相同。
[0062]例如:在实际应用中,虚拟机是由具体的物理设备承载的,由虚拟机发出/接收的数据需要通过物理设备进行传输。如图2b所示,第一虚拟机和第二虚拟机可以分别由不同的物理设备承载,在所述虚拟网络中的虚拟机启动后,第一虚拟机和第二虚拟机都可以发起DHCP流程,并接收DHCP服务器发送的DHCP消息。比如:第二虚拟机启动后发起DHCP流程,物理设备2可以截获DHCP服务器发送给第二虚拟机的DHCP消息,在所述DHCP消息中包括DHCP服务器分配给第二虚拟机的IP地址和MAC地址,物理设备2可以获取DHCP消息中的IP地址和MAC地址,并连同物理设备2的IP地址和MAC地址,第二虚拟机所在的虚拟网络的VNI号发送至信息服务器。通过相同的方式,物理设备I可以获取第一虚拟机的IP地址和MAC地址,并连同物理设备I的IP地址和MAC地址,第一虚拟机所在的虚拟网络的VNI号发送至信息服务器。从而实现虚拟机在启动时向信息服务器上报地址信息的过程,以使信息服务器能够获取并保存虚拟网络中所有启动的虚拟机的地址信息。
[0063]202,所述第一虚拟机所在的物理设备接收所述第一虚拟机发送的ARP请求,从所述ARP请求中提取所述第二虚拟机的IP地址,根据所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号生成所述查询请求消息并将所述查询请求消息发送给所述信息服务器。
[0064]在本实施例中,作为本地虚拟机的第一虚拟机发出的请求消息可以是ARP请求,该ARP请求中包含用于识别目的虚拟机(本实施例中为了和作为本地虚拟机的第一虚拟机相区别,可以称之为第二虚拟机)的信息(即,第二虚拟机的IP地址)。所述查询请求消息由物理设备根据所述第一虚拟机发送的ARP请求生成,并且所述查询请求消息包括了:第二虚拟机的IP地址。例如:
[0065]在实际应用中,第一虚拟机若要与第二虚拟机实现数据交互,则需要获取第二虚拟机的MAC地址。如图2c所示,第一虚拟机可以发出指向第二虚拟机的ARP请求,在该ARP请求中的指定字符段包括了第二虚拟机的IP地址,第一虚拟机所在的物理设备I在截获第一虚拟机发送的ARP请求后,可以从ARP请求中提取出用于识别第二虚拟机的信息(S卩,第二虚拟机的IP地址),并根据第一虚拟机所在的虚拟网络的VNI号生成查询请求消息,再将查询请求消息发送至信息服务器。需要说明的是:只有同一虚拟网络中不同的虚拟机之间才能进行数据交互,因此,能和第一虚拟机进行数据交互的第二虚拟机,只能是和第一虚拟机处于同一个虚拟网络中的虚拟机。因此,第二虚拟机所在的虚拟网络的VNI号和第一虚拟机所在的虚拟网络的VNI号相同。
[0066]203,根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0067]具体的,信息服务器可以根据查询请求消息中包含的第二虚拟机的IP地址和第二虚拟机所在的虚拟网络的VNI号,从在201中由各个虚拟机启动时所上报的地址信息中查询到对应的第二虚拟机的MAC地址,和所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0068]204,将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,第一虚拟机所在的物理设备将第二虚拟机的MAC地址发送至第一虚拟机。
[0069]在本实施例中,如图2c所示,信息服务器可以将第二虚拟机的MAC地址,和所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至物理设备1,再由物理设备I将第二虚拟机的MAC地址传输至第一虚拟机。
[0070]进一步的,在本实施例中,信息服务器通过执行201-204后,第一虚拟机可以根据第二虚拟机的IP地址、MAC地址,实现与第二虚拟机的数据交互,例如:在图2c的基础上,如图2d所示,
[0071]第一虚拟机向第二虚拟机发送通信报文,通信报文中包括了第二虚拟机的IP地址、MAC地址;
[0072]第一虚拟机所在的物理设备I可以截获通信报文,并在通信报文中添加第一虚拟机所属虚拟网络的VNI以及外层隧道封装。其中,外层隧道封装中的外层源IP地址和MAC地址为物理设备I的IP地址和MAC地址,外层目的IP地址和MAC地址为物理设备2的IP地址和MAC地址,其中物理设备2的IP地址和MAC地址已在204中由信息服务器发送至物理设备I ;[0073]物理设备I将通信报文通过网络发送到第二虚拟机所在的物理设备2 ;
[0074]第二虚拟机所在的物理设备2在将第一虚拟机所在的物理设备I发送的通信报文解封装后,再传输至第二虚拟机。
[0075]本发明实施例提供的传输网络信息的方法,能够通过在网络中设置专门的服务器来记录网络中的虚拟机的地址信息,并在虚拟机运行过程中根据虚拟机所发出的请求反馈所需的地址信息,从而在虚拟机的运行过程中不必再使用现有技术中所采用的物理交换机及PM-DM技术,避免了在支持更大规模虚拟网络时为了增加物理交换机的PM-DM容量所需的成本,从而降低了构建大规模虚拟网络的成本,扩大了虚拟网络技术的应用范围。
[0076]本发明实施例还提供一种传输网络信息的装置,如图3所示,包括:
[0077]信息获取模块31,用于获取虚拟网络中虚拟机的地址信息。
[0078]其中,地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号。
[0079]请求接收模块32,用于接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息。
[0080]其中,查询请求消息包括所述第二虚拟机的IP地址。
[0081]信息反馈模块33,通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
[0082]可选的,所述信息获取模块31,具体用于接收所述虚拟机所在的物理设备发送的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号,其中,所述虚拟机的IP地址和MAC地址是由所述虚拟机所在的物理设备在所述虚拟网络中的虚拟机启动后,通过截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息获取的,所述DHCP消息包括所述虚拟机的IP地址和MAC地址。
[0083]可选的,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
[0084]可选的,所述请求接收模块32,具体用于接收所述第一虚拟机所在的物理设备根据所述第一虚拟机发送的ARP请求生成的所述查询请求消息,所述查询请求消息包括所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号;根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0085]进一步可选的,所述信息反馈模块33,具体用于将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
[0086]本发明实施例提供的传输网络信息的装置,能够通过在网络中设置专门的服务器来记录网络中的虚拟机的地址信息,并在虚拟机运行过程中根据虚拟机所发出的请求反馈所需的地址信息,从而在虚拟机的运行过程中不必再使用现有技术中所采用的物理交换机及PM-DM技术,避免了在支持更大规模虚拟网络时为了增加物理交换机的PM-DM容量所需的成本,从而降低了构建大规模虚拟网络的成本,扩大了虚拟网络技术的应用范围。[0087]本发明实施例又提供一种传输网络信息的信息服务器,如图4所示,包括:处理器41、通信接口 42、存储器43、总线44,所述处理器41、所述通信接口 42和所述存储器43通过所述总线44完成相互间的通信,其中:
[0088]所述处理器41,用于通过通信接口 42,获取虚拟网络中虚拟机的地址信息并储存在所述存储器43中,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号。
[0089]所述处理器41,还用于通过所述通信接口 42,接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址。
[0090]所述处理器41,还用于通过所述通信接口 42,通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
[0091]可选的,所述处理器41,具体用于通过所述通信接口 42,接收所述虚拟机所在的物理设备发送的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号,其中,所述虚拟机的IP地址和MAC地址是由所述虚拟机所在的物理设备在所述虚拟网络中的虚拟机启动后,通过截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息获取的,所述DHCP消息包括所述虚拟机的IP地址和MAC地址。
[0092]进一步可选的,所述处理器41,具体用于通过所述通信接口 42,接收所述第一虚拟机所在的物理设备根据所述第一虚拟机发送的ARP请求生成的所述查询请求消息,所述查询请求消息包括所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号;根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取储存在所述存储器中的所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
[0093]其中,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
[0094]再进一步可选的,所述处理器41,具体用于通过所述通信接口 42,将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
[0095]本发明实施例提供的传输网络信息的信息服务器,能够通过在网络中设置专门的服务器来记录网络中的虚拟机的地址信息,并在虚拟机运行过程中根据虚拟机所发出的请求反馈所需的地址信息,从而在虚拟机的运行过程中不必再使用现有技术中所采用的物理交换机及PM-DM技术。与现有技术相比,由于本发明实施例提供了除了物理交换机及PIM-DM技术以外的支持虚拟机的运行的方案,避免了在支持更大规模虚拟网络时为了增加物理交换机的PIM-DM容量所需的成本,从而降低了构建大规模虚拟网络的成本,扩大了虚拟网络技术的应用范围。
[0096]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
[0097]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。
[0098]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
【权利要求】
1.一种传输网络信息的方法,其特征在于,包括: 信息服务器获取虚拟网络中虚拟机的地址信息,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号; 接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址; 通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
2.根据权利要求1所述的传输网络信息的方法,其特征在于,所述信息服务器获取虚拟网络中虚拟机的地址信息,包括: 所述虚拟机所在的物理设备获取所述虚拟机的IP地址和MAC地址,并将获取的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号发送至所述信息服务器。
3.根据权利要求2所述的传输网络信息的方法,其特征在于,所述虚拟机所在的物理设备获取所述虚拟机的IP地址和MAC地址,包括: 所述虚拟网络中的虚拟机启动后,所述虚拟机所在的物理设备截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息,所述DHCP消息包括所述虚拟机的IP地址和MAC地址;` 所述虚拟机所在的物理设备从所述DHCP消息中获取所述虚拟机的IP地址和MAC地址。
4.根据权利要求1所述的传输网络信息的方法,其特征在于,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
5.根据权利要求4所述的传输网络信息的方法,其特征在于,所述接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,包括: 所述第一虚拟机所在的物理设备接收所述第一虚拟机发送的ARP请求,从所述ARP请求中提取所述第二虚拟机的IP地址,根据所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号生成所述查询请求消息并将所述查询请求消息发送给所述信息服务器; 所述信息服务器根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
6.根据权利要求1至5任一项所述的传输网络信息的方法,其特征在于,所述通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息,包括: 将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
7.一种传输网络信息的装置,其特征在于,包括: 信息获取模块,用于获取虚拟网络中虚拟机的地址信息,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号; 请求接收模块,用于接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址; 信息反馈模块,用于通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
8.根据权利要求7所述的传输网络信息的装置,其特征在于,所述信息获取模块,具体用于接收所述虚拟机所在的物理设备发送的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号,其中,所述虚拟机的IP地址和MAC地址是由所述虚拟机所在的物理设备在所述虚拟网络中的虚拟机启动后,通过截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息获取的,所述DHCP消息包括所述虚拟机的IP地址和MAC地址。
9.根据权利要求7所述的传输网络信息的装置,其特征在于,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
10.根据权利要求9所述的传输网络信息的装置,其特征在于,所述请求接收模块,具体用于接收所述第一虚拟机所在的物理设备根据所述第一虚拟机发送的ARP请求生成的所述查询请求消息,所述查询请求消 息包括所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号;根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
11.根据权利要求7至10任一项所述的传输网络信息的装置,其特征在于,所述信息反馈模块,具体用于将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
12.一种传输网络信息的信息服务器,其特征在于,包括:处理器、通信接口、存储器、总线,所述处理器、所述通信接口和所述存储器通过所述总线完成相互间的通信,其中,所述处理器用于: 通过所述通信接口,获取虚拟网络中虚拟机的地址信息并储存在所述存储器中,所述地址信息包括:所述虚拟机的IP地址和介质访问控制MAC地址、所述虚拟机所在的物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的虚拟网络标识VNI号; 通过所述通信接口,接收第一虚拟机所在的物理设备根据所述第一虚拟机的请求生成的查询请求消息,根据所述查询请求消息获取第二虚拟机的地址信息,其中,所述查询请求消息包括所述第二虚拟机的IP地址; 通过所述通信接口,通过所述第一虚拟机所在的物理设备向所述第一虚拟机反馈所述第二虚拟机的地址信息。
13.根据权利要求12所述的传输网络信息的信息服务器,其特征在于,所述处理器,具体用于通过所述通信接口,接收所述虚拟机所在的物理设备发送的所述虚拟机的IP地址和MAC地址、所述物理设备的IP地址和MAC地址以及所述虚拟机所在的虚拟网络的VNI号,其中,所述虚拟机的IP地址和MAC地址是由所述虚拟机所在的物理设备在所述虚拟网络中的虚拟机启动后,通过截获动态主机配置协议DHCP服务器发送给所述虚拟机的DHCP消息获取的,所述DHCP消息包括所述虚拟机的IP地址和MAC地址。
14.根据权利要求12所述的传输网络信息的信息服务器,其特征在于,所述第一虚拟机的请求为所述第一虚拟机发送的地址解析协议ARP请求,所述ARP请求中包括所述第二虚拟机的IP地址。
15.根据权利要求14所述的传输网络信息的信息服务器,其特征在于,所述处理器,具体用于通过所述通信接口,接收所述第一虚拟机所在的物理设备根据所述第一虚拟机发送的ARP请求生成的所述查询请求消息,所述查询请求消息包括所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号;根据所述查询请求消息中的所述第二虚拟机的IP地址和所述第一虚拟机所在的虚拟网络的VNI号,获取储存在所述存储器中的所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址。
16.根据权利要求12至15任一项所述的传输网络信息的信息服务器,其特征在于,所述处理器,具体用于通过所述通信接口,将所述第二虚拟机的MAC地址以及所述第二虚拟机所在的物理设备的IP地址和MAC地址发送至所述第一虚拟机所在的物理设备,以便所述第一虚拟机所在的物理设备 将所述第二虚拟机的MAC地址发送至所述第一虚拟机。
【文档编号】H04L29/12GK103503413SQ201280005724
【公开日】2014年1月8日 申请日期:2012年12月28日 优先权日:2012年12月28日
【发明者】邵华, 林少鹏 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1