1EEE 802.3ad中所定义的。
[0022]无论虚拟机架10与上游和/或下游节点之间的连接的类型如何,交换机20a_20c对于上游和下游节点透明地工作,并且被上游和下游节点当作是单个逻辑设备(虚拟机架10)。因此,上游和下游节点能够主动地将业务转发到虚拟机架10,而交换机20a-20c之间的MAC地址表和其它转发信息的同步由VFL50上的L2分组流和控制消息传送来驱动。
[0023]在一个实施例中,交换机20a_20c在主动/被动环境中工作,其中,并不是所有的外部链路同时主动转发业务(即,在一个交换机上的外部链路是主动的,而在其它交换机上的外部链路保持被动或“处于待机”)。在这个实施例中,生成树协议(STP)可用于使得替代路径离开待机模式而进入主动状态,以在主动链路故障时重新建立连接。在另一个实施例中,交换机20a-20c在主动/主动环境中工作,其中,所有外部链路同时是主动的(即,所有交换机上的外部链路都是主动的)。在这个实施例中,STP可能不需要在网络拓扑的某些或所有部分中运行以防止循环(例如,STP可以仍然在VFL50上以及在将虚拟机架10连接到网络70内的上游/核心交换机的链路上使用)。
[0024]根据本发明的实施例,每个交换机20a_20c具有基础软件30a_30c,其包括基础操作系统和提供基础特征和/或服务(即,业务的L2交换和/或L3路由)所需的所有基础应用。此外,增强应用40a/40b也可以被安装在一个或多个的交换机(例如,交换机20a和20b)上,以使虚拟机架10能够提供不同于任何一个基础特征和/或服务的增强特征和/或服务。例如,在一个实施例中,增强应用40a/40b是控制无线局域网(WLAN)内的一个或多个接入点(AP)的WLAN控制器应用。在其它实施例中,增强应用40a/40b可以是任何在基础服务/特征上提供服务/特征的应用。
[0025]在同构虚拟机架中,增强应用40a/40b被安装在虚拟机架内的每个交换机上。在非同构虚拟机架中,如图1所示,增强应用40a/40b仅仅被安装在交换机20a/20b的子集上。在这个实施例中,被安装了增强应用的交换机20a和20b在此被称为“增强交换机”,而没有安装增强应用的交换机20c在此被称为“基础交换机”。
[0026]应当注意,虽然没有示出,但多个增强应用可被安装在一个或多个交换机20a_20c上。另外,每个增强应用可被安装在可能不同于在其上安装了其它增强应用的一个或多个其它交换机子集的各自的交换机子集上。每个增强应用在虚拟机架内被配置为提供用于每个增强应用的各自的应用特定的冗余的层。
[0027]例如,在示例性实施例中,在初始化虚拟机架10后,基础主机选择过程在虚拟机架10内启动以从虚拟机架10内的所有交换机20a-20c中选择基础主交换机(例如,交换机20c)。基础主交换机20c是虚拟机架10和在虚拟机架10内的交换机20a-20c上运行的所有应用的中心管理点(配置和监控),包括增强应用40a/40b,其可能没有在基础主交换机20c上运行(如图1所示)。例如,基础主交换机20c负责控制交换机20a-20c之间与基础软件30a-30c有关的负载分配、交换/路由和通信,并促进虚拟机架内基础软件30a-30c的冗余。基础主机选择过程可以利用例如传统的虚拟机架主机选择算法,其考虑各种选择标准,诸如哪个交换机具有最低的标识符/地址、哪个交换机具有最低优先权和/或其它标准,以选择基础主交换机20c。根据所使用的基础主机选择过程,基础主交换机20c可以是基础交换机(其没有安装增强应用)或增强交换机。
[0028]另外,使用增强主机选择过程,从增强交换机20a和20b (在其上安装了增强应用40a/40b)中选择增强主交换机(例如,交换机20a)。增强主交换机20a负责控制增强交换机20a和20b之间与增强应用40a/40b有关的负载分配、交换/路由和通信,并促进虚拟机架内增强应用40a/40b的冗余。应当注意,冗余仅仅在增强应用被安装在超过一个的交换机20上时才提供。然而,本发明的增强主机选择过程只要至少一个交换机(但少于所有的交换机)安装了增强应用就将运行。
[0029]增强主交换机可以与基础主交换机相同(如果基础主交换机安装了增强软件)或与基础主交换机不同。增强主机选择过程可利用例如虚拟机架增强主机选择算法,该算法考虑与基础主机选择过程所考虑的选择标准相似的选择标准和/或不同的选择标准。
[0030]应当理解,可使用相同或不同的增强主机选择算法在虚拟机架10中对每个增强应用选择单独的增强主交换机。根据交换机属性(即,在每个交换机上安装的增强应用、每个交换机的MAC地址和优先权)以及其它选择标准,增强主交换机可以是对每个增强应用是不同的、对所有增强应用是相同的、或者仅仅对与某些增强应用是相同的。每个增强主交换机代表虚拟机架内的附加冗余层,因为在虚拟机架内的特定交换机故障时,基础主交换机和用于在故障交换机上安装的每个增强应用的每个增强主交换机重新路由与它们各自的基础/增强应用有关的业务,并相应地更新它们的转发表。因此,单独的冗余层基于在虚拟机架10的每个构成交换机20a-20c上安装的增强应用40a/40b而在基础软件冗余之上对每个增强应用虚拟地创建。
[0031]图2A示出了基础交换机的示例性实施例。基础交换机20包括处理器100、基础软件30、一个或多个虚拟交换链路(VFL)端口 IlOa和110b、以及一个或多个外部端口 120a和120b。如在此所使用的,术语“处理器”一般被理解为驱动通用计算机(诸如PC)的设备。然而,应当注意,其它处理设备,诸如微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或其组合,也可用于实现在此描述的益处和优点。
[0032]VFL端口 IlOa和IlOb提供到形成VFL的链路的连接。外部端口 120a和120b提供到去往外部上游和/或下游节点的链路的连接。一个或多个外部端口 120a和120b可以包括MC-LAG物理链路、LAG或其它干线组、固定链路等的成员端口。VFL端口 110a、IlOb和外部端口 120a、120b可以具有相同的物理接口类型,诸如铜端口(CAT-5E/CAT-6)、多模式光纤端口(SX)或单模式光纤端口(LX)。在另一个实施例中,VFL端口 IlOaUlOb和外部端口 120a、120b可以具有一个或多个不同的物理接口类型。
[0033]基础软件30包括虚拟机架管理模块(VCCM) 80,其在虚拟机架内的基础交换机20和/或其它交换机的初始化后使得能够配置虚拟机架中的交换机。VCCM 80包括增强应用接口 90,用于与虚拟机架内的增强交换机通信。
[0034]VCCM 80能够由处理器100执行,以通过一个或多个VFL端口 110a、IlOb与虚拟机架中的其它交换机进行通信以运行发现虚拟机架内的每个交换机和每个交换机的各种属性(例如,每个交换机的标识别、交换机优先权等等)的拓扑发现过程。VCCM 80还能够进一步由处理器执行,以运行基于每个交换机的交换机属性和/或其它选择标准来选择基础主交换机的基础主机选择过程。
[0035]例如,在示例性的操作中,在初始化后,VCCM 80基于虚拟机架的配置文件来在虚拟机架模式中启动基础交换机20。应当注意,配置文件包含用于基础软件应用和增强软件应用的配置,以确保如果任何单元成为主机(基础或增强),则在系统10中出现用于所有应用的配置。增强应用的配置被容留或存储为在基础交换机20上存在的增强应用接口 90的一部分。
[0036]虚拟机架模式是独立的启动过程,其中基础交换机独立于虚拟机架中的所有其它交换机而启动,以提供基础软件30中的所有标准应用和VFL端口 110a/110b(外部端口120a/120b不在虚拟机架模式中提供)。当VCCM80检测到虚拟机架内的所有交换机已经完成了虚拟机架启动过程时,VCCM 80启动拓扑发现过程,随后进行基础主机选择过程。如果基础交换机被选择为基础主交换机,则VCCM 80进一步向虚拟机架内的每个交换机提供虚拟机架的MAC地址和IP地址。如果基础交换机没有被选择为基础主交换机(即,基础交换机是基础从交换机),则基础从交换机从基础主