数据中心网络系统及其封包传送方法

文档序号:7897508阅读:247来源:国知局
专利名称:数据中心网络系统及其封包传送方法
技术领域
本发明是有关于一种数据中心网络系统与封包传送方法。
背景技术
随着网络技术的发展,通过网络来提供服务或者交换信息,已广泛应用于企业。然而,网络设备的建置与维护的费用相当可观。因此,网络数据中心的运作模式逐渐被发展起来。所谓网络数据中心为一种大型的数据储存中心,其提供企业包括主机代管、主机出租、 异地备援以及系统与网络管理等服务。例如,企业仅需向提供网络数据中心业者租赁主机空间,或是购买主机代管服务,即可任意存取与管理所属远程主机空间内的所有信息。对于企业而言,不需要自己建购容纳硬件或电信设备的机房,而是将机器放在网络数据中心业者的机房之中或者租赁网络数据中心业者的机器。基此,企业网络联机的费用并且省下日常维运的人力成本。在网络数据中心的运作中,最重要的部分就是建立数据中心网络架构,以建立大量虚拟主机,来执行各种服务。特别是,在数据中心网络中,虚拟主机必须能够容易地转移、 数据封包能够有效率地传送且避免造成传送回路。因此,如何设计一个有效率、可靠易于管理且符合经济价值的网络,是本领域技术人员所致力的目标。以太网络(Ethernet)为目前网络架构的潮流,其已广泛的应用于局域网络上。图1是绘示利用以太网络架构用于网络数据中心的货柜型计算机(container computer)的网络拓扑(network topology)范例。请参照图1,网络可被区分为核心(Core)层、区域(Region)层与机柜顶端 (Top-of-Rack, ToR)层。核心层包含12个以太网络交换机;区域层包含12个以太网络交换机;并且机柜顶端层包含48个以太网络交换机。一个货柜型计算机有12个机柜,而每一机柜具有4个机柜顶端网络交换机。另外, 每一机柜包含40个服务器(即,实体机器),因此一个货柜型计算机包含480个服务器。假设每一服务器可运转20个虚拟机器,则一个货柜型计算机可提供9600个虚拟机器。尽管以太网络技术可方便地用于数据中心网络,但以太网络具有扩充性的问题。 具体来说,当以太网络上的一个发送端(例如,虚拟机器或实体机器)欲发送数据封包给一个接收端(例如,虚拟机器或实体机器)通讯时,在发送端至接收端之间传送此数据封包的路径上所有网络交换机都必须存有关于接收端的地址信息,而此信息会占用转送表 (Forwarding Table)中的一个转送表登录(Forwarding Table Entry)来被记录。然而,一般的以太网络交换机的转送表仅能记录16K 3 (个转送表登录,因此,以太网络通常仅可容量数百至数千个实体机器。图2是在以太网络上传送数据封包的范例。请参照图2,在此以太网络中,实体机器A、实体机器B与实体机器C是经由网络交换机SW1、Sff2, SW3与SW4连接并且使用以太网络协议来通讯。倘若虚拟机器Bi、B2与B3 运转在实体机器B上,并且实体机器A是经由网络交换机SWl、网络交换机SW2、网络交换机SW3、实体机器B所构成的传送O^rwarding)路径Pl传送数据封包给虚拟机器Bi、B2与 B3时,网络交换机SWl、网络交换机SW2与网络交换机SW3的转送表都必须储存有关于虚拟机器Bi、B2与B3的地址信息,由此实体机器A欲传送给虚拟机器Bi、B2与B3的数据封包能够顺利地送达。因此,在图2所示的以太网络中,倘若网络交换机SWl的转送表仅能储存 16K个转送表登录时,实体机器A最多仅能与16K个机器交谈。基于上述,倘若要架构一个具百万个虚拟机器的数据网络中心时,则需要约要110 个上述货柜型计算机。此时,以太网络将无法支持大量的实体机器或虚拟机器的通讯。

发明内容
本发明提供一种数据中心网络系统及封包传送方法,其能够在因特网协议下有效地扩充机器的数量。本发明提出一种数据中心网络系统,其包括第一实体机器、执行于第一实体机器上的第一虚拟机器、第二实体机器、执行于第二实体机器上的第二虚拟机器、网络交换机与管理服务器,其中第一虚拟机器用以传送一数据封包给第二虚拟机器,并且网络交换机用以转送该数据封包。第一实体机器、第二实体机器、网络交换机与管理服务器是根据一因特网协议彼此通讯。管理服务器用以为第一实体机器、第一虚拟机器、网络交换机、该第二实体机器与该第二虚拟机器分别地配置对应的逻辑媒体存取控制地址(MediaAccess Control Address),其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节, 最高有效字节的每一字节被设定为0。第一实体机器具有一封装模块,并且此封装模块用以封装来自于第一虚拟机器的数据封包,其中网络交换机的逻辑媒体存取控制地址被放至在所封装的数据封包的目的地地址字段中并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至所封装的数据封包的来源地址字段中。此外,第一实体机器用以发送所封装的数据封包。本发明提出一种数据中心网络系统,其包括第一实体机器、执行于第一实体机器上的第一虚拟机器、第二实体机器、执行于第二实体机器上的第二虚拟机器与管理服务器, 其中第一虚拟机器用以传送一数据封包给第二虚拟机器。第一实体机器、第二实体机器与管理服务器是根据一因特网协议彼此通讯。管理服务器用以为第一实体机器、第一虚拟机器、该第二实体机器与该第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,最高有效字节的每一字节被设定为0。第一实体机器具有一封装模块,并且此封装模块用以封装来自于第一虚拟机器的数据封包,其中第二实体的逻辑媒体存取控制地址被放至在所封装的数据封包的目的地地址字段中并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至所封装的数据封包的来源地址字段中。此夕卜,第一实体机器用以发送所封装的数据封包。本发明提出一种数据中心网络系统,其包括多个机器、多个网络交换机与管理服务器。此些机器包括多个实体机器与多个虚拟机器,其中每一虚拟机器属于实体机器的其中之一,并且此些实体机器经由网络交换机彼此连接。管理服务器用以为此些机器与此些网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,最高有效字节的每一字节被设定为0。此些机器、网络交换机与管理服务器是根据一因特网协议彼此通讯。此管理服务器用以根据此些机器建立多个来源目的地对,衡量此些来源目的地对的优先级,并且根据此优先级与每一网络交换机的多个转送表登录来指派对应每一来源目的地对的传输模式为直接路由模式或间接路由模式。特别是,当使用间接路由模式从一第一虚拟机器传送一数据封包给一第二虚拟机器时,对应此第一虚拟机器的第一实体机器会确认对应第二虚拟机器的网络交换机、根据所确认的网络交换机来封装数据封包并且发送所封装的数据封包,其中对应第二虚拟机器的网络交换机的逻辑媒体存取控制地址被放至所封装的数据封包的目的地地址字段中,并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至所封装的数据封包的来源地址字段中。本发明提出一种数据中心网络系统,其包括多个机器、多个网络交换机与管理服务器。此些机器包括多个实体机器与多个虚拟机器,其中每一虚拟机器属于实体机器的其中之一,并且此些实体机器经由网络交换机彼此连接。管理服务器用以为此些机器与此些网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,最高有效字节的每一字节被设定为0。此些机器、网络交换机与管理服务器是根据一因特网协议彼此通讯。此管理服务器用以根据此些机器建立多个来源目的地对,衡量此些来源目的地对的优先级,并且根据此优先级与每一网络交换机的多个转送表登录来指派对应每一来源目的地对的传输模式为直接路由模式或间接路由模式。特别是,当使用间接路由模式从一第一虚拟机器传送一数据封包给一第二虚拟机器时,对应此第一虚拟机器的第一实体机器会确认对应第二虚拟机器的第二实体机器、根据所确认的第二实体机器来封装数据封包并且发送所封装的数据封包,其中对应第二虚拟机器的第二实体机器的逻辑媒体存取控制地址被放至所封装的数据封包的目的地地址字段中,并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至所封装的数据封包的来源地址字段中。本发明提出一种封包传送方法,用于根据因特网协议从执行于第一实体机器上的第一虚拟机器传送数据封包至执行于第二实体机器上的第二虚拟机器,其中此第二实体连接至网络交换机。本封包传送方法包括为此第一实体机器、第一虚拟机器、网络交换机、第二实体机器与第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,最高有效字节的每一字节被设定为0。本封包传送方法包括也包括封装此数据封包,其中在所封装的数据封包中上述网络交换机的逻辑媒体存取控制地址被放至数据封包的目的地地址字段中,并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至数据封包的来源地址字段中。本封包传送方法包括还包括从第一实体机器中发送所封装的数据封包。本发明提出一种封包传送方法,用于根据因特网协议从执行于第一实体机器上的第一虚拟机器传送数据封包至执行于第二实体机器上的第二虚拟机器。本封包传送方法包括为此第一实体机器、第一虚拟机器、第二实体机器与第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,并且最高有效字节的每一字节被设定为0。本封包传送方法也包括封装此数据封包,其中在所封装的数据封包中第二实体机器的逻辑媒体存取控制地址被放至数据封包的目的地地址字段中,并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至数据封包的来源地址字段中。本封包传送方法还包括从第一实体机器中发送所封装的数据封包。本发明提出一种封包传送方法,用于根据因特网协议在多个机器之间传送数据封包,其中此些机器包括多个实体机器与多个虚拟机器,其中每一虚拟机器属于此些实体机器的其中之一,并且此些实体机器经由多个网络交换机彼此连接。本封包传送方法包括为此些实体机器、虚拟机器与网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,并且最高有效字节的每一字节被设定为0。本封包传送方法也包括根据此些机器建立多个来源目的地对;衡量此些来源目的地对的优先级;根据此优先级与每一网络交换机的多个转送表登录来指派对应每一来源目的地对的传输模式为直接路由模式或间接路由模式。本封包传送方法也包括,当使用间接路由模式从第一虚拟机器传送数据封包给第二虚拟机器时,确认对应第二虚拟机器的网络交换机、封装此数据封包并且发送所封装的该数据封包,其中对应第二虚拟机器的网络交换机的逻辑媒体存取控制地址被放至所封装的数据封包的目的地地址字段中,并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至所封装的数据封包的来源地址字段中。本发明提出一种封包传送方法,用于根据因特网协议在多个机器之间传送数据封包,其中此些机器包括多个实体机器与多个虚拟机器,其中每一虚拟机器属于此些实体机器的其中之一,并且此些实体机器经由多个网络交换机彼此连接。本封包传送方法包括为此些实体机器、虚拟机器与网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址包括最高有效字节与最低有效字节,并且最高有效字节的每一字节被设定为0。封包传送方法也包括根据此些机器建立多个来源目的地对;衡量此些来源目的地对的优先级;以及根据此优先级与每一网络交换机的多个转送表登录来指派对应每一来源目的地对的传输模式为直接路由模式或间接路由模式。本封包传送方法还包括,当使用间接路由模式从第一虚拟机器传送数据封包给第二虚拟机器时,确认对应第二虚拟机器的第二实体机器、封装数据封包并且发送所封装的数据封包,其中对应第二虚拟机器的第二实体机器的该逻辑媒体存取控制地址被放至所封装的该数据封包的该目的地地址字段中,并且第一虚拟机器的逻辑媒体存取控制地址的最低有效字节和第二虚拟机器的逻辑媒体存取控制地址的最低有效字节被放至所封装的数据封包的来源地址字段中。基于上述,本发明能够大幅地减少转送表登录的使用,进而有效地增加数据中心网络系统内的虚拟机器的数量。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。


图1是绘示利用以太网络架构用于网络数据中心的货柜型计算机(container computer)的网络拓扑(network topology)范例。图2是在以太网络上传送数据封包的范例。图3是根据本发明的第一范例实施例所绘示的数据中心网络系统的概要示意图。
图4是根据本发明的第一范例实例所绘示的封装数据封包的范例示意图。图5是根据本发明的第一范例实施例所绘示的解封装数据封包的示意图。图6A与6B是根据本发明的第一范例实施例所绘示的封包传送方法的流程图。图7是根据本发明的第二范例实施例所绘示的数据中心网络系统的概要示意图。图8A与8B是根据本发明的第二范例实施例所绘示的封包传送方法的流程图。图9是根据本发明的第三范例实施例所绘示的数据中心网络系统的概要示意图。图10是根据本发明的第四范例实施例所绘示的数据中心网络系统的概要示意图。图11是根据本发明的第四范例实施例所绘示来源目的对的优先级的示意图。图12是根据本发明的第四范例实施例所绘示的封包传输方法的流程图。[主要元件标号说明]A、B、C:实体机器SW1、SW2、Sff3, SW4 网络交换机B1、B2、B3 虚拟机器PI 传送路径300、700、900、1000 数据中心网络系统^2、7O2 管理服务器312,712 第一实体机器3Ua、712a 第一虚拟机器314,714 第二实体机器314a、714a 第二虚拟机器320、322、324、326、720、722、724、726、902、1002 网络交换机332、732 封装模块334,734,934 解封装模块402 目的地地址字段404 来源地址字段404a:第一部分404b 第二部分S601、S603、S605、S607、S609、S611 封包传送方法的步骤S801、S803、S805、S807、S809、S811 封包传送方法的步骤912 第三实体机器912a 第三虚拟机器1002 储存服务器S1201、S1203、S1205、S1207、S1209、S1211、S1213 封包传送方法的步骤
具体实施例方式为了能够扩充在一个因特网下所连接的虚拟机器或实体机器,本发明使用间接路由模式来传送封包,由此可大幅地减少每一网络交换机的转送表登录的使用。基此,使得在使用一般网络交换机的数据中心网络系统可支持大量的虚拟机器。以下将以数个范例实施例来说明本发明。[第一范例实施例]图3是根据本发明的第一范例实施例所绘示的数据中心网络系统的概要示意图。请参照图3,数据中心网络系统300包括管理服务器302、第一实体机器312、第一虚拟机器31 、第二实体机器314、第二虚拟机器31 、网络交换机320、网络交换机322、网络交换机3M与网络交换机326。在本范例实施例中,数据中心网络系统300是使用以太网络协议来建构。然而,必须了解的是,本发明不限于此,并且本发明亦可适用于其它网络协议。管理服务器302是用以管理数据中心网络系统300内所有联机的实体机器、虚拟机器及网络交换机。例如,管理服务器302为目录服务器(Directorykrver),并且会储存相关的管理信息以记录在实体机器中所运转的虚拟机器的相关信息以及与实体机器所连接的ToR网络交换机的信息。在本范例实施例中,管理服务器302会为数据中心网络系统300内的实体机器、虚拟机器及网络交换机分别地配置对应的逻辑媒体存取控制(Media Access Control, MAC)地址。具体来说,MAC是局域网络(Local Area Network,LAN)中数据链结层的下层部分, 用来规定不同设备或网络上的节点之间如何在多点网络上通讯或存取通讯媒介,而不会互相冲突。每个网络装置(例如,网络卡)在出厂时都会被配置一个唯一的MAC地址,亦称为物理地址。MAC地址是由6个字节的格式(S卩,XX: XX: XX: XX: XX: XX)所组成。MAC地址是唯一的,每张网卡的MAC地址都不一样,因此可在因特网等不具备路由器的子网络中传送封包到特定的目的设备。在本范例实施例中,管理服务器302会为数据中心网络系统300内的实体机器、虚拟机器及网络交换机分别地配置唯一的逻辑MAC地址。也就是说,在数据中心网络系统300 内的每一实体机器、虚拟机器、网络交换机是通过唯一的逻辑MAC地址来在因特网上识别。在本范例实施例中,管理服务器302会将所配置的逻辑MAC地址分为最高有效字节与最低有效字节,其中将最高有效字节的部分为0,而最低有效字节的部分则用于分配唯一的地址给数据中心网络系统300内的机器。例如,在本发明的范例实施例中,最高有效字节是逻辑MAC地址的前3个字节,而最低有效字节是逻辑MAC地址的后3个字节。也就是说,其中最高有效字节的长度相同于最低有效字节的长度。必须了解的是,在本发明中,最高有效字节不限于逻辑MAC地址的前3个字节。在本发明另一范例实施例中,最高有效字节亦可以是逻辑MAC地址的前4或5个字节。然而, 当最低有效字节的字节数目越少时,数据中心网络系统300的规模将越小(S卩,运转于数据中心网络系统300中的实体机器或虚拟机器的数目会越少)。实体机器312与实体机器314为实体的主机(例如,服务器)。特别是,实体机器 312与实体机器314可分别地运转一个或多个虚拟机器以提供不同的服务。例如,第一虚拟机器31 是运转在实体机器312上并且第二虚拟机器31 是运转在实体机器314上。网络交换机320、网络交换机322、网络交换机3M与网络交换机3 是配置在管理服务器302、第一实体机器312与第二实体机器314之间,并且用以转送数据封包。网络交换机320可以是直接连接至第一实体机器312的ToR网络交换机,以转送来自于第一实体机器312的数据封包。或者,网络交换机320与第一实体机器312之间可配置其它网络交换机,以转送来自于第一实体机器312的数据封包。另外,网络交换机3 为直接连接至第二实体机器314的ToR网络交换机,但本发明不限于此。特别是,在本范例实施例中,第一实体机器312具有封装模块332,其用以对欲从第一实体机器312发送的数据封包执行封装(Encapsulation)程序。并且,网络交换机326 具有解封装模块334用以对所封装的数据封包执行解封装(Decapsulatiuon)程序。具体来说,当发送地址解析协议(Address Resolution Protocol, ARP)请求以识别第一虚拟机器31 (S卩,发送端)欲传送给第二虚拟机器31 (S卩,接收端)的数据封包的目的地地址时,第一实体机器312会将此ARP请求改向传至管理服务器302。并且,管理服务器302会根据所储存的管理信息识别出连接至第二虚拟机器31 的ToR网络交换机为网络交换机3 并且将网络交换机3 的逻辑MAC地址传送给第一实体机器312。并且, 当第一实体机器312接收到管理服务器302所传送的逻辑MAC地址后,封装模块332会根据所接收到的逻辑MAC地址来封装第一虚拟机器31 欲传送给第二虚拟机器31 的数据封包。例如,第一虚拟机器31 欲传送给第二虚拟机器31 的数据封包的以太网路标头会包含目的地地址字段与来源地址字段,其中封装模块332会将所接收到的逻辑MAC地址(即,网络交换机326的逻辑MAC地址)放至欲传送的数据封包的目的地地址字段中并且将第一虚拟机器31 的逻辑MAC地址与第二虚拟机器的逻辑MAC地址放至欲传送的数据封包的来源地址字段中。图4是根据本发明的第一范例实例所绘示的封装第一虚拟机器31 欲传送给第二虚拟机器31 的数据封包的范例示意图。请参照图4,封装模块332会在欲传送的数据封包的目的地地址字段402中会放入网络交换机326的逻辑MAC地址A3。此外,封装模块332会将欲传送的数据封包的来源地址字段404分割为相同大小的第一部分40 与第二部分404b,将第一虚拟机器的逻辑MAC 地址Al的最低有效字节Al'放入第二部分404b中并且将第二虚拟机器的逻辑MAC地址A2 的最低有效字节A2'放入第一部分40 中。具体来说,由于在数据中心网络系统300内所使用的逻辑MAC地址的最高有效字节皆为0,因此,逻辑MAC地址的最低有效字节就可被用以识别每一机器与网络交换机。基此,此所封装的数据封包会被传送至网络交换机326。之后,当网络交换机3 经由其它网络交换机(例如,网络交换机320与网络交换机324)接收到第一实体机器312的封装模块332所封装的数据封包时,网络交换机3 会判断所接收到的数据封包的来源地址字段的前3个字节(即,来源地址字段的第一部分) 是否为0,并且当所接收到的数据封包的来源地址字段的前3个字节非为0时,网络交换机 326的解封装模块334会解封装所接收到的数据封包。具体来说,在此解封装程序中,解封装模块334会将原来放至此数据封包的来源地址字段的第一部分中的部分逻辑MAC地址(即,真正接收端的逻辑MAC地址的最低有效字节)整理成完整的逻辑MAC地址后放至此数据封包的目的地地址字段中。此外,解封装模块334会将原来放至此数据封包的来源地址字段的第二部分中的部分逻辑MAC地址(即, 真正发送端的逻辑MAC地址的最低有效字节)整理成完整的逻辑MAC地址后放至此数据封包的来源地址字段中。值得一提的是,由于在本范例实施例中,逻辑MAC地址的最高有效字节是被设定为0,因此,解封装模块334可据此将来源地址字段的第一部分与第二部分中的部分逻辑MAC地址还原成完整的逻辑MAC地址。图5是根据本发明的第一范例实施例所绘示解封装数据封包的示意图。请参照图5,倘若网络交换机3 接收数据封包并且此数据封包的以太网路标头如图4所示时,由于在此数据封包的来源地址字段的第一部分中的值非为0,因此解封装模块334会将此数据封包识别为已被封装的数据封包而对其进行解封装程序。在解封装程序中,解封装模块334会将放至于此数据封包的来源地址字段的第一部分中的第二虚拟机器的逻辑MAC地址A2的最低有效字节A2 ‘还原成逻辑MAC地址A2并且将逻辑MAC地址A2 放至此数据封包的目的地地址字段中以取代原先记录在目的地地址字段中的逻辑MAC地址(即,网络交换机326的逻辑MAC地址A3)。此外,解封装模块334会将放至于此数据封包的来源地址字段的第二部分中的第一虚拟机器的逻辑MAC地址Al的最低有效字节Al ‘ 还原成逻辑MAC地址Al并且将逻辑MAC地址Al放至此数据封包的来源地址字段中。之后,网络交换机3 会在根据此所解封装的数据封包的目的地地址字段中的逻辑MAC地址转送此数据封包。基于上述,在本范例实施例中,在数据封包从一实体机器被发送时,此实体机器会先从管理服务器302中获取一个发送端与接收端之间的中间节点(例如,上述网络交换机 326)作为此数据封包的目的地节点,之后,在由此中间节点还原此数据封包的真正目的地节点以转送此数据封包。基此,在传送此数据封包的路径上的网络交换机的转送表仅需记录中间节点的地址信息,由此在数据中心网络系统300内的网络交换机所需储存的转发表登录会大幅地减少并且可在现有以太网络下大幅度的扩充数据中心网络系统300内的虚拟机器的数量。值得一提的是,在本范例另一实施例中,除了网络交换机3 具有解封装模块334 可对数据封包进行解封装程序之外,网络交换机320、网络交换机322与网络交换机3M亦具有对应的解封装模块可对所接收的数据封包进行识别以执行上述解封装程序。此外,第二实体机器314亦具有对应的封装模块,以对欲发送的数据封包进行上述封装程序。在本发明中,上述封装模块与解封装模块可由软件程序或硬件电路来实作。图6A与6B是根据本发明的第一范例实施例所绘示的封包传送方法的流程图,其中图6A绘示实体机器以间接路由模式传送数据封包的步骤并且图6B绘示网络交换机以间接路由模式转送数据封包。请参照图6A,当实体机器(例如,第一实体机器312)欲发送数据封包(例如,第一虚拟机器31 欲传送给第二虚拟机器31 的数据封包)时,在步骤S601中,实体机器的封装模块会将ARP请求重新导向(redirect)至管理服务器302并且接收管理服务器302 所回传的逻辑MAC地址。之后,在步骤S603中,实体机器的封装模块根据所接收的逻辑MAC地址对欲发送的数据封包执行封装程序。具体来说,在步骤S603中,实体机器的封装模块会将此数据封包的目的地地址的最低有效字节与来源地址的最低有效字节放至此数据封包的以太网路标头的来源位字段中并且将从管理服务器302中所接收到的逻辑MAC地址放至此数据封包的以太网路标头的目的地地址字段中。封装数据封包的方法已配合图4详细描述如上,在此不再重复。最后,在步骤S605中,实体机器会发送此所封装的数据封包。
此所封装的数据封包会根据以太网络协议在数据中心网络系统300中传送,并且当对应此数据封包的以太网路标头的目的地位元字段的网络交换机接收到此数据封包会根据图6B的步骤执行解封装程序。请参照图6B,在步骤S607中,网络交换机的解封装模块会判断此数据封包是否为已封装的数据封包。例如,在步骤S607中,网络交换机的解封装模块会判断记录在此数据封包的来源地址字段的第一部分中的值是否为0,并且当在此数据封包的来源地址字段的第一部分中的值不为0,识别此数据封包已被封装。倘若此数据封包非为已封装的数据封包,在步骤S609中,网络交换机的解封装模块会根据记录在此数据封包的来源地址字段中的地址对此数据封包执行解封装程序。具体来说,在步骤S609中,网络交换机的解封装模块会将记录在此数据封包的来源地址字段的第一部分中的值还原成接收端的逻辑MAC地址并且将此接收端的逻辑MAC地址放至此数据封包的目的地地址字段中。此外,在步骤S609中,网络交换机的解封装模块会将记录在此数据封包的来源地址字段的第二部分中的值还原成发送端的逻辑MAC地址并且将此发送端的逻辑MAC地址放至此数据封包的来源地址字段中。解封装数据封包的方法已配合图5 详细描述如上,在此不再重复。之后,在步骤S611中,网络交换机会根据其转送表转送所解封装的数据封包。倘若此数据封包非为已封装的数据封包,则在步骤S613中,网络交换机会根据其转送表转送此数据封包。[第二范例实施例]图7是根据本发明的第二范例实施例所绘示的数据中心网络系统的概要示意图。请参照图7,数据中心网络系统700包括管理服务器702、第一实体机器712、第一虚拟机器71 、第二实体机器714、第二虚拟机器71 、网络交换机720、网络交换机722、网络交换机724与网络交换机726。第一实体机器712具有封装模块732。此外,第一虚拟机器71 与第二虚拟机器 714a分别地运转在第一实体机器712与第二实体机器714上,以提供对应的服务。管理服务器702、第一实体机器712、封装模块732、第一虚拟机器71 与第二虚拟机器71 是分别地相同于第一范例实施例的管理服务器302、第一实体机器312、封装模块332、第一虚拟机器31 与第二虚拟机器314a,在此不再详细描述。网络交换机720、网络交换机722、网络交换机7M与网络交换机7 是配置在管理服务器702、第一实体机器712、第二实体机器714之间用以转送数据封包。特别是,第二实体机器具有解封装模块734,其功能是相同于第一范例实施例中的解封装模块334。也就是说,在第二范例实施例中,所封装的数据封包会被转送到第二实体机器714时才被执行上述解封装程序。类似第一范例实施例,数据中心网络系统700内的网络交换机的转送表无需储存所有虚拟机器的地址信息,因此可在有限的转送表登录下扩充数据中心网络系统700内虚拟机器的数量。值得一提的是,在本发明另一范例实施例中,第二实体机器714亦可具有对应的封装模块,以对欲发送的数据封包进行上述封装程序。此外,第一实体机器712亦可具有对应的解封装模块,以对所接收的数据封包进行上述解封装程序。
图8A与8B是根据本发明的第二范例实施例所绘示的封包传送方法的流程图,其中图8A绘示实体机器以间接路由模式传送数据封包的步骤并且图8B绘示实体机器以间接路由模式转送数据封包。请参照图8A,当实体机器(例如,第一实体机器712)欲发送数据封包(例如,第一虚拟机器71 欲传送给第二虚拟机器71 的数据封包)时,在步骤S801中,实体机器的封装模块会将ARP请求重新导向至管理服务器702并且接收管理服务器702所回传的逻辑 MAC地址。之后,在步骤S803中,实体机器的封装模块会根据所接收的逻辑MAC地址对欲发送的数据封包执行封装程序。具体来说,在步骤S803中,实体机器的封装模块会将此数据封包的目的地地址的最低有效字节与来源地址的最低有效字节放至此数据封包的以太网路标头的来源位字段中并且将从管理服务器702中所接收到的逻辑MAC地址放至此数据封包的以太网路标头的目的地地址字段中。封装数据封包的方法已配合图4详细描述如上, 在此不再重复。最后,在步骤S805中,实体机器会发送此所封装的数据封包。此所封装的数据封包会根据以太网络协议在数据中心网络系统700中传送,并且当对应此数据封包的以太网路标头的目的地地址字段的实体机器接收到此数据封包会根据图8B的步骤执行解封装程序。请参照图8B,在步骤S807中,实体机器的解封装模块会判断此数据封包是否为已封装的数据封包。例如,在步骤S807中,实体机器的解封装模会判断记录在此数据封包的来源地址字段的第一部分中的值是否为0,并且当在此数据封包的来源地址字段的第一部分中的值是否不为0,识别此数据封包已被封装。倘若此数据封包非为已封装的数据封包,在步骤S809中,实体机器的解封装模会根据记录在此数据封包的来源地址字段中的地址对此数据封包执行解封装程序。具体来说,在步骤S809中,实体机器的解封装模会将记录在此数据封包的来源地址字段的第一部分中的值还原成接收端的逻辑MAC地址并且将此接收端的逻辑MAC地址放至此数据封包的目的地地址字段中。此外,在步骤S809中,网络交换机会将记录在此数据封包的来源地址字段的第二部分中的值还原成发送端的逻辑MAC地址并且将此发送端的逻辑MAC地址放至此数据封包的来源地址字段中。解封装数据封包的方法已配合图5详细描述如上,在此不再重复。之后,在步骤S811中,实体机器会将所解封装的数据封包传送给对应的虚拟机器。倘若此数据封包非为已封装的数据封包,则在步骤S813中,网络交换机会根据其转送表转送此数据封包。[第三范例实施例]上述在第一范例实施例中解封装程序是由数据中心网络系统中的网络交换机来执行,而第二范例实施例中解封装程序是由数据中心网络系统中的实体机器来执行。在第三范例实施例中,部分数据封包的解封装程序是由网络交换机来执行,而另一部分数据封包的解封包程序是由实体机器来执行。图9是根据本发明的第三范例实施例所绘示的数据中心网络系统的概要示意图。
请参照图9,数据中心网络系统900包括管理服务器702、第一实体机器712、第一虚拟机器712a、第二实体机器714、第二虚拟机器714a、第三实体机器912、第三虚拟机器 912a、网络交换机720、网络交换机722、网络交换机726与网络交换机902。管理服务器702、第一实体机器712、第一虚拟机器712a、第二实体机器714、第二虚拟机器7Ha、网络交换机720、网络交换机722与网络交换机726的结构与功能已描述于第二范例实施例中,在此不再重复。第三实体机器是经由网络交换机902与数据中心网络系统900内的其它机器或服务器通讯,并且第三虚拟机器91 运转在第三实体机器上,以提供对应的服务。在本范例实施例中,欲从第一虚拟机器71 中传送至第二虚拟机器71 的数据封包或者欲从第一虚拟机器71 中传送至第三虚拟机器91 的数据封包都会经由封装模块732来执行程序。具体来说,当第一虚拟机器71 中欲传送至第二虚拟机器71 的数据封包时,第一实体机器712从管理服务器702所收到的响应ARP请求的逻辑MAC地址为第二实体机器的逻辑MAC地址,并且第一实体机器712会根据第二实体机器714的逻辑MAC地址来对欲传送至第二虚拟机器71 的数据封包进行封装程序。另外,当第一虚拟机器71 中欲传送至第三虚拟机器91 的数据封包时,第一实体机器712从管理服务器702所收到的响应 ARP请求的逻辑MAC地址为网络交换机902的逻辑MAC地址,并且第一实体机器712会根据网络交换机902的逻辑MAC地址来对欲传送至第三虚拟机器91 的数据封包进行封装程序。基此,欲传送给第二虚拟机器71 的数据封包会被转送到第二实体机器714时, 由第二实体机器714执行解封装程序并传送给第二虚拟机器7Ha。相对的,欲传送给第三虚拟机器91 的数据封包会被转送到网络交换机902时,由网络交换机902执行解封装程序并转送给第三虚拟机器91加。类似第一范例实施例,数据中心网络系统900内的网络交换机的转送表无需储存所有虚拟机器的地址信息,因此可在有限的转送表登录下扩充数据中心网络系统700内虚拟机器的数量。[第四范例实施例]第一、第二与第三范例实施例的实体机器是以上述间接路由模式来传送数据封包,在本范例实施例中,部分的数据封包会以上述间接路由模式来传送,而其它部分的数据封包会以一般的直接路由模式来传送。图10是根据本发明的第四范例实施例所绘示的数据中心网络系统的概要示意图。请参照图10,数据中心网络系统1000包括管理服务器702、第一实体机器712、第一虚拟机器71 、第二实体机器714、第二虚拟机器71 、第三实体机器912、第三虚拟机器 912a、储存服务器1002、网络交换机720、网络交换机722、网络交换机726、网络交换机902 与网络交换机1004。管理服务器702、第一实体机器712、第一虚拟机器712a、第二实体机器714、第二虚拟机器714a、第三实体机器912、第三虚拟机器912a、储存服务器1002、网络交换机720、 网络交换机722、网络交换机726、网络交换机902与网络交换机1004的结构与功能以描述于第三范例实施例中,在此不再重复。储存服务器1002是经由网络交换机1004与数据中心网络系统1000内的其它机
器通讯。在本范例实施例中,管理服务器702会依据目前数据中心网络系统1000内的机器与服务器建立来源目的地对,并且为每一来源目的地对设定对应的传输模式。也就是说,每一来源目的地对之间的所传送的数据封包会根据管理服务器702所设定的传输模式以间接路由模式或直接路由模式来传送。在此,所谓间接路由模式是指本发明的第一、第二、与第三范例实施例所述的以中间节点的逻辑MAC地址来对欲传送的数据封包执行封装程序并且由中间节点来执行解封装程序以继续转送数据封包至真正逻辑MAC地址的传送方式。 相对于间接路由模式的直接路由模式,则是在不进行上述封装与解封装程序下根据原以太网络协议来传送数据封包。管理服务器702会周期地统计数据中心网络系统1000内的每一来源目的地对的数据流量,并且根据所统计的数据流量来指派每一来源目的地对的传输模式。例如,对于数据流量较大的来源目的地对,管理服务器702会将此些来源目的地对的传输模式设定为直接路由模式,而对于数据流量较小的来源目的地对,管理服务器702会将此些来源目的地对的传输模式设定为间接路由模式。具体来说,管理服务器702会根据来源目的地对的数据流量由大至小对来源目的地对进行排序,并且根据此优先级逐一将来源目的地对的传输模式指派为直接路由模式, 其中每指派一个直接路由模式就必须使用网络交换机的转送表的一个转送表登录值。重复此指派操作直到转送表登录值皆被使用完时,剩余未指派的来源目的地对的传输模式会被设定为间接路由模式。例如,假设管理服务器702统计出从第一实体机器发送至其它机器的数据封包的量的排序如图11所示并且网络交换机720的转送表仅能储存3个额外转送表登录值时,管理服务器702将图11所示的前3个来源目的地对的传输模式设定为直接路由模式,并且将其它的来源目的地对的传输模式设定为间接路由模式。也就是说,当从第一虚拟机器71 传送数据封包至储存服务器1002而向管理服务器702发送ARP请求时,管理服务器702会根据此来源目的地对为直接路由模式而将储存服务器1002的逻辑MAC地址回复给第一实体机器,由此,从第一虚拟机器71 传送至储存服务器1002的数据封包会以直接路由模式被传送。另外,当从第一虚拟机器71 传送数据封包至第三虚拟机器91 而向管理服务器702发送ARP请求时,管理服务器702会根据此来源目的地对为间接路由模式而将网络交换机902的逻辑MAC地址回复给第一实体机器,由此,从第一虚拟机器71 传送至储存服务器1002的数据封包会以间接路由模式被传送。在本范例实施例中,管理服务器702周期地统计数据中心网络系统1000内的每一来源目的地对的数据流量是指管理服务器702会在预定时间(例如,每一小时、每两小时或每天)来计算每一来源目的地对所传送的数据封包数,并且以预定规则来统计每一来源目的地对的数据流量。例如,管理服务器702会以加权方式来加总过去一小时和一个小时之前的数据封包数以作为来源目的地对的数据流量。在数据中心网络系统1000的运作期间,虚拟机器可能会从一个实体机器搬移至另一个实体机器。为了避免大幅更动转送表中的转送表登录,管理服务器702会将对应被移动的虚拟机器的来源目的地对的传输模式设定为间接路由模式。并且,当管理服务器702 再次统计数据中心网络系统1000内的每一来源目的地对的数据流量而更新每一来源目的地对的传输模式时,对应被移动的虚拟机器的来源目的地对的传输模式会根据其数据流量被适当的设定。值得一提的是,除了以数据流量来衡量来源目的地对的优先级之外,管理服务器 702亦可根据数据中心网络系统1000内机器的特征来衡量来源目的地对的优先级。例如, 管理服务器702会将来源目的地对之中来源端为实体机器且目的地端为实体机器的来源目的对归类为实体机器对实体机器群;将来源目的地对之中来源端为虚拟机器且目的地端为管理服务器的来源目的对归类为虚拟机器对管理服务器群;将来源目的地对之中来源端为虚拟机器且目的地端为管理服务器的来源目的对归类为虚拟机器对储存服务器群;及将来源目的地对之中来源端为虚拟机器且目的地端为虚拟机器的来源目的对归类为虚拟机器对虚拟机器群。并且,来源目的地对的优先级会依序地根据实体机器对实体机器群、虚拟机器对管理服务器群、虚拟机器对储存服务器群与虚拟机器对虚拟机器群的顺序来决定。图12是根据本发明的第四范例实施例所绘示的封包传输方法的流程图,其绘示管理服务器指派传输模式的步骤。请参照图12,在步骤S1201中,管理服务器702会根据目前数据中心网络系统 1000内的机器与服务器建立来源目的地对。然后,在步骤S1203中,管理服务器702会衡量来源目的地对的优先级。具体来说, 管理服务器702可依据来源目的地对的数据流量或者来源目的地对的特征来设定优先级。之后,在步骤S1205中,管理服务器702会依据所衡量的优先级选择下一个来源目的地对,并且在步骤S1207中,管理服务器702会判断转送表登录值是否已被用完。倘若转送表登录值未被用完时,在步骤S1209中,管理服务器702会将所选择的来源目的地对的传输模式设定为直接路由模式。倘若转送表登录值已被用完时,在步骤S1211 中,管理服务器702会将所选择的来源目的地对的传输模式设定为间接路由模式。之后,在步骤S1213中,管理服务器702会判断是否仍有未指派的来源目的地对。 倘若仍有未指派的来源目的地对时,步骤S1205会被执行,反之,图12的流程会被结束。综上所述,本发明的范例实施例的封包传送方法是通过封装程序更改数据封包的以太网路标头中的目的地地址字段与来源地址字段,以将欲传送的数据封包至中间网络节点。之后,再由此中间网络节点执行解封装程序以识别此数据封包的真正目的地并且正确地转送此数据封包。基此,可有效地减少数据中心网络系统内的网络交换机所需储存的转送表登录的数量,并且有效地扩大数据中心网络系统内的虚拟机器的数目。此外,本发明的范例实施例的封包传送方法依据数据中心网络系统内来源目的地对的优先级来指派每一来源目的地对的传输模式为直接路由模式或间接路由模式,通过双模式技术可减低网络交换机的技术负荷。虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视所附的权利要求范围所界定者为准。
权利要求
1.一种数据中心网络系统,包括一第一实体机器;一第一虚拟机器,执行于该第一实体机器上; 一第二实体机器;一第二虚拟机器,执行于该第二实体机器上,其中该第一虚拟机器用以传送一数据封包给该第二虚拟机器,并且该数据封包具有一目的地地址字段与一来源地址字段; 一网络交换机,用以转送该数据封包;以及一管理服务器,其中该第一实体机器、该第二实体机器、该网络交换机与该管理服务器根据一因特网协议彼此通讯,其中该管理服务器用以为该第一实体机器、该第一虚拟机器、该网络交换机、该第二实体机器与该第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0,其中该第一实体机器具有一封装模块,该封装模块用以封装来自于该第一虚拟机器的该数据封包,其中该网络交换机的该逻辑媒体存取控制地址被放至在所封装的该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至所封装的该数据封包的该来源地址字段中,其中该第一实体机器用以发送所封装的该数据封包。
2.根据权利要求1所述的数据中心网络系统,其中该网络交换机用以接收所封装的该数据封包并且具有一解封装模块, 其中该解封装模块用以解封装所接收的该数据封包,其中在所解封装的该数据封包中,该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中,其中该网络交换机还用以传送所解封装的该数据封包给该第二实体机器,并且该第二实体机器将所解封装的该数据封包传送给该第二虚拟机器。
3.根据权利要求1所述的数据中心网络系统,其中该最高有效字节的长度相同于该最低有效字节的长度。
4.根据权利要求1所述的数据中心网络系统,其中该第一实体机器的该封装模块将所封装的该数据封包的该来源地址字段分割为一第一部分以及接续于该第一部分的一第二部分,其中该封装模块将该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第一部分中并且将该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第二部分中。
5.根据权利要求4所述的数据中心网络系统,其中该解封装模块用以判断所接收的该数据封包的该来源地址字段的该第一部分是否为0,并且当所接收的该数据封包的该来源地址字段的该第一部分非为0时解封装所接收的该数据封包。
6.根据权利要求1所述的数据中心网络系统,还包括至少一其它网络交换机,用以转送该数据封包。
7.根据权利要求1所述的数据中心网络系统,其中该因特网协议为一以太网络协议。
8.一种数据中心网络系统,包括一第一实体机器;一第一虚拟机器,执行于该第一实体机器上;一第二实体机器;一第二虚拟机器,执行于该第二实体机器上,其中该第一虚拟机器用以传送一数据封包给该第二虚拟机器,并且该数据封包具有一目的地地址字段与一来源地址字段;以及一管理服务器,其中该第一实体机器、该第二实体机器与该管理服务器根据一因特网协议彼此通讯,其中该管理服务器用以为该第一实体机器、该第一虚拟机器、该第二实体机器与该第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0,其中该第一实体机器具有一封装模块,该封装模块用以封装来自于该第一虚拟机器的该数据封包,其中该第二实体机器的该逻辑媒体存取控制地址被放至在所封装的该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至所封装的该数据封包的该来源地址字段中,其中该第一实体机器用以发送所封装的该数据封包。
9.根据权利要求8所述的数据中心网络系统,其中该第二实体机器用以接收所封装的该数据封包并且具有一解封装模块,其中该解封装模块用以解封装所接收的该数据封包,其中在所解封装的该数据封包中,该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中,其中该第二实体机器将所解封装的该数据封包传送给该第二虚拟机器。
10.根据权利要求8所述的数据中心网络系统,其中该最高有效字节的长度相同于该最低有效字节的长度。
11.根据权利要求8所述的数据中心网络系统,其中该第一实体机器的该封装模块将所封装的该数据封包的该来源地址字段分割为一第一部分以及接续于该第一部分的一第二部分,其中该封装模块将该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第一部分中并且将该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第二部分中。
12.根据权利要求11所述的数据中心网络系统,其中该解封装模块用以判断所接收的该数据封包的该来源地址字段的该第一部分是否为0,并且当所接收的该数据封包的该来源地址字段的该第一部分非为0时解封装所接收的该数据封包。
13.根据权利要求8所述的数据中心网络系统,还包括至少一其它网络交换机,用以转送该数据封包。
14.根据权利要求8所述的数据中心网络系统,其中该因特网协议为一以太网络协议。
15.一种数据中心网络系统,包括多个机器,包括多个实体机器与多个虚拟机器,其中每一该多个虚拟机器属于该多个实体机器的其中之一;多个网络交换机,其中该多个实体机器经由该多个网络交换机彼此连接;以及一管理服务器,用以为该多个机器与该多个网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0, 其中该多个机器、该多个网络交换机与该管理服务器根据一因特网协议彼此通讯, 其中该管理服务器还用以根据该些机器建立多个来源目的地对,衡量该些来源目的地对的一优先级,并且根据该优先级与每一该些网络交换机的多个转送表登录来指派对应每一该些来源目的地对的一传输模式为一直接路由模式或一间接路由模式,其中当使用该间接路由模式从该些虚拟机器之中的一第一虚拟机器传送一数据封包给该些虚拟机器之中的一第二虚拟机器时,对应该第一虚拟机器的一第一实体机器确认对应该第二虚拟机器的一网络交换机、根据所确认的该网络交换机来封装该数据封包并且发送所封装的该数据封包,其中所封装的该数据封包具有一目的地地址字段与一来源地址字段,对应该第二虚拟机器的该网络交换机的该逻辑媒体存取控制地址被放至所封装的该数据封包的该目的地地址字段中,并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至所封装的该数据封包的该来源地址字段中,其中对应该第一虚拟机器的该第一实体机器为该些实体机器的其中之一并且对应该第二虚拟机器的该网络交换机为该些网络交换机的其中之一。
16.根据权利要求15所述的数据中心网络系统,其中该管理服务器用以周期地计算每一该些来源目的地对的一数据流量以及依据该些来源目的地对的该些数据流量排序该些来源目的地对以产生该优先级。
17.根据权利要求15所述的数据中心网络系统,还包括至少一储存服务器,其中该管理服务器用以将该些来源目的地对区分为一实体机器对实体机器群、一虚拟机器对管理服务器群、一虚拟机器对储存服务器群与一虚拟机器对虚拟机器群;以及依序地依据该实体机器对实体机器群、该虚拟机器对管理服务器群、该虚拟机器对储存服务器群与该虚拟机器对虚拟机器群来产生该些来源目的地对的该优先级。
18.根据权利要求15所述的数据中心网络系统,其中该管理服务器用以根据该优先级选择该些来源目的地对的其中之一,并且判断该些转送表登录是否已被用完,其中倘若该些转送表登录未被用完时,该管理服务器使用该些转送表登录的其中之一来指派所选择的来源目的地对的该传输模式为该直接路由模式,其中倘若该些转送表登录已被用完时,该管理服务器指派所选择的来源目的地对的该传输模式为该间接路由模式。
19.根据权利要求15所述的数据中心网络系统,其中该网络交换机用以接收所封装的该数据封包并且解封装所接收的该数据封包,其中在所解封装的该数据封包中该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中;以及其中该网络交换机还用以发送所解封装的该数据封包。
20.根据权利要求15所述的数据中心网络系统,其中该最高有效字节的长度相同于该最低有效字节的长度。
21.根据权利要求15所述的数据中心网络系统,其中该第一实体机器将所封装的该数据封包的该来源地址字段分割为一第一部分以及接续于该第一部分的一第二部分,将该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第一部分中,以及将该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第二部分中。
22.根据权利要求15所述的数据中心网络系统,其中当该些虚拟机器的其中一个虚拟机器从该些实体机器的其中一个实体机器移至另一个实体机器时,该管理服务器将该些来源目的对之中对应该其中一个虚拟机器的每一来源目的对的传输模式设定为该间接路由模式。
23.根据权利要求15所述的数据中心网络系统,其中该因特网协议为一以太网络协议。
24.—种数据中心网络系统,包括多个机器,包括多个实体机器与多个虚拟机器,其中每一该些虚拟机器属于该些实体机器的其中之一;多个网络交换机,其中该些实体机器经由该些网络交换机彼此连接;以及一管理服务器,用以为该些机器与该些网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0,其中该些机器、该些网络交换机与该管理服务器根据一因特网协议彼此通讯,其中该管理服务器还用以根据该些机器建立多个来源目的地对,衡量该些来源目的地对的一优先级,并且根据该优先级与每一该些网络交换机的多个转送表登录来指派对应每一该些来源目的地对的一传输模式为一直接路由模式或一间接路由模式,其中当使用该间接路由模式从该些虚拟机器之中的一第一虚拟机器传送一数据封包给该些虚拟机器之中的一第二虚拟机器时,对应该第一虚拟机器的一第一实体机器确认对应该第二虚拟机器的一第二实体机器、根据所确认的该第二实体机器来封装该数据封包并且发送所封装的该数据封包,其中所封装的该数据封包具有一目的地地址字段与一来源地址字段,对应该第二虚拟机器的该第二实体机器的该逻辑媒体存取控制地址被放至所封装的该数据封包的该目的地地址字段中,并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至所封装的该数据封包的该来源地址字段中,其中对应该第一虚拟机器的该第一实体机器为该些实体机器的其中之一并且对应该第二虚拟机器的该第二实体机器为该些实体机器的其中之一。
25.根据权利要求M所述的数据中心网络系统,其中该管理服务器用以周期地计算每一该些来源目的地对的一数据流量以及依据该些来源目的地对的该些数据流量排序该些来源目的地对以产生该优先级。
26.根据权利要求M所述的数据中心网络系统,还包括至少一储存服务器,其中该管理服务器用以将该些来源目的地对区分为一实体机器对实体机器群、一虚拟机器对管理服务器群、一虚拟机器对储存服务器群与一虚拟机器对虚拟机器群;以及依序地依据该实体机器对实体机器群、该虚拟机器对管理服务器群、该虚拟机器对储存服务器群与该虚拟机器对虚拟机器群来产生该些来源目的地对的该优先级。
27.根据权利要求M所述的数据中心网络系统,其中该管理服务器用以根据该优先级选择该些来源目的地对的其中之一,并且判断该些转送表登录是否已被用完,其中倘若该些转送表登录未被用完时,该管理服务器使用该些转送表登录的其中之一来指派所选择的来源目的地对的该传输模式为该直接路由模式,其中倘若该些转送表登录已被用完时,该管理服务器指派所选择的来源目的地对的该传输模式为该间接路由模式。
28.根据权利要求M所述的数据中心网络系统,其中该第二实体机器用以接收所封装的该数据封包并且解封装所接收的该数据封包,其中在所解封装的该数据封包中该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中;以及其中该第二实体还用以传送所解封装的该数据封包给该第二虚拟机器。
29.根据权利要求M所述的数据中心网络系统,其中该最高有效字节的长度相同于该最低有效字节的长度。
30.根据权利要求M所述的数据中心网络系统,其中该第一实体机器将所封装的该数据封包的该来源地址字段分割为一第一部分以及接续于该第一部分的一第二部分,将该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第一部分中,以及将该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第二部分中。
31.根据权利要求M所述的数据中心网络系统,其中当该些虚拟机器的其中一个虚拟机器从该些实体机器的其中一个实体机器移至另一个实体机器时,该管理服务器将该些来源目的对之中对应该其中一个虚拟机器的每一来源目的对的传输模式设定为该间接路由模式。
32.根据权利要求M所述的数据中心网络系统,其中该因特网协议为一以太网络协议。
33.一种封包传送方法,用于根据一因特网协议从执行于一第一实体机器上的一第一虚拟机器传送一数据封包至执行于一第二实体机器上的一第二虚拟机器,其中该数据封包具有一目的地地址字段与一来源地址字段并且该第二实体连接至一网络交换机,该封包传送方法包括为该第一实体机器、该第一虚拟机器、该网络交换机、该第二实体机器与该第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0 ;封装该数据封包,其中在所封装的该数据封包中该网络交换机的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中,并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至该数据封包的该来源地址字段中;以及从该第一实体机器中发送所封装的该数据封包。
34.根据权利要求33所述的封包传送方法,还包括接收从该第一实体机器中所发送的该数据封包并且解封装所接收的该数据封包,其中在所解封装的该数据封包中该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中;从该网络交换机中发送所解封装的该数据封包;以及在该第二虚拟机器中经由该第二实体机器接收从该网络交换机中所发送的该数据封包。
35.根据权利要求33所述的封包传送方法,其中该最高有效字节的长度相同于该最低有效字节的长度。
36.根据权利要求33所述的封包传送方法,还包括将所封装的该数据封包的该来源地址字段分割为一第一部分以及接续于该第一部分的一第二部分,其中封装该数据封包的步骤包括将该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第一部分中;以及将该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第二部分中。
37.根据权利要求36所述的封包传送方法,还包括判断所接收的该数据封包的该来源地址字段的该第一部分是否为0,并且当所接收的该数据封包的该来源地址字段的该第一部分非为0时,解封装所接收的该数据封包。
38.根据权利要求33所述的封包传送方法,其中该因特网协议为一以太网络协议。
39.一种封包传送方法,用于根据一因特网协议从执行于一第一实体机器上的一第一虚拟机器传送一数据封包至执行于一第二实体机器上的一第二虚拟机器,其中该数据封包具有一目的地地址字段与一来源地址字段,该封包传送方法包括为该第一实体机器、该第一虚拟机器、该第二实体机器与该第二虚拟机器分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0 ;封装该数据封包,其中在所封装的该数据封包中该第二实体机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中,并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至该数据封包的该来源地址字段中;以及从该第一实体机器中发送所封装的该数据封包。
40.根据权利要求39所述的封包传送方法,还包括接收从该第一实体机器中所发送的该数据封包并且解封装所接收的该数据封包,其中在所解封装的该数据封包中该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中;以及从该第二实体机器中传送所解封装的该数据封包给该第二机器。
41.根据权利要求39所述的封包传送方法,其中该最高有效字节的长度相同于该最低有效字节的长度。
42.根据权利要求39所述的封包传送方法,还包括将所封装的该数据封包的该来源地址字段分割为一第一部分以及接续于该第一部分的一第二部分,其中封装该数据封包的步骤包括将该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第一部分中;以及将该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节放至该来源地址字段的该第二部分中。
43.根据权利要求42所述的封包传送方法,还包括判断所接收的该数据封包的该来源地址字段的该第一部分是否为0,并且当所接收的该数据封包的该来源地址字段的该第一部分非为0时,解封装所接收的该数据封包。
44.根据权利要求39所述的封包传送方法,其中该因特网协议为一以太网络协议。
45.一种封包传送方法,用于根据一因特网协议在多个机器之间传送数据封包,其中该些机器包括多个实体机器与多个虚拟机器,其中每一该些虚拟机器属于该些实体机器的其中之一,并且该些实体机器经由多个网络交换机彼此连接,该封包传送方法包括为该些实体机器、该些虚拟机器与该些网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0 ; 根据该些机器建立多个来源目的地对; 衡量该些来源目的地对的一优先级;根据该优先级与每一该些网络交换机的多个转送表登录来指派对应每一该些来源目的地对的一传输模式为一直接路由模式或一间接路由模式;以及当使用该间接路由模式从该些虚拟机器之中的一第一虚拟机器传送一数据封包给该些虚拟机器之中的一第二虚拟机器时,确认对应该第二虚拟机器的一网络交换机、封装该数据封包并且发送所封装的该数据封包,其中对应该第二虚拟机器的该网络交换机为该些网络交换机的其中之一, 其中所封装的该数据封包具有一目的地地址字段与一来源地址字段,对应该第二虚拟机器的该网络交换机的该逻辑媒体存取控制地址被放至所封装的该数据封包的该目的地地址字段中,并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至所封装的该数据封包的该来源地址字段中。
46.根据权利要求45所述的封包传送方法,其中衡量该些来源目的地对的该优先级的步骤包括周期地计算每一该些来源目的地对的一数据流量;以及依据该些来源目的地对的该些数据流量排序该些来源目的地对以产生该优先级。
47.根据权利要求45所述的封包传送方法,其中该些机器还包括至少一储存服务器与至少一管理服务器,其中衡量该些来源目的地对的该优先级的步骤包括将该些来源目的地对区分为一实体机器对实体机器群、一虚拟机器对管理服务器群、 一虚拟机器对储存服务器群与一虚拟机器对虚拟机器群;以及依序地依据该实体机器对实体机器群、该虚拟机器对管理服务器群、该虚拟机器对储存服务器群与该虚拟机器对虚拟机器群来产生该些来源目的地对的该优先级。
48.根据权利要求45所述的封包传送方法,其中根据该优先级与每一该些网络交换机的该些转送表登录来指派对应每一该些来源目的地对的该传输模式为该直接路由模式或该间接路由模式的步骤包括根据该优先级选择该些来源目的地对的其中之一;判断该些转送表登录是否已被用完;倘若该些转送表登录未被用完时,使用该些转送表登录的其中之一来指派所选择的来源目的地对的该传输模式为该直接路由模式;以及倘若该些转送表登录已被用完时,指派所选择的来源目的地对的该传输模式为该间接路由模式。
49.根据权利要求45所述的封包传送方法,还包括当对应该第二虚拟机器的该网络交换机接收到所封装的该数据封包时,解封装所接收的该数据封包,其中在所解封装的该数据封包中该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中;以及从该网络交换机中发送所解封装的该数据封包。
50.根据权利要求45所述的封包传送方法,其中该最高有效字节的长度相同于该最低有效字节的长度。
51.根据权利要求45所述的封包传送方法,还包括将该些虚拟机器的其中一个虚拟机器从该些实体机器的其中一个实体机器移至另一个实体机器;并且将该些来源目的对之中对应该其中一个虚拟机器的每一来源目的对的传输模式设定为该间接路由模式。
52.根据权利要求45所述的封包传送方法,其中该因特网协议为一以太网络协议。
53.一种封包传送方法,用于根据一因特网协议在多个机器之间传送数据封包,其中该些机器包括多个实体机器与多个虚拟机器,其中每一该些虚拟机器属于该些实体机器的其中之一,并且该些实体机器经由多个网络交换机彼此连接,该封包传送方法包括为该些实体机器、该些虚拟机器与该些网络交换机分别地配置对应的逻辑媒体存取控制地址,其中每一该些逻辑媒体存取控制地址包括一最高有效字节与一最低有效字节,该最高有效字节具有多个字节并且该最高有效字节的每一该些字节被设定为0 ; 根据该些机器建立多个来源目的地对; 衡量该些来源目的地对的一优先级;根据该优先级与每一该些网络交换机的多个转送表登录来指派对应每一该些来源目的地对的一传输模式为一直接路由模式或一间接路由模式;以及当使用该间接路由模式从该些虚拟机器之中的一第一虚拟机器传送一数据封包给该些虚拟机器之中的一第二虚拟机器时,确认对应该第二虚拟机器的一第二实体机器、根据该第二实体机器封装该数据封包并且发送所封装的该数据封包,其中对应该第二虚拟机器的该第二实体机器为该些实体机器的其中之一, 其中所封装的该数据封包具有一目的地地址字段与一来源地址字段,对应该第二虚拟机器的该第二实体机器的该逻辑媒体存取控制地址被放至所封装的该数据封包的该目的地地址字段中,并且该第一虚拟机器的该逻辑媒体存取控制地址的该最低有效字节和该第二虚拟机器的该逻辑媒体存取控制地址的该最低有效字节被放至所封装的该数据封包的该来源地址字段中。
54.根据权利要求53所述的封包传送方法,其中衡量该些来源目的地对的该优先级的步骤包括周期地计算每一该些来源目的地对的一数据流量;以及依据该些来源目的地对的该些数据流量排序该些来源目的地对以产生该优先级。
55.根据权利要求53所述的封包传送方法,其中该些机器还包括至少一储存服务器与至少一管理服务器,其中衡量该些来源目的地对的该优先级的步骤包括将该些来源目的地对区分为一实体机器对实体机器群、一虚拟机器对管理服务器群、 一虚拟机器对储存服务器群与一虚拟机器对虚拟机器群;以及依序地依据该实体机器对实体机器群、该虚拟机器对管理服务器群、该虚拟机器对储存服务器群与该虚拟机器对虚拟机器群来产生该些来源目的地对的该优先级。
56.根据权利要求M所述的封包传送方法,其中根据该优先级与每一该些网络交换机的该些转送表登录来指派对应每一该些来源目的地对的该传输模式为该直接路由模式或该间接路由模式的步骤包括根据该优先级选择该些来源目的地对的其中之一; 判断该些转送表登录是否已被用完;倘若该些转送表登录未被用完时,使用该些转送表登录的其中之一来指派所选择的来源目的地对的该传输模式为该直接路由模式;以及倘若该些转送表登录已被用完时,指派所选择的来源目的地对的该传输模式为该间接路由模式。
57.根据权利要求53所述的封包传送方法,还包括当对应该第二虚拟机器的该第二实体机器接收到所发送的该数据封包时,解封装所接收的该数据封包,其中在所解封装的该数据封包中该第二虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该目的地地址字段中并且该第一虚拟机器的该逻辑媒体存取控制地址被放至该数据封包的该来源地址字段中;以及从该第二实体机器中传送所解封装的该数据封包给该第二虚拟机器。
58.根据权利要求53所述的封包传送方法,其中该最高有效字节的长度相同于该最低有效字节的长度。
59.根据权利要求53所述的封包传送方法,还包括将该些虚拟机器的其中一个虚拟机器从该些实体机器的其中一个实体机器移至另一个实体机器;并且将该些来源目的对之中对应该其中一个虚拟机器的每一来源目的对的传输模式设定为该间接路由模式。
60.根据权利要求53所述的封包传送方法,其中该因特网协议为一以太网络协议。
全文摘要
本发明提出一种数据中心网络系统及其封包传送方法,此数据中心网络系统包括管理服务器以及包含多个实体机器与虚拟机器的机器。管理服务器会每一机器配置对应的逻辑媒体存取控制地址,其中每一逻辑媒体存取控制地址的最高有效字节被设定为0。此外当数据封包被从一实体机器中被发送时,此实体机器对此数据封包执行封装程序以将此数据封包传送至此数据封包的发送端与接收端之间的一个网络节点,并且由此网络节点对此数据封包执行解封装程序,以转送至真正的接收端。基此,可有效地减少需登录于网络交换机的转送表中的虚拟机器的数目。
文档编号H04L12/56GK102480404SQ201010610090
公开日2012年5月30日 申请日期2010年12月28日 优先权日2010年11月19日
发明者涂政君, 许铭钊, 阙志克 申请人:财团法人工业技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1