CN102124697B - 更新网络流量管理设备同时维持有效性 - Google Patents

更新网络流量管理设备同时维持有效性 Download PDF

Info

Publication number
CN102124697B
CN102124697B CN200980132379.9A CN200980132379A CN102124697B CN 102124697 B CN102124697 B CN 102124697B CN 200980132379 A CN200980132379 A CN 200980132379A CN 102124697 B CN102124697 B CN 102124697B
Authority
CN
China
Prior art keywords
cluster
definition
connection
new
network
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.)
Expired - Fee Related
Application number
CN200980132379.9A
Other languages
English (en)
Other versions
CN102124697A (zh
Inventor
保罗·I·斯扎伯
布瑞恩·D·斯戈尼
萨克逊·卡尔·阿姆达尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
F5 Inc
Original Assignee
F5 Networks Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by F5 Networks Inc filed Critical F5 Networks Inc
Publication of CN102124697A publication Critical patent/CN102124697A/zh
Application granted granted Critical
Publication of CN102124697B publication Critical patent/CN102124697B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种方法、***、机器可读存储介质和装置涉及通过如下方式来更新集群:将集群叉分成两个虚拟集群,即“老”虚拟集群(老的活动集群)和“新”虚拟集群(新的备用集群),并且在将老集群的成员移入新集群的同时迭代地更新它们。在成员被加入新集群时,现有连接和新连接被老集群无缝地处理。可选地,一旦老集群和新集群的成员数目大约相等,就在老集群和新集群之间发生状态镜像。一旦阈值数目的成员已被转移到新集群,控制和处理就可由新集群接管。从老集群向新集群转移控制可通过将连通性从老集群故障转移到新集群来执行。

Description

更新网络流量管理设备同时维持有效性
相关申请的交叉引用
本申请要求2008年8月18日提交的、题为“Low Impact ConnectionMirroring And Failover On A Network”、序列号为61/089,839的美国临时申请的优先权,该申请通过引用而被进一步结合于此。
技术领域
本发明一般地涉及网络设备,更具体但非排他地,涉及对集群化的网络流量管理设备成员进行更新而没有实质性地影响管理现有的和新的网络流量的有效性。
背景技术
因特网已经发展成为鼓励许多公司依赖于其作为经营商业的主要资源的、无所不在的网络。例如,许多商业可以利用因特网和类似的联网基础架构来管理关键应用,访问内容服务器,自动化组装和生产线,以及实施复杂的控制***。而且,许多个人期望能够总是随时虚拟地访问资源。随着商业对访问这种联网资源来达到成功的依赖度的增加,提供这些服务的***的有效性变得更加关键。
刀片服务器是一种基于集群的组件,其允许用户在单独的卡片或“刀片”上配置服务器或其它计算资源。这些刀片与诸如电源和冷却风扇之类的共享资源一起被容纳在机箱中,从而创建了具有模块体系结构的高密度***,这种模块体系结构提供了改进的灵活性和可扩展性。刀片服务器能够使能多个服务器在相对较小的覆盖区(footprint)中的操作,降低机架(rack)的复杂度,简化线缆连接并降低能耗。刀片服务器经常被用在空间受限且能量敏感的环境中,例如数据中心和因特网服务提供商(ISP)。
但是,在计算环境中更新刀片服务器的硬件或软件将是困难、耗时且易出错的过程。此外,实施更新会负面地影响被更新的环境的连接处置以及其它处理。刀片服务器可以表示集群网络中的成员的一个示例。但是,其它基于集群的网络设备在硬件和/或软件更新期间可能具有类似问题。
附图说明
参考如下附图描述非限制性且非穷尽的实施例。在附图中,相同标号在各幅图中指示相同部分,除非另有说明。
为了更好地理解所描述的实施例,将参考如下详细描述,该详细描述将联结合附图来阅读,在附图中:
图1示出了用于实施所描述的实施例的示例性环境的示意概图;
图2图示了用于使能多个刀片服务器的操作的示例机箱的示意概图,其中,每个刀片可以作为集群成员操作;
图3示出了用于使得具有硬驱动仿真器和用于密码功能的加速器的刀片服务器能够操作的示例卡片的示意概图;
图4示出了作为集群成员的另一实施例的网络设备;
图5A-5F图示了提供影响较低的连接镜像和故障转移(failover)的一个实施例所涉及的集群环境;
图6A-6D示出了提供影响较低的连接镜像和故障转移的一个实施例所涉及的集群环境;
图7A-7H图示了提供影响较低的连接镜像和故障转移的一个实施例所涉及的集群环境;
图8图示了一个逻辑流程图,其一般性地示出了用于从第一集群去除一成员并将其添加到第二集群的处理的一个实施例;
图9图示了一个逻辑流程图,其一般性地示出了用于从集群成员去除连接的处理的一个实施例;以及
图10图示了一个逻辑流程图,其一般性地示出了用于叉分(bifurcate)集群的处理的一个实施例。
具体实施方式
在以下对示例性实施例的详细描述中,将参考附图,这些附图构成了本文的一部分并且通过图解来示出了可以实施所描述的实施例的示例。提供了充分的细节以使得本领域技术人员能够实施所描述的实施例,但是应当了解,在不脱离精神或范围的情况下,可利用其它实施例,并且可以作出其它修改。此外,对“一个实施例”的提及不一定涉及相同的或单个实施例,尽管它们可能是相同的或者单个的实施例。因此,不应当从限制性的意义上看待如下详细描述,并且仅由所附权利要求来限定所描述实施例的范围。
在说明书和权利要求书通篇中,如下术语采取在本文中显式关联的含义,除非上下文另有明确指示。
术语“用户”指采用设备来经由网络通信或访问资源的任何个人或客户,例如商户或组织。
术语“刀片服务器”指被配置在单个卡片上的服务器,该服务器通常与其它刀片服务器(多个卡片)集群在单个机箱或机架中。刀片服务器有时候还称为高密度、甚密或超密解决方案,其中,它们经常被用于轻处理、重交易的应用(processing-light and transaction-heavy application)。每一个刀片服务器通常专用于单个任务或处理,包括但不限于文件共享、文件虚拟化/网络存储文件管理、网页提供、网络安全性管理(例如,防火墙、认证、证书管理)、高速缓冲、代码转换、流媒体(视频、音频)、网络流量管理(例如,负载平衡、故障转移管理、加速/优化)、以及建立虚拟专用网,不过刀片服务器也可被配置为联合地执行这些任务的一个或多个组合。刀片服务器通常包括其自身的操作***和其所专用的应用,不过同样地,刀片服务器可以包括一个或多个操作***和一个或多个应用以使得能够执行不同任务。
术语“更新”指包括操作***版本更新在内的软件更新,不过该术语应当被广泛地解释为包含任何类型和其它类型的软件改变,包括使能不活动的软件代码(例如,受软件许可购买活动的驱动)、对运行的软件的配置改变(例如,热修复、打补丁等)、将设备重编程或重定位为执行完全不同的功能,或者可能以其它方式中断设备的正常操作(例如,流量管理相关操作)的任何改变;这个术语还应当被解释为包括硬件更新。
为了将刀片服务器紧凑地封装在相对较小的覆盖区(单个卡片)中,刀片服务器通常将使用高度小型化且高能效的中央处理单元(CPU),例如在便携式计算设备中使用的那些CPU。通常,数排单独的刀片服务器(它们很类似母板的功能)经由共享且相对高速的总线而彼此通信。在可安装在机架上的机箱中,示例性的基于刀片服务器的解决方案能够使数百CPU在相对标准的六脚机架的区间中进行操作。
本文中使用的术语“集群”指松散地耦合的网络设备,这些网络设备协作来集成服务、资源等,以向在集群外部的设备提供对这些服务、资源等的访问,集群在外部设备看来是网络上的单个实体。集群内的每个网络设备称为集群的成员。集群的成员可以是刀片、或者如上所述的“刀片服务器”、或者任何其它网络使能的设备,例如下面将结合图4描述的设备。
简言之,实施例涉及通过如下方式来更新集群:将集群叉分成两个虚拟集群,即“老”虚拟集群(老活动集群)和“新”虚拟集群(新备用集群),并在将老集群的成员移动到新集群中的同时迭代地更新它们。虽然成员被添加到新集群,但是现有的连接和新的连接由老集群的无缝处理。可选地,一旦老集群和新集群的成员数目大约相等,就在老集群和新集群之间发生状态镜像。一旦阈值数目的成员已被转移到新集群,新集群就可接管控制和处理。从老集群向新集群的控制转移可通过将连通性从老集群故障转移到新集群来执行。
在一个实施例中,状态镜像可包括将配置状态、会话状态和连接状态镜像到新集群。在一个实施例中,配置状态可包括数百种数据,这些数据集体地定义集群的操作状态。例如,配置状态可包括集群正在使用什么样的TCP栈选项、集群正使用的地址转译类型、虚拟服务器向物理服务器的映射、用户定义的运行时(runtime)规则、等等。在一个实施例中,会话状态可包括横跨两个或更多个连接的数据(例如,客户端到服务器的映射数据(通常是映射到具体的服务器网络地址的URI或客户端网络地址))、客户端授权数据、SSL会话数据、等等。在一个实施例中,连接状态可包括传输层连接数据,包括源和目的地IP地址和TCP端口,以及诸如VLAN之类的路由标识符。
在一个实施例中,镜像连接状态包括允许排除(drain)正被老集群的成员处置的现有连接。通过在允许现有连接终止的同时将新连接重定向到老集群中的其它成员来排除成员。一旦老集群的成员不再处理连接,该成员就可被无缝地转移到新集群。
可选地,将现有连接从老集群的成员排除所需的时间可通过主动地排除或“放掉(bleeding off)”该连接来减少。在一个实施例中,“放掉”连接包括修改网络数据,例如特定于应用的网络数据(OSI第7层数据),以恰当地减少关闭连接所需的时间。在一个实施例中,放掉连接包括降低连接的HTTP Keep-Alive(存活)值,不过可类似地设想其它实施例。
在一个实施例中,一旦连通性已被故障转移到新集群,新连接就可由新集群来处置。存留在老集群中的成员可在随后被更新并被添加到新集群。
更新集群的传统方案在更新主集群时,利用物理上分离的备用集群来处理连接。在正常操作期间,备用集群在“热备用模式”中操作,在该模式中,由备用集群镜像与主集群进行的连接。通过镜像连接,备用集群维持实际上等同于主集群的状态的状态,包括连接状态。当在正常操作期间在主集群中发生故障转移时,备用集群可恰当地取得对现有的镜像连接以及新连接的控制并处理这些连接,直到出故障的主集群恢复在线为止。在更新期间,可类似地使用备用集群来在更新主集群时处理现有的和新的连接。
更新集群的传统方案通过使备用集群下线(off-line)并对其进行更新来开始。一旦备用集群被更新,就实际上使所有网络流量定向到经更新的备用集群,同时使主集群下线并对其进行更新。
许多问题和成本与这些传统方案相关联。第一,需要物理上分离的备用集群可能极大地增加总体***的成本。第二,传统方案留有一时间窗,在该时间窗期间,活动集群(主集群或者备用集群)的故障可能导致所有的现有连接都被丢掉。第三,即使任一个集群都没有出故障,在不同版本的集群之间转移配置状态的难度也会导致某些连接被丢掉。具体而言,在传统方案中,当控制被转移到经更新的备用集群时,在备用集群已被更新并被使得在线之后、但在主集群已被更新并被使得在线之前创建的连接将被丢掉。
对于传统方案的第二个问题,故障可能变为灾难的时间窗在集群之一正被更新时发生。显然,在集群正在更新过程中时,状态镜像和故障转移无法发生。因此,在更新期间,对于活动集群的任何故障都将是灾难性的。因此,这种传统方案使得***处在易受破坏的状态中。
对于传统方案的第三个问题,在备用集群正被更新时,在主集群处形成的连接不被备用集群镜像。因此,当是时候更新主集群时,这些连接不是集群之间的任何共享状态的一部分。但是,如果在具有不同软件版本或硬件配置的集群之间以及时的方式转移配置状态并不完全不切实际,则这可能是困难的。如上所述,集群的配置状态可包含数百种数据,通常需要手动步骤来将配置状态从一个版本映射到另一个版本。传统方案并未提供手动执行这些映射而不会使集群处在易受破坏的状态达长期时间段的机制。因此,在传统方案中,当控制从主集群传递到经更新的备用集群时,这些新的连接可能被丢掉。如此,本文所描述的实施例旨在解决传统方案的这些缺陷中的许多。
例示性的操作环境
图1示出了可实施所描述的实施例的示例环境100的组件。可能不是需要所有这些组件来实施所描述的实施例,并且在不脱离所描述实施例的精神或范围的情况下可进行组件的布置和类型方面的变化。图1图示了一种广域网,例如网络102,该网络使现客户端106、主机服务器设备104、局域网(LAN)112和至少部署了一个刀片服务器110的数据中心108之间的通信。交换机114连接网络102和数据中心108,并使能它们之间的通信。在一个实施例中,刀片服务器110可以是一个或多个集群的成员。每个集群118在交换机114看来是具有单个网络地址的单个网络实体。例如,每个集群可以具有唯一的开放***互联(OSI)第2层(L2)网络地址。
图2示出了示例性的刀片服务器机箱200的概图。可能不是需要所有这些组件来实施所描述的实施例,并且在不脱离所描述实施例的精神或范围的情况下可以进行组件的布置和类型方面的变化。刀片服务器机箱200包括与存储器204通信的控制器206、输入/输出(I/O)接口208、网络接口总线210和刀片服务器总线212。通常,刀片的集群包括位于一个刀片服务器机箱中的所有刀片,但是集群可以包括刀片服务器机箱上的刀片的任意子集、或者来自一个以上的刀片服务器机箱的刀片。虽然未示出,但是,刀片服务器总线212可以包括用于刀片服务器202的多个插槽。此外,刀片服务器总线212可被布置为支持若干总线体系结构中的任一个,包括但不限于HyperTransportTM、光纤通道、***组件互连(PCI)、集成驱动电子(IDE)、工业标准体系结构(ISA)、高级图形端口(AGP)、火线(FireWire)、小型计算机串行接口(SCSI)、通用串行总线(USB)等。但是,至少在一个实施例中,刀片服务器总线212支持HyperTransportTM体系结构。
图3图示了可用作图2中的刀片服务器的示例性刀片服务器卡片300。可能不是需要所有这些组件来实施所描述的实施例,并且在不脱离所描述实施例的精神或范围的情况下可以进行这些组件的布置和类型方面的变化。控制器312耦合到直接总线304,直接总线304使能与硬驱动仿真器308和加速器306的数据和地址通信。几乎应用的全部都可被存储在硬驱动仿真器308中以供由控制器312执行的逻辑动作进行相对快速的访问。直接总线304可以采用包括但不限于如下的总线体系结构:HyperTransportTM、光纤通道、IDE、USB、ISA、PCI、AGP、SCSI、火线、串行等等。但是,由于在加速器306、在控制器312中操作的应用和硬驱动仿真器308之间可能传送相对较少量的数据(通常100字节或更少),所以在一个实施例中能够对直接总线304采用相对较低速的总线体系结构。
控制器312耦合到直接总线304,并且使得能够经由直接总线304通信。控制器312还耦合到刀片服务器总线接口302,刀片服务器总线接口302使能数据和地址通信。在一个实施例中,刀片服务器总线接口302接收用于刀片服务器卡片300的电力并用作PCI总线。另外,振荡器310耦合到控制器312、硬驱动仿真器308和加速器306,来使得经由直接总线304传送的数据和地址能够同步。另外或者可替代地,刀片服务器卡片300可包括物理硬盘驱动器。
此外,控制器312可被设置在包括但不限于如下的若干类型设备中的任一个中:CPU、微控制器、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、专用集成电路(ASIC)等等。
如上所述,集群成员和集群体系结构不限于刀片服务器体系结构。于是,例如,图4图示了可用作集群成员的示例性网络设备400的示意概图。在一个实施例中,网络设备400可包括有状态网络设备,例如流量管理设备。有状态网络设备维持有关联网架构的传输层(例如OSI第4层或TCP/IP的TCP层)的信息。另外或者可替代地,网络设备400可包括无状态网络设备,无状态网络设备维持数据链路和/或网络层信息,例如OSI第2层和第3层。网络设备400可包括许多的比所示出的那些多或少的组件。但是,所示出的组件对于公开例示实施例是充分的。网络设备400可以在类似***中替代图1中的刀片服务器110。此外,由网络设备400执行的任何任务或功能都可由刀片服务器110执行(反之亦然)。网络设备400可以是服务器、流量管理设备、应用服务器等。将结合图5-10更详细地描述由网络设备400的至少一些组件执行的处理的一个实施例。
网络设备400包括至少一个处理单元412(每一个单元412具有一个或多个处理核)、视频显示适配器414、和海量存储器,它们全部经由总线422彼此通信。而且,一个或多个处理单元412(和/或在每一个单元412内的核)可以替代(或者补充)刀片服务器110。海量存储器一般包括RAM 416、ROM 432、bios 418、和一个或多个永久性的海量存储设备,例如硬盘驱动器428、磁带驱动器、光驱、和/或软盘驱动器。海量存储器存储用于控制网络设备400的操作的操作***420。
如图4所示,网络设备400还能经由一个或多个网络接口单元410与交换机114、网络102、或某些其它通信网络进行通信,网络接口单元410被构造用于包括TCP/IP协议在内的各种通信协议。网络接口单元410有时候称作收发器、收发设备、或网络接口卡(NIC);并且其中,设备400包括一个以上的处理单元412(或者一个单元412具有一个以上的核),每一个单元412(和/或核)可以使用相同的单个网络接口单元410或多个单元410。
本文描述且在图4中示出的海量存储器416、426、428和432图示了另一组类型的计算机可读介质,也就是计算机可读或者处理器可读存储介质,它们是机器可读介质的示例。计算机可读存储/机器可读存储介质可包括以用于存储诸如计算机可读/机器可执行指令、数据结构、程序模块或其它数据之类的信息的任何方法和技术来实施的易失性、非易失性、可移除、和不可移除介质,所述信息可由诸如至少一个中央处理单元(CPU)412之类的处理器获得和/或执行以执行例如包括图8-10中的处理800、900和/或1000中的一个或多个部分的动作。计算机可读存储介质的示例包括RAM、ROM、EEPROM、闪存或其它存储技术,CD-ROM、数字多功能盘(DVD)或其它光存储装置,盒式磁带、磁带、磁盘存储装置或其它磁存储设备,或者能够用于存储期望的信息(包括数据和/或计算机/机器可执行指令)并且能够被计算设备访问的任何其它介质。
海量存储器还可存储其它类型的程序代码和数据作为应用450,这些应用450可被加载到海量存储器中并在操作***420上运行。应用450的示例可包括web浏览器、电子邮件客户端/服务器程序、路由程序、调度器、web服务器、日历、数据库程序、字处理程序、超文本传送协议(HTTP)程序、实时流式传输协议(RTSP)程序、安全程序、和任何其它类型的应用程序。应用450还包括控制进程(CP)452和成员管理器454。
网络设备400还可包括用于收发电子邮件的简单邮件传送协议(SMTP)处置器应用、用于接收和转交(hand)HTTP请求的HTTP处置器应用、用于接收和转交RTSP请求的RTSP处理器应用、以及用于处置安全连接的HTTPS处置器应用。HTTPS处置器应用可以安全的方式发起与外部应用的通信。此外,网络设备400还可包括虚拟地支持包括TLS、TTLS、EAP、SSL、IPSec等的任何安全连接的应用。
网络设备400还可包括输入/输出接口424,用于与诸如鼠标、键盘、扫描仪、或未在图4中示出的其它输入/输出设备之类的外部设备通信。同样地,网络设备400还可包括诸如cd-rom/dvd-rom驱动器426和硬盘驱动器428之类的附加海量存储设施。硬盘驱动器428可用于以与上述其它海量存储器组件相同的方式存储应用程序、数据库等,以及其它。
在一个实施例中,网络设备400可包括耦合到总线422的至少一个ASIC芯片(未示出)。ASIC芯片能够包括执行网络设备400的动作中的一些或全部的逻辑。例如,在一个实施例中,ASIC芯片能够执行数个针对传入和/或外出分组的分组处理功能。
在一个实施例中,取代或者除了ASIC芯片之外,网络设备400还能够包括一个或多个现场可编程门阵列(FPGA)(未示出)。网络设备400的数个功能能够由ASIC芯片、FPGA执行,由CPU 412利用存储在存储器中的指令来执行,或者由ASIC芯片、FPGA和CPU的任意组合来执行。
控制进程452包括被配置来对网络设备的集群执行无缝的软件或硬件更新的任何组件。利用控制进程452的实施例在图5-10中示出。
成员管理器454包括用于执行特定于集群的处理的任何组件。例如,当网络设备400包括刀片服务器时,成员管理器454可执行包括但不限于如下的处理:文件共享、web页面提供、高速缓冲、代码转换、流式传输音频、流式传输视频、负载平衡、故障转移管理、以及通常由集群体系结构实施的其它网络技术。当网络设备400包括服务器计算机时,成员管理器454例如可包括文件和打印共享服务。
虽然网络设备400被示出为包括控制进程452和成员管理器454,但是在替代实施例中,这些组件中的至少一些可不被包括并且可以是可选的,并且/或者替代的或其它组件可被包括。
一般化操作
现在将参考图5-10来描述某些方面的操作。图5-7提供了某些方面的环境和步骤,而图8-10提供了某些方面的逻辑流程图。
图5A-5G图示了用于更新集群成员的一个实施例。在一个实施例中,管理员可在没有成本且不对现有成员或网络流量产生影响的情况下在运行时添加成员集群。在安装时,新安装的成员可被完全覆写。另外地或者可替代地,可在将成员添加到集群之前将软件预安装到成员上。包含预安装的软件的成员可被安装到集群中,而不必在随后安装软件,从而减少使成员上线所需的时间量。图5A-5G的组件可包括比图示组件更多或更少的组件。但是,示出的组件足以公开一个实施例或图解。
图5A图示了集群#1的初始状态。集群#1包括成员#1、成员#2和成员#3。虽然图5A示出了包含四个插槽和三个成员的集群,但是集群可虚拟地包括任何数目的成员和任何数目的开放插槽。但是,如图所示,成员#1、#2和#3的每一个包括两个引导分区(boot partition)——分区510和分区520。分区可包括操作***和/或安装在其上的其它软件。例如,成员#1-#3的每一个的分区510安装有软件版本10.2。在一个实施例中,单个分区可能是活动的,而任何其余分区是不活动的,如图5A中由与活动软件版本相邻的圆圈所示的。
在一个实施例中,如果已经获取允许额外成员的许可,则可向诸如插槽#4之类的开放插槽添加成员。但是,在其它实施例中,也许部要求许可。
图5B图示出成员530正被***到插槽#4。在一个实施例中,在成员530被***到插槽#4时,软件被自动安装到成员530上,如下面的图5C所示。另外地或者可替代地,软件可能已经准备好(prim),或者在成员530被***到插槽#4之前已预先被安装到成员530上。在成员530被***到插槽#4时,成员530上的现有软件可被自动更新。
图5C图示了对安装的软件图像(software image)进行同步。首先,安装的软件版本被从现有成员之一复制到成员#4。例如,软件图像可被从成员#1的图像仓库完整地复制到成员#4的图像仓库。在另一实施例中,可通过仅复制软件中必要的部分以使得成员#4包含与成员#1-#3相同的软件来同步软件图像。在一个实施例中,多于一个版本的软件程序可被复制到成员#4或者与成员#4同步。在一个实施例中,可使用诸如rsync540之类的同步程序来执行软件同步。
一旦软件图像已被同步,一个或多个经同步的软件图像就可在本地被安装到成员#4的一个或多个分区上。如图5C中所示,版本10.2可被安装到成员#4的分区510,而版本10.1可被安装到成员#4的分区520。
图5D图示了配置同步。可在现有成员(例如成员#1)与成员#4之间同步用户配置集(UCS)。在一个实施例中,使用rsync540来执行配置同步。在一个实施例中,***管理员可在UCS与其余成员同步之前更新UCS。在一个实施例中,UCS文件被安装到每一个成员的图像仓库,之后UCS文件可在本地被安装到分区510和520。
图5E图示了引导。成员#4引导到活动的引导分区。在图示实施例中,活动的引导分区是包含软件版本10.2的引导分区510。随后可执行任何可选的后安装的活动,例如将用户配置集(UCS)加载到存储器中。在引导时,最初可能存在少数由成员#4处置的连接550(如果有的话)。
图5F图示了一旦集群在运行中时的正常操作。成员#4已获得许可,已加载当前软件版本和配置数据,并且开始处理连接560。
图6A-6D图示了在集群环境中用于滚动成员的安装的一个实施例。另外地或者可替代地,在集群环境中对成员的滚动更新被执行。滚动的安装和/或更新使得集群能够将不活动的引导分区更新到新的软件版本而不会有停机时间(downtime)。在一个实施例中,集群的所有成员都正在执行相同软件版本。例如,如图6A所示,引导分区610和引导分区620两者都安装有软件版本10.0。图6A-6D的组件可包括比图示组件更多或更少的组件。但是,所示出的组件足以公开一个实施例或图解。
图6A图示了用于滚动安装/更新的至少一个环境。例如,引导分区610可能安装有初始软件版本,例如软件版本10.0。类似地,引导分区620可安装有初始软件版本,例如软件版本10.0。软件版本10.0被用作示例,可类似地设想其它软件版本和其它版本化***。
图6B图示了流量管理器用户接口(TMUI)。在一个实施例中,TMUI管理图像仓库,其存储软件程序和全部软件图像。软件图像(完整的软件程序或者热修复)可由TMUI从网络仓库下载。在一个实例中,网络仓库是企业管理器(EM)。
图6C图示了图像仓库同步。在一个实施例中,文件被从成员之一中的图像仓库复制到一个或多个其它成员中的图像仓库。文件可在操作的后台模式中被复制。在一个实施例中,可使用rsync 640来同步图像仓库中的文件,不过可类似地设想比特洪流(bit torrent)或其它程序。
图6D图示了滚动的现场安装(Rolling Live Install)。在一个实施例中,用户选择特定的软件版本或热修复来安装在不活动的引导分区中。在其它实施例中,最新的可获得版本被自动安装到不活动的引导分区上。在一个实施例中,现场滚动安装被并行执行,以使得集群的每一个成员同时安装软件。可替代地,可串行地执行现场安装。例如,图6D示出软件版本10.1取代每一个成员#1-4的引导分区620上的软件版本10.0。
图7A-7H图示了在集群环境中用于更新网络设备的一个实施例。在高级别上,协调地组织滚动的切换引导可包括:(1)将集群分成用于管理网络连接的老(活动的,或者第一)虚拟集群和新(备用的,或者第二)虚拟集群,(2)更新新集群的成员,和(3)将连通性从老集群故障转移到新集群。本文中使用的术语“故障转移连通性”指在故障转移之前、期间和之后维持单个网络身份。在一个实施例中,网络身份可包括IP地址、IP地址和端口的组合、介质访问控制(MAC)地址、等。通过维持故障转移连通性,可以很少或者没有停机时间或数据丢失地更新集群。另外地或者可替代地,集群之间高有效性的故障转移也可保持现有传输层连接,例如OSI第4层连接或TCP连接。另外地或者可替代地,高有效性的故障转移可保持更新期间的会话状态。
在一个实施例中,图形用户界面(GUI)可以使得用户能够指定集群成员向新集群迁移的顺序。另外地或者可替代地,GUI可以使得用户能够在大约成员的一半已加入第二集群时或者基于某个其它条件来指定是否期望状态镜像。图7A-7H的组件可包括比图示出的组件更多或更少的组件。
但是,示出的组件足以公开一个实施例或图解。
在一个实施例中,图7A图示了用于滚动的切换引导的环境。成员#1-4中的每一个正在运行现有软件版本,在此实例中,是引导分区710上的版本10.0。在版本10.0当前正在执行的同时,软件版本10.1已被安装在引导分区720上,如结合图6A-6D所述的。在一个或多个处理器上操作的控制进程(CP)代表集群来管理成员之间的交互。控制进程可驻留在集群的单个成员内,控制进程可驻留并操作在集群内但是在成员之外,或者控制进程在一个实施例中可主要驻留并操作在集群之外。在一个实施例中,控制进程模块执行包括下面结合图8-10论述的那些动作的动作,包括将所选信息从第一集群镜像到第二集群,以及判断何时越过所选信息的定义阈值。在一个实施例中,控制进程模块利用配置中的所定义改变来更新来自第一集群的第一成员。
图7B图示了滚动切换引导的开始。在一个实施例中,用户通过TMUI来发起切换引导,不过可类似地设想自动化的切换引导。
图7C图示了对集群进行叉分。在一个实施例中,集群#1是仅有的集群,并且其通过交换机114与网络102通信。集群#1被指派了单个OSI第2层地址,例如MAC地址,集群#1通过该地址为交换机114所知。
在一个实施例中,通过从集群#1去除成员并用该去除的成员来创建第二集群(集群#2),从而将集群#1叉分成老集群和新集群。在一个实施例中,集群#2的第一成员是集群#2的主成员,因此集群#2的第一成员将包括用于控制集群#2的控制进程。
在一个实施例中,在OSI栈的第3层对集群#1进行划分,以使得没有对集群#1的OSI第2层拓扑和交换机114产生变化。在一个实施例中,老集群和新集群可协调OSI第2层状态,例如接口状态、LACP(链路聚合连接协议)状态、STP状态和STP帧,以维持一致的OSI第2层拓扑。这种状态协调可在具有不同软件版本(包括控制进程的不同版本)的集群之间实现。
在一个实施例中,集群#2可分配其自身的第2层地址,从而给予其网络上的唯一第2和第3层身份。于是,在一个实施例中,集群#2可连接到集群#1并预订集群#1的第2层状态信息。另外,集群#2可与集群#1共享第2层状态信息。因为集群#1和集群#2通常在执行不同软件版本,所以第2层状态信息的共享通常被版本化,以使得运行更新软件版本的集群可与运行较老软件版本的集群通信。
在一个实施例中,每一个成员包含解聚表(DAG,Disaggregatortable),该解聚表将对连接的处理引导到适当的集群、成员和CPU。在一个实施例中,集群#1和集群#2的每一个被指派了虚拟标识符。虚拟标识符可以是虚拟ModID、双VLAN标签、链路聚合标识符、MAC-in-MAC封包中的外部MAC地址、或者任何其它标识符。DAG可以是有状态的或者无状态的。有状态的DAG在存储器中将虚拟标识符与每一个活动连接相关联,以使得与活动连接相关联的虚拟标识符指示出哪个集群应当处理该连接。另外地或者可替代地,DAG可以是无状态的。无状态的DAG可以通过将诸如MAC地址、协议、IP地址、端口和/或VLAN之类的连接信息散列化(hash)到特定集群、成员和CPU来创建关联。在一个实施例中,叉分集群#1包括对每一个成员的有状态DAG进行叉分,以使得去往老集群的连接和去往新集群的连接被相应地引导。在一个实施例中,DAG可以包括ASIC。
在一个实施例中,通过变更链路聚合群组或者横跨集群#1的至少两个集群成员的某种其它生成树技术来叉分集群#1。可以禁用作为链路聚合群组(或其它生成树技术)的成员的至少一个集群成员,从而将流量强制到其余集群成员。以这种方式,可将集群的一个成员从老集群去除,同时现有连接继续由老集群的其余成员处理。例如,可禁用成员#4。在一个实施例中,正由成员#4处理的连接在成员#4被从集群#1去除之前被排除。将由成员#4处理的后续连接被改为引导到成员#1-3。
一旦被从集群#1去除,成员#4就可成为集群#2或者被用于创建集群#2。在创建之后,集群#2随后可经由网络广播它的存在,并开始使用经叉分的DAG来将流量分发给其自身和集群#1。集群#2也可继续与集群#1共享接口、STP和链路聚合群组的状况更新,以维持第2层状态。在一个实施例中,具有唯一的第2和第3层标识符的集群#2可以充当集群#1的“热备用”,对从第一集群故障转移之前的连接进行镜像。
图7D图示了向新软件版本的切换引导。在一个实施例中,在被添加到集群#2时,成员#4被更新到新软件版本。例如,成员#4可被更新为执行引导分区720上的软件版本10.1。在一个实施例中,通过重新引导成员#4来完成切换引导。附加成员(例如,成员#3)可以可选地被从集群#1禁用,被添加到集群#2,并被切换引导到集群#2所使用的软件版本。
图7E图示了向集群#2的附加成员转移:成员#3排除了连接,成员#3加入集群#2,并且成员#3被切换引导到经更新软件。
图7F图示了可选的状态镜像。配置状态、会话状态、和连接状态可以各自单独或者组合地被镜像。可通过将状态镜像配置从“集群内”改变为“集群间”来使能集群#1和集群#2之间的状态信息镜像。另外地或者可替代地,集群内和集群间状态镜像可同时发生。状态镜像可将配置、会话、连接、持久性和其它状态从活动集群(集群#1)转移到备用集群(集群#2)。在一个实施例中,状态镜像可将OSI第4层连接数据和OSI第7层数据从集群#1转移到集群#2。一般地,不受从老软件版本向新软件版本的更新的影响的任何状态都可在状态镜像期间直接在集群之间转移。不能从老软件版本向新软件版本自动更新的任何状态都可在连接继续由集群#1处理的同时被手动更新。在一个实施例中,一旦集群被近似均匀地平衡时,状态镜像就可发生。这种近似可基于某一阈值或某种其它标准。
图7G和7H图示了将连通性从集群#1故障转移到集群#2,之后集群#1被解散,并且集群#1的被禁用成员可安装并引导经更新的软件版本。故障转移是传递控制并处理从一个集群到另一个集群的连接的过程。故障转移可在一天的某一时间、在某一工作负荷阈值、或者依据用户确定的任何其它标准而发生。一旦故障转移发生,集群#2(现在是用于管理网络连接的“活动集群”)就可往回切换到集群内状态镜像模式。如图所示,图7G和7H图示了将成员#2以及随后的成员#1重分组到新集群中。
在一个实施例中,在没有修改集群#1的数据链路(OSI第2层)地址的情况下,或者另外在没有修改集群#1和交换机114的数据链路拓扑的情况下,执行将连通性从集群#1无缝地故障转移到集群#2。在此实施例中,故障转移连通性可包括将集群#1的数据链路层地址(例如,介质访问控制(MAC)地址)指派给集群#2,以使得集群#2承担集群#1的数据链路层网络身份。
另外地或者可替代地,通过使用地址解析协议(ARP)来向相邻网络节点通知被更新的网络设备的MAC地址已移动到第二集群的网络地址,从而将连通性从集群#1故障转移到集群#2。以这种方式,被寻址到集群#1的传入分组将被路由到集群#2的MAC地址,从而将连通性从集群#1故障转移到集群#2。在任一种情况中,连通性在故障转移期间都得以维持,这意味着具有集群身份的单个网络在更新之前、期间和之后继续存在,而虚拟地不具有数据或连接丢失。
图8图示了一逻辑流程图,其一般地示出了用于通过部分地从第一集群去除成员并将其添加到第二集群来管理对网络设备集群的更新的处理的一个实施例。
处理800在开始块之后,在块810通过从第一集群去除一集群成员而开始。在一个实施例中,从第一集群的多个成员中选择第一成员。在一个实施例中,通过对第一集群进行叉分来创建第二集群。在一个实施例中,对第一集群的叉分可包括将至少一个连接从所选的第一成员重新分配到第一集群中的至少一个其它成员。通过重新分配该连接,连接继续被无缝地处置,同时允许所选第一成员被从第一集群去除。在重新分配连接之后,可通过将所选的第一成员转移到另一集群中来创建第二集群,以使得该所选第一成员成为所创建的第二集群的第一成员。可替代地,可显式地创建第二集群,并在随后可将所选第一成员从第一集群去除并添加到第二集群。在一个实施例中,重新分配连接包括从第一成员排除和/或放掉连接,如下面结合处理900更详细描述的。在一个实施例中,创建新的第二集群还将该第一成员指定为新的第二集群的主成员。主成员通常被确认为集群的主导者(master)。
在块830,对所选的第一成员进行修改。在一个实施例中,通过更新到新配置来修改所选的第一成员。另外地或者可替代地,所选的第一成员在被添加到第二集群时,被自动地更新到新配置。在一个实施例中,更新所选第一成员的配置包括更新到新的软件版本。
处理接下来继续到块850,其中,经更新的成员被添加到第二集群。如上所述,可在创建了第二集群之后将第一所选成员添加到第二集群。可替代地,可用第一所选成员来创建第二集群,在这种情况中,在正在创建第二集群时将第一所选成员添加到第二集群。
处理接下来继续到块870,其中,判断第一集群中是否存留有另一成员。如果在第一集群中存留有另一成员,则处理往回循环到步骤810,并且第一集群的另一成员在被加入到第二集群作为成员的同时被去除并更新。在一个实施例中,块870针对活动的第一集群中的所定义数目的其它成员而继续。在一个实施例中,所定义数目被确定为约等于第一集群中的成员总数的一半。在一个实施例中,当两个集群的每一个都包含约成员总数的一半时,状态镜像开始。例如,当集群的成员的总数为偶数时,则可在两个集群之间分布严格一半。在数目不是偶数时,则一个集群相比于另一集群可具有一个或多个额外的成员。这种分割可以是预定义的、用户可设定的、或者基于某种其它标准。如果没有成员存留在第一集群中,则原始集群的所有成员都已被修改并被添加到第二集群。在块870完成之后,处理返回到调用处理。
图9图示了一逻辑流程图,其一般地示出了用于从集群一成员去除或排除连接的处理的一个实施例。在一个实施例中,当允许将存在于叉分之前的连接恰当地结束时,排除连接。在一个实施例中,排除连接包括处理第一集群处的所有分组交换,包括数据链路层和网络链路层(OSI第2和第3层)分组交换。在由于对连接的自然结束而使得处理这些分组已完成之后,可以关闭第一集群处的传输层(OSI第4层)连接。
处理900在开始块之后在块910开始,在块910中,选择集群成员。可替代地,可能已经在上面的步骤810中选择成员。
处理接下来继续到块920,其中,在可能的范围内从所选成员重新分配连接。在一个实施例中,通过采用集群内状态镜像来使能排除连接。这样,连接状态被直接从一个成员复制到另一成员,从而允许从集群去除第一成员而没有丢掉连接。另外地或者可替代地,排除至少一个现有连接还包括将来自要加入第二集群的每一成员的对新连接的请求重定向到第一集群中的另一成员。
除了等待连接排除或者通过采用集群内状态镜像来移动现有连接之外,连接重分配可包括采取主动步骤来减少连接的寿命。例如,可修改网络流量来强制重置网络连接,以致使连接迁移到另一成员。强制重置可包括终止或以其它方式突然结束连接。突然结束连接可立即去除来自该成员的连接,不过还导致数据丢失。
另外地或者可替代地,被采取来减少连接的寿命的另一主动步骤包括“放掉”连接。放掉连接可包括以比连接不被修改的情况更早地致使由客户端自发地终止连接的方式来修改连接。这个过程可以是特定于协议的。例如,如果检测到连接正在客户端-服务器环境中使用HTTP协议,则可在HTTP响应被发送到HTTP客户端时,或者在HTTP请求被发送到HTTP服务器时,检测和/或减少或禁用HTTP KEEP-ALIVE时间段属性。通过减少或禁用HTTP KEEP ALIVE属性,HTTP客户端将在下一次其连接到HTTP服务器时创建新的HTTP连接。该新的连接可由第一集群中的另一成员处置,从而确保客户端的无缝访问,同时允许原来处置该连接的成员被更新并被安装到第二集群中。取决于客户端花多长时间来发起新连接,故障转移可能已经发生,从而新连接将由第二集群处置。连接也可通过将HTTP请求或响应的连接头部值改变为“关闭”来放掉。
图10图示了一逻辑流程图,其一般地示出了用于叉分集群的处理的一个实施例。
处理1000在开始块之后开始于块1010,其中,第二集群的第2层(L2)标识符被识别。在一个实施例中,该L2标识符被广播到其它本地网络元件。
处理接下来继续到块1020,其中,第一集群的一个成员被标识为第二集群的成员。在一个实施例中,所标识的成员在被添加作为第二集群的成员时,被更新到在第二集群中使用的软件版本。
处理接下来继续到块1030,其中,第二集群的成员被完全地激活。
处理接下来继续到判决块1040,其中,判断第一和第二集群是否包含大约相同数目的成员。如果是,则处理继续到块1050,其中,包括配置状态、会话状态、连接状态等的状态信息被可选地从第一集群镜像到第二集群。如果集群不包含大约相同数目的成员,则处理继续到判决块1060。一旦连接状态已被镜像,第二集群就进入“热备用模式”,从而主动地构建和镜像与由第一活动集群管理的连接相关联的状态信息。通过主动地针对被寻址到第一集群的分组来监视网络,来镜像这个状态。通过以这种方式进入“热备用模式”并镜像状态,可在执行不同软件版本的集群之间有效地传送连接。
在块1060,判断是否满足定义的故障转移条件或标准。故障转移条件可以是用户配置的。例如,故障转移条件可被设定为在一天的某一时间或者在某一时间范围内发生。故障转移条件可被设定为在一周的特定日、当某一水平的网络活动被检测到时、或类似时机发生。可替代地,故障转移可直接由用户手动触发。另外地或者可替代地,故障转移可在如下时机被触发:当被镜像的定义数目的连接高于定义阈值时,和/或由第一活动集群管理的状态信息被检测为正由第二活动集群镜像时。例如,可以当在第一集群和第二集群之间共享例如75%的连接状态数据时触发故障转移。可替代地,可以当在第一集群和第二集群之间共享例如95%的连接状态数据时触发故障转移。另外地或者可替代地,可以当共享的连接状态数据量进入例如在60-65%之间的范围时触发故障转移。组合因素也可触发故障转移。例如,如果所述一天的某一时间是清晨,则共享的连接状态的百分比可能仅需要是75%来触发故障转移。但是,如果更新在工作日的中间发生,则在触发故障转移之前可能需要95%的共享连接状态。如果故障转移条件发生,则处理继续到块1070,其中,连接从活动的第一集群故障转移到第二集群,以使得第二集群被设定为活动集群,并且第一集群被解散。在第一集群故障转移之后,第一集群的每一个存留成员都被更新到定义的配置。这些存留成员被加入第二集群,其中,第二集群成为了用于管理网络连接的活动集群。如上所述,连通性故障转移在一个实施例中可以如下方式来实现:使用地址解析协议(ARP)向诸如交换机114之类的相邻网络节点通知第一集群的介质访问控制(MAC)地址在这些相邻网络节点中将用第二集群的MAC地址替换。以这种方式,诸如交换机114之类的相邻网络节点所接收的IP地址将被转译为第二集群的MAC地址,从而将控制和处理无缝地转移到第二集群同时维持连通性。还如上所述,连通性故障转移另外地或者可替代地还可以通过在第二集群处用第一集群的MAC地址替换第二集群的MAC地址来实现。以这种方式,已由第一集群接收并处理的网络流量将由第二集群接收并处理,从而同样可将控制和处理无缝地转移到第二集群同时维持连通性。处理随后终止于返回块。
将了解,如流程图一样的图示中的示图和步骤的组合可由计算机程序指令来实现。这些程序指令可被提供给处理器来产生机器,以使得在处理器上执行的指令创建用于实现在一个或多个流程图块中指定的动作的装置。计算机程序指令可由处理器执行来致使一系列的操作步骤由处理器执行来产生计算机实现进程,从而使得在处理器上执行的指令提供用于实现在一个或多个流程图块中指定的动作的步骤。这些程序指令可被存储在诸如计算机可读存储介质之类的计算机可读介质或机器可读介质上。
因此,这些图示支持用于执行指定动作的装置的组合、用于执行指定动作的步骤的组合以及用于执行指定动作的程序指令装置。还将了解,流程图图示中的每一个块以及流程图图示中的块的组合可通过执行指定动作或步骤的诸如基于专用硬件的***之类的模块、或者专用硬件和计算机指令的组合来实现。
上面的说明、示例和数据提供了对所描述实施例的构成的制造和使用的完整描述。由于在不脱离此描述的精神和范围的情况下可以作出许多实施例,所以这些实施例驻留在下文所附的权利要求中。

Claims (29)

1.一种结合一个或多个处理器操作来更新网络设备的方法,包括:
选择第一集群中的多个成员内的第一成员;
叉分所述第一集群,其中,所述叉分包括:
创建第二集群,其中所述第二集群包括所选的第一成员;
激活所述第二集群内的所述第一成员,其中所述第一成员被用定义的配置更新来激活;和
判断是否满足定义的故障转移标准,并且如果所述定义的故障转移标准得以满足,则将连通性从所述第一集群故障转移到所述第二集群,以使得所述第二集群变为用于管理连接的活动集群;
从所述第一集群去除至少一个其它成员;
利用定义的更新来更新所述至少一个其它成员;以及
将所述至少一个其它成员加入所述第二集群作为成员。
2.根据权利要求1所述的方法,其中,更新所述网络设备包括管理对所述网络设备的所述第一集群的更新。
3.根据权利要求1所述的方法,还包括:
镜像与由所述第一集群管理的连接相关联的状态信息;并且
其中,判断是否满足定义的故障转移标准包括确定被镜像的定义数目的连接的状态信息何时高于定义阈值。
4.根据权利要求1所述的方法,其中叉分还包括:
将至少一个现有连接从所选的第一成员排除到所述第一集群中的至少一个其它成员。
5.根据权利要求1所述的方法,其中叉分还包括:
对于所述第一集群中的预定义数目个成员中的每一个:
将连接排除到所述第一集群中的别的成员;
更新预定义成员的配置;和
将所述预定义成员加入作为所述第二集群的成员。
6.根据权利要求1所述的方法,其中叉分还包括:
通过如下动作中的至少一个来将连接排除到所述第一集群中的别的成员:
改变请求或响应中的HTTP连接头部值,以指示关闭关联连接或者指示减少或以其它方式修改关联连接的存活时间段,或者
执行任何其它特定于协议的动作以关停至少一个现有网络连接。
7.根据权利要求1所述的方法,其中重新分配连接还包括禁止由所选的第一成员接受至少一个新连接。
8.一种用于更新网络设备的***,包括:
具有多个成员的第一集群,其中所述第一集群是管理网络连接的活动集群;和
一个或多个控制模块,所述控制模块在被配置为执行动作的一个或多个处理器上操作,所述动作包括:
从所述第一集群选择第一成员以利用定义的配置改变进行更新;
创建第二集群,其中以所选的第一成员作为所创建的第二集群的第一成员;
更新所述第二集群的第一成员;
在定义的标准被满足之前,通过如下动作将来自所述第一集群的成员加入所述第二集群:
从所述第一集群去除要加入的每一个成员;
更新要加入的成员的配置;和
将经更新的成员加入所述第二集群;并且
当所述定义的标准得以满足时:
当另一定义的标准被满足而使得所述第二集群变为用于管理网络连接的活动集群时,将连通性从所述第一集群故障转移到所述第二集群。
9.根据权利要求8所述的***,其中,所述一个或多个控制模块被配置为执行动作,所述动作还包括:
排除由要加入所述第二集群的成员管理的至少一个现有连接。
10.根据权利要求9所述的***,其中,排除至少一个现有连接还包括如下的至少一者:改变请求或响应中的HTTP连接头部值以指示关闭关联连接或指示减少或以其它方式修改关联连接的存活时段,或者执行任何其它特定于协议的动作以通过减少存活时段来关停至少一个现有网络连接。
11.根据权利要求9所述的***,其中排除至少一个现有连接还包括将针对新连接的请求从要加入的每一个成员重定向到所述第一集群中的别的成员。
12.根据权利要求8所述的***,其中在从所述第一集群故障转移之前,所述第二集群被配置为热备用集群。
13.根据权利要求8所述的***,其中所述定义的标准包括:当所述第一集群中的成员总数的约一半被加入所述第二集群时。
14.根据权利要求8所述的***,其中所述一个或多个控制模块被配置为执行动作,所述动作还包括:
由所述第二集群镜像来自所述第一集群的所选信息;并且
其中,所述另一定义的标准包括确定何时越过所选信息的定义阈值。
15.一种用于更新网络设备的方法,包括:
通过如下方式来叉分活动的第一集群的成员:
排除来自所述活动的第一集群中的第一成员的连接;
更新所述第一成员的定义配置;和
利用所述第一成员来创建新的第二集群;并且
针对所述活动的第一集群中定义数目的其它成员:
排除来自所述定义的其它成员的每一个的连接;
更新所述定义的其它成员的定义配置;和
加入每一个定义的其它成员作为所述第二集群的成员;并且
当定义的故障转移条件被满足时,将连通性从所述活动的第一集群故障转移到所述第二集群,以使得所述第二集群变为活动集群。
16.根据权利要求15所述的方法,其中排除连接还包括如下的至少一者:改变请求或响应中的HTTP连接头部值以指示关闭关联连接或者指示减少或以其它方式修改关联连接的存活时间,或者执行任何其它特定于协议的动作以通过减少存活时间段来关停至少一个现有网络连接。
17.根据权利要求15所述的方法,还包括:
使用所述第二集群,镜像由所述活动的第一集群管理的状态信息和连接;并且
其中所述定义的故障转移条件包括检测由所述活动的第一集群管理的定义数目的连接和状态信息何时被检测为由所述第二集群镜像。
18.根据权利要求15所述的方法,其中排除连接还包括如下的至少一者:使得能够与所述活动的第一集群中的至少一个其它成员进行集群内的状态镜像,或者禁止接受对新连接的请求。
19.根据权利要求15所述的方法,还包括:
在故障转移所述第一集群之后:更新所述第一集群中的每一个存留成员的定义配置,和将每一个经更新的存留成员加入所述第二集群,其中所述第二集群是用于管理网络连接的活动集群。
20.根据权利要求15所述的方法,其中所述定义数目的其它成员被确定为约等于所述第一集群中的成员总数的一半。
21.根据权利要求15所述的方法,其中创建所述新的第二集群还包括将所述第一成员指定为所述新的第二集群的主成员。
22.一种用于更新网络设备的装置,包括:
用于叉分活动的第一集群的成员的装置,包括:
用于排除来自所述活动的第一集群中的第一成员的连接的装置;
用于更新所述第一成员的定义配置的装置;
用于利用所述第一成员来创建新的第二集群的装置;
用于针对所述活动的第一集群中定义数目的其它成员,排除来自所述定义的其它成员的每一个的连接,更新所述定义的其它成员的定义配置,和加入每一个定义的其它成员作为所述第二集群的成员的装置;以及
用于当定义的故障转移条件被满足时,将连通性从所述活动的第一集群故障转移到所述第二集群,以使得所述第二集群变为活动集群的装置。
23.根据权利要求22所述的装置,其中用于排除连接的装置还包括如下装置的至少一者:用于改变请求或响应中的HTTP连接头部值以指示关闭关联连接或者指示减少或以其它方式修改关联连接的存活时间的装置,或者用于执行任何其它特定于协议的动作以通过减少存活时间段来关停至少一个现有网络连接的装置。
24.根据权利要求22所述的装置,还包括:
用于使用所述第二集群,镜像由所述活动的第一集群管理的状态信息和连接的装置;并且
其中所述定义的故障转移条件包括检测由所述活动的第一集群管理的定义数目的连接和状态信息何时被检测为由所述第二集群镜像。
25.根据权利要求22所述的装置,其中用于排除连接的装置还包括如下装置的至少一者:用于使得能够与所述活动的第一集群中的至少一个其它成员进行集群内的状态镜像的装置,或者用于禁止接受对新连接的请求的装置。
26.根据权利要求22所述的装置,还包括:
用于在故障转移所述第一集群之后,更新所述第一集群中的每一个存留成员的定义配置,和将每一个经更新的存留成员加入所述第二集群的装置,其中所述第二集群是用于管理网络连接的活动集群。
27.根据权利要求22所述的装置,其中所述定义数目的其它成员被确定为约等于所述第一集群中的成员总数的一半。
28.根据权利要求22所述的装置,其中用于创建所述新的第二集群的装置还包括用于将所述第一成员指定为所述新的第二集群的主成员的装置。
29.一种用于更新网络设备的装置,所述装置包括:
至少一个收发器,接收和发送网络流量到一个或多个客户端和服务器;和
至少一个处理器,被配置为执行与所述网络流量相关的一个或多个动作,包括:
通过如下方式来叉分活动的第一集群的成员网络设备:
排除来自所述活动的第一集群中的第一成员的连接;
更新所述第一成员的定义配置;和
利用所述第一成员来创建新的第二集群;并且
针对所述活动的第一集群中定义数目的其它成员:
排除来自所述定义的其它成员的每一个的连接;
更新所述定义的其它成员的定义配置;和
加入每一个定义的其它成员作为所述第二集群的成员;并且
当定义的故障转移条件被满足时,将连通性从所述活动的第一集群故障转移到所述第二集群,以使得所述第二集群变为活动集群。
CN200980132379.9A 2008-08-18 2009-08-18 更新网络流量管理设备同时维持有效性 Expired - Fee Related CN102124697B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8983908P 2008-08-18 2008-08-18
US61/089,839 2008-08-18
PCT/US2009/054222 WO2010022100A2 (en) 2008-08-18 2009-08-18 Upgrading network traffic management devices while maintaining availability

Publications (2)

Publication Number Publication Date
CN102124697A CN102124697A (zh) 2011-07-13
CN102124697B true CN102124697B (zh) 2014-08-27

Family

ID=41682108

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980132379.9A Expired - Fee Related CN102124697B (zh) 2008-08-18 2009-08-18 更新网络流量管理设备同时维持有效性

Country Status (5)

Country Link
US (2) US8209403B2 (zh)
EP (1) EP2316194B1 (zh)
JP (1) JP5571667B2 (zh)
CN (1) CN102124697B (zh)
WO (1) WO2010022100A2 (zh)

Families Citing this family (198)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060167838A1 (en) * 2005-01-21 2006-07-27 Z-Force Communications, Inc. File-based hybrid file storage scheme supporting multiple file switches
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
WO2008147973A2 (en) 2007-05-25 2008-12-04 Attune Systems, Inc. Remote file virtualization in a switched file system
US8209403B2 (en) 2008-08-18 2012-06-26 F5 Networks, Inc. Upgrading network traffic management devices while maintaining availability
US20100107154A1 (en) * 2008-10-16 2010-04-29 Deepak Brahmavar Method and system for installing an operating system via a network
US8010648B2 (en) * 2008-10-24 2011-08-30 Microsoft Corporation Replica placement in a distributed storage system
US8108503B2 (en) * 2009-01-14 2012-01-31 International Business Machines Corporation Dynamic load balancing between chassis in a blade center
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US8589535B2 (en) * 2009-10-26 2013-11-19 Microsoft Corporation Maintaining service performance during a cloud upgrade
US8108734B2 (en) 2009-11-02 2012-01-31 International Business Machines Corporation Intelligent rolling upgrade for data storage systems
US8452835B2 (en) * 2009-12-23 2013-05-28 Citrix Systems, Inc. Systems and methods for object rate limiting in multi-core system
US9195500B1 (en) 2010-02-09 2015-11-24 F5 Networks, Inc. Methods for seamless storage importing and devices thereof
CN101808009B (zh) * 2010-03-08 2014-01-01 中兴通讯股份有限公司 一种网络设备升级的方法和***
JP5636703B2 (ja) * 2010-03-11 2014-12-10 沖電気工業株式会社 ブレードサーバ
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US9806906B2 (en) 2010-06-08 2017-10-31 Brocade Communications Systems, Inc. Flooding packets on a per-virtual-network basis
US9628293B2 (en) 2010-06-08 2017-04-18 Brocade Communications Systems, Inc. Network layer multicasting in trill networks
US9608833B2 (en) 2010-06-08 2017-03-28 Brocade Communications Systems, Inc. Supporting multiple multicast trees in trill networks
US9141625B1 (en) * 2010-06-22 2015-09-22 F5 Networks, Inc. Methods for preserving flow state during virtual machine migration and devices thereof
US8856317B2 (en) * 2010-07-15 2014-10-07 Cisco Technology, Inc. Secure data transfer in a virtual environment
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
US8402454B2 (en) * 2010-09-22 2013-03-19 Telefonaktiebolaget L M Ericsson (Publ) In-service software upgrade on cards of virtual partition of network element that includes directing traffic away from cards of virtual partition
US8402453B2 (en) 2010-09-22 2013-03-19 Telefonaktiebolaget L M Ericsson (Publ) In-service software upgrade of control and line cards of network element
US9286298B1 (en) 2010-10-14 2016-03-15 F5 Networks, Inc. Methods for enhancing management of backup data sets and devices thereof
US8924498B2 (en) * 2010-11-09 2014-12-30 Honeywell International Inc. Method and system for process control network migration
US9325757B2 (en) * 2010-11-30 2016-04-26 Adello Inc. Methods and systems for fault-tolerant distributed stream processing
FR2976695B1 (fr) * 2011-06-17 2013-06-07 Bull Sas Procede, dispositif et programme d'ordinateur pour la mise a jour logicielle de clusters optimisant la disponibilite de ces derniers
US8959235B1 (en) * 2011-07-05 2015-02-17 Symantec Corporation Techniques for determining an optimal connection duration for a connection between a client and a server across a network
US9772784B2 (en) 2011-08-10 2017-09-26 Nutanix, Inc. Method and system for maintaining consistency for I/O operations on metadata distributed amongst nodes in a ring structure
US9736085B2 (en) 2011-08-29 2017-08-15 Brocade Communications Systems, Inc. End-to end lossless Ethernet in Ethernet fabric
US9286052B1 (en) * 2011-09-15 2016-03-15 Emc Corporation Upgrading software on a pair of nodes in a clustered environment
US9699117B2 (en) 2011-11-08 2017-07-04 Brocade Communications Systems, Inc. Integrated fibre channel support in an ethernet fabric switch
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
US20130124916A1 (en) * 2011-11-16 2013-05-16 Microsoft Corporation Layout of mirrored databases across different servers for failover
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US9020894B2 (en) * 2012-01-24 2015-04-28 Cisco Technology, Inc. Service version modification of a high-availability system
US9020912B1 (en) 2012-02-20 2015-04-28 F5 Networks, Inc. Methods for accessing data in a compressed file system and devices thereof
US10091138B2 (en) * 2012-02-21 2018-10-02 F5 Networks, Inc. In service upgrades for a hypervisor or hardware manager hosting virtual traffic managers
CN103257870A (zh) * 2012-02-21 2013-08-21 F5网络公司 用于管理程序或者硬件管理器的服务中升级
US9742693B2 (en) 2012-02-27 2017-08-22 Brocade Communications Systems, Inc. Dynamic service insertion in a fabric switch
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
US8885562B2 (en) 2012-03-28 2014-11-11 Telefonaktiebolaget L M Ericsson (Publ) Inter-chassis redundancy with coordinated traffic direction
US10277464B2 (en) 2012-05-22 2019-04-30 Arris Enterprises Llc Client auto-configuration in a multi-switch link aggregation
US9071537B2 (en) * 2012-06-15 2015-06-30 Citrix Systems, Inc. Systems and methods for propagating health of a cluster node
US8782632B1 (en) * 2012-06-18 2014-07-15 Tellabs Operations, Inc. Methods and apparatus for performing in-service software upgrade for a network device using system virtualization
US8949818B2 (en) 2012-06-29 2015-02-03 Intel Corporation Mechanism for facilitating dynamic and trusted cloud-based extension upgrades for computing systems
US8972964B2 (en) * 2012-07-26 2015-03-03 Unisys Corporation Dynamic firmware updating system for use in translated computing environments
US9038053B2 (en) * 2012-08-27 2015-05-19 Lenovo Enterprise Solutions (Singapore) Pte. Ltd Non-disruptive software updates for servers processing network traffic
CN102882970B (zh) * 2012-09-28 2015-07-29 广州杰赛科技股份有限公司 基于云计算平台保持主机资源稳定的方法
US8943490B1 (en) * 2012-09-28 2015-01-27 Juniper Networks, Inc. Intelligent non-stop software upgrade
US9519501B1 (en) 2012-09-30 2016-12-13 F5 Networks, Inc. Hardware assisted flow acceleration and L2 SMAC management in a heterogeneous distributed multi-tenant virtualized clustered system
KR101480293B1 (ko) * 2012-11-30 2015-01-12 주식회사 엘지씨엔에스 분산 파일시스템 처리 장치와 방법 및 이를 저장한 기록 매체
US9413691B2 (en) 2013-01-11 2016-08-09 Brocade Communications Systems, Inc. MAC address synchronization in a fabric switch
US9548926B2 (en) 2013-01-11 2017-01-17 Brocade Communications Systems, Inc. Multicast traffic load balancing over virtual link aggregation
WO2014107905A1 (zh) 2013-01-14 2014-07-17 华为技术有限公司 集群以及转发方法
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9407500B2 (en) * 2013-01-25 2016-08-02 Dell Products L.P. System and method for determining the configuration of switches in virtual link trunking environments
US10616049B2 (en) 2013-01-25 2020-04-07 Dell Products, L.P. System and method for determining the configuration of switches in virtual link trunking environments
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US9554418B1 (en) 2013-02-28 2017-01-24 F5 Networks, Inc. Device for topology hiding of a visited network
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
US20140258771A1 (en) 2013-03-06 2014-09-11 Fortinet, Inc. High-availability cluster architecture and protocol
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
CN104333511B (zh) 2013-07-22 2019-01-08 华为技术有限公司 确定业务传输路径的方法、装置及***
US9110838B2 (en) 2013-07-31 2015-08-18 Honeywell International Inc. Apparatus and method for synchronizing dynamic process data across redundant input/output modules
CN108541044B (zh) 2013-08-13 2019-12-24 华为终端有限公司 用于加入邻近感知网络设备群的方法及设备
EP3056996A4 (en) * 2013-10-08 2017-06-28 Sony Corporation Server device, client device, information processing method, and recording medium
US9374305B2 (en) * 2013-10-24 2016-06-21 Dell Products L.P. Packet transfer system
US9912612B2 (en) 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
GB2520343A (en) * 2013-11-19 2015-05-20 Ibm A system having a cluster of communication controllers and a method for modification of the latter
US10606718B1 (en) * 2013-12-19 2020-03-31 Amdocs Development Limited System, method, and computer program for managing fault recovery in network function virtualization (Nfv) based networks
CN103713925A (zh) * 2013-12-26 2014-04-09 北海创新科存储技术有限公司 避免存储阵列在升级过程的业务中断方法和装置
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US10020979B1 (en) 2014-03-25 2018-07-10 A10 Networks, Inc. Allocating resources in multi-core computing environments
US9806943B2 (en) * 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9720404B2 (en) 2014-05-05 2017-08-01 Honeywell International Inc. Gateway offering logical model mapped to independent underlying networks
WO2015172107A1 (en) 2014-05-09 2015-11-12 Nutanix, Inc. Mechanism for providing external access to a secured networked virtualization environment
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US9740472B1 (en) * 2014-05-15 2017-08-22 Nutanix, Inc. Mechanism for performing rolling upgrades in a networked virtualization environment
US9733958B2 (en) * 2014-05-15 2017-08-15 Nutanix, Inc. Mechanism for performing rolling updates with data unavailability check in a networked virtualization environment for storage management
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10019255B1 (en) * 2014-06-20 2018-07-10 Amazon Technologies, Inc. Incremental software deployment in a service environment
US10536526B2 (en) 2014-06-25 2020-01-14 Honeywell International Inc. Apparatus and method for virtualizing a connection to a node in an industrial control and automation system
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US10148485B2 (en) 2014-09-03 2018-12-04 Honeywell International Inc. Apparatus and method for on-process migration of industrial control and automation system across disparate network types
US9699029B2 (en) 2014-10-10 2017-07-04 Brocade Communications Systems, Inc. Distributed configuration management in a switch group
CN104320464B (zh) * 2014-10-27 2017-10-10 华为技术有限公司 分布式集群重配方法和装置
US9838477B2 (en) 2014-10-30 2017-12-05 Netapp, Inc. Techniques for storing and distributing metadata among nodes in a storage cluster system
US9628407B2 (en) * 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Multiple software versions in a switch group
US9626255B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Online restoration of a switch snapshot
EP3241309B1 (en) * 2014-12-31 2020-04-01 F5 Networks, Inc Overprovisioning floating ip addresses to provide stateful ecmp for traffic groups
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
US10642507B2 (en) 2015-01-30 2020-05-05 Nutanix, Inc. Pulsed leader consensus management
US9807005B2 (en) 2015-03-17 2017-10-31 Brocade Communications Systems, Inc. Multi-fabric manager
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10162827B2 (en) 2015-04-08 2018-12-25 Honeywell International Inc. Method and system for distributed control system (DCS) process data cloning and migration through secured file system
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10409270B2 (en) 2015-04-09 2019-09-10 Honeywell International Inc. Methods for on-process migration from one type of process control device to different type of process control device
WO2017019108A1 (en) * 2015-07-30 2017-02-02 Hewlett Packard Enterprise Development Lp Firmware update of an interconnect device
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
US10656929B2 (en) * 2015-08-11 2020-05-19 International Business Machines Corporation Autonomously healing microservice-based applications
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9836368B2 (en) * 2015-10-22 2017-12-05 Netapp, Inc. Implementing automatic switchover
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
US10318288B2 (en) 2016-01-13 2019-06-11 A10 Networks, Inc. System and method to process a chain of network applications
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US9781122B1 (en) 2016-05-11 2017-10-03 Oracle International Corporation Multi-tenant identity and data security management cloud service
US10454940B2 (en) 2016-05-11 2019-10-22 Oracle International Corporation Identity cloud service authorization model
US10581820B2 (en) 2016-05-11 2020-03-03 Oracle International Corporation Key generation and rollover
US9838377B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Task segregation in a multi-tenant identity and data security management cloud service
US10425386B2 (en) 2016-05-11 2019-09-24 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US9838376B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Microservices based multi-tenant identity and data security management cloud service
US10878079B2 (en) 2016-05-11 2020-12-29 Oracle International Corporation Identity cloud service authorization model with dynamic roles and scopes
US11218418B2 (en) 2016-05-20 2022-01-04 Nutanix, Inc. Scalable leadership election in a multi-processing computing environment
US10001983B2 (en) * 2016-07-27 2018-06-19 Salesforce.Com, Inc. Rolling version update deployment utilizing dynamic node allocation
US10263947B2 (en) 2016-08-05 2019-04-16 Oracle International Corporation LDAP to SCIM proxy service
US10721237B2 (en) 2016-08-05 2020-07-21 Oracle International Corporation Hierarchical processing for a virtual directory system for LDAP to SCIM proxy service
US10735394B2 (en) 2016-08-05 2020-08-04 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US10516672B2 (en) 2016-08-05 2019-12-24 Oracle International Corporation Service discovery for a multi-tenant identity and data security management cloud service
US10255061B2 (en) 2016-08-05 2019-04-09 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US10530578B2 (en) 2016-08-05 2020-01-07 Oracle International Corporation Key store service
US10585682B2 (en) 2016-08-05 2020-03-10 Oracle International Corporation Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10289400B2 (en) 2016-09-07 2019-05-14 Amplidata N.V. Outdated resource handling and multiple-version upgrade of cloud software
US10846390B2 (en) 2016-09-14 2020-11-24 Oracle International Corporation Single sign-on functionality for a multi-tenant identity and data security management cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10511589B2 (en) 2016-09-14 2019-12-17 Oracle International Corporation Single logout functionality for a multi-tenant identity and data security management cloud service
CN109565511B (zh) 2016-09-16 2021-06-29 甲骨文国际公司 用于多租户身份和数据安全管理云服务的租户和服务管理
US10445395B2 (en) 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10484243B2 (en) 2016-09-16 2019-11-19 Oracle International Corporation Application management for a multi-tenant identity cloud service
US10567364B2 (en) 2016-09-16 2020-02-18 Oracle International Corporation Preserving LDAP hierarchy in a SCIM directory using special marker groups
US10341354B2 (en) 2016-09-16 2019-07-02 Oracle International Corporation Distributed high availability agent architecture
US10791087B2 (en) 2016-09-16 2020-09-29 Oracle International Corporation SCIM to LDAP mapping using subtype attributes
US10904074B2 (en) 2016-09-17 2021-01-26 Oracle International Corporation Composite event handler for a multi-tenant identity cloud service
US10362092B1 (en) 2016-10-14 2019-07-23 Nutanix, Inc. Entity management in distributed systems
US10530815B2 (en) * 2016-10-24 2020-01-07 Nubeva, Inc. Seamless service updates for cloud-based security services
US10412198B1 (en) 2016-10-27 2019-09-10 F5 Networks, Inc. Methods for improved transmission control protocol (TCP) performance visibility and devices thereof
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
US11063758B1 (en) 2016-11-01 2021-07-13 F5 Networks, Inc. Methods for facilitating cipher selection and devices thereof
US10389835B2 (en) 2017-01-10 2019-08-20 A10 Networks, Inc. Application aware systems and methods to process user loadable network applications
CN107707595B (zh) * 2017-03-17 2018-06-15 贵州白山云科技有限公司 一种成员组变更方法及装置
US10261836B2 (en) 2017-03-21 2019-04-16 Oracle International Corporation Dynamic dispatching of workloads spanning heterogeneous services
US10454915B2 (en) 2017-05-18 2019-10-22 Oracle International Corporation User authentication using kerberos with identity cloud service
US10401816B2 (en) 2017-07-20 2019-09-03 Honeywell International Inc. Legacy control functions in newgen controllers alongside newgen control functions
US10348858B2 (en) 2017-09-15 2019-07-09 Oracle International Corporation Dynamic message queues for a microservice based cloud service
US10831789B2 (en) 2017-09-27 2020-11-10 Oracle International Corporation Reference attribute query processing for a multi-tenant cloud service
US10834137B2 (en) 2017-09-28 2020-11-10 Oracle International Corporation Rest-based declarative policy management
US11271969B2 (en) 2017-09-28 2022-03-08 Oracle International Corporation Rest-based declarative policy management
US10705823B2 (en) 2017-09-29 2020-07-07 Oracle International Corporation Application templates and upgrade framework for a multi-tenant identity cloud service
US11223689B1 (en) 2018-01-05 2022-01-11 F5 Networks, Inc. Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US11102060B2 (en) * 2018-01-31 2021-08-24 Hewlett Packard Enterprise Development Lp Identification of a soft failure at a member
US10931656B2 (en) 2018-03-27 2021-02-23 Oracle International Corporation Cross-region trust for a multi-tenant identity cloud service
US10798165B2 (en) 2018-04-02 2020-10-06 Oracle International Corporation Tenant data comparison for a multi-tenant identity cloud service
US11165634B2 (en) 2018-04-02 2021-11-02 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
US11258775B2 (en) 2018-04-04 2022-02-22 Oracle International Corporation Local write for a multi-tenant identity cloud service
US10506072B2 (en) 2018-04-24 2019-12-10 F5 Networks, Inc. Passing listener sockets between web server processes
US11042424B1 (en) 2018-04-24 2021-06-22 F5 Networks, Inc. Pipelined request processing using shared memory
US11012444B2 (en) 2018-06-25 2021-05-18 Oracle International Corporation Declarative third party identity provider integration for a multi-tenant identity cloud service
KR102527868B1 (ko) * 2018-06-28 2023-05-02 삼성전자주식회사 Nan 프로토콜에 기반한 네트워크 환경에서 데이터 통신을 위한 장치 및 방법
US10764273B2 (en) 2018-06-28 2020-09-01 Oracle International Corporation Session synchronization across multiple devices in an identity cloud service
US11194680B2 (en) 2018-07-20 2021-12-07 Nutanix, Inc. Two node clusters recovery on a failure
US10693723B2 (en) 2018-07-23 2020-06-23 Hewlett Packard Enterprise Development Lp Network upgrades
US11693835B2 (en) 2018-10-17 2023-07-04 Oracle International Corporation Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service
US11321187B2 (en) 2018-10-19 2022-05-03 Oracle International Corporation Assured lazy rollback for a multi-tenant identity cloud service
US11770447B2 (en) 2018-10-31 2023-09-26 Nutanix, Inc. Managing high-availability file servers
US11651357B2 (en) 2019-02-01 2023-05-16 Oracle International Corporation Multifactor authentication without a user footprint
US11061929B2 (en) 2019-02-08 2021-07-13 Oracle International Corporation Replication of resource type and schema metadata for a multi-tenant identity cloud service
US11321343B2 (en) 2019-02-19 2022-05-03 Oracle International Corporation Tenant replication bootstrap for a multi-tenant identity cloud service
US11669321B2 (en) 2019-02-20 2023-06-06 Oracle International Corporation Automated database upgrade for a multi-tenant identity cloud service
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
CN110572284B (zh) * 2019-08-30 2022-05-13 华为云计算技术有限公司 一种虚拟网元的升级方法、装置及***
US11150886B2 (en) 2019-09-03 2021-10-19 Microsoft Technology Licensing, Llc Automatic probabilistic upgrade of tenant devices
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11586500B2 (en) 2019-09-23 2023-02-21 SK Hynix Inc. Processing-in-memory (PIM) devices
US20210306006A1 (en) 2019-09-23 2021-09-30 SK Hynix Inc. Processing-in-memory (pim) devices
US11586494B2 (en) 2019-09-23 2023-02-21 SK Hynix Inc. Processing-in-memory (PIM) devices
KR20210034999A (ko) * 2019-09-23 2021-03-31 에스케이하이닉스 주식회사 Aim 장치 및 aim 장치에서의 곱셈-누산 연산 방법
US11611548B2 (en) 2019-11-22 2023-03-21 Oracle International Corporation Bulk multifactor authentication enrollment
US11768809B2 (en) 2020-05-08 2023-09-26 Nutanix, Inc. Managing incremental snapshots for fast leader node bring-up
US11509766B2 (en) 2020-11-23 2022-11-22 Motorola Solutions, Inc. Method and system to seamlessly upgrade audio services
US11304035B1 (en) 2020-11-23 2022-04-12 Motorola Solutions, Inc. Method and system to seamlessly upgrade cloud-based call processing services
US20230315437A1 (en) * 2022-04-01 2023-10-05 Dell Products, L.P. Systems and methods for performing power suppy unit (psu) firmware updates without interrupting a user's datapath

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996253A (zh) * 2006-01-03 2007-07-11 国际商业机器公司 不间断更新冗余硬件控制器上的固件的装置、***和方法
CN101206621A (zh) * 2006-12-19 2008-06-25 国际商业机器公司 迁移无状态虚拟功能的***和方法

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5469542A (en) * 1991-07-22 1995-11-21 International Business Machines Corporation Serial diagnostic interface bus for multiprocessor systems
JP3581765B2 (ja) * 1996-09-20 2004-10-27 株式会社日立コミュニケーションテクノロジー 複合リング形ネットワークシステムにおけるパス切替方法及び装置
US6112249A (en) * 1997-05-30 2000-08-29 International Business Machines Corporation Non-disruptively rerouting network communications from a secondary network path to a primary path
US6044461A (en) * 1997-09-16 2000-03-28 International Business Machines Corporation Computer system and method of selectively rebooting the same in response to a system program code update
US20010052084A1 (en) * 1998-11-10 2001-12-13 Jiandoug Huang Apparatus and methods for providing fault tolerance of networks and network interface cards
US6078957A (en) * 1998-11-20 2000-06-20 Network Alchemy, Inc. Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system
US6006259A (en) * 1998-11-20 1999-12-21 Network Alchemy, Inc. Method and apparatus for an internet protocol (IP) network clustering system
US6813242B1 (en) * 1999-05-07 2004-11-02 Lucent Technologies Inc. Method of and apparatus for fast alternate-path rerouting of labeled data packets normally routed over a predetermined primary label switched path upon failure or congestion in the primary path
US6324692B1 (en) * 1999-07-28 2001-11-27 Data General Corporation Upgrade of a program
US6779176B1 (en) * 1999-12-13 2004-08-17 General Electric Company Methods and apparatus for updating electronic system programs and program blocks during substantially continued system execution
US6757836B1 (en) * 2000-01-10 2004-06-29 Sun Microsystems, Inc. Method and apparatus for resolving partial connectivity in a clustered computing system
US6681389B1 (en) * 2000-02-28 2004-01-20 Lucent Technologies Inc. Method for providing scaleable restart and backout of software upgrades for clustered computing
US6691244B1 (en) * 2000-03-14 2004-02-10 Sun Microsystems, Inc. System and method for comprehensive availability management in a high-availability computer system
US6854069B2 (en) * 2000-05-02 2005-02-08 Sun Microsystems Inc. Method and system for achieving high availability in a networked computer system
US6976071B1 (en) * 2000-05-03 2005-12-13 Nortel Networks Limited Detecting if a secure link is alive
US6725261B1 (en) * 2000-05-31 2004-04-20 International Business Machines Corporation Method, system and program products for automatically configuring clusters of a computing environment
US6763479B1 (en) * 2000-06-02 2004-07-13 Sun Microsystems, Inc. High availability networking with alternate pathing failover
JP2002049502A (ja) * 2000-08-01 2002-02-15 Fujitsu Ltd 複数プロセッサシステムにおけるアップデート方式
JP2004519024A (ja) * 2000-09-08 2004-06-24 ゴー アヘッド ソフトウェア インコーポレイテッド 多数のノードを含むクラスタを管理するためのシステム及び方法
US6802021B1 (en) * 2001-01-23 2004-10-05 Adaptec, Inc. Intelligent load balancing for a multi-path storage system
EP1231537A1 (de) * 2001-02-09 2002-08-14 Siemens Aktiengesellschaft Automatische Inbetriebnahme eines Clustersystems nach einem heilbaren Fehler
US20020112232A1 (en) * 2001-02-15 2002-08-15 Ream James A. System and process for building host computers
US6883108B2 (en) * 2001-05-07 2005-04-19 Sun Microsystems, Inc. Fault-tolerant routing scheme for a multi-path interconnection fabric in a storage network
US20030149735A1 (en) * 2001-06-22 2003-08-07 Sun Microsystems, Inc. Network and method for coordinating high availability system services
US6947752B2 (en) * 2001-12-31 2005-09-20 Samsung Electronics Co., Ltd. System and method for distributed call processing using load sharing groups
US7165250B2 (en) * 2002-01-15 2007-01-16 International Business Machines Corporation System and method for priority based application server updates
EP1509753A2 (en) * 2002-05-09 2005-03-02 Euro-Celtique, S.A. Spectroscopic analyzer for blender
US7020706B2 (en) * 2002-06-17 2006-03-28 Bmc Software, Inc. Method and system for automatically updating multiple servers
US7124320B1 (en) * 2002-08-06 2006-10-17 Novell, Inc. Cluster failover via distributed configuration repository
US7307948B2 (en) * 2002-10-21 2007-12-11 Emulex Design & Manufacturing Corporation System with multiple path fail over, fail back and load balancing
US7620040B2 (en) * 2002-12-11 2009-11-17 Aspen Networks, Inc. Application non disruptive task migration in a network edge switch
US7222256B2 (en) * 2002-12-31 2007-05-22 Honeywell International Inc. System and method for controlling redundant communication links in networked safety systems
US7590683B2 (en) * 2003-04-18 2009-09-15 Sap Ag Restarting processes in distributed applications on blade servers
US7260737B1 (en) * 2003-04-23 2007-08-21 Network Appliance, Inc. System and method for transport-level failover of FCP devices in a cluster
US7076645B2 (en) 2003-06-25 2006-07-11 Nokia Inc. Method of rebooting a multi-device cluster while maintaining cluster operation
US6968401B2 (en) * 2003-06-26 2005-11-22 International Business Machines Corporation Method, system, and program for maintaining and swapping paths in an MPIO environment
JP4420275B2 (ja) * 2003-11-12 2010-02-24 株式会社日立製作所 フェイルオーバクラスタシステム及びフェイルオーバクラスタシステムを用いたプログラムのインストール方法
US20050125557A1 (en) * 2003-12-08 2005-06-09 Dell Products L.P. Transaction transfer during a failover of a cluster controller
US7257731B2 (en) * 2003-12-23 2007-08-14 Nokia Inc. System and method for managing protocol network failures in a cluster system
JP4870915B2 (ja) * 2004-07-15 2012-02-08 株式会社日立製作所 ストレージ装置
US20060095903A1 (en) * 2004-09-25 2006-05-04 Cheam Chee P Upgrading a software component
JP4275700B2 (ja) * 2004-10-12 2009-06-10 富士通株式会社 リソース交換処理プログラムおよびリソース交換処理方法
US20060130042A1 (en) 2004-12-15 2006-06-15 Dias Daniel M Method and apparatus for dynamic application upgrade in cluster and grid systems for supporting service level agreements
US7729350B2 (en) * 2004-12-30 2010-06-01 Nokia, Inc. Virtual multicast routing for a cluster having state synchronization
JP2007219571A (ja) * 2006-02-14 2007-08-30 Hitachi Ltd 記憶制御装置及びストレージシステム
US7818740B2 (en) * 2006-05-05 2010-10-19 Microsoft Corporation Techniques to perform gradual upgrades
US7870559B2 (en) * 2007-03-27 2011-01-11 International Business Machines Corporation Methods, systems, and computer program products for continuous availability of non-persistence messages in a distributed platform
US8521853B2 (en) * 2007-06-29 2013-08-27 Alcatel Lucent Apparatus and method for server network management to provide zero planned retrofit downtime
US20090144720A1 (en) * 2007-11-30 2009-06-04 Sun Microsystems, Inc. Cluster software upgrades
US8209403B2 (en) 2008-08-18 2012-06-26 F5 Networks, Inc. Upgrading network traffic management devices while maintaining availability

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996253A (zh) * 2006-01-03 2007-07-11 国际商业机器公司 不间断更新冗余硬件控制器上的固件的装置、***和方法
CN101206621A (zh) * 2006-12-19 2008-06-25 国际商业机器公司 迁移无状态虚拟功能的***和方法

Also Published As

Publication number Publication date
EP2316194A2 (en) 2011-05-04
WO2010022100A3 (en) 2010-04-22
WO2010022100A2 (en) 2010-02-25
EP2316194A4 (en) 2013-08-28
JP2012500442A (ja) 2012-01-05
US8438253B2 (en) 2013-05-07
JP5571667B2 (ja) 2014-08-13
US20100042869A1 (en) 2010-02-18
US8209403B2 (en) 2012-06-26
EP2316194B1 (en) 2015-02-25
US20130047026A1 (en) 2013-02-21
CN102124697A (zh) 2011-07-13

Similar Documents

Publication Publication Date Title
CN102124697B (zh) 更新网络流量管理设备同时维持有效性
KR102014433B1 (ko) 미들웨어 머신 환경에서 기능이 저하된 팻-트리들을 디스커버링 및 라우팅하는 것을 지원하는 시스템 및 방법
TW201408002A (zh) 超管理器或硬體管理器主機代管虛擬流量管理器之使用中升級
CN105743692A (zh) 用于应用管理的基于策略的框架
JP2011160171A (ja) インタフェース制御方式、インタフェース制御方法、及びインタフェース制御用プログラム
Zhang et al. Joint NFV placement and routing for multicast service on SDN
WO2013066604A1 (en) Control and provisioning in a data center network with at least one central controller
US11403319B2 (en) High-availability network device database synchronization
CN109462511B (zh) 网络的建立方法及装置
US20160088578A1 (en) Link layer discovery protocol (lldp) on multiple nodes of a distributed fabric
CN104468791A (zh) 私有云IaaS平台的构建方法
EP2353256A1 (fr) Determination et gestion de reseaux virtuels
EP4005187B1 (en) Peer discovery process for disconnected nodes in a software defined network
FR2948247A1 (fr) Procede et systeme pour la gestion performante et automatisee de reseaux virtuels.
WO2012087365A1 (en) Activate attribute for service profiles in unified computing system
CN101461196A (zh) 在本地节点运行中断期间不间断的网络控制消息生成
US7716320B2 (en) Method and apparatus for persisting SNMP MIB integer indexes across multiple network elements
Quttoum Interconnection Structures, Management and Routing Challenges in Cloud-Service Data Center Networks: A Survey.
Fajjari et al. Towards an autonomic piloting virtual network architecture
CN114363164B (zh) 云网络服务编排控制方法、***、存储介质和电子设备
Alomari et al. On Ensuring Full Yet Cost-Efficient Survivability of Service Function Chains in NFV Environments
JP7404403B2 (ja) オーケストレーションプレーンを使用するシームレスなマルチクラウドsdwanディザスタリカバリ
Tate et al. IBM b-type Data Center Networking: Design and Best Practices Introduction
US20220150105A1 (en) Selective disaggregation advertisement for routing in multi-plane topologies
Sierszeń et al. Software-Defined Automatization of Virtual Local Area Network Load Balancing in a Virtual Environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140827

Termination date: 20170818