用于构成聚合链路的交换机、设备和方法与流程

文档序号:12623745阅读:318来源:国知局
用于构成聚合链路的交换机、设备和方法与流程

本发明一般地涉及网络连接技术。更具体地,本发明涉及一种用于构成聚合链路的交换机、设备和方法。



背景技术:

在当今的联网技术中,商业信息交换的爆炸式增长要求网络必须能够提供高的接入带宽、性能和冗余。聚合链路一直以来被用于提供较高的链路带宽、链路传输弹性和冗余,已成为网络连接中的重要技术。

图1示出了一个典型的网络连接拓扑结构100。

网络连接拓扑结构100包括通信网络102、路由器104、交换机106以及服务器池108。

通信网络102是用于实现通信的介质。通信网络102的例子可包括(但不限于)因特网、云网络、无线保真(Wi-Fi)网络、无线局域网(WLAN)、局域网(LAN)、电话线路(POTS)和/或城域网(MAN)。网络连接拓扑结构100中的设备可按照各种有线和无线通信协议连接到通信网络102。

路由器104用于为经过路由器104的数据帧寻找最佳传输路径,并将该数据有效地传送到目的站点。

交换机106包括多个物理端口,分别用于与作为对端的服务器池108中的每个服务器进行连接。

为了实现出/入流量在各成员端口中的负荷分担,交换机106的多个物理端口可以被捆绑在一起,形成一个逻辑端口,以与服务器池108进行连接,这称为聚合链路(trunk),在图1中表示为聚合链路110。

在使用聚合链路110的情况下,交换机106会根据用户配置的端 口负荷分担策略来决定报文从哪个成员端口发送到对端服务器上。

在使用聚合链路110的情况下,交换机106还可以分派模式(dispatched mode)进行工作,其通过MAC交换等方式在服务器之间进行负载均衡。虽然分派模式要求服务器支持混杂的流量访问,但是这能为例如一些时间关键的云服务提供极佳的流量交换。聚合链路能够降低交换机负载并提供线速哈希分布(line-rate hash distribution),并能够提供更短的等待时间、更高的带宽和冗余。

在图1所示的典型网络连接拓扑结构100中,对端设备为服务器池108中的多个服务器,但是对端设备也可以是多个其他交换机。

如图1所示,在链路聚合技术中,聚合链路一般需要连接在多个对端设备(交换机或服务器)之间、甚至是多个厂商的对端设备(交换机或服务器)之间。然而,不同厂商的设备可能运行不同的协议。

目前,尚不能支持在交换机与多个运行不同协议的对端设备之间建立聚合链路。因而,用户在购买用于对端的交换机或服务器时会受到限制、不得不购买单一厂商的产品,以避免因协议不兼容而陷入困境。

因此,需要一种新的网络连接技术,以解决来自不同厂商的对端设备的协议兼容性问题。



技术实现要素:

鉴于上述问题,根据本发明的实施方式,通过形成嵌套式聚合链路,以使得交换机能够连接运行不同协议的多个对端设备(服务器或其他交换机),从而交换机能够同时支持与多个厂商的对端设备的连接。

根据本发明的一个实施方式,提供一种用于与多个对端设备构建聚合链路的交换机,所述交换机包括:支持不同连接协议的多个端口,每个端口用于与一个对端设备进行连接的协议;子聚合链路构成单元,用于使运行相同协议的一个或多个端口聚合成一个子聚合链路;和控制单元,用于使所有子聚合链路构成一个聚合链路。

根据本发明的一个实施方式,所述交换机还包括:多个协议控制单元,每个所述协议控制单元对应于一个子聚合链路,用于运行该子聚合链路的协议和控制该子聚合链路与对端设备的协议交换。

根据本发明的一个实施方式,所述交换机还包括:基本运行单元,用于存储聚合链路的端口成员表和关于运行时哈希控制的信息。

根据本发明的一个实施方式,其中所述运行时哈希控制是下述之一:单层哈希控制和多层哈希控制。

根据本发明的一个实施方式,所述交换机还包括:配置单元,用于配置交换机的端口成员集合和每个端口运行的协议,以便子聚合链路构成单元能够将运行相同协议的一个或多个端口聚合为一个子聚合链路。

根据本发明的一个实施方式,其中所述对端设备是交换机或服务器。

根据本发明的一个实施方式,其中所述交换机是物理交换机或虚拟交换机。

根据本发明的一个实施方式,其中在多个对端设备之一发生故障时,

发生故障的对端设备所在的子聚合链路的所述协议控制单元被配置为与发生故障的对端设备进行协议交换,并将所述故障通知控制单元;所述控制单元被配置为响应于收到所述协议控制单元的通知,重新编写聚合链路的端口成员表和运行时哈希控制信息,并将重新编写的端口成员表和运行时哈希控制信息通知基本运行单元;所述基本运行单元被配置为响应于收到所述控制单元的通知,移除与发生故障的对端设备的连接并运行新的哈希控制。

根据本发明的一个实施方式,其中在多个对端设备之一的故障恢复后,故障恢复后的对端设备所在的子聚合链路的所述协议控制单元被配置为与对端设备行协议交换,并将故障恢复通知控制单元;所述控制单元被配置为响应于收到所述协议控制单元的通知,重新编写聚合链路的端口成员表和运行时哈希控制信息,并将重新编写的端口成 员表和运行时哈希控制信息通知基本运行单元;所述基本运行单元被配置为响应于收到所述控制单元的通知,重新加入与故障恢复后的对端设备的连接并运行新的哈希控制。

根据本发明的一个实施方式,提供一种连接交换机的设备,所述交换机包括支持不同连接协议的多个端口,每个端口用于与一个对端设备进行连接,所述设备包括:子聚合链路构成单元,用于使交换机中运行相同协议的一个或多个端口聚合成一个子聚合链路;和控制单元,用于使所有子聚合链路构成一个聚合链路。

根据本发明的一个实施方式,提供一种用于构建聚合链路的方法,包括如下步骤:配置交换机的支持不同连接协议的多个端口,每个端口用于与一个对端设备进行连接;使交换机中运行相同协议的一个或多个端口聚合成一个子聚合链路;和使所有子聚合链路构成一个聚合链路。

附图说明

通过考虑下列与附图结合而作出的描述,本发明的结构、操作以及优势将变得更加明显。附图是示例性的,而非限制性的。

在某些附图中,为了说明的清晰性,特定的元件可能被省略或者不按比例示出。通常,相似的元件在不同的附图中用相似的数字表示,其中典型的情形是最后两位重要的数字可能相同,最重要的数字是附图的数字。而且,为了清晰起见,在特定的图中可能省略某些参考数字。

图1示出了一个典型的网络连接拓扑结构。

图2示出了根据本发明的一个实施方式的交换机的示意性结构框图。

图3示出了根据本发明的另一个实施方式的交换机的示意性结构框图。

图4示出了根据本发明的实施方式在交换机和服务器池之间形成嵌套式聚合链路的示意性例子。

图5示出了根据本发明的实施方式在第三方设备中进行控制以形成嵌套式聚合链路的示意性结构框图。

图6示出了根据本发明的实施方式的聚合链路的逻辑结构示意图。

图7示出用于形成聚合链路的方法的流程图。

图8示出了在聚合链路形成之后,有对端服务器出现故障致使某个链路的连接断开时的方法的流程图。

图9示出了在对端服务器的故障恢复后再重新加入聚合链路的方法的流程图。

图10示出了可实现本发明的实施方式的计算机系统的方框图。

具体实施方式

在对本发明的具体实施方式进行详细说明之前,首先对可能使用的典型协议进行简要说明。

1)静态端口信道(Static Portchannel)

这是一种成熟的聚合链路协议。它能够将多个物理端口聚合成一个逻辑端口,而无需与对端交换机或服务器进行协议交换。但是,静态端口信道这种协议不支持动态逻辑链路连接检测。

2)链路接入控制协议(LACP)

LACP能够满足用户的聚合链路、甚至是分布式聚合链路逻辑链路连接检测的需求。但是,LACP要求对端必须使用相同的逻辑或相同的物理交换机或服务器。对于逻辑对端交换机,这就意味着服务器必须在虚拟交换机或VM上支持分布式LACP,但这会非常复杂和昂贵。且这对于跨厂商的服务器来说是难以实现的。

在实际使用中,还会使用LACP的多种变形协议。

除以上两种通常使用的标准协议及其变形外,目前还使用多种非标准的私有协议。如Cisco的vPC(虚拟端口信道)、IBM的vLAG(虚拟lag)以及Flex-links等。vPC、vLAG和Flex-links均是有源/有源或有源/无源连接解决方案。它们可用于在不多于两个的物理服务器间支持分布式聚合链路连接。vPC和vLAG还要求连接的服务器必 须也是vPC或vLAG对端设备,它们是不能支持多厂商实现的闭环解决方案。

以下将参考附图详细描述用于实践本技术的实施方式。

应当指出,将主要以物理交换机为例对本发明的具体实施方式进行说明。不过,本领域技术人员能够理解,本申请不局限于此。相反,本申请的技术同样适用于虚拟交换机。

在本发明的上下文中,交换机要与之建立聚合链路的设备(例如,服务器或其他的交换机)被称为对端设备。以下将主要以服务器作为对端设备,对本发明的具体实施方式进行说明。不过,本领域技术人员能够理解,本申请不局限于此。相反,本申请的技术适用于交换机与能够支持聚合链路的任何对端设备(例如,物理交换机、虚拟交换机、个人计算机等)之间的聚合链路连接。

另外,以下将主要以LACP、静态端口通道等协议为例对本发明的具体实施方式进行说明。不过,本领域技术人员能够理解,本发明的实施与运行怎样的协议不相关。

图2示出了根据本发明的一个实施方式的交换机206的示意性结构框图。

如图2所示,交换机206包括多个端口1-n、子聚合链路构成单元2062和控制单元2064。

交换机206的多个端口1-n支持不同的连接协议,每个端口用于与多个对端设备(例如,服务器或其他的交换机)之一进行连接。这里,连接协议可以包括如前面提到的静态端口信道协议、LACP协议及其变形,以及Cisco vPC和IBM vLAG等。

子聚合链路构成单元2062通过将交换机中运行相同协议的一个或多个端口捆绑在一起,形成一个逻辑端口,从而构成一个子聚合链路。由于本发明可运行于包括多种(例如,至少两种)协议的环境,因而会形成例如至少两个子聚合链路。

控制单元2064使所有子聚合链路构成一个聚合链路(即,嵌套式聚合链路)。本发明的嵌套式聚合链路可以被看组一个聚合链路组。

图3示出了根据本发明的另一个实施方式的交换机306的示意性结构框图。

与如图2所示的交换机206相比,如图3所示的交换机306除具有多个端口1-n、子聚合链路构成单元2062和控制单元2064外,还可以包括配置单元3066、多个协议控制单元3067和基本运行单元3068。这里,对于图3和图2中相同的部件,不再赘述,将仅描述图3与图2中不同的部分。

配置单元3066用来配置交换机306的端口成员集合和每个端口运行的协议。

在配置单元3066配置了各端口后,会将聚合链路端口成员表传送到子聚合链路构成单元2062,以用于构成各子聚合链路;传送到控制单元2064,以便由控制单元2064进行控制和更新。该聚合链路成员表还被传送到基本运行单元4068进行存储,如后所述。

根据需要,配置单元3066还可以配置协议的相关参数,以及进行验证,以查看每个物理端口是否可以配置到集合链路中。这通常要求新的物理端口要和集合链路中已经存在的其它物理口具有相同的带宽、流控、双工/半双工、所属的VLAN配置等,也就是检查一个新的物理端口能否添加到聚合链路的条件。这种配置操作例如可通过编程来实现。

尽管图3示出配置单元3066位于交换机306中,不过本发明不局限于此,配置单元3066也可以不位于交换机306中,而是位于控制板(未示出)中、位于基于服务器的SDN控制器(未示出)中、位于云端或者位于服务器侧。前述控制板和SDN控制器这两者通常是第三方服务器,这个服务器运行SDN的控制软件来控制其它的网络交换机的协议运行。

在交换机306上,对应于每个子聚合链路,存在一个协议控制单元3067,用于运行该子聚合链路的协议以及控制该子聚合链路与对端设备的协议交换。通过每个协议控制单元3067与对端设备交换协议消息,使得每个子聚合链路可以运行它自己单独的链路协议,并便 于该子聚合链路的形成或断开,如后详述。

基本运行单元3068用于存储聚合链路端口成员表(即,交换机306的各端口)以及运行时哈希控制(即,流量分配)信息,以确定使用什么哈希算法以及在哪些端口成员上进行哈希算法。

基本运行单元3068可以通过硬件(例如,ASIC)实现,也可以通过软件实现。

哈希控制可由基本运行单元3068根据聚合链路成员表通过硬件编程自动生成,也可以由控制单元2064生成,用以在聚合链路中实现流量均衡,以充分利用每条链路的资源。具体而言,通过哈希控制,在服务器侧,每个与子聚合链路连接的服务器将对于服务器的出口流量在每个子聚合链路之间进行本地流量均衡,而在交换机侧,嵌套式聚合链路能够在所有形成聚合链路的端口之间进行本地均衡。

本领域技术人员能够理解,使用怎样的算法进行流量分配以及如何进行流量分配与本发明的思想无关,这里不再详述。

另外,哈希控制并不局限于对形成嵌套式聚合链路的所有物理端口的单层哈希控制,而是还可以对子聚合链路级别以及在子聚合链路内进行哈希控制,以实现多层哈希控制。多层哈希控制更为复杂,但是能对流量控制提供更高的灵活性。

在图3中,以虚线框示出的服务器308通过其协议控制单元和基本运行单元与交换机侧进行交互。协议控制单元和基本运行单元是现有服务器的标准配置,其可通过软件或者硬件实现。由此可见,不需要对服务器进行额外配置,即可实现本发明。

另外,每个服务器只需要形成并维护其自身的子聚合链路或端口连接,而不需要与其他服务器进行同步,因而也可以使得服务器的实现尽可能简单。

图4示出了根据本发明的实施方式在交换机和服务器池之间形成嵌套式聚合链路的示意性例子。

如图4所示,在服务器侧,示意性地表示了服务器408-1、408-2......408-M(其中M为整数,示意性地表示服务器的数量)。假 定服务器408-1、408-2......408-M来自多个不同厂商(即,多厂商服务器环境)。应用在多个厂商的服务器上运行。这里,示意性地示出所述应用是基于云的应用,不过本发明并不局限于此,所述应用可以是任何适用的应用。

交换机406包括多个物理端口1-n。交换机406的配置单元(未示出)例如配置交换机406的端口1、2运行标准LACP协议key 1000,配置端口3-5运行LACP key 2000协议,配置端口n运行Cisco vPC协议。

随后,交换机406的子聚合链路构成单元(未示出)将端口1、2捆绑为一个逻辑链路,从而形成一个子聚合链路410-1,以与同样运行例如标准LACP协议key 1000的服务器408-1之间形成两个物理链路(link)。

交换机406的子聚合链路构成单元(未示出)将端口3-5捆绑为一个逻辑链路,从而形成一个子聚合链路410-2,以与同样运行例如LACP key 2000协议的服务器408-2之间形成三个物理链路。

交换机306的子聚合链路构成单元(未示出)将端口n捆绑为一个逻辑链路,从而形成一个子聚合链路310-M,以与同样运行例如Cisco vPC协议的服务器308-M之间形成单个物理链路。

交换机306的控制单元(未示出)将各子聚合链路410-1、410-2......410-M聚合在一起,构成一个嵌套式聚合链路(统称为聚合链路410)。

每当形成、断开子聚合链路或子聚合链路有任何其他变化时,发生变化的子聚合链路对应的协议控制单元都会生成消息来通知控制单元,从而控制单元将进行控制以移除、加入所有或一些发生变化的端口,如后详述。

在如上描述中,尽管示出了一个子聚合链路对应于一个服务器,但是本领域技术人员能够理解,本发明并不局限于此。一个子聚合链路可以对应于多个服务器,只要这多个服务器运行相同的协议(例如,在分布式虚拟交换机的情况下即是如此。另外,对于不同的子聚合链 路,其协议需要不同或者能相互区分。例如,对于如上所述的子聚合链路410-1和410-2,它们都运行LACP协议,但是子聚合链路410-1使用LACP key#1000,而子聚合链路410-2使用LACP key#2000,从而这两个子聚合链路运行不同种的协议。

以上参照图2-4说明了在交换机侧进行控制以形成嵌套式聚合链路的实施方式。但是,本发明并不局限于此,也可以在第三方设备或服务器侧进行控制以形成嵌套式聚合链路。

以下将参照图5说明根据本发明的实施方式,在第三方设备500中进行控制以形成嵌套式聚合链路的示意性结构框图。

如图5所示,第三方设备500包括子聚合链路构成单元562和控制单元564。子聚合链路构成单元562用于根据预先配置的交换机各端口运行的协议,使交换机中运行相同协议的一个或多个端口捆绑成一个逻辑端口,从而构成一个子聚合链路。如前所述,在本发明的实施方式中,至少使用两种协议,因而构成例如至少两个子聚合链路。控制单元564使所有子聚合链路构成一个聚合链路(即,嵌套式聚合链路)。

除子聚合链路构成单元562和控制单元564外,如图5所示的第三方设备500还可以根据需要包括配置单元566和多个协议控制单元567,如图5中的虚线框所示。

配置单元566用来配置交换机的端口成员集合和每个端口运行的协议。根据需要,配置单元566还可以配置协议的相关参数。这种配置操作例如可通过编程来实现。

在配置单元566配置了交换机的端口后,会将聚合链路端口成员表传送到子聚合链路构成单元562以及控制单元564,以便由子聚合链路构成单元562构成子聚合链路,并由控制单元564进行控制和更新。该聚合链路成员表还被传送到交换机的基本运行单元进行存储,如后所述。

尽管图5示出配置单元566位于第三方设备500中,不过本发明不局限于此,配置单元566也可以不位于第三方设备500中,而是位 于控制板(未示出)中、位于基于服务器的SDN控制器(未示出)中、位于交换机侧。这里的控制板或SDN控制器可以是能控制交换机的任何设备,例如可以第三方服务器,也就是独立的一台计算机,可以是作为专门设计的网络控制器(或称为控制板)的一台独特的计算机,或者是一台运行者SDN控制软件,如运行着openflow控制软件的服务器,或甚至可以一台虚拟的计算机。

在第三方设备500上,对应于每个子聚合链路,都存在一个协议控制单元567,用于运行该子聚合链路的协议以及控制该子聚合链路与对端设备的协议交换。通过每个协议控制单元567与对端设备交换协议消息,使得每个子聚合链路可以运行它自己单独的链路协议,并便于该子聚合链路的形成或断开,如后详述。

在图5所示的实施方式中,将聚合链路的控制转交给第三方设备500进行,从而以虚线框示出的交换机506可以只具备简单的配置。

不过,基本运行单元5068仍然位于交换机506侧,用于存储从配置单元566传送的聚合链路成员表(即,交换机的各端口)以及运行时哈希控制(即,流量分配)信息,其可以通过硬件(例如,ASIC)实现,其也可以通过软件实现。

在子聚合链路形成、断开或有任何其他变化时,发生变化的子聚合链路对应的协议控制单元567都会生成消息来通知控制单元564。于是,控制单元564会更新交换机端口成员表,并通知基本运行单元5068,以加入或删除发生变化的端口成员。

哈希控制可以由基本运行单元5068根据聚合链路成员表通过硬件编程自动生成,也可以由控制单元564生成,用以在聚合链路中实现流量均衡,以充分利用每条链路的资源。如前所述,使用怎样的算法进行流量分配以及如何进行流量分配与本发明的思想无关,这里不再详述。

在如图5所示的实施方式中,也可以实现对聚合链路的单层或多层哈希控制。

第三方设备500可以使用运行交换机管理软件的服务器,比如 openstack的控制器,或者IBM FSM或Lenovo的SNSC等。

另外,如本领域技术人员能够理解,也可以由交换机要与之建立聚合链路的多个对端服务器中的一个服务器充当所述第三方设备。在这种情况下,在嵌套式聚合链路还没有协商起来之前,还需要额外构建一条其它的链接,以便该服务器能够和交换机进行通信。

图6示出了根据本发明的实施方式的聚合链路的逻辑结构示意图。

如图6所示,在逻辑上,根据本发明的实施方式的聚合链路600包括两层:聚合链路控制层612和子聚合链路层614。在图6中,示意地示出了三个子聚合链路614-1、614-2和614-3,但是本领域技术人员能够理解,本发明的子聚合链路的数目并不局限于此,相反,其可以是根据实际需要配置的任意数量的子聚合链路。

根据本发明的一个实施方式,聚合链路控制层612可以包括例如如图4所示的子聚合链路构成单元2062、控制单元2064、配置单元4066,和基本运行单元4068。而子聚合链路614-1、614-2和614-3中的每个则包括其对应的协议控制单元4067,以负责运行其协议。

根据本发明的另一个实施方式,聚合链路控制层612可以包括例如如图5所示的子聚合链路构成单元562、控制单元564、配置单元566,和基本运行单元5068。而子聚合链路614-1、614-2和614-3中的每个则包括其对应的协议控制单元567,以负责运行其协议。

图7示出用于形成聚合链路的方法700的流程图。

图7的步骤开始于步骤702,并在步骤704中配置交换机的支持不同连接协议的多个端口,每个端口用于与一个对端设备进行连接。这里,协议可以包括如前所述的多种协议。对端设备可以是服务器或其他的交换机。

在步骤706中,通过将交换机中运行相同协议的一个或多个端口捆绑成一个逻辑端口,从而构成一个子聚合链路。由于本发明可运行于包括多种(例如,至少两种)协议的环境,因而会形成例如至少两个子聚合链路

在步骤708中,使所有子聚合链路构成一个聚合链路(即,嵌套 式聚合链路)。

如前所示,如图7所示的方法700可以由交换机执行、由第三方设备执行、或者由交换机与之建立连接的多个服务器中的一个服务器执行。

以下将参照图8、9描述在某个子聚合链路发生变化(断开或加入)时进行的操作。

图8示出了在聚合链路形成之后,多个对端设备之一出现故障致使某个子聚合链路的连接断开时的方法800的流程图。

该方法开始于步骤802,并在步骤804中检测到有对端设备出现故障致使某个链路的连接断开时,由发生故障的对端设备所在的子聚合链路的协议控制单元与对端设备进行协商。在步骤806,由协议控制单元将所述故障通知控制单元。在步骤808,控制单元重新编写聚合链路的端口成员表和运行时哈希控制信息,并将重新编写的端口成员表和运行时哈希控制信息通知基本运行单元,以使基本运行单元移除与发生故障的对端设备的连接并运行新的哈希控制。随后,该方法在步骤810中结束。

图9示出了在多个对端设备之一的故障恢复后再重新加入聚合链路的方法900的流程图。

该方法开始于步骤902,并在步骤904中检测到发生故障的服务器修复之后,由故障恢复后的对端设备所在的子聚合链路的协议控制单元与对端设备进行协商。于是,在步骤906中,由协议控制单元将所述故障恢复通知控制单元。在步骤908中,由所述控制单元重新编写存储聚合链路的端口成员表和运行时哈希控制信息,并将重新编写的端口成员表和运行时哈希控制信息通知基本运行单元,以重新加入与故障恢复后的对端设备的连接并运行新的哈希控制。该方法在步骤910中结束。

此外,本领域技术人员能够理解,在如图8、9所示的方法中,在端口成员发生变化(例如,在端口被删除或加入的情况下),控制单元2064或控制单元564可以只重写或刷新受影响的子聚合链路的端 口成员表,这样不会影响其他子聚合链路的数据流。不过,控制单元2064或控制单元564也可以刷新整个聚合链路的成员表,这样的好处是比较简单、容易实现。

嵌套式聚合链路是一种简单、灵活的分布式聚合链路解决方案,便于在多个服务器之间形成聚合链路连接。同时,其也能够简化云实施和维护。嵌套式聚合链路对子聚合链路实现聚合链路控制,简化了服务器实现,而无需任何分布式聚合链路协议的要求,从而使包括云实现在内的各种实现尽可能简单并且成本尽可能低。

嵌套式聚合链路支持多厂商服务器之间的协议兼容性,因而用户不会被困在其中。

嵌套式聚合链路对连接的服务器数量没有限制。

通过本发明的嵌套式聚合链路机制,控制单元(例如,图2、3所示的控制单元2064,图5所示的控制单元564)能够控制所有子聚合链路。而且,控制单元不需要运行任何其他复杂的聚合链路控制协议,它使复杂的子聚合链路协议交换透明化,从而为上层协议或应用提供了简单的单个逻辑聚合链路。

根据本发明的实施方式,由不同的子聚合链路运行不同的子聚合链路协议,控制单元不需要运行每个子聚合链路的协议交换。每个子聚合链路能够针对其连接的服务器运行和维护每个协议,而不需要与其他子聚合链路(与其他服务器或其他厂商的服务器连接)的协议交换进行同步或依赖于与其他子聚合链路(与其他服务器或其他厂商的服务器连接)的协议交换。这种机制确保每个服务器只需要与连接的子聚合链路独立地运行其协议即可,而不需要支持分布式聚合链路协议或任何跨多个服务器或跨多个厂商的协作。例如,对于越来越普遍使用的Cloud Ready技术来说,这也确保了简易性,且能够支持多厂商。

由此可见,根据本发明的实施方式,在交换机侧,通过将交换机端口与服务器之间的连接中、具有相同协议的物理链路聚合为一个子聚合链路,能够使得交换机的所有端口共同形成一个异构的聚合链路 (或者说嵌套式聚合链路)。通过将所有交换机端口连接聚合成单个逻辑聚合链路,能够提供分布式聚合链路连接、负载平衡、支持多厂商服务器连接,而不需要进行复杂的协议控制。

以下将参照图10图解说明可实现本发明的实施方式的计算机系统1000的方框图。

按照一个实施方式,这里说明的技术是利用一个或多个专用计算设备实现的。所述专用计算设备可被硬连接,以实现所述技术,或者可包括数字电子设备,比如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),所述数字电子设备被永久编程,以实现所述技术,或者可包括一个或多个通用硬件处理器,所述通用硬件处理器被编程,以按照固件、存储器、其它存储器或它们的组合中的程序指令,实现所述技术。这种专用计算设备还可结合定制的硬连线逻辑、ASIC或FPGA与定制的编程,以实现所述技术。专用计算设备可以是桌上型计算机系统、便携式计算机系统、手持设备、连网设备、或者包含硬连线和/或程序逻辑,以实现所述技术的任何其它设备。

计算机系统1000包括总线1002或者用于传送信息的其它通信机构,和与总线1002耦接,用于处理信息的硬件处理器1004。例如,硬件处理器1004可以是通用微处理器。

计算机系统1000还包括耦接到总线1002,用于保存信息和由处理器1004执行的指令的主存储器1006,比如随机存取存储器(RAM)或其它动态存储设备。主存储器1006也可用于在由处理器1004执行的指令的执行期间,保存临时变量或其它中间信息。当被保存在处理器1004可访问的存储介质中时,这种指令使计算机系统1000变成为进行在指令中指定的操作而定制的专用机器。

计算机系统1000还包括耦接到总线1002,为处理器1004保存静态信息和指令的只读存储器(ROM)1008或其它静态存储设备。设置诸如磁盘或光盘之类的存储设备1010,并耦接到总线1002,以保存信息和指令。

计算机系统1000可通过总线1002,耦接到显示器1012,比如阴 极射线管(CRT),以向计算机用户显示信息。包括字母数字键和其它键的输入设备1014耦接到总线1002,以把信息和命令选择传送给处理器1004。另一种用户输入设备是光标控制器1016,比如鼠标、跟踪球或光标方向键,以向处理器1004传送方向信息和命令选择,和控制显示器1012上的光标移动。

计算机系统1000可利用与计算机系统结合,使计算机系统1000成为或者把计算机系统1000编程为专用机器的定制硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑,实现这里说明的技术。按照一个实施方式,响应处理器1004执行包含在主存储器1006中的一个或多个指令的一个或多个序列,计算机系统1000执行这里的技术。这种指令可从另一个存储介质,比如存储设备1010被读入主存储器1006。包含在主存储器1006中的指令序列的执行导致处理器1004进行这里说明的处理步骤。在备选实施方式中,代替或者与软件指令结合,可以使用硬连线电路。

这里使用的术语“存储介质”指的是保存使机器按特定方式工作的数据和/或指令的任何介质。这种存储介质可包含非易失性介质和/或易失性介质。例如,非易失性介质包括光盘或磁盘,比如存储设备1010。易失性介质包括动态存储器,比如主存储器1006。例如,存储介质的常见形式包括软盘、硬盘、固态驱动器、磁带、或者任何其它磁数据存储介质、CD-ROM、任何其它光数据存储介质、具有各种图案的小孔的任何物理介质、RAM、PROM、EPROM、FLASH-EPROM、NVRAM、任何其它存储芯片或盒式磁带。

存储介质不同于传输介质,但是可以和传输介质一起使用。传输介质参与在存储介质之间传送信息。例如,传输介质包括同轴电缆、铜线和光线,包括构成总线1002的导线。传输介质还可采取声波或光波,比如在无线电波和红外数据通信期间生成的声波或光波的形式。

各种形式的介质可与把一个或多个指令的一个或多个序列传送给处理器1004执行有关。例如,指令最初可被携带在远程计算机的磁盘或固态驱动器上。远程计算机可把指令载入其动态存储器中,随后 利用调制解调器,通过电话线路发送所述指令。计算机系统1000本地的调制解调器可在电话线路上接收所述数据,并利用红外发射器把数据转换成红外信号。红外探测器可接收携带在红外信号中的数据,适当的电路可把所述数据放在总线1002上。总线1002把所述数据运送到主存储器1006,处理器1004从主存储器1006取回并执行指令。主存储器1006接收的指令可视情况在由处理器1004执行之前或之后,被保存在存储设备1010上。

计算机系统1000还包括耦接到总线1002的通信接口1018。通信接口1018提供耦接到网络链路1020的双向数据通信,网络链路1020连接到局域网1022。例如,通信接口1018可以是综合业务数字网(ISDN)卡、线缆调制解调器、卫星调制解调器、或者调制解调器,以提供到对应类型的电话线路的数据通信连接。再例如,通信接口1018可以是提供到兼容LAN的数据通信连接的局域网(LAN)卡。也可实现无线链路。在任意这样的实现中,通信接口1018发送和接收携带表示各种信息的数字数据流的电信号、电磁信号或光信号。

网络链路1020一般提供通过一个或多个网络,到其它数据设备的数据通信。例如,网络链路1020可提供通过局域网1022,到主计算机1024或者到由因特网服务提供商(ISP)1026操作的数据设备的连接。ISP 1026又通过现在通常称为“因特网”1028的全球分组数据通信网络,提供数据通信服务。局域网1022和因特网1028都利用携带数字数据流的电信号、电磁信号或光信号。通过各种网络的信号,和在网络链路920上,并通过通信接口1018的往来于计算机系统1000传送数字数据的信号是传输介质的例证形式。

计算机系统1000可通过网络、网络链路1020和通信接口1018,发送消息和接收数据,包括程序代码。在因特网例子中,服务器1030可通过因特网1028、ISP 1026、局域网1022和通信接口1018,传送请求的应用程序的代码。

接收的代码可在被接收时,由处理器1004执行,和/或被保存在存储设备1010或者其它非易失性存储器中,供以后执行。

在上面的说明书中,参考可因实现而异的众多具体细节,说明了本发明的实施方式。本发明的范围由本申请提出的一组权利要求(包括任何后续更正)限定。这里对于包含在所述权利要求中的术语明确记载的任何定义应决定在权利要求中使用的这种术语的含意。从而,未明确记载在权利要求中的限制、要素、性质、特征、优点或属性无论如何不应限制所述权利要求的范围。从而,说明书和附图应被视为是例证性的,而不是限制性的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1