虚拟服务器间通信识别系统和虚拟服务器间通信识别方法.pdf

上传人:a1 文档编号:497138 上传时间:2018-02-19 格式:PDF 页数:36 大小:6.02MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410326897.7

申请日:

2010.09.21

公开号:

CN104065555A

公开日:

2014.09.24

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):H04L 12/46申请日:20100921|||公开

IPC分类号:

H04L12/46; H04L29/12; G06F9/455

主分类号:

H04L12/46

申请人:

日本电气株式会社

发明人:

岩田淳; 饭岛明夫

地址:

日本东京都

优先权:

2009.09.24 JP 2009-218693

专利代理机构:

中科专利商标代理有限责任公司 11021

代理人:

李敬文

PDF下载: PDF下载
内容摘要

在虚拟机的IP地址交叠的环境下,使得能够执行虚拟机之间的通信,并且网络管理员能够实时掌握通信流状况。具体地,物理服务器在管理下将虚拟机ID分配到虚拟服务器,并且当通过网络在虚拟机之间进行通信时,将接收侧虚拟机ID和发送侧虚拟机ID分配到TCP/IP分组形式的发送分组的比特空间。然后物理服务器将发送分组发送到网络上。物理交换机设置在物理服务器之间连接的网络上,并且在网络上虚拟机的IP地址交叠的环境下,基于发送分组的数据以外的比特空间中包含的虚拟机ID,来识别发送分组,并且收集示出了网络状况的数据。

权利要求书

1.  一种服务器,包括:
虚拟标识符分配部,用于分配在所述服务器上操作的虚拟机的标识符;以及
网络接口,用于发送包括层2报头信息的分组,所述层2报头信息包含所述虚拟机的标识符,其中所述网络接口将所述分组发送至分组封装部,所述分组封装部利用对所述虚拟机所属的虚拟网络加以表示的虚拟网络标识符来封装所述分组。

2.
  根据权利要求1所述的服务器,还包括:
接收器,用于接收所述分组,其中在所述分组封装部处移除了所述虚拟网络标识符,
其中所述网络接口将接收的所述分组发送给与所述分组中包含的标识符对应的虚拟机。

3.
  一种系统,包括:
虚拟标识符分配部,用于分配在服务器上操作的虚拟机的标识符;以及
网络接口,用于发送包括层2报头信息的分组,所述层2报头信息包含所述虚拟机的标识符,其中所述网络接口将所述分组发送至分组封装部,所述分组封装部利用对所述虚拟机所属的虚拟网络加以表示的虚拟网络标识符来封装所述分组。

4.
  根据权利要求3所述的系统,还包括:
接收器,用于接收所述分组,其中在所述分组封装部处移除了所述虚拟网络标识符,
其中所述网络接口将接收的所述分组发送给与所述分组中包含的标识符对应的虚拟机。

5.
  一种方法,包括:
分配在服务器上操作的虚拟机的标识符;以及
发送包括层2报头信息的分组,所述层2报头信息包含所述虚拟机的标识符,其中将所述分组发送至分组封装部,所述分组封装部利用 对所述虚拟机所属的虚拟网络加以表示的虚拟网络标识符来封装所述分组。

6.
  根据权利要求5所述的方法,还包括:
接收所述分组,其中在所述分组封装部处移除了所述虚拟网络标识符,
将接收的所述分组发送给与所述分组中包含的标识符对应的虚拟机。

7.
  一种网络设备,包括:
接收器,用于接收包括层2报头信息的分组,所述层2报头信息包含在服务器上操作的虚拟机的标识符;以及
标签插入部,用于利用对所述虚拟机所属的虚拟网络加以表示的虚拟网络标识符来封装所述分组。

8.
  一种方法,包括:
接收包括层2报头信息的分组,所述层2报头信息包含在服务器上操作的虚拟机的标识符;以及
利用对所述虚拟机所属的虚拟网络加以表示的虚拟网络标识符来封装所述分组。

说明书

虚拟服务器间通信识别系统和虚拟服务器间通信识别方法
本申请是申请日为2010年9月21日、申请号为201080042567.5的中国发明专利申请“虚拟服务器间通信识别系统和虚拟服务器间通信识别方法”的分案申请。
技术领域
本发明涉及一种虚拟服务器间通信识别系统,更具体地,涉及一种操作于物理服务器上的多个逻辑服务器之间通信情况下的虚拟服务器间通信识别系统。
背景技术
通常,在物理服务器上操作的多个逻辑服务器通常配置有虚拟机等。传统上,在操作于物理服务器上的逻辑服务器之间通信的情况下,存在以下两个问题。
(1)第一问题
第一问题如下。无法向现有路由器和交换机中的现有业务量添加协议报头作为新的标识符,以便获知逻辑服务器之间的通信状况。因此,对于网络管理员而言很难实时地掌握哪个路由器用于通信、通信质量如何、以及何处出现了通信故障等通信状况,即使该通信是使用被分配给逻辑服务器的MAC(媒体访问控制)地址、IP(互联网协议)地址、VLAN(虚拟局域网)ID(标识符)等执行的。
(2)第二问题
第二问题如下。在诸如数据中心等多租户环境下的操作条件的情况中,存在以下情况:多租户环境中虚拟机之间通信情况下的IP地址交叠。在这种情况下,不可能执行通信,除非执行IP地址的重新编号或者通过NAT(网络地址翻译)的地址转换。然而,为了执行IP地址的重新编号,需要停止服务,使得强加了大负载。应当注意,假定NAT 包含诸如IP伪装等NAPT(网络地址端口翻译)。同样,因为NAT依赖于应用,因此不能使用NAT,除非确认该应用是协同的。因此,存在以下情况:多租户环境下在虚拟机之间的通信中出现问题。
关于(1),在不向现有业务量添加作为新标识符的协议报头的条件下,用于中继的路由器和交换机不具有掌握虚拟机之间通信流状况的功能。因此,很难实时掌握通信路径、通信性能、以及通信故障情况。
关于(1),存在Cisco(注册商标)的VN-Tag技术,该技术可以通过向现有业务量添加协议报头作为新标识符来解决上述问题(非专利文献1和2)。提出了在VN-Tag技术中通过引入特殊路由器和交换机来实现掌握通信状况的功能,特殊路由器和交换机可以将新报头插入到现有分组中。然而,因为不能掌握VN-Tag的现有路由器或交换机不能掌握新报头,因此在与现有网络共存的一般环境下,不能掌握虚拟机之间的通信流状况。
因此,需要允许网络管理员实时掌握虚拟机之间的通信流状况,而同时保持现有互联网的向后兼容性。
关于(2),在通过数据中心等为多个企业提供服务器、存储器和网络环境的多租户环境中,存在被分配至虚拟机的地址交叠的问题。在每个公司中,典型地使用专用IP地址空间来实现内联网中的地址分配。
应当注意到,专用IP地址是与互联网不直接相连的网络(例如,内部网络)中所使用的IP地址,与互联网不直接相连的网络例如是与外网(互联网)不相连的理想闭环网络,以及通过路由器与外网(互联网)间接相连的网络。专用IP地址也被称作专用地址。
即使在内部系统中唯一分配了地址,也存在公司之间地址交叠的情况。因此,当分配给服务器(被外包给数据中心)上虚拟机的IP地址交叠时,传统上,不能执行公司(多个租户)之间的虚拟机间通信,除非执行地址重新编号和NAT。然而,在地址重新编号或NAT中任一个的情况下,存在操作上的问题。
因此,在数据中心的多个租户网络中,需要即使在虚拟机的IP地 址交叠的环境下也能够执行多租户之间的虚拟机通信,并且网络管理员能够实时掌握通信流状况。
作为相关技术,日本2008-278478A(专利文献1)公开了一种计算系统和通信控制方法。在该相关技术中,将示出了虚拟机和物理机(虚拟机在物理机上操作)对的数据记录在存储器中,该存储器由虚拟机和虚拟机环境控制功能共享。同样,基于上述记录的数据,确定对端虚拟机是否作为虚拟机存在于同一物理机上。同样通过确定来改变多重性。此外,当虚拟机迁移到另一物理机上时,重写上述记录的数据。
日本2007-158870A(专利文献2)公开了一种虚拟计算机系统和网络通信方法。在该相关技术中,基于是否将VLAN ID设置到虚拟网络接口卡,在根据设置到虚拟网络接口卡(NIC)的VLAN ID的VLAN通信与根据虚拟机(使用虚拟网络接口卡)上的OS所设置的VLAN ID的VLAN通信之间执行交换。
应当注意,在该相关技术中,使用标签VLAN来实现VLAN,在IEEE802.1Q中对标签VLAN进行了标准化。在IEEE802.1Q中规定的通信分组中,将VLAN标签字段添加到不包含VLAN标签(VLAN Tag)的通信分组。VLAN标签字段由标签类型和标签控制数据组成,并且为VLAN ID分配12比特的标签控制数据。
引用文献列表
[专利文献1]日本2008-278478A
[专利文献2]日本2007-158870A
[非专利文献1]Cisco(注册商标)VN-Link:虚拟通信联网(Virtualization correspondence networking)
http://www.cisco.com/web/JP/solution/places/datacenter/literature/white_paper_c11-525307.html
[非专利文献2]虚拟机独立识别以及可以逐虚拟机管理的网络的实现(Recognition of virtual machine individually and realization ofnetwork which can be cared every virtual machine)
<http://www.cisco.com/web/JP/news/cisco_news_letter/tech/vnlink/index.html>
发明内容
本发明的第一目的在于使得网络管理员能够实时掌握虚拟机之间的通信流状况,同时保持现有互联网的向后兼容。
本发明的第二目的在于使得网络管理员能够实时掌握通信流状况,同时即使在虚拟机的IP地址在数据中心的多租户网络中交叠的环境下也能够执行虚拟机之间的多租户间通信。
本发明的虚拟服务器间通信识别系统包括:接收侧物理服务器、发送侧物理服务器以及物理交换机。接收侧物理服务器将接收侧虚拟机ID(标识符)分配到接收侧虚拟服务器。发送侧物理服务器将发送侧虚拟机ID分配到发送侧虚拟服务器。此外,当产生从发送侧虚拟服务器到接收侧虚拟服务器的发送分组时,发送侧物理服务器将接收侧虚拟机ID和发送侧虚拟机ID分配到TCP/IP(传输控制协议/互联网协议)分组形式的发送分组的数据字段以外字段的至少一部分比特空间,并且对发送分组进行发送。物理交换机提供在将发送侧物理服务器与接收侧物理服务器相连的网络上,该物理交换机在发送侧物理服务器与接收侧物理服务器之间中继发送分组时,基于包含在比特空间中的接收侧虚拟机ID和发送侧虚拟机ID,来识别发送分组,并且获取指示网络状况的数据。
本发明的物理服务器具备虚拟服务器、虚拟交换机以及NIC。向虚拟服务器分配虚拟机ID(标识符)。虚拟交换机控制虚拟服务器的通信,并且在通过网络在虚拟服务器与另一虚拟服务器之间进行通信的情况下,输出TCP/IP(传输控制协议/互联网协议)分组形式的发送分组。NIC将发送分组发送到网络上。
在虚拟服务器间通信识别方法中,接收侧物理服务器将接收侧虚拟机ID(标识符)分配到接收侧虚拟服务器。发送侧物理服务器将发送侧虚拟机ID分配到发送侧虚拟服务器。当产生从发送侧虚拟服务器到接收侧虚拟服务器的发送分组时,通过将接收侧虚拟机ID和发送侧 虚拟机ID分配到TCP/IP(传输控制协议/互联网协议)分组形式的发送分组的数据字段以外字段的至少一部分比特空间,来对发送分组进行发送。当在发送侧物理服务器与接收侧物理服务器之间中继发送分组时,通过在将发送侧物理服务器与接收侧物理服务器相连的网络上提供的物理交换机,基于包含在比特空间中的接收侧虚拟机ID和发送侧虚拟机ID,来识别发送分组,以收集指示网络状况的数据。
本发明的程序是使计算机执行以下步骤的程序:控制被分配了虚拟机ID(标识符)的虚拟服务器的通信;以及在通过网络在虚拟服务器与另一虚拟服务器之间进行通信的情况下,在网络上发送TCP/IP(传输控制协议/互联网协议)分组形式的发送分组,其中发送分组的数据字段以外字段的至少一部分比特空间被分配了虚拟机ID。
通过使用现有路由器和交换机可以获取的字段,可以在网络中获取虚拟机之间的通信流状况。
附图说明
图1是示出了本发明的虚拟服务器间通信识别系统的配置示例的图;
图2是示出了本发明第一示例实施例的图;
图3是示出了本发明第一示例实施例中通信流控制的序列图;
图4是示出了本发明第二示例实施例的图;
图5是示出了本发明第二示例实施例中通信流控制的序列图;
图6是示出了本发明第三示例实施例的图;
图7是示出了本发明第三示例实施例中通信流控制的序列图;
图8是示出了本发明第四示例实施例的图;
图9是示出了本发明第四示例实施例中通信流控制的序列图;
图10是示出了多租户环境中数据中心的配置示例的图;
图11是示出了本发明第五示例实施例的图;
图12A是示出了本发明第五示例实施例中通信流控制的序列图;
图12B是示出了本发明第五示例实施例中通信流控制的序列图;
图13是示出了本发明的虚拟服务器间通信识别系统的配置示例 的图;以及
图14是示出了本发明第六示例实施例的图。
具体实施方式
在下文中,参照附图描述本发明的示例实施例。
如图1所示,本发明的虚拟服务器间通信识别系统具备第一物理服务器10、第二物理服务器20和网络30。
这里,作为第一物理服务器10和第二物理服务器20的示例,示例包括计算机,例如PC(个人计算机),客户端服务器、工作站、大型机以及超级计算机。应当注意,第一物理服务器10和第二物理服务器10中的每一个足以成为与网络连接的服务器,并且可以实现虚拟机能够操作的环境。因此,作为第一物理服务器10和第二物理服务器20的其他示例,包括移动终端、汽车导航系统、家庭游戏机、交互式TV、数字调谐器、数字记录器、信息家用电器、OA(办公自动化)设备等。此外,第一物理服务器10和第二物理服务器20也可以安装在移动体上,例如车辆、船只和飞行器上。然而,实际不限于这些示例。
此外,作为网络30的示例,包括互联网、LAN(局域网)、无线LAN、WAN(广域网)、主干线、固定电话网络、移动电话网络、WiMAX(IEEE802.16a)、3G(第三代)、租借线、社区天线电视(CATV)线、IrDA(红外数据协会)、蓝牙(注册商标)、串行通信电路等。然而,实际上,本发明不限于这些示例。
第一物理服务器10具备虚拟服务器11(11-i,i=1至n:n是可选自然数)、虚拟交换机12、NIC(网络接口卡)13和通信流监视部14。同样,第二物理服务器20具备虚拟服务器21(21-i,i=1至n)、虚拟交换机22、NIC23以及通信流监视部24。网络30包含物理交换机31和物理交换机32。
虚拟服务器11(11-i,i=1至n)是在第一物理服务器10上操作的虚拟机。同样,虚拟服务器21(21-i,i=1至n)是在第二物理服务器20上操作的虚拟机。这里,作为虚拟服务器11(11-i,i=1至n)的示例,示出了虚拟服务器″A″11-1、虚拟服务器″B″11-2以及虚拟服务器″C″ 11-3。同样,作为虚拟服务器21(21-i,i=1至n)的示例,示出了虚拟服务器″D″21-1、虚拟服务器″E″21-2以及虚拟服务器″F″21-3。应当注意,实际上,虚拟服务器21(21-i,i=1至n)的数目不必与虚拟服务器11(11-i,i=1至n)的数目相同。
虚拟交换机12执行第一物理服务器10上对每个虚拟服务器11(11-i,i=1至n)的通信控制。同样,虚拟交换机22执行第二物理服务器20上对每个虚拟服务器21(21-i,i=2至n)的通信控制。作为虚拟交换机12和虚拟交换机22中的每一个的示例,包括系统管理器、虚拟机监视器(VMM)等。这里,假定虚拟交换机12和虚拟交换机22控制虚拟服务器11(11-i,i=1至n)和虚拟服务器21(21-i,i=2至n)的产生、操作、迁移、停止和删除。然而,实际上,本发明不限于这些示例。
虚拟交换机12具备虚拟机ID分配部121、MAC地址分配部122、以及IP地址分配部123。同样,虚拟交换机22具备虚拟机ID分配部221、MAC地址分配部222、以及IP地址分配部223。
虚拟机ID分配部121和虚拟机ID分配部221中的每一个最新分配现有路由器和交换机能够获取且识别的VLAN ID,作为相应的一个虚拟服务器的虚拟机ID(VMid)。虚拟机ID是识别数据,该识别数据与MAC地址和IP地址不同,并且不依赖现有通信协议。
MAC地址分配部122和MAC地址分配部222中的每一个向对应的一个虚拟服务分配MAC地址。该MAC地址是专用MAC地址。基本上可以自由设置该专用MAC地址。
IP地址分配部123和IP地址分配部223中的每一个向对应的一个虚拟服务器分配IP地址。IP地址是专用IP地址。如果对端虚拟服务器的IP地址已知,第一物理服务器10和第二物理服务器20可以使用ARP(地址解析协议)命令和表格来获知对端虚拟服务器的MAC地址。
应当注意,考虑多个物理服务器使用专用IP地址的情况。同样,应当考虑到每个虚拟服务器的虚拟机ID和MAC地址用作物理服务器中每个虚拟服务器的目的地数据,并且共享被分配给物理服务器中的NIC的IP地址和主机的IP地址。因此,存在相应虚拟服务器的IP地址交叠的情况。
NIC13和NIC23中的每一个是用于将计算机与LAN(局域网)相连的扩展卡。应当注意到,NIC13和NIC23中的每一个可以是通信接口,与用于无线电通信的天线以及除了LAN以外的网络相连。这里,实际上,本发明不限于这些示例。
这里,NIC13与网络30中的物理交换机31相连。网络30中的物理交换机31与网络30中的物理交换机32相连。网络30中的物理交换机32与NIC23相连。这里,作为中继物理交换机,举例说明了两个物理交换机31和物理交换机32。然而,实际上,物理交换机的数目可以是1个,或者3个或3个以上。
应当注意,作为物理交换机31和物理交换机32的示例,例如可以是开放流交换机(open flow switch)。在这种情况下,作为用于控制通信流处理的服务器的开放流控制器与开放流交换机一起存在。假定上述开放流控制器包含在网络30中。除此之外,作为物理交换机31和物理交换机32中的每一个的示例,例如还可以是路由器、切换集线器等。然而,实际上,本发明不限于这些示例。
在以下文献中描述了开放流交换机的具体内容:“Brandon Heller(brandonh@stanford.edu)的OpenFlow Switch Specification Version0.9.0(Wire Protocol0x98)”(July20,2009Current Maintainer)”<http://www.openflowswitch.org/documents/openflow-spec-v0.9.0.pdf>。
在接收情况下,通信流监视部14和通信流监视部24各自确认接收分组中包含的虚拟机ID(VMid)。
通信流监视部14具备VLAN标签插入和移除部141以及MAC报头转换部142中的至少一个。类似地,通信流监视部24具备VLAN标签插入和移除部241以及MAC报头转换部242中的至少一个。
VLAN标签插入和移除部141以及VLAN标签插入和移除部241中的每一个在发送情况下将虚拟机ID(VMid)作为VLAN标签插入到发送分组中,并且在接收情况下从接收分组中移除虚拟机ID(VMid)。
MAC报头转换部142和MAC报头转换部242中的每一个将MAC-DA/SA字段中″MAC DA(目的地地址)″和″MAC SA(源地址)″中的每一个的一部分或全部作为MAC报头字段转换成虚拟服务器的虚 拟机ID(VMid)。这里,假定MAC报头转换部142和MAC报头转换部242中的每一个在发送情况下将″MAC DA″的一部分或全部转换成发送目的地虚拟机服务器的虚拟机ID(VMid),并且将″MAC SA″的一部分或全部转换成发送源虚拟服务器的虚拟机ID(VMid)。
应当注意,通信流监视部14可以包含在虚拟交换机12中或NIC13中。同样,通信流监视部24可以包含在虚拟交换机22中或NIC23中。
此外,应当考虑到在NIC13与物理交换机31之间设置通信流监视部14,并且在NIC23与物理交换机32之间设置通信流监视部24。或者,应当考虑到在与NIC13直接相连的物理交换机31(最接近第一物理服务器10的物理交换机)中设置通信流监视部14,并且,在与NIC23直接相连的物理交换机32(最接近第二物理服务器20的物理交换机)中设置通信流监视部24。
这里,假定虚拟服务器11(11-i,i=1至n)、虚拟服务器21(21-i,i=1至n)、虚拟交换机12、虚拟交换机22、通信流监视部14以及通信流监视部24中的每一个由处理器和存储器来实现,其中该处理器基于软件程序的驱动来执行预定处理,该存储器存储程序和各种数据。
作为上述处理器的示例,包括CPU(中央处理单元)、微处理器、微控制器或半导体集成电路(集成电路(IC))、以及具有类似功能的部件等。
作为上述存储器的示例,包括诸如RAM(随机存取存储器)、ROM(只读存储器)、EEPROM(电可擦除可编程只读存储器)和闪存之类的半导体存储设备、诸如HDD(硬盘驱动)和SSD(固态驱动)之类的辅助存储单元、以及诸如DVD(数字通用盘)和存储卡之类的存储介质等。
此外,除了在计算机中设置的存储器以外,上述存储器可以是网络中外围设备(外部HDD等)和服务器(Web服务器、文件服务器等)中设置的存储器。或者,上述存储器可以是使用DAS(直接附属存储)、FC-SAN(光纤通道-存储区网络)、NAS(网络附属存储)、IP-SAN(IP-存储区网络)等的存储单元。
然而,实际上,本发明不限于这些示例。
[第一示例实施例]
(虚拟机ID(VMid)的VLAN标签堆叠使用)
参照图2,描述将虚拟机ID(VMid)堆叠并用作VLAN标签的情况。
在本发明第一示例实施例中,虚拟机ID分配部新分配现有路由器和交换机能够获取并识别的VLAN ID作为每个虚拟机的ID(VMid)。在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,通过将″VMid-A″和″VMid-D″的2级标签插入到分组中来执行通信。即,2级标签是作为VLAN标签堆叠的两个虚拟机ID(VMid)。
具体如下。例如,在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,从发送侧的物理服务器,作为TCP/IP(传输控制协议/互联网协议)分组,发送包含″MAC DA″-″MAC SA″-″User Data(数据分组)″的发送分组,如图2的(1)所示。在这种情况下,为图1中虚拟交换机或NIC提供VLAN标签插入和移除部,并且在发送中通过VLAN标签插入和移除部将类似图2的(2)的2级标签插入到发送分组中(VLAN标签2级插入),并且将发送分组发送到网络中的物理交换机。
该中继物理交换机通过仅监视TCP/IP分组的VLAN标签字段来获取网络状况。即,中继物理交换机监视TCP/IP分组的VLAN标签字段,并且收集网络状况的数据。
例如,在开放流交换机中,在TCP/IP分组中将MAC地址字段、VLAN标签字段、IP地址字段以及端口号字段的可选组合设置为识别数据,并且获取具有相同的识别数据的分组,作为“流”的概念。
在这种情况下,中继物理交换机仅监视TCP/IP分组的VLAN标签字段,获取其中VLAN标签字段中包含的虚拟机ID的组合相同的分组,作为相同流,从流和该流的目的地收集网络状况数据,并且将所收集数据发送到开放流控制器。开放流控制器对所收集的网络状况数据进行分析,并根据需要在管理屏幕上显示。
在通过NIC或虚拟交换机中的VLAN标签插入和移除部从接收分组中移除2级标签之后,接收侧物理服务器将接收分组发送到接收侧虚拟服务器“D”。
图3是本发明第一示例实施例中通信流控制的序列图。
(1)步骤S101
在图1所示的第一物理服务器10中,虚拟交换机12的虚拟机ID分配部121将虚拟机ID发送到每个虚拟机服务器11(11-i,i=1至n)。
(2)步骤S102
此外,虚拟交换机12的MAC地址分配部122将MAC地址分配到每个虚拟服务器11(11-i,i=1至n)。
(3)步骤S103
此外,虚拟交换机12的IP地址分配部123将IP地址分配到每个虚拟服务器11(11-i,i=1至n)。
(4)步骤S104
同样,在第二物理服务器20中,虚拟交换机22的虚拟机ID分配部221将虚拟机ID分配到每个虚拟机服务器21(21-i,i=1至n)。
(5)步骤S105
此外,虚拟交换机22的MAC地址分配部222将MAC地址分配到每个虚拟服务器21(21-i,i=1至n)。
(6)步骤S106
此外,虚拟交换机22的IP地址分配部223将IP地址分配到每个虚拟服务器21(21-i,i=1至n)。
(7)步骤S107
在从虚拟服务器″A″11-1到虚拟服务器″D″21-1通信的情况下,在第一物理服务器10中,发送侧虚拟服务器″A″11-1产生包含了″MACDA”-“MAC SA”-“User Data″的TCP/IP分组,并且将其输出至虚拟交换机12作为发送分组。应当注意,实际上,虚拟交换机12可以响应于来自发送侧虚拟服务器11的数据发送请求,针对每个请求虚拟服务器11产生TCP/IP分组。
(8)步骤S108
通信流监视部14确认来自虚拟交换机12的发送分组。通信流监视部14的VLAN标签插入和移除部141将2级标签插入到发送分组中,并将该发送分组输出至NIC13。
(9)步骤S109
NIC13将发送分组发送至网络上的物理交换机31。
(10)步骤S110
物理交换机31将发送分组发送至物理交换机32。物理交换机32将发送分组发送至接收侧第二物理服务器20。同时,物理交换机31和物理交换机通过监视发送分组的VLAN标签字段来获取网络状况。即,物理交换机31和物理交换机32监视TCP/IP分组的VLAN标签字段,并且收集网络状况数据。
(11)步骤S111
在接收侧第二物理服务器20中,NIC23接收发送分组并将其输出至通信流监视部24作为接收分组。
(12)步骤S112
通信流监视部24确认到达NIC23的接收分组。通信流监视部24的VLAN标签插入和移除部241从接收分组中移除或删除2级标签,然后将接收分组输出至虚拟交换机12。虚拟交换机12将接收分组发送至接收侧虚拟服务器″D″21-1。
通过上述操作,可以使用现有路由器和交换机能够获取的字段,来获取网络中虚拟机之间的通信流状况。
[第二示例实施例]
(MAC报头到虚拟机ID(VMid)的转换)
参照图4,描述将MAC报头的一部分或全部转换成虚拟机ID(VMid)的情况。这里作为示例描述MAC报头的情况,但是IP报头的情况基本类似。假设MAC报头表示TCP/IP分组的MAC地址字段,并且IP报头表示TCP/IP分组的IP地址字段。
在本发明第二示例实施例中,虚拟机ID分配部将每个虚拟机的ID(VMid)分配给现有路由器和交换机能够获取和识别的MAC地址字段的一部分或全部。在从虚拟服务器“A”到虚拟服务“D”通信的情况下,通过在途中转换分组的″MAC DA″部分和″MAC SA″部分来执行通信。
具体如下。例如,在从虚拟服务器“A”到虚拟服务器“D”通信的情 况下,在发送侧物理服务器中,发送包含了如图4的(1)所示“MAC DA”-“MAC SA”-“User Data″的分组作为TCP/IP分组。在这种情况下,为虚拟交换机或NIC中的任一个提供MAC报头转换部。在发送中,通过MAC报头转换部将″MAC DA″的一部分或全部转换成虚拟服务器“D”的虚拟机ID“VMid-D”,如图4的(2)所示,并且通过将“MAC SA”的一部或全部转换成虚拟服务器“A”的虚拟机ID“VMid-A”,将发送分组发送到网络中的物理交换机。
该中继物理交换机通过仅监视作为TCP/IP分组的MAC报头字段的MAC-DA/SA字段,来获取和得到网络状况。即,该中继物理交换机监视TCP/IP分组的MAC报头区域并且收集网络状况数据。
在所述接收侧物理服务器中,在将接收分组的MAC-DA/SA(“MAC DA”部分和“MAC SA”部分)转换成原始地址之后,NIC或虚拟交换机中的MAC报头转换部将接收分组发送至接收侧虚拟服务器“D”。
图5是示出了本发明第二示例实施例中通信流控制的序列图。
(1)步骤S201
在图1所示的第一物理服务器10中,虚拟交换机12的虚拟机ID分配部121将虚拟机ID分配至每个虚拟服务器11(11-i,i=1至n)。
(2)步骤S202
此外,虚拟交换机12的MAC地址分配部122将MAC地址分配到每个虚拟服务器11(11-i,i=1至n)。
(3)步骤S203
此外,虚拟交换机12的IP地址分配部123将IP地址分配到每个虚拟服务器11(11-i,i=1至n)。
(4)步骤S204
同样,在第二物理服务器20中,虚拟交换机22的虚拟机ID分配部221将虚拟机ID分配到每个虚拟机服务器21(21-i,i=1至n)。
(5)步骤S205
此外,虚拟交换机22的MAC地址分配部222将MAC地址分配到每个虚拟服务器21(21-i,i=1至n)。
(6)步骤S206
此外,虚拟交换机22的IP地址分配部223将IP地址分配到每个虚拟服务器21(21-i,i=1至n)。
(7)步骤S207
在从虚拟服务器“A”11-1到虚拟服务器“D”21-1通信的情况下,在图1所示的第一物理服务器10中,发送侧虚拟服务器“A”11-1产生包含了“MAC DA”-“MAC SA”-“User Data”的TCP/IP分组,并且将其输出至虚拟交换机12作为发送分组。实际上,虚拟交换机12可以响应于来自发送侧虚拟服务器11的数据发送请求,针对每个请求虚拟服务器11产生TCP/IP分组。
(8)步骤S208
通信流监视部14确认来自虚拟交换机12的发送分组。通信流监视部14的MAC报头转换部142将“MAC DA”的一部分或全部转换成虚拟服务器“D”21-1的虚拟机ID“VMid-D”,并且将“MAC SA”的一部分或全部转换成虚拟服务器“A”11-1的虚拟机ID“VMid-A”,并且在转换之后输出发送分组到NIC13。
(9)步骤S209
NIC13将发送分组发送至网络中的物理交换机31。
(10)步骤S210
物理交换机31将发送分组发送至物理交换机32。物理交换机32将发送分组发送至接收侧第二物理服务器20。同时,物理交换机31和物理交换机32中的每一个通过监视作为MAC报头字段的MAC-DA/SA来获取和得到网络状况。即,物理交换机31和物理交换机32监视TCP/IP分组的MAC-DA/SA字段,并且收集网络状况数据。
(11)步骤S211
在接收侧第二物理服务器20中,NIC23接收发送分组并将其输出至通信流监视部24作为接收分组。
(12)步骤S212
通信流监视部24确认到达NIC23的接收分组。通信流监视部24的MAC报头转换部242将接收分组的MAC-DA/SA字段(“MAC DA”部分 和“MAC SA”部分)转换成原始状况,然后将接收分组输出至虚拟交换机12。虚拟交换机12将接收分组发送至接收侧虚拟服务器″D″21-1。
通过上述操作,可以使用现有路由器和交换机能够获取的被称作MAC-DA/SA的字段,来获取网络中虚拟机之间的通信流状况。
应当注意,在本示例实施例中,描述了将MAC报头的一部分或全部转换成虚拟机ID(VMid)的情况。然而,实际上,可以将IP报头的一部分或全部转换成虚拟机ID(VMid)。即,可以将MAC报头和IP报头(在允许这二者的情况下)中的至少一个的一部分或全部转换成虚拟机ID(VMid)。
同时,例如,将发送侧MAC地址字段的一部分或全部转换成发送侧虚拟机ID(VMid),并且将接收侧IP地址字段的一部分或全部转换成接收侧虚拟机ID(VMid)在技术上是可能的。
相反,将发送侧IP地址字段的一部分或全部转换成发送侧虚拟机ID(VMid),并且将接收侧MAC地址字段的一部分或全部转换成接收侧虚拟机ID(VMid)也是可能的。
[第三示例实施例]
(MAC地址至虚拟机ID(VMid)的分配)
参照图6,描述将虚拟机ID(VMid)分配给MAC地址的情况。这里,尽管描述了将虚拟机ID(VMid)分配给MAC地址的情况,但是将虚拟机ID(VMid)分配给IP地址的情况基本上相同。
在本发明第三示例实施例中,虚拟机ID分配部将每个虚拟机的ID(VMid)分配给现有路由器或交换机能够获取和识别的MAC地址字段的一部分或全部。在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,照原样发送具有“MAC DA”和“MAC SA”的分组,“MAC DA”和“MAC SA”中的每一个是被分配了每个虚拟机ID(VMid)的MAC地址。
具体地如下。例如,在将MAC地址分配到每个虚拟服务器的情况下,发送侧物理服务器提供针对虚拟交换机的MAC地址分配部,并且MAC地址分配部将虚拟服务器的虚拟机ID分配给MAC地址的一部分或全部,MAC地址被分配到每个虚拟服务器,如图6(1)所示。
在该示例中,MAC地址分配部产生与被分配给虚拟服务器“A”和 虚拟服务器“D”的虚拟机ID相对应的MAC地址,并且所产生的MAC地址分别被分配给虚拟服务器“A”和虚拟服务器“D”。
应当注意,对于所产生的MAC地址,存在以下情况:MAC地址字段的一部分与虚拟机ID的相对应,以及MAC地址字段的全部与虚拟机ID相对应。在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,发送侧虚拟服务器“A”将包含了虚拟机ID的TCP/IP分组输出给MAC-DA/SA(“MAC DA”部分和“MAC SA”部分)。
中继物理交换机通过监视TCP/IP分组的MAC地址字段中包含的MAC-DA/SA字段来获取网络状况。即,中继物理交换机监视TCP/IP分组的MAC-DA/SA字段并且收集网络状况数据。
接收侧物理服务器将TCP/IP分组发送至接收侧虚拟服务器“D”。
在第二示例实施例中,在发送中,将发送分组的MAC地址字段的一部分或全部转换成虚拟机ID,而在第三示例实施例中,将虚拟机ID合并到被预先分配给每个虚拟服务器的MAC地址中。
被分配给每个虚拟服务器的MAC地址是专用MAC地址,并且虚拟机ID可以用于MAC地址字段的一部分或全部,这是因为MAC地址字段是基本上能够自由设置的。
例如,通常MAC地址配置有高位3个八比特组(24比特:1八比特组=8比特)的弯机(bender)ID和低位3个八比特组(24比特)的硬件ID。
因此,应当考虑针对硬件ID的一部分或全部来使用虚拟机ID。或者,应当考虑简单地针对来自MAC地址的首部或末端的若干比特来使用虚拟机ID。
然而,实际上,本发明不限于这些示例。
图7是示出了根据本发明第三示例实施例的通信流控制的序列图。
(1)步骤S301
在图1所示的第一物理服务器10中,虚拟交换机12的虚拟机ID分配部121将虚拟机ID分配至每个虚拟服务器11(11-i,i=1至n)。
(2)步骤S302
此外,在将MAC地址分配到每个虚拟服务器11(11-i,i=1至n)的 情况下,虚拟交换机12的MAC地址分配部122MAC地址,针对虚拟服务器“A”11-1的MAC地址字段的一部分或全部,使用虚拟服务器“A”11-1的虚拟机ID“VMid-A”。
(3)步骤S303
此外,虚拟交换机12的IP地址分配部123将IP地址分配到每个虚拟服务器11(11-i,i=1至n)。
(4)步骤S304
同样,在第二物理服务器20中,虚拟交换机22的虚拟机ID分配部221将虚拟机ID分配到每个虚拟机服务器21(21-i,i=1至n)。
(5)步骤S305
此外,在将MAC地址分配到每个虚拟机服务器21(21-i,i=1至n)的情况下,虚拟交换机22的MAC地址分配部222分配MAC地址,针对虚拟服务器“D”21-1的MAC地址字段的一部分或全部,使用虚拟服务器“D”21-1的虚拟机ID“VMid-D”。
(6)步骤S306
此外,虚拟交换机22的IP地址分配部223将IP地址分配到每个虚拟服务器21(21-i,i=1至n)。
(7)步骤S307
在从虚拟服务器“A”11-1到虚拟服务器“D”21-1通信的情况下,在第一物理服务器10中,发送侧虚拟服务器“A”11-1产生包含了“MACDA”-“MAC SA”-“User Data”的TCP/IP分组,并且将其输出至虚拟交换机12作为发送分组。
应当注意,实际上,虚拟交换机12可以响应于来自发送侧虚拟服务器11的数据发送请求,产生针对每个请求虚拟服务器11的TCP/IP分组。虚拟交换机12将发送分组输出至NIC13。这里,不使用通信流监视部14。
(8)步骤S308
NIC13将发送分组发送至网络中的物理交换机31。
(9)步骤S309
物理交换机31将发送分组发送至物理交换机32。物理交换机32将 发送分组发送至接收侧第二物理服务器20。
同时,物理交换机31和物理交换机32中的每一个通过监视作为发送分组的MAC报头区域的MAC-DA/SA,来获取和得到网络状况。即,物理交换机31和物理交换机32中的每一个监视TCP/IP分组的MAC-DA/SA字段,并且收集网络状况数据。
(10)步骤S310
在接收侧第二物理服务器20中,NIC23接收发送分组并将其输出至虚拟交换机12作为接收分组。虚拟交换机12将接收分组发送至接收侧虚拟服务器“D”21-1。
通过上述操作,可以使用现有路由器和交换机能够获取的被称作MAC-DA/SA的字段,来获取网络中虚拟机之间的通信流状况。
应当注意,在本示例实施例中,描述将虚拟机ID(VMid)分配给MAC地址的情况。然而,实际上,可以将虚拟机ID(VMid)分配给IP地址。即,可以将虚拟机ID(VMid)分配给MAC报头和IP报头中的至少一个。
同时,在技术上能够将发送侧虚拟机ID(VMid)分配给发送侧MAC地址字段,并且将接收侧虚拟机ID(VMid)分配给接收侧IP地址字段。相反,能够将发送侧虚拟机ID(VMid)分配给发送侧IP地址字段,并且将接收侧虚拟机ID(VMid)分配给接收侧MAC地址字段。
[第四示例实施例]
(虚拟机ID(VMid)至IP+MAC地址的分配)
参照图8,描述将虚拟机ID(VMid)分配给MAC地址字段、VLAN标签字段和IP地址字段中的每一个的情况。
在本发明第四示例实施例中,虚拟机ID分配部将每个虚拟机的ID(VMid)分配到现有路由器和交换机能够获取和识别的MAC地址字段的一部分或全部比特空间、VLAN标签字段的一部分或全部比特空间、以及IP地址字段的一部分或全部比特空间,如图8(1)所示。
然而,实际上,存在VLAN标签字段本身并不存在的情况。在从从虚拟服务器“A”到虚拟服务器“D”通信的情况下,发送具有″MACDA″、″MAC SA″、″VLAN Tag″、″IP DA″、″IP SA″的分组。
即,在本示例实施例中,基于多个报头字段来将流成组,对流的报头字段进行成组,使得发送目的地识别数据(″MAC DA″,″VLANTag″,″IP DA″)的字段指示了虚拟服务器“D”的虚拟机ID,并且使得发送源识别数据(″MAC SA″,″VLAN Tag″,″IP SA″)的字段指示了虚拟服务器“A”的虚拟机ID。
具体如下。例如,在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,发送侧物理服务器发送以下分组作为TCP/IP分组:包含与被分配到虚拟服务器“A”和虚拟服务器“D”中的每一个的虚拟机ID相对应的MAC地址字段的一部分或全部、VLAN标签字段的一部分或全部以及IP地址字段的一部分或全部。
中继物理交换机通过监视流的报头字段中发送目的地识别数据(″MAC DA″,″VLAN Tag″,″IP DA″)的字段和发送源识别数据(″MAC SA″,″VLAN Tag″,″IP SA″)的字段(即,TCP/IP分组的MAC地址字段、VLAN标签字段以及IP地址字段的组合)来掌握网络状况。
即,中继物理交换机监视TCP/IP分组的MAC地址字段、VLAN标签字段以及IP地址字段的组合,并且收集网络状况数据。
接收侧物理服务器将接收分组发送到接收侧虚拟服务器“D”。
尽管在第三示例实施例中将虚拟机ID仅合并到预先分配到每个虚拟服务器的MAC地址中,但是在第四示例实施例中,将虚拟机ID仅合并到预先分配到每个虚拟服务器的MAC地址和IP地址中,并且在发送中使用MACA地址、VLAN标签和IP地址来产生发送分组。应当注意,也可以不为发送分组提供VLAN标签。
图9是示出了本发明第四示例实施例中通信流控制的序列图。
(1)步骤S401
在图1所示的第一物理服务器10中,虚拟交换机12的虚拟机ID分配部121将虚拟机ID分配至每个虚拟服务器11(11-i,i=1至n)。
(2)步骤S402
在将MAC地址分配到每个虚拟服务器11(11-i,i=1至n)的情况下,虚拟交换机12的MAC地址分配部122将使用虚拟服务器“A”11-1的虚拟机ID“VMid-A”的MAC地址分配到虚拟服务器“A”11-1的MAC地 址字段的一部分或全部。
(3)步骤S403
在将IP地址分配到每个虚拟服务器11(11-i,i=1至n)的情况下,虚拟交换机12的IP地址分配部123将使用虚拟服务器“A”11-1的虚拟机ID“VMid-A”的IP地址分配到虚拟服务器“A”11-1的IP地址字段的一部分或全部。
(4)步骤S404
同样,在第二物理服务器20中,虚拟交换机22的虚拟机ID分配部221将虚拟机ID分配到每个虚拟机服务器21(21-i,i=1至n)。
(5)步骤S405
在将MAC地址分配到每个虚拟机服务器21(21-i,i=1至n)的情况下,虚拟交换机22的MAC地址分配部222将使用虚拟服务器“D”21-1的虚拟机ID“VMid-D”的MAC地址分配到虚拟服务“D”21-1的MAC地址字段的一部分或全部。
(6)步骤S406
在将IP地址分配到每个虚拟服务器21(21-i,i=1至n)的情况下,虚拟交换机22的IP地址分配部223将使用虚拟服务器“D”21-1的虚拟机ID“VMid-D”的IP地址分配到虚拟服务“D”21-1的IP地址字段的一部分或全部。
(7)步骤S407
在从虚拟服务器“A”11-1到虚拟服务器“D”21-1通信的情况下,在第一物理服务器10中,发送侧虚拟服务器“A”11-1产生包含了″MACDA″-″MAC SA″-″VLAN Tag″-″VLAN Tag″-″IP DA″-″IP SA″-″User Data″的TCP/IP分组,并且将TCP/IP分组输出至虚拟交换机12作为发送分组。
应当注意,实际上,虚拟交换机12可以响应于来自发送侧虚拟服务器11的数据发送请求,产生针对每个请求虚拟服务器11的TCP/IP分组。同样,实际上,存在VLAN标签字段“VLAN Tag”不存在的情况。虚拟交换机12将发送分组输出至NIC13。这里,不使用通信流监视部14。
(8)步骤S408
NIC13将发送分组发送至网络中的物理交换机31。
(9)步骤S409
物理交换机31将发送分组发送至物理交换机32。物理交换机32将发送分组发送至接收侧第二物理服务器20。
同时,物理交换机31和物理交换机32中的每一个通过监视发送分组的MAC地址字段、VLAN标签字段和IP地址字段的组合,来获取和得到网络状况。即,物理交换机31和物理交换机32中的每一个监视TCP/IP分组的MAC地址字段、VLAN标签字段和IP地址地址的组合,并且收集网络状况数据。
(10)步骤S410
在接收侧第二物理服务器20中,NIC23接收发送分组并将其输出至虚拟交换机12作为接收分组。虚拟交换机12将接收分组发送至接收侧虚拟服务器“D”21-1。
通过上述操作,可以使用发送目的地识别数据(″MAC DA″,″VLAN Tag″,″IP DA″)的字段和发送源识别数据(″MAC SA″,″VLANTag″,″IP SA″)的字段作为流的报头区域,来获取网络中虚拟机之间的通信流状况,流的报头区域即是现有路由器和交换机能够获取和识别的字段。
[第五示例实施例]
(虚拟NW ID的使用)
参照图10和图11,描述使用VPN(虚拟专用网络)ID和VLAN ID作为虚拟网络(NW)ID的情况。这里,使用VPN ID(VPNid)作为示例来描述VPN ID(VPNid)。
在图10中,在多租户环境(作为虚拟服务器间通信识别系统的使用环境的示例)的数据中心中,示出了通过从多个VPN通过VPN路由器连接至数据中心的环境。
如图10所示,本发明的虚拟服务器间通信识别系统包含:第一物理服务器10、第二物理服务器20、网络30以及虚拟网络40。
第一物理服务器10、第二物理服务器20和网络30基本上与图1中 的相同。这里,第二物理服务器20是多租户环境的数据中心中的服务器。同样,作为虚拟服务器21(21-i,i=1至n)的示例,示出了虚拟服务器″D1″21-4、虚拟服务器″D2″21-5和虚拟服务器″D3″21-6。虚拟服务器″D1″21-4、虚拟服务器″D2″21-5和虚拟服务器″D3″21-6分别等同于图1所示的虚拟服务器″D″21-1。
虚拟网络40包含VPN路由器41、VPN路由器42、VPN路由器43和VPN路由器44。
VPN路由器41与物理交换机32相连。VPN路由器42与多租户环境的数据中心的服务器之中等同于图1所示虚拟服务器″D″21-1的服务器相连。这里,VPN路由器42与第二物理服务器20相连。VPN路由器43与多租户环境的数据中心的服务器之中等同于图1所示虚拟服务器″E″21-2的服务器相连。VPN路由器44与多租户环境的数据中心的服务器之中等同于图1所示虚拟服务器″F″21-3的服务器相连。
在本发明第五示例实施例中,将虚拟机ID分配给预先通过虚拟机ID分配部、MAC地址分配部和IP地址分配部分配的MAC地址和IP地址。
因此,能够将每个虚拟机的ID分配到现有路由器和交换机能够获取和识别的MAC地址字段的一部分或全部比特空间、VLAN标签字段的一部分或全部比特空间、以及IP地址字段的一部分或全部比特空间。
在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,发送分配了″MAC DA″、″MAC SA″、″VLAN Tag″、″IP DA″和″IP SA″的分组。
换言之,在本示例实施例中,通过假定以下情况来对多个报头字段进行成组:发送目的地识别数据(″MAC DA″、″VLAN Tag″、″IP DA″)示出了虚拟服务器“D”的虚拟机ID,并且发送源识别数据(″MAC SA″,″VLAN Tag″,″IP SA″)示出了虚拟服务器“A”的虚拟机ID。然而,实际上,存在VLAN标签字段″VLAN Tag″不存在的情况。
在多租户环境下,当作为相同服务器中虚拟服务器的虚拟服务器″A″(VMid-A)虚拟服务器″B″(VMid-B)属于不同租户时,能够进行通信而不会有地址冲突,这是因为甚至在向虚拟服务器″A″(VMid-A)虚拟服务器″B″(VMid-B)分配相同IP地址的情况下,也可以按照多个报 头的地址空间执行通信。
具体如下。例如,在从虚拟服务器“A”到虚拟服务器“D”通信的情况下,发送侧物理服务器发送包含了发送目的地识别数据(″MACDA″、″VLAN Tag″、″IP DA″)和发送源识别数据(″MAC SA″,″VLANTag″,″IP SA″)(与被分配到虚拟服务器“A”和虚拟服务器“D”的虚拟机ID相对应)的分组作为TCP/IP分组,如图11(1)所示。同时,适当地通过使用MAC地址字段的一部分或全部、VLAN标签字段的一部分或全部、IP地址字段的一部分或全部,编码报头字段。
中继物理交换机通过监视TCP/IP分组流的报头字段中的发送目的地识别数据(″MAC DA″、″VLAN Tag″、″IP DA″)和发送源识别数据(″MAC SA″,″VLAN Tag″,″IP SA″)的字段来获取网络状况。即,中继物理交换机监视TCP/IP分组的发送目的地识别数据和发送源识别数据的组合,并收集网络状况数据。
此外,在容纳了多个VPN的VPN路由器中,需要识别哪个VPN与应该传送分组的用户相连。为了识别,从整个ID空间(″MAC DA″、″VLAN Tag″、″IP DA″)中识别VPN ID(VPNid),并且在VPN路由器中改变分组的目的地。在VPN路由器中存在多个发送方法,但是基本上是包含VPNid的封装分组。作为分组的发送方法,存在″层2封装方法″和″层3封装方法″等。
在″层2封装方法″中,照原样封装接收分组的层2分组字段(″MACDA″,″MAC SA″,″VLAN Tag″,″IP DA″,″IP SA″,″User Data″),并且传送具有VPNid的封装分组。
在″层3封装方法″中,仅封装接收分组的IP层(IP层)字段(″IP DA″,″IP SA″,″User Data″),并且传送具有VPNid的封装分组。
以下描述每个方法中允许端对端保存VMid的注意点。
(a)在层2封装方法的情况下,由于保留所有(″MAC DA″,″MACSA″,″VLAN Tag″,″IP DA″,″IP SA″,″User Data″)字段并且存在VPNid,因此不存在特别的问题。
(b)在层3封装方法的情况下,将(″MAC DA″,″VLAN Tag″,″IPDA″)-(″MAC SA″,″VLAN Tag″,″IP SA″)字段中的(″MAC DA″, ″VLAN Tag″或″MAC SA″,″VLAN Tag″)字段的数据退化成VPNid。在层3封装方法的情况下,仅通过″IP DA″和″IP SA″字段来处理端对端。
接收侧物理服务器将接收分组发送到接收侧虚拟服务器″D″。
图12A和图12B是示出了本发明第五示例实施例中通信流控制的序列图。
(1)步骤S501
在图1所示的第一物理服务器10中,虚拟交换机12的虚拟机ID分配部121将虚拟机ID分配至每个虚拟服务器11(11-i,i=1至n)。
(2)步骤S502
在将MAC地址分配到每个虚拟服务器11(11-i,i=1至n)的情况下,虚拟交换机12的MAC地址分配部122将使用虚拟服务器“A”11-1的虚拟机ID“VMid-A”的MAC地址分配给虚拟服务器“A”11-1的MAC地址字段的一部分或全部。
(3)步骤S503
在将IP地址分配到每个虚拟服务器11(11-i,i=1至n)的情况下,虚拟交换机12的IP地址分配部123将使用虚拟服务器“A”11-1的虚拟机ID“VMid-A”的IP地址分配给虚拟服务器“A”11-1的IP地址字段的一部分或全部。
(4)步骤S504
类似地,在第二物理服务器20中,虚拟交换机22的虚拟机ID分配部221将虚拟机ID分配到每个虚拟机服务器21(21-i,i=1至n)。
(5)步骤S505
在将MAC地址分配到每个虚拟机服务器21(21-i,i=1至n)的情况下,虚拟交换机22的MAC地址分配部222将使用虚拟服务器“D”21-1的虚拟机ID“VMid-D”的MAC地址分配到虚拟服务“D”21-1的MAC地址字段的一部分或全部。
(6)步骤S506
在将IP地址分配到每个虚拟服务器21(21-i,i=1至n)的情况下,虚拟交换机22的IP地址分配部223将使用虚拟服务器“D”21-1的虚拟机 ID“VMid-D”的IP地址分配到虚拟服务“D”21-1的IP地址字段的一部分或全部。
(7)步骤S507
在从虚拟服务器“A”11-1到虚拟服务器“D”21-1通信的情况下,在第一物理服务器10中,发送侧虚拟服务器“A”11-1产生包含了″MACDA″-″MAC SA″-″VLAN Tag″-″VLAN Tag″-″IP DA″-″IP SA″-″User Data″的TCP/IP分组,并且将TCP/IP分组输出至虚拟交换机12作为发送分组。
应当注意,实际上,虚拟交换机12可以响应于来自发送侧虚拟服务器11的数据发送请求,产生针对每个请求虚拟服务器11的TCP/IP分组。同样,实际上,存在VLAN标签字段“VLAN Tag”不存在的情况。虚拟交换机12将发送分组输出至NIC13。这里,不使用通信流监视部14。
(8)步骤S508
NIC13将发送分组发送至网络中的物理交换机31。
(9)步骤S509
物理交换机31将发送分组发送至物理交换机32。物理交换机32将发送分组发送VPN路由器41。
同时,物理交换机31和物理交换机32通过监视发送分组的发送目的地识别数据(″MAC DA″、″VLAN Tag″、″IP DA″)和发送源识别数据(″MAC SA″、″VLAN Tag″、″IP SA″)来获取网络状况。即,物理交换机31和物理交换机32监视TCP/IP分组的发送目的地识别数据和发送源识别数据的组合,并且收集网络状况的数据。
(10)步骤S510
当从物理交换机32接收发送分组时,VPN路由器41适当地使用发送分组的MAC地址字段的一部分或全部、VLAN标签字段的一部分或全部以及IP地址字段的一部分或全部,来执行编码,并且产生封装分组。此外,VPN路由器41从上述字段的ID空间中识别出有关的VPNid,并且确定封装分组目的地。这里,假定上述字段中的ID空间与″theVPNid-D″相对应。
即,VPN路由器41将″the VPNid-D″添加至封装分组,并且然后将其传送至VPN路由器42。″层2封装方法″和″层3封装方法″是如先前描述的分组传送方法。VPN路由器42对封装分组进行解码,以重新产生发送分组,并且将发送分组发送至第二物理服务器20。
(11)步骤S511
在接收侧第二物理服务器20中,NIC23接收发送分组并将该发送分组输出至虚拟交换机12作为接收分组。虚拟交换机12基于第二物理服务器20中每个虚拟服务器的拥塞、接收分组所指定的端口号等,来确定作为接收分组的发送目的地的虚拟服务器。这里,虚拟交换机12将接收分组发送至虚拟服务器″D1″21-4。
通过上述操作,可以使用现有路由器和交换机能够获取的被称作(″MAC DA″,″VLAN Tag″,″IP DA″)-(″MAC SA″,″VLAN Tag″,″IPSA″)的字段,来获取网络中虚拟机之间的通信流状况。此外,在VPN路由器中,在适当转换之后,可以端对端地维护虚拟机的通信关系。
[第六示例实施例]
(组ID的使用)
参照图13,描述以虚拟方式将虚拟服务器成组(例如,VLAN)并且能够仅在相同组的虚拟服务器之间进行通信的情况。
如图13所示,本发明的虚拟服务器间通信识别系统具备第一物理服务器10、第二物理服务器20、网络30和虚拟网络40。
第一物理服务器10、第二物理服务器20和网络30基本上与图1所示的相同。
在本示例实施例中,除了虚拟机ID分配部121、MAC地址分配部122、以及IP地址分配部123以外,虚拟交换器12还具备组分配部124。此外,同样,除了虚拟机ID分配部221、MAC地址分配部222、以及IP地址分配部223,虚拟交换机22还具备组分配部224。
虚拟机ID分配部121、MAC地址分配部122、以及IP地址分配部123、虚拟机ID分配部221、MAC地址分配部222、以及IP地址分配部223与图1所示的基本相同。
组分配部124将组ID分配到每个虚拟服务器11(11-i,i=1至n),以 示出虚拟服务器11(11-i,i=1至n)所属的VLAN组。同样,组分配部224将组ID分配到每个虚拟服务器21(21-i,i=1至n),以示出虚拟服务器21(21-i,i=1至n)所属的VLAN组。这里,VLAN ID用作组ID。
应当注意,假定预先将MAC地址、IP地址和组ID分配到每个虚拟服务器11(11-i,i=1至n)。这也适用于其他示例实施例。
在图13中,假定第一VLAN组的组ID是″GP-1″,并且第二VLAN组的组ID是″GP-2″。
假定虚拟服务器″A″11-1、虚拟服务器″B″11-2、虚拟服务器″D″21-1、虚拟服务器″E″21-2属于第一VLAN组″GP-1″。
此外,假定虚拟服务器″C”11-3和虚拟服务器″F″21-3属于第二VLAN组″GP-2″。
同时,虚拟服务器″A″11-1、虚拟服务器″B″11-2、虚拟服务器″D″21-1、虚拟服务器″E″21-2彼此能够进行通信。然而,虚拟服务器″C”11-3和虚拟服务器″F″21-3不能进行通信,这是因为VLAN组是不同的。
参照图14,描述分组中包含组ID(VLAN ID)的情况。
当将发送分组发送到网络上时,通过虚拟服务器将组ID分配到VLAN标签字段。
将虚拟机ID分配到发送分组遵照其他示例实施例。在这种情况下,假定将发送目的地虚拟服务器的虚拟机ID(目的地ID)和发送源虚拟服务器的虚拟机ID(源ID)分配至MAC地址字段、VLAN标签字段和IP地址字段中的至少一个字段。应当注意,尽管期望将这些虚拟机ID分配到相同字段,但是也可以将它们分配到不同的字段。
<示例实施例的关系>
应当注意,上述示例实施例可以通过它们的组合来实现。
(概括)
如上所述,本发明具有以下特征:在虚拟服务器间通信识别系统中,在操作于物理服务器上的多个逻辑服务器之间,提供一种机制以获取逻辑服务器之间端对端的通信设置、通信识别、性能监视、端对端失败诊断等。
在本发明中,获得以下优点。
第一效果在于,可以在包含现有交换机和路由器的环境下获取虚拟机之间的通信状况,这是因为使用传统分组的报头字段来编码虚拟机的ID空间。
第二效果在于,可以在包含现有交换机和路由器的环境下获取虚拟机之间的通信状况,这是因为将传统分组报头的多个字段识别为虚拟机的ID空间。
第三效果在于,即使在多组合环境下被分配到虚拟机的IP地址相同,也能执行通信,这是因为将传统分组报头的多个字段识别为虚拟机的ID空间。
(补充注释)
能够描述上述示例实施例的一部分或全部作为以下补充注释。然而,本发明不限于以下示例。
(补充注释1)
一种存储介质,存储程序以使计算机执行以下步骤:
控制被分配了虚拟机ID(标识符)的虚拟服务器的通信;以及
在通过网络在所述虚拟服务器与另一虚拟服务器之间进行通信的情况下,在网络上发送TCP/IP(传输控制协议/互联网协议)分组形式的发送分组,其中,虚拟机ID被分配给该发送分组的数据字段以外字段的至少一部分比特空间。
(补充注释2)
根据补充注释1所述的存储介质,存储程序以使计算机执行以下步骤:
在将发送分组发送到网络上时,将VLAN标签字段插入到发送分组中,VLAN标签字段包含虚拟机ID;以及
移除来自网络的接收分组的VLAN标签字段,以发送至虚拟服务器。
(补充注释3)
根据补充注释1或2所述的存储介质,存储程序以使计算机执行以下步骤:
当将发送分组发送到网络上时,将发送分组报头字段中地址字段的变化的至少一部分转换成虚拟机ID。
(补充注释4)
根据补充注释1至3中任一项所述的存储介质,存储程序以使计算机进一步执行以下步骤:
将接收侧虚拟机ID合并到MAC地址和IP地址中的至少一个中,并且将MAC地址和IP地址分配到虚拟服务器,以及
当产生发送分组时,将MAC地址分配到发送分组的MAC的地址字段,并且将IP地址发送到发送分组的IP地址字段。
(补充注释5)
根据补充注释4所述的存储介质,存储程序以使计算机进一步执行以下步骤:
将所述虚拟机ID分配到虚拟机服务器;以及
当产生发送分组时,进一步将虚拟机ID分配到发送分组的VLAN标签字段。
(补充注释6)
根据补充注释1至5中任一项所述的存储介质,存储程序以使计算机还执行以下步骤:
将VLAN ID分配到所述虚拟服务器作为组ID,
当被分配到所述虚拟服务器作为组ID的VLAN ID与被分配到所述接收侧虚拟服务器作为组ID的VLAN ID相同时,将VLAN ID分配到发送分组的VLAN标签字段。
描述了本发明的示例实施例,然而,本发明不限于上述示例实施例,并且在不背离本发明精神的前提下,在本发明的范围内包含各种修改。
应当注意,本申请要求基于日本申请号2009-218693的优先权,并且与日本申请号2009-218693有关的教导内容通过引用合并在本申请中。

虚拟服务器间通信识别系统和虚拟服务器间通信识别方法.pdf_第1页
第1页 / 共36页
虚拟服务器间通信识别系统和虚拟服务器间通信识别方法.pdf_第2页
第2页 / 共36页
虚拟服务器间通信识别系统和虚拟服务器间通信识别方法.pdf_第3页
第3页 / 共36页
点击查看更多>>
资源描述

《虚拟服务器间通信识别系统和虚拟服务器间通信识别方法.pdf》由会员分享,可在线阅读,更多相关《虚拟服务器间通信识别系统和虚拟服务器间通信识别方法.pdf(36页珍藏版)》请在专利查询网上搜索。

在虚拟机的IP地址交叠的环境下,使得能够执行虚拟机之间的通信,并且网络管理员能够实时掌握通信流状况。具体地,物理服务器在管理下将虚拟机ID分配到虚拟服务器,并且当通过网络在虚拟机之间进行通信时,将接收侧虚拟机ID和发送侧虚拟机ID分配到TCP/IP分组形式的发送分组的比特空间。然后物理服务器将发送分组发送到网络上。物理交换机设置在物理服务器之间连接的网络上,并且在网络上虚拟机的IP地址交叠的环境下。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1