CN105191339A - 在非同构虚拟机架中的软件冗余 - Google Patents
在非同构虚拟机架中的软件冗余 Download PDFInfo
- Publication number
- CN105191339A CN105191339A CN201480016685.7A CN201480016685A CN105191339A CN 105191339 A CN105191339 A CN 105191339A CN 201480016685 A CN201480016685 A CN 201480016685A CN 105191339 A CN105191339 A CN 105191339A
- Authority
- CN
- China
- Prior art keywords
- switch
- enhancing
- application
- switches
- virtual frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54541—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
- H04Q3/5455—Multi-processor, parallelism, distributed systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Abstract
在非同构虚拟机架提供分层的第三方(增强)应用软件冗余,虚拟机架包括两个或多个通过虚拟交换链路连接的交换机。在至少一个交换机内的虚拟机架管理模块发现虚拟机架内的其它交换机,从虚拟机架中的所有交换机中确定基础主交换机,检测在至少一个增强交换机上安装的增强应用,并从增强交换机中确定增强主交换机。
Description
技术领域
本发明一般涉及数据网络,特别涉及虚拟机架架构。
背景技术
数据网络允许许多不同的计算设备(例如,个人计算机、IP电话设备或服务器)相互通信和/或与附着在网络上的各种其它网络单元或远程服务器进行通信。例如,数据网络可包括但不限于支持包括例如基于IP的语音(VoIP)应用、数据应用和视频应用的多个应用的城域以太网或企业以太网网络。这种网络通常包括许多互连的节点,通常称为交换机或路由器,用于路由业务经过网络。
各种节点通常基于它们在网络的特定区域内的位置来区别,根据网络的大小,通常用两个或三个“级”或“层”来表征。通常,三级网络包括边缘层、汇聚层和核心层(而两级网络仅包括边缘层和核心层)。数据网络的边缘层包括通常提供从企业网络或家庭网络(诸如局域网)到城域网或核心网络的连通性的边缘(也称为接入)网络。边缘/接入层是网络的进入点,即,客户网络在名义上附着的点,位于边缘层的交换机称为边缘节点。不同类型的边缘网络包括数字用户线网络、混合光纤同轴电缆(HFC)网络、光纤到户和企业网络,诸如校园网络和数据中心网络。边缘节点可执行例如用于附着设备的L2交换功能。边缘节点一般连接到客户网络中的一个或多个企业交换机和/或终端设备,并且还连接到终止来自多个边缘节点的接入链路的汇聚层。位于汇聚层的交换机被称为汇聚交换机。汇聚交换机可以执行例如经由汇聚链路从边缘节点接收的业务的L2交换和L3路由。汇聚层连接到城域或核心网络层,其执行从汇聚交换机(在三级网络中)或从边缘节点(在二级网络中)接收的业务的层3/IP路由。应当理解,在网络的每个增加层处的节点通常具有更大的容量和更快的吞吐率。
数据网络所面对的关键挑战之一是对网络弹性的需求,即,不管可能的组件故障、链路故障等等也维持高可用性的能力,这对于提供满意的网络性能是极其关键的。网络弹性可以部分地通过拓扑冗余来实现,即,通过提供冗余节点(以及节点内的冗余组件)和节点间的多个物理路径以防止单点故障,以及部分地通过L2/L3协议以在发生故障时开发冗余以聚集到替代路径,用于交换/路由业务流经过网络。
在一种已知的解决方案中,虚拟机架可用于提供冗余,同时也提供增加的吞吐量和带宽。在虚拟机架内,两个或更多个物理以太网交换机可被“堆叠”以形成具有统一控制平面和配置文件的单一逻辑形式要素。路由和交换引擎冗余由虚拟机架主交换机通过创建和维持同步转发表以及交换在交换机上运行的对应/同等应用之间的控制信息来管理。
但是,在传统的虚拟机架中,每个交换机具有相同的硬件和软件以使得能够在整个虚拟机架中冗余。对于需要第三方(增强)硬件和/或软件以提供附加特征和/或服务的客户,在虚拟机架内的每个交换机上安装增强硬件和/或软件可能显著地增加整个部署成本。为了降低成本,客户可能更喜欢只在虚拟机架交换机的子集上安装增强硬件和/或软件。但是,由于当前的虚拟机架管理协议要求单个主交换机,因此,这种非同构(non-homogenous)虚拟机架是不可能的。
因此,需要用于配置非同构虚拟机架以提供应用特定(applicationspecific)的冗余的系统和方法。
附图说明
图1示出了根据本发明的虚拟机架的实施例的示意性框图;
图2A示出了根据本发明的虚拟机架内的基础交换机的实施例的示意性框图;
图2B示出了根据本发明的虚拟机架内的增强交换机的实施例的示意性框图;
图3A示出了根据本发明的虚拟机架内的交换机的各种硬件组件的实施例的示意性框图;
图3B和3C示出了根据本发明的虚拟机架内的增强交换机的各种硬件组件的实施例的示意性框图;
图4示出了根据本发明的虚拟机架内的各种软件组件之间的逻辑通信的实施例的示意性框图;
图5示出了根据本发明的用于在虚拟机架中提供应用特定的冗余的方法的示例性流程图;
图6示出了根据本发明的用于在虚拟机架中提供应用特定的冗余的示例性信令图。
具体实施方式
图1示出了根据本发明的虚拟机架10的实施例。虚拟机架10包括两个或更多个以太网交换机(为了简化,显示了三个交换机20a-20c),其共同形成单个逻辑交换机。因此,虚拟机架10具有由外部节点使用以向虚拟机架10转发业务的媒体访问控制(MAC)地址和因特网协议(IP)地址。虚拟机架10内的每个交换机20a-20c进一步被分配了唯一的标识符(即,IP地址或用于在交换机上驻留的软件组件之间的通信的其它内部标识符)以用于在交换机20a-20c之间进行路由。
以太网交换机20a-20c通过虚拟交换链路(VFL)50连接在一起。VFL50提供用于在交换机20a-20c之间交换关于业务转发、MAC寻址、组播流、地址解析协议(ARP)表、层2控制协议(例如,生成树、以太网环网保护、逻辑链路检测协议)、路由协议(例如RIP、OSPF、BGP)和将虚拟机架10连接到其它上游/下游节点的链路的状态的信息的连接。用于外部节点的MAC地址/转发表被维持在每个交换机20a-20c中,其使能在交换机20a-20c之间桥接或路由分组以到达外部目的地设备。例如,当分组将要在虚拟机架10内从一个交换机(例如交换机20a)路由到另一个交换机(例如交换机20b)以用于传输到外部目的地设备时,包括源交换机20a的标识符和目的地交换机20b的标识符的预先准备的报头被添加到分组上。
交换机20a-20c是分离的物理交换机,每个都能够作为独立的交换机工作。交换机20a-20c可以被一起放在单个物理机架中或在两个或更多个分离的物理机架中。取决于机架配置,交换机20a-20c可以在同一个地理区域中,诸如在中心办公室或数据中心中,或者可以是分离的地理位置,诸如不同的建筑或城市,以提供地理多样性。
另外,虚拟机架10内的交换机20a-20c可以是汇聚交换机、边缘交换机或企业交换机。在其中交换机20a-20c是企业交换机的实施例中,虚拟机架10向下游连接到局域网(LAN)内的一个或多个终端设备,向上游连接到一个或多个边缘交换机。在其中交换机20a-20c是边缘交换机的实施例中,虚拟机架10向下游连接到LAN或家庭网络内的一个或多个企业交换机和/或终端设备,向上游连接到一个或多个汇聚交换机或网络节点,诸如城域/核心网络70内的网络交换机和/或路由器。在其中交换机20a-20c是汇聚交换机的实施例中,虚拟机架10向下游连接到一个或多个边缘交换机,向上游连接到网络70内的一个或多个网络节点。
在实施例中,虚拟机架10与上游或下游节点之间的连接由多机架链路聚合组(MC-LAG)60形成,其中两个或多个物理链路将特定节点与虚拟机架内的两个或多个交换机20a-20c相连接,如在2011年1月20日递交的美国专利申请13/010,169“SystemandMethodforMulti-ChassisLinkAggregation(用于多机架链路聚合的系统和方法)”中所描述的,该专利申请在此通过引用而被包含。例如,如在图1中所示的,各个外部物理链路将每个交换机20a-20c连接到城域/核心网络70内的特定网络节点(未示出)以形成MC-LAG60。在示例性实施例中,虚拟机架10和/或网络节点可以使用负载平衡技术以在MC-LAG60的所有可用链路上分配业务。例如,对于在MC-LAG60上传输的每个分组,基于负载平衡算法(通常涉及对源和目的地因特网协议(IP)或媒体访问控制(MAC)地址信息进行运算的散列函数)选择一个物理链路。
在另一个实施例中,交换机20a-20c可使用标准链路聚合组(LAG)或其它干线或链路而连接到上游和/或下游节点。应当理解,在这里使用的术语“LAG”是指两个节点之间的若干物理链路的集束以在其间形成使用链路聚合控制协议(LACP)的单个逻辑通道,如在2008年11月3日发布的IEEE802.1AX-IEEE802.3ad中所定义的。
无论虚拟机架10与上游和/或下游节点之间的连接的类型如何,交换机20a-20c对于上游和下游节点透明地工作,并且被上游和下游节点当作是单个逻辑设备(虚拟机架10)。因此,上游和下游节点能够主动地将业务转发到虚拟机架10,而交换机20a-20c之间的MAC地址表和其它转发信息的同步由VFL50上的L2分组流和控制消息传送来驱动。
在一个实施例中,交换机20a-20c在主动/被动环境中工作,其中,并不是所有的外部链路同时主动转发业务(即,在一个交换机上的外部链路是主动的,而在其它交换机上的外部链路保持被动或“处于待机”)。在这个实施例中,生成树协议(STP)可用于使得替代路径离开待机模式而进入主动状态,以在主动链路故障时重新建立连接。在另一个实施例中,交换机20a-20c在主动/主动环境中工作,其中,所有外部链路同时是主动的(即,所有交换机上的外部链路都是主动的)。在这个实施例中,STP可能不需要在网络拓扑的某些或所有部分中运行以防止循环(例如,STP可以仍然在VFL50上以及在将虚拟机架10连接到网络70内的上游/核心交换机的链路上使用)。
根据本发明的实施例,每个交换机20a-20c具有基础软件30a-30c,其包括基础操作系统和提供基础特征和/或服务(即,业务的L2交换和/或L3路由)所需的所有基础应用。此外,增强应用40a/40b也可以被安装在一个或多个的交换机(例如,交换机20a和20b)上,以使虚拟机架10能够提供不同于任何一个基础特征和/或服务的增强特征和/或服务。例如,在一个实施例中,增强应用40a/40b是控制无线局域网(WLAN)内的一个或多个接入点(AP)的WLAN控制器应用。在其它实施例中,增强应用40a/40b可以是任何在基础服务/特征上提供服务/特征的应用。
在同构虚拟机架中,增强应用40a/40b被安装在虚拟机架内的每个交换机上。在非同构虚拟机架中,如图1所示,增强应用40a/40b仅仅被安装在交换机20a/20b的子集上。在这个实施例中,被安装了增强应用的交换机20a和20b在此被称为“增强交换机”,而没有安装增强应用的交换机20c在此被称为“基础交换机”。
应当注意,虽然没有示出,但多个增强应用可被安装在一个或多个交换机20a-20c上。另外,每个增强应用可被安装在可能不同于在其上安装了其它增强应用的一个或多个其它交换机子集的各自的交换机子集上。每个增强应用在虚拟机架内被配置为提供用于每个增强应用的各自的应用特定的冗余的层。
例如,在示例性实施例中,在初始化虚拟机架10后,基础主机选择过程在虚拟机架10内启动以从虚拟机架10内的所有交换机20a-20c中选择基础主交换机(例如,交换机20c)。基础主交换机20c是虚拟机架10和在虚拟机架10内的交换机20a-20c上运行的所有应用的中心管理点(配置和监控),包括增强应用40a/40b,其可能没有在基础主交换机20c上运行(如图1所示)。例如,基础主交换机20c负责控制交换机20a-20c之间与基础软件30a-30c有关的负载分配、交换/路由和通信,并促进虚拟机架内基础软件30a-30c的冗余。基础主机选择过程可以利用例如传统的虚拟机架主机选择算法,其考虑各种选择标准,诸如哪个交换机具有最低的标识符/地址、哪个交换机具有最低优先权和/或其它标准,以选择基础主交换机20c。根据所使用的基础主机选择过程,基础主交换机20c可以是基础交换机(其没有安装增强应用)或增强交换机。
另外,使用增强主机选择过程,从增强交换机20a和20b(在其上安装了增强应用40a/40b)中选择增强主交换机(例如,交换机20a)。增强主交换机20a负责控制增强交换机20a和20b之间与增强应用40a/40b有关的负载分配、交换/路由和通信,并促进虚拟机架内增强应用40a/40b的冗余。应当注意,冗余仅仅在增强应用被安装在超过一个的交换机20上时才提供。然而,本发明的增强主机选择过程只要至少一个交换机(但少于所有的交换机)安装了增强应用就将运行。
增强主交换机可以与基础主交换机相同(如果基础主交换机安装了增强软件)或与基础主交换机不同。增强主机选择过程可利用例如虚拟机架增强主机选择算法,该算法考虑与基础主机选择过程所考虑的选择标准相似的选择标准和/或不同的选择标准。
应当理解,可使用相同或不同的增强主机选择算法在虚拟机架10中对每个增强应用选择单独的增强主交换机。根据交换机属性(即,在每个交换机上安装的增强应用、每个交换机的MAC地址和优先权)以及其它选择标准,增强主交换机可以是对每个增强应用是不同的、对所有增强应用是相同的、或者仅仅对与某些增强应用是相同的。每个增强主交换机代表虚拟机架内的附加冗余层,因为在虚拟机架内的特定交换机故障时,基础主交换机和用于在故障交换机上安装的每个增强应用的每个增强主交换机重新路由与它们各自的基础/增强应用有关的业务,并相应地更新它们的转发表。因此,单独的冗余层基于在虚拟机架10的每个构成交换机20a-20c上安装的增强应用40a/40b而在基础软件冗余之上对每个增强应用虚拟地创建。
图2A示出了基础交换机的示例性实施例。基础交换机20包括处理器100、基础软件30、一个或多个虚拟交换链路(VFL)端口110a和110b、以及一个或多个外部端口120a和120b。如在此所使用的,术语“处理器”一般被理解为驱动通用计算机(诸如PC)的设备。然而,应当注意,其它处理设备,诸如微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或其组合,也可用于实现在此描述的益处和优点。
VFL端口110a和110b提供到形成VFL的链路的连接。外部端口120a和120b提供到去往外部上游和/或下游节点的链路的连接。一个或多个外部端口120a和120b可以包括MC-LAG物理链路、LAG或其它干线组、固定链路等的成员端口。VFL端口110a、110b和外部端口120a、120b可以具有相同的物理接口类型,诸如铜端口(CAT-5E/CAT-6)、多模式光纤端口(SX)或单模式光纤端口(LX)。在另一个实施例中,VFL端口110a、110b和外部端口120a、120b可以具有一个或多个不同的物理接口类型。
基础软件30包括虚拟机架管理模块(VCCM)80,其在虚拟机架内的基础交换机20和/或其它交换机的初始化后使得能够配置虚拟机架中的交换机。VCCM80包括增强应用接口90,用于与虚拟机架内的增强交换机通信。
VCCM80能够由处理器100执行,以通过一个或多个VFL端口110a、110b与虚拟机架中的其它交换机进行通信以运行发现虚拟机架内的每个交换机和每个交换机的各种属性(例如,每个交换机的标识别、交换机优先权等等)的拓扑发现过程。VCCM80还能够进一步由处理器执行,以运行基于每个交换机的交换机属性和/或其它选择标准来选择基础主交换机的基础主机选择过程。
例如,在示例性的操作中,在初始化后,VCCM80基于虚拟机架的配置文件来在虚拟机架模式中启动基础交换机20。应当注意,配置文件包含用于基础软件应用和增强软件应用的配置,以确保如果任何单元成为主机(基础或增强),则在系统10中出现用于所有应用的配置。增强应用的配置被容留或存储为在基础交换机20上存在的增强应用接口90的一部分。
虚拟机架模式是独立的启动过程,其中基础交换机独立于虚拟机架中的所有其它交换机而启动,以提供基础软件30中的所有标准应用和VFL端口110a/110b(外部端口120a/120b不在虚拟机架模式中提供)。当VCCM80检测到虚拟机架内的所有交换机已经完成了虚拟机架启动过程时,VCCM80启动拓扑发现过程,随后进行基础主机选择过程。如果基础交换机被选择为基础主交换机,则VCCM80进一步向虚拟机架内的每个交换机提供虚拟机架的MAC地址和IP地址。如果基础交换机没有被选择为基础主交换机(即,基础交换机是基础从交换机),则基础从交换机从基础主交换机接收虚拟机架的MAC地址和IP地址,并将虚拟机架的MAC地址和IP地址分配给基础软件30内的所有基础软件应用。
作为拓扑发现过程的一部分,VCCM80可以检测虚拟机架内安装了一个或多个增强应用的一个或多个增强交换机的存在。在其中基础交换机20被选择为基础主交换机的实施例中,VCCM80向增强应用接口90通知虚拟机架中一个或多个增强交换机的存在。这触发例如增强应用接口90内的状态机,以接收用于虚拟机架内的增强应用的配置信息,并打开套接字(socket)以等待经由VFL端口110a/110b来自每个增强交换机内的对应增强应用接口的连接。
在检测到连接后,增强应用接口90确定每个增强应用安装在哪个交换机上。根据该信息和拓扑信息,增强应用接口90执行对每个增强应用选择增强主交换机的增强主机选择过程。增强主交换机可以是对每个增强应用是不同的,或者对超过一个的增强应用是相同的,只要对特定增强应用所选择的增强主交换机安装了该特定增强应用即可。然后,增强应用接口90向每个增强交换机提供增强主交换机的内部IP地址或其它标识符。应当理解,每个增强交换机仅仅接收与在其上安装的增强应用相关联的增强主交换机的IP地址。
图2B示出了增强主交换机20的示例性实施例。增强主交换机20包括处理器100、基础软件30、增强应用40、一个或多个虚拟交换链路(VFL)端口110a和110b、以及一个或多个外部端口120a和120b。VFL端口110a和110b提供到形成VFL的链路的连接。外部端口120a和120b提供连接到去往外部上游和/或下游节点的链路的连接。一个或多个外部端口120a和120b可以包括MC-LAG物理链路、LAG或其它干线组、固定链路等的成员端口。VFL端口110a、110b和外部端口120a、120b可以具有相同的物理接口类型,诸如铜端口(CAT-5E/CAT-6)、多模式光纤端口(SX)或单模式光纤端口(LX)。在另一个实施例中,VFL端口110a、110b和外部端口120a、120b可以具有一个或多个不同的物理接口类型。
基础软件30包括VCCM80,其还包括增强应用接口90,如上所述。VCCM80能够由处理器100执行,以通过一个或多个VFL端口110a、110b与虚拟机架中的其它交换机通信以运行拓扑发现过程和基础主机选择过程,也如上所述。此外,在初始化后,VCCM80在虚拟机架模式中启动增强交换机20,如上面进一步所描述的。然而,作为虚拟机架启动过程的一部分,增强交换机20还启动增强应用40,并将增强应用40连接到增强应用接口90。
当VCCM80检测到虚拟机架内的所有交换机已经完成了虚拟机架启动过程时,VCCM80启动拓扑发现过程,随后是基础主机选择过程。在其中增强交换机20被选择为基础主交换机的实施例中,VCCM80进一步执行增强主机选择过程,如上所述。
然而,在其中增强交换机没有被选择为基础主交换机(即,增强交换机是基础从交换机)的实施例中,基础从交换机从基础主交换机接收虚拟机架的MAC地址和IP地址,并将虚拟机架的MAC地址和IP地址分配给基础软件30内的所有基础软件应用和增强应用40。
然后,增强应用接口90通过VFL端口110a/110b连接到基础主交换机中的对应增强应用接口。然后,增强应用接口90从基础主交换机接收用于增强应用40的增强主交换机的IP地址(即,仅仅在虚拟机架内使用的内部IP地址)连同在其上安装了增强应用40的每个增强交换机的内部IP地址。
在其中增强交换机是增强主交换机的实施例中,增强应用接口90打开套接字,并等待来自虚拟机架内的每个增强从交换机的连接。在检测到连接后,增强应用40使用增强交换机的IP地址信息以与在虚拟机架中安装的增强应用40的所有实例连接,在其间形成用于控制通信和冗余的IP连接。在其中增强交换机是增强从交换机的实施例中,增强应用接口90将连接到增强主交换机上的增强应用接口以形成在增强主/从交换机上的增强应用40之间的IP连接。
在示例性实施例中,增强主交换机与基础主交换机上的增强应用接口90进行通信以用于配置和管理。例如,增强主交换机可与基础主交换机上的增强应用接口90验证增强镜像/配置,如果图像/配置不匹配,则从基础主交换机上的增强应用接口90接收正确的增强配置信息。增强主交换机进一步与增强从交换机进行通信,以用于运行时配置和运行时状态同步。
图3A示出了虚拟机架内的交换机20的各种硬件部件的示例性实施例。交换机20包括基础CPU160、分组处理器170、一个或多个VFL端口110、一个或多个外部端口(未示出)和一个或多个存储设备。例如,如图3A所示,交换机20可包括闪存130、随机存取存储器140和启动闪存150。然而,应当理解,可以包括任何类型的存储设备。作为实例而非限制,存储设备可包括一个或多个数据存储设备、随机存取存储器(RAM)、只读存储器(ROM)、闪存、光盘、软盘、ZIPTM驱动器、磁带驱动器、数据库或其它类型的存储设备或存储介质。
在初始化后,基础CPU160访问启动闪存150以加载存储在启动闪存150中的基础镜像(即,基础软件应用),并提供VFL端口110以用于与虚拟机架内的其它交换机通信。应当理解,基础镜像包括具有虚拟机架内的任何增强应用的配置的增强应用接口。在交换机20是增强交换机的实施例中,基础CPU160进一步加载增强镜像(即,增强应用),作为例如基础CPU160上的单独的增强应用虚拟机(VM)或单独的应用进程,并且增强应用接口将增强应用配置推送给增强应用,如图2B所示。此后,VFL110被打开,分组处理器170生成并处理通过VFL110发送和接收的分组以执行拓扑发现过程、基础主机选择过程和增强主机选择过程(如果适用的话)。
其它用于增强交换机的硬件配置在图3B和图3C中示出。在图3B中,增强交换机20包括外部CPU200、附加RAM180和附加启动闪存190以用于增强应用。基础CPU160例如使用传输控制协议/因特网协议(TCP/IP)来与外部CPU通信,以促进增强应用从启动闪存190加载到外部CPU200,并使得外部CPU200上的增强应用与基础CPU160(以及在其上加载的其它基础软件应用)上的增强应用接口之间能够通信。由于增强应用被加载在外部CPU200上,因此,增强应用的内部IP地址是外部CPU200的IP地址。
在图3C中,提供了多核CPU210,其包括基础CPU160和外部CPU200两者。在这个示例性硬件实施例中,基础CPU210促进增强应用从启动闪存150加载到外部CPU200上。另外,增强应用的内部IP地址是外部CPU210的IP地址。应当理解,对于虚拟机架内的以太网交换机有很多不同的硬件配置可用,本发明并不限于任何特定的硬件配置。
图4示出了根据本发明的在虚拟机架内的各种软件组件之间的逻辑通信的实施例的示意性框图。在图4中,有4个以太网交换机20a-20d组成虚拟机架。然而,应当理解,在其它实施例中,以太网交换机的数量可在2个和18个或更多之间变化。
每个交换机20a-20d包括基础软件30a-30d,其包括VCCM80a-80d、增强应用接口90a-90d、基础软件应用220a-220d和增强应用硬件接口230a-230d。另外,增强交换机20b和20c包括增强应用40a和40b。交换机20a是基础主交换机,而交换机20b是增强主交换机。交换机20b-20d是基础从交换机,而交换机20c是增强从交换机。
如在图4中所示的,在初始化并安装了交换机20a-20d上的基础应用220a-220d之后,基础主交换机20a内的增强应用接口90a与每个基础从交换机上的增强应用接口90b-90d建立连接,并与增强交换机20b-20c上的增强应用接口90b-90c通信以选择增强主交换机20b。基础主交换机20a内的增强应用接口90a进一步与增强应用硬件接口230b-230d建立连接,并与增强交换机20b-20c上的增强应用硬件接口230b-230c通信,以用于与增强应用40a-40b有关的硬件编程。此外,增强主交换机20b上的增强应用40a与增强从交换机20c上的增强应用40b建立进程间通信连接(IPC)以用于控制和冗余。
图5示出了根据本发明的用于在虚拟机架中提供应用特定的冗余的方法300的示例性流程图。该方法从310开始,其中虚拟机架中的每个交换机内的虚拟机架控制模块运行拓扑发现过程,以发现虚拟机架中的交换机。在320,虚拟机架控制模块进一步使用任何类型的主机选择过程来确定基础主交换机。在330,作为拓扑发现过程的一部分,在虚拟机架内检测一个或多个增强应用。在340,确定增强主交换机。例如,在一个实施例中,基础主交换机使用任何类型的主机选择过程来选择增强主交换机,并向虚拟机架中的其它交换机通知增强主交换机的身份。
图6示出了根据本发明的用于虚拟机架中提供应用特定的冗余的示例性信令图。在图6中,基础主交换机已经被选择,并且基础主交换机上的增强应用接口90a已经打开套接字以等待来自每个增强交换机(其也是基础从交换机)上的增强应用接口90b、90c的连接。在400和410,每个增强交换机上的增强应用接口90b/90c连接到基础主交换机上的增强应用接口90a。
基于先前确定的拓扑信息,在420,基础主交换机上的增强应用接口90a选择增强主交换机。然后,在430和440,基础主交换机上的增强应用接口90a向每个增强交换机上的增强应用接口90b/90c提供增强主交换机的内部IP地址或其它标识符(即,在增强主交换机上安装的增强应用的IP地址)。
如在此所使用的,术语“基本上”和“大约”提供用于其对应的术语和/或物品间的相对性的行业公认的容忍度。这种行业公认的容忍度的范围从小于百分之一到百分之五十,并对应于但不限于部件值、集成电路工艺变化、温度变化、上升和下降时间和/或热噪声。这种物品间的相对性的范围从几个百分点的差异到量级的差异。如也在此使用的,术语“耦合到”和/或“耦合”包括物品之间的直接耦合和/或物品之间通过中间物品的间接耦合(例如,物品包括但不限于部件、元件、电路和/或模块),其中,对于间接耦合,中间物品不修改信号的信息,但是可以调整其电流水平、电压水平和/或功率水平。如进一步在此使用的,推断耦合(即,根据推断,一个元件与另一个元件耦合)包括以与“耦合到”相同的方式在两个物品之间的直接和间接耦合。如在此使用的,术语“可操作”表示物品包括一个或多个的处理模块、数据、输入、输出等,以执行一个或多个所描述的或必要的对应功能,并且可以进一步包括与一个或多个其它物品的推断耦合以执行所描述的或必要的对应功能。也如在此使用的,术语“连接到”和/或“连接”或“相互连接”包括节点/设备之间的直接连接或链路和/或节点/设备之间通过中间物品的间接连接(例如,物品包括但不限于部件、元件、电路、模块、节点、设备等等)。如进一步在此使用的,推断连接(即,根据推断,一个元件与另一个元件连接)包括以与“连接到”相同的方式在两个物品之间的直接和间接连接。
以上已经通过描述特定功能的执行及其关系的方法步骤对实施例进行了描述。为了方便描述,这些功能模块和方法步骤的范围和顺序已经在此被任意的限定。只要适当地执行指定的功能和关系,就能够限定替代范围和顺序。因此,任何这种替代范围或顺序在本发明的范围和精神内。类似地,流程框图也可能已经在此被任意地限定以说明某一重要功能。在使用的程度上,流程框图的范围和顺序可以被限定为其它但仍然执行该重要功能。因此,这种功能模块和流程图块和顺序的替代限定在本发明的范围和精神内。本领域技术人员还将认识到,在这里的功能模块以及其它说明性块、模块和部件可如所描述地实现或者通过一个或多个离散部件、网络、系统、数据库或执行适当软件的处理模块等或其任何组合来实现。
Claims (10)
1.一种在包括至少两个交换机的非同构虚拟机架中的交换机,所述交换机包括:
耦合到虚拟交换链路(VFL)的多个VFL端口,其中所述VFL将所述虚拟机架内的至少两个交换机相互连接;
多个基础软件应用;
虚拟机架管理模块,用于:
发现所述虚拟机架内的所述至少两个交换机,
从所述至少两个交换机中确定基础主交换机,以用作所述多个基础软件应用的主机,
检测在所述至少两个交换机中的至少一个增强交换机上安装的增强应用,所述至少一个增强交换机仅仅包括所述至少两个交换机的子集,以及
从所述至少一个增强交换机中确定增强主交换机,以用作所述增强应用的主机;以及
处理器,用于执行所述基础软件应用,以及用于执行所述虚拟机架管理模块以通过所述VFL与所述至少两个交换机通信。
2.如权利要求1所述的交换机,其中,
所述交换机是所述基础主交换机,所述至少两个交换机中的其它交换机是基础从交换机;
所述虚拟机架管理模块包括增强应用接口,用于通过所述VFL与所述至少一个增强交换机通信,并从所述至少一个增强交换机中选择所述增强主交换机。
3.如权利要求2所述的交换机,其中,向所述增强应用接口通知所述虚拟机架内所述至少一个增强交换机的存在,所述增强应用接口接收用于所述增强应用的配置信息。
4.如权利要求3所述的交换机,其中,所述增强应用接口进一步通过所述VFL与所述至少一个增强交换机的每一个上的附加增强应用接口进行通信,以向所述至少一个增强交换机的每一个提供所述增强主交换机的地址,并验证用于所述增强应用的所述配置信息。
5.如权利要求1所述的交换机,其中,
所述交换机是所述至少一个增强交换机中的第一增强交换机;
所述虚拟机架管理模块包括增强应用接口,用于通过所述VFL与所述基础主交换机和所述至少一个增强交换机的每一个进行通信。
6.如权利要求5所述的交换机,其中,所述增强应用接口进一步通过所述VFL从所述基础主交换机接收所述增强主交换机的地址,并与所述基础主交换机验证用于所述增强应用的配置信息。
7.如权利要求5所述的交换机,其中,所述增强应用接口进一步接收与安装在所述至少一个增强交换机的每一个上的所述增强应用相关联的内部因特网协议(IP)地址,以使得所述第一增强交换机与所述至少一个增强交换机中的其它增强交换机之间通过所述VFL能够通信,以用于冗余。
8.如权利要求5所述的交换机,其中,所述第一增强交换机是所述增强主交换机,所述至少一个增强交换机中的其它交换机是增强从交换机。
9.如权利要求1所述的交换机,其中,所述虚拟机架管理模块进一步检测在所述至少两个交换机中的至少一个附加增强交换机上运行的附加增强应用,并从所述至少一个附加增强交换机中确定附加增强主交换机。
10.一种用于在非同构虚拟机架中提供应用特定的冗余的方法,包括:
通过虚拟交换链路将所述虚拟机架内的至少两个交换机相互连接;
所述至少两个交换机中的至少一个交换机:
发现所述虚拟机架内的所述至少两个交换机;
从所述至少两个交换机中确定基础主交换机,以用作在所述至少两个交换机的每一个上安装的多个基础软件应用的主机;
检测在所述至少两个交换机中的至少一个增强交换机上运行的增强应用,所述至少一个增强交换机仅仅包括所述至少两个交换机的子集;以及
从所述至少一个增强交换机中确定增强主交换机,以用作所述增强应用的主机。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/847,883 | 2013-03-20 | ||
US13/847,883 US9007893B2 (en) | 2013-03-20 | 2013-03-20 | Layered third party application software redundancy in a non-homogenous virtual chassis |
PCT/US2014/024037 WO2014150708A1 (en) | 2013-03-20 | 2014-03-12 | Software redundancy in a non-homogenous virtual chassis |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105191339A true CN105191339A (zh) | 2015-12-23 |
CN105191339B CN105191339B (zh) | 2018-10-26 |
Family
ID=50628915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480016685.7A Expired - Fee Related CN105191339B (zh) | 2013-03-20 | 2014-03-12 | 在非同构虚拟机架中的软件冗余 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9007893B2 (zh) |
EP (1) | EP2976890B1 (zh) |
JP (1) | JP6147414B2 (zh) |
KR (1) | KR101726531B1 (zh) |
CN (1) | CN105191339B (zh) |
WO (1) | WO2014150708A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6147139B2 (ja) * | 2013-08-23 | 2017-06-14 | キヤノン株式会社 | 情報処理装置、その制御方法、及びコンピュータプログラム |
US10097409B2 (en) * | 2014-03-01 | 2018-10-09 | Dell Products, Lp | System and method for managing multi-tenant chassis environment using virtual private chassis management controllers |
US10243914B2 (en) * | 2015-07-15 | 2019-03-26 | Nicira, Inc. | Managing link aggregation traffic in edge nodes |
US10827005B2 (en) * | 2017-03-01 | 2020-11-03 | Dell Products L.P. | Systems and methods of group automation for multi-chassis management |
US11425031B2 (en) * | 2019-03-28 | 2022-08-23 | Hewlett Packard Enterprise Development Lp | Layer 3 multi-chassis link aggregation group |
US11502943B2 (en) | 2019-05-14 | 2022-11-15 | Hewlett Packard Enterprise Development Lp | Distributed neighbor state management for networked aggregate peers |
US11424997B2 (en) * | 2019-12-10 | 2022-08-23 | Dell Products L.P. | Secured network management domain access system |
US11537406B2 (en) * | 2020-02-18 | 2022-12-27 | Juniper Networks, Inc. | Automatic formation of a virtual chassis using zero touch provisioning |
US11863350B2 (en) * | 2021-09-09 | 2024-01-02 | Ciena Corporation | Fast convergence of E-Tree with a dual homed root node |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7082130B2 (en) * | 2002-06-13 | 2006-07-25 | Utstarcom, Inc. | System and method for point-to-point protocol device redundancey |
US7178052B2 (en) | 2003-09-18 | 2007-02-13 | Cisco Technology, Inc. | High availability virtual switch |
US7639605B2 (en) * | 2006-02-08 | 2009-12-29 | Cisco Technology, Inc. | System and method for detecting and recovering from virtual switch link failures |
US8467303B2 (en) * | 2007-09-28 | 2013-06-18 | Allied Telesis Holdings K.K. | Method and apparatus for preventing network conflict |
US8023404B1 (en) * | 2009-06-19 | 2011-09-20 | Juniper Networks, Inc. | No split virtual chassis based on pass through mode |
US8369211B2 (en) | 2009-12-17 | 2013-02-05 | Juniper Networks, Inc. | Network distribution prevention when virtual chassis system undergoes splits and merges |
US8379522B2 (en) | 2010-01-15 | 2013-02-19 | Alcatel Lucent | Link aggregation flood control |
US8582423B2 (en) | 2010-08-04 | 2013-11-12 | Alcatel Lucent | Multi-chassis inter-process communication |
US9148391B2 (en) * | 2010-08-04 | 2015-09-29 | Alcatel Lucent | System and method for a pass thru mode in a virtual chassis system |
US9148389B2 (en) * | 2010-08-04 | 2015-09-29 | Alcatel Lucent | System and method for a virtual chassis system |
US8625407B2 (en) | 2010-09-14 | 2014-01-07 | Force10 Networks, Inc. | Highly available virtual packet network device |
US8837499B2 (en) * | 2011-05-14 | 2014-09-16 | International Business Machines Corporation | Distributed fabric protocol (DFP) switching network architecture |
-
2013
- 2013-03-20 US US13/847,883 patent/US9007893B2/en not_active Expired - Fee Related
-
2014
- 2014-03-12 CN CN201480016685.7A patent/CN105191339B/zh not_active Expired - Fee Related
- 2014-03-12 JP JP2016504306A patent/JP6147414B2/ja not_active Expired - Fee Related
- 2014-03-12 EP EP14720752.6A patent/EP2976890B1/en not_active Not-in-force
- 2014-03-12 KR KR1020157025844A patent/KR101726531B1/ko active IP Right Grant
- 2014-03-12 WO PCT/US2014/024037 patent/WO2014150708A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN105191339B (zh) | 2018-10-26 |
JP6147414B2 (ja) | 2017-06-14 |
EP2976890B1 (en) | 2018-09-19 |
EP2976890A1 (en) | 2016-01-27 |
WO2014150708A1 (en) | 2014-09-25 |
US9007893B2 (en) | 2015-04-14 |
KR20150119426A (ko) | 2015-10-23 |
KR101726531B1 (ko) | 2017-04-12 |
JP2016516368A (ja) | 2016-06-02 |
US20140286345A1 (en) | 2014-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105191339A (zh) | 在非同构虚拟机架中的软件冗余 | |
US9628375B2 (en) | N-node link aggregation group (LAG) systems that can support various topologies | |
US10171303B2 (en) | IP-based interconnection of switches with a logical chassis | |
JP5801383B2 (ja) | 仮想クラスタ交換 | |
EP2621136B1 (en) | Link aggregation in software-defined networks | |
RU2530338C2 (ru) | Предварительно подготовленное сопряжение на основе состояния линий связи поставщиков (plsb) с маршрутизируемым резервированием | |
US20190182202A1 (en) | System and method for route optimization in a multichasiss link aggregation configuration | |
US20140369230A1 (en) | Virtual Chassis Topology Management | |
US9401872B2 (en) | Virtual link aggregations across multiple fabric switches | |
US9515927B2 (en) | System and method for layer 3 proxy routing | |
KR20140127904A (ko) | 가상 패브릭 링크 고장 복구를 위한 시스템 및 방법 | |
WO2018171529A1 (zh) | 一种实现双控制平面的方法、装置、计算机存储介质 | |
CN105656645A (zh) | 堆叠系统的故障处理的决策方法和装置 | |
US8446818B2 (en) | Routed split multi-link trunking resiliency for wireless local area network split-plane environments | |
WO2014101708A1 (zh) | 二层网络数据传送方法及网络节点 | |
WO2021143213A1 (zh) | 跨设备链路聚合方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181026 Termination date: 20200312 |
|
CF01 | Termination of patent right due to non-payment of annual fee |