CN101399701B - 利用元数据驱动状态转换的在服务软件升级 - Google Patents

利用元数据驱动状态转换的在服务软件升级 Download PDF

Info

Publication number
CN101399701B
CN101399701B CN2008100877840A CN200810087784A CN101399701B CN 101399701 B CN101399701 B CN 101399701B CN 2008100877840 A CN2008100877840 A CN 2008100877840A CN 200810087784 A CN200810087784 A CN 200810087784A CN 101399701 B CN101399701 B CN 101399701B
Authority
CN
China
Prior art keywords
new
card
network element
software
active state
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
CN2008100877840A
Other languages
English (en)
Other versions
CN101399701A (zh
Inventor
T·J·林奇
S·R·莫尔多克
C·S·道特
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.)
Erisson
Original Assignee
Ericsson AB
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 Ericsson AB filed Critical Ericsson AB
Publication of CN101399701A publication Critical patent/CN101399701A/zh
Application granted granted Critical
Publication of CN101399701B publication Critical patent/CN101399701B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

描述了一种用于网络元件的元数据驱动升级的方法和设备。网络元件包括活动控制器卡和备份控制器卡,并且接收用来安装在所述网络元件上的新软件。另外,所述网络元件将所述软件安装在备份控制器卡上,并且同步所述备份控制器上的网络元件的活动状态。更进一步,所述网络元件使用一套与所述新软件相关的元数据将所述活动状态转换成与新软件相关的新的活动状态。

Description

利用元数据驱动状态转换的在服务软件升级
相关申请的交叉引用
本申请要求2007年9月27日提交的名为“IN-SERVICE SOFTWAREUPGRADE UTILIZING METADATA-DRIVEN STATE TRANSLATION”的美国临时专利申请60/995,882的优先权。
技术领域
本发明的实施涉及计算机网络领域,更具体涉及利用元数据状态转换来升级网络元件。
背景技术
服务提供商网络中的网络元件通常处理来自用户访问一些不同的服务和/或与其他用户进行通信的大量数据通信。例如,网络元件能够处理针对数万用户的服务。网络元件操作中的中断能够引起提供给这数万用户的服务的中断。
图1示出了服务提供商网络100的一个实施方式,所述服务提供商网络100具有通过网络来转发终端站和内容服务器之间通信的网络元件。虽然在一个实施方式中,网络元件是路由器,但在可替换的实施方式中,网络元件可以是本领域所知的其他网络设备(交换器、集线器、防火墙等)。此外,虽然在一个实施方式中,网络元件转发通信,但在可替换的实施方式中,网络能够执行相同的和/或不同的通信处理(切换通信、形成通信、平滑通信、应用接入控制、应用防火墙策略等)。在图1,网络100包括终端站102A-C、网络元件104、核心网络106、和内容服务器108A-B。终端站102A-C与网络元件104相连接以及网络元件与内容服务器108A-B通过核心网络106相连接。虽然在一个实施方式中,终端站102A-C是家庭个人电脑,但在可替换的实施方式中,终端站可以是相同的或者不同类型的机器(例如,商务电脑、个人数字助理、手机、游戏控制台、手持游戏系统、笔记本电脑等)。终端站可以通过本领域所知的任何一种方式与网络元件相连(例如,以太网、无线电、数字用户线(DSL)、电缆调制解调器、光纤等)。网络元件104通过转发从终端站102A-C到内容服务器108A-B、从内容服务器108A-B到终端站102A-C的数据通信,以及终端站102A-C之间的数据通信,来提供进入核心网络106的入口点。虽然在一个实施方式中,网络元件104是转发为终端站102A-C服务的边缘网络和核心网络106之间的通信的边缘网络元件,但在可替换的实施方式中,网络元件104可以是不同地位于服务提供商的边缘网络和/或核心网络中的网络元件或者交换器。
核心网络106是网络提供商的中枢网络,该中枢网络通常具有处理通过网络100传输的大量通信的强大能力。内容服务器108A-B为提供给终端站102A-C的服务供应内容和/或控制信息。
网络元件104为所述大量的用户处理数据时,网络元件104建立起状态,该状态控制所述数据的处理。虽然在一个实施方式中,网络元件104建立的状态是通信转发表,但在可替换的实施方式中,建立的状态具有相同的和/或不同的信息(配置数据、使用会话信息、防火墙信息、接入控制列表、服务质量信息、统计数据等)。所述状态通常是运行时信息,该运行时间信息在网络元件104重启后不再存在。
网络元件周期性地接收对该网络元件的服务的软件升级。典型地,软件升级需要网络元件的重启,从而软件升级能够生效。然而重启使服务中断并且清除所建立的状态,因为该状态在重启后不再存在。即使网络元件的重启能够迅速地发生,所述状态的重建通常需要更长时间。所述状态的重建包括重新连接用户,重新建立转发表,用户会话信息等。
当网络元件有一个或者多个冗余控制器时,使用改进的软件升级方法,该方法被称为无间断(hitless)升级。例如,像网络元件104这样的具有两个或者多个控制器卡的网络元件能够利用无间断升级。无间断升级包括首先安装和初始化备份控制器或者备用控制器的新软件映像,将网络元件状态同步到备份控制器,将控制切换所述备份控制器,然后向其它网络元件部件驱动软件升级和状态恢复。在该算法中,备份控制器变成了网络元件的活动控制器,以前的活动控制器变成了备份控制器。
图2是包括有冗余控制器卡的网络元件200的框图。在图2中,底板206与线卡202A-N和控制器卡204A-B相连接。虽然在一个实施方式中,控制器卡204A-B通过线卡202A-N控制通信处理过程,但在可替换的实施方式中,控制器卡204A-B执行同样的和/或不同的功能(升级软件、处理操作请求、收集统计数据等)。线卡202A-N根据从控制器卡204A-B接收到的策略来处理和转发通信。
图3是活动控制卡向备份控制卡传递活动状态信息的框图。虽然在一个实施方式中,活动状态信息是如参考图1中所述的被网络元件104使用的状态,但在可替换的实施方式中,活动状态信息是被用来操作网络元件104的相同的和/或不同的信息。在图3中,活动控制卡302A向备份控制卡302B发送活动状态信息304。所述无间断升级算法使用活动状态信息来执行不中断通信处理的网络元件升级。
所述无间断升级的缺点是升级需要以期望的格式说明旧的映像和新的映像之间的不同,以及说明所述状态的语义内容。所述无间断升级算法要求所述新的软件映像包括精确格式的显性知识(explicit knowledge)和与运行所述旧的映像的控制器同步的状态数据的内容,或者要求数据以例如标签-长度-内容(TLV)这样的版本无关(version-independent)的格式传输。
发明内容
描述了一种用于网络元件的元数据驱动更新的方法和设备。网络元件包括活动控制器卡和备份控制器卡,并且接收将被安装在所述网络元件上的新软件。另外,所述网络元件将所述软件安装在备份控制器卡上并且同步该备份控制器卡上的网络元件的活动状态。此外,所述网络元件使用一套与所述新软件相关的元数据将所述活动状态转换成与所述新软件相关的新的活动状态。
附图说明
参考下面的描述和说明这些实施方式的附图,可以最好的理解本发明的实施方式。这里所包括的附图的编号安排是这样的,附图中所给出的元件的首位数字与该附图编号相关联。然而,不同附图中相同元件的元件编号相同。在附图中:
图1(现有技术)显示了网络元件通过网络来处理终端站和内容服务器之间通信的一个实施方式;
图2(现有技术)是具有有冗余控制器卡的网络元件的框图;
图3(现有技术)是活动控制卡向备份控制卡传送活动状态信息的框图;
图4是根据本系统的一个实施方式的显示点探测和处理系统的框图;
图5是根据本系统的一个实施方式的使用元数据状态转换来执行在服务升级的示例性流程图;
图6是根据本系统的一个实施方式的创建元数据的示例性流程图;
图7是根据本系统的一个实施方式的显示控制卡的框图。
具体实施方式
在下面描述中,为了对本发明提供更加透彻的理解,列出了大量特定细节,如网络元件、元数据、数据定义语言、活动状态信息、信息包、处理器卡、线卡、控制器卡、和系统元件的相互关系。然而,本领域的熟练技术人员会理解,不需要这些特定细节本发明也可以被实施。在其它实例中,为了不使本发明模糊难懂,没有详细显示控制结构、门级电路和全部的软件指令序列。根据所包括的描述,这些本领域的普通技术人员将能够在不存在不当过度实验的情况下实现适当的功能。
在说明书中对“一个实施方式”、“实施方式”、“示例性实施方式”等的参考,表示所述实施方式可以包括特定的特征、结构、或者特性,但是每个实施方式没有必要一定包括所述特定的特征、结构、或者特性。而且,这样的词语并非必须指同一个实施方式。更进一步地,当特定的特征、结构、或者特性和实施方式关联起来描述时,认为不论是否做出清楚的描述,在本领域技术人员的知识范围内能够将这些特征、结构、或者特性与其它实施方式联系起来。
在下面的描述和权利要求中,使用了术语“连接”和它的派生词。“连接”可以表示两个或者多个元件直接物理接触或者电接触,然而,“连接”还可以表示两个或者多个元件不是直接相互接触,但是仍然相互合作或者相互影响。现在参考图4-7对本发明的示例性实施方式进行描述。更具体地,将参考图4和图7的示例性实施方式对图5和图6中的流程图的操作进行描述。然而,应该理解,除了参考图4和图7所描述的实施方式外,本发明的其它实施方式也可以执行这些流程图的操作,并且参考图4和图7所描述的实施方式可以执行与参考这些流程图所讨论的这些操作不同的操作。
描述了使用元数据来升级网络元件的方法和设备。根据本发明的实施方式,所述网络元件使用了元数据,该元数据描述了由网络元件所维持的活动状态的域和结构。所述活动状态是由处于通信状态的网络元件所维持的信息,所述信息已经或者将要被网络元件处理。此外,所述活动状态是在网络元件重启后不再存在的信息。所述网络元件使用元数据将当前活动状态转换为支持与升级相关的新软件的活动状态。
图4是显示根据本系统的一个实施方式的网络元件软件升级系统的框图。虽然在一个实施方式中,所述软件是新的或者升级的网络元件操作系统。但在可替换的实施方式中,所述软件是一个或者多个新的和/或升级的网络元件所使用的服务。在图4中,活动控制卡418A向备份控制卡418B发送活动状态信息416。在一个实施方式中,活动控制卡418A和备份控制卡418B运行不同版本的软件。虽然在一个实施方式中,运行在备份控制卡418B上的软件是运行在活动控制卡418A上的软件的升级版,但在可替换的实施方式中,运行在控制卡418A-B上的软件版本可以是相同的和/或不同的软件。如图1中所述,活动状态信息416可以包括在运行时建立的动态状态。在一个实施方式中,活动状态信息是如上所述建立的状态。备份控制卡418B包括转换模块420,该转换模块420将来自运行在活动控制卡41gA上的软件映像的活动状态信息416转换成用于运行在备份控制卡418B上的升级的软件映像的格式。在一个实施方式中,转换模块420使用元数据404来进行活动状态信息416的转换,在可替换的实施方式中,转换模块使用相同的和/或不同的信息来进行活动状态的转换。
另外,在图4中,元数据404从数据定义语言(DDL)数据402中产生。虽然在一个实施方式中,元数据404以可扩展标记语言(XML)来定义,但是在可替换的实施方式中,元数据404以可替换的格式中(纯文本、专用格式等)来定义。此外,在一个实施方式中,元数据404是可扩展的和不依赖于版本的。在一个实施方式中,元数据404描述了活动状态信息416的结构和域。在该实施方式中,元数据404描述了每个活动状态信息416数据结构的构成域,包括该数据结构中的名称、类别、大小、和偏移量。在一个实施方式中,元数据404支持例如字符串、整数、实数、布尔值这样的数据类型,在可替换的实施方式中,元数据404支持相同的和/或其它的数据类型(枚举、常数、位掩码、类型定义等)。此外,可以使用所述数据类型在元数据404中定义数据结构。
虽然在一个实施方式中,所述DDL类似于编程语言C的数据定义,带有用于定义对数据变换和转换有用的信息的附加域和特征,但在可替换的实施方式中,所述DDL可以是支持定义数据类型和结构的其它语言(其它编程语言、XML、纯文本等)。
在一个实施方式中,DDL数据402数据,该数据包括描述了DDL格式的活动状态信息416的结构和域。在一个实施方式中,DDL数据被处理成源码头文件406。虽然在一个实施方式中,源码头文件406是C语言头文件,但在可替换的实施方式中,源码头文件406可以在不同的语言头文件中(C++、Pascal等)。在一个实施方式中,编译器410把源码408和源码头文件406编译到网络元件操作系统412中。虽然在一个实施方式中,软件412是操作网络元件的网络元件操作系统,包括控制网络元件的通信转发、处理、制作等功能的软件,但在另一个实施方式中,软件412是一个或者多个被网络元件使用的服务。如上所述,把软件412发送到备份控制卡418B来更新所述网络元件。
图5是根据本系统的一个实施方式使用元数据状态转换来执行在服务升级的方法500的示例性流程图。在图5中,在方框502中,方法500接收新软件映像。在一个实施方式中,所述网络元件接收所述新软件映像。
在方框504中,方法500在活动控制器卡上安装软件。在方框506中,方法500在备份控制器卡上安装软件。
在方框508中,方法500接收来自于所述活动控制器卡的新软件元数据。在一个实施方式中,如上面参考图4所描述的,所述接收的元数据是与新软件相关的活动状态信息416的结构和域,并且产生于DDL数据402。
在方框510中,方法500将备份控制器活动状态信息同步到活动控制器活动状态信息。在一个实施方式中,如上面参考图4所述的,方法500把来自于活动控制器卡418A的活动状态信息416发送到备份控制器卡418B。
在方框512中,方法500使用所述元数据自动地把与旧软件映像相关的活动状态转换成与新软件映像相关的新活动状态。在一个实施方式中,方法500将与旧软件相关的元数据和接收到的元数据进行比较,以形成两套元数据之间的差别。利用这些差别,方法500识别兼容于自动转换的域变化。方法500从当前活动状态向所述新活动状态传播已知域。通过图例举例说明,方法500通过将无符号整数域偏移合适数量的字节来存储新的字符串域,将包括一个无符号整数域的旧的活动状态数据结构A转换成包括十六位字符串域和相同的无符号整数域的新的活动状态数据结构A。方法500使用通用的元数据驱动转换程序,通过增加、删除、或重新安排数据结构中的域来处理新的元数据的数据结构中的域。另外,方法500可以给域分配默认值、增加域的大小、改变枚举定义、将域划分成子域等。这些减少了特定转换程序的数量,例如下面方框514中使用的类型。
在方框514中,方法500随意地手动转换在方框512中没有自动转换的旧的活动状态信息的部分。在一个实施方式中,方法500使用旧的元数据作输入来确定和执行任何所需的附加步骤以将旧的数据结构转换成新的数据结构。
在方框516中,方法500在转换过程中对变化的活动状态的检查点进行同步。在一个实施方式中,方法500通过检查点机制来监控转换过程。在该实施方式中,当所述数据被成功转换后,转换数据的方法500的每个部分会进行报告。在一个实施方式中,方法500等待,直到每个部分报告所述数据被成功传递和转换。
在方框518中,方法500将所述网络元件的控制从活动控制卡切换到备份控制卡。在该实施方式中,所述备份控制卡变成活动卡而以前的活动控制卡变成备份。在该实施方式中,方法500重启以前的活动控制卡,从而使以前的活动控制卡运行新的软件映像。另外,方法500对新的活动控制卡和新的备份控制卡之间的状态进行同步。通过图例举例说明,方法500把控制从控制器卡418A切换到控制器卡418B(如参考图4进行的描述)。方法500重启控制器卡418A从而使控制器卡418A运行新的映像。而且,方法500将控制器卡418B中的活动状态同步到控制器卡418A。
在方框520中,方法500升级线卡。在一个实施方式中,方法500使用新的软件映像来更新在每个线卡上的信息包处理器。方法500重新设定信息包处理器从而使信息包处理器使用与该信息包处理器相关的新软件。
图6是根据本系统的一个实施方式的用于创建元数据的方法600的示例性流程图。图6中,在方框602中,方法600以DDL来定义活动状态数据。在一个实施方式中,方法600定义如在上面图4中在方框402所描述的活动状态。在方框604中,方法600从所定义的状态数据创建元数据。在一个实施方式中,如参考图4进一步所述的,方法600通过解析以DDL所定义的状态来创建元数据。
在方框606中,方法600为所定义的状态数据创建头文件。在一个实施方式中,方法600创建如图4中所述的头文件。在方框608中,方法600根据头文件和软件代码来编译新软件。在一个实施方式中,如参考图4所述的,方法600根据头文件和软件代码来编译新软件。
图7是根据本发明的一个实施方式的显示控制器卡702的框图。在图7中,控制器卡702包括控制模块704、升级模块706、状态接收模块708、状态转换模块710、同步状态模块712、同步检查点模块714、新软件模块716、和线卡升级模块718。虽然在一个实施方式中,控制器卡702是控制器卡418A-B,但在可替换的实施方式中,控制器卡是控制器卡418A-B中的一者。控制模块704执行对控制器卡702的控制。升级模块706控制控制器卡702的网络元件软件升级过程。如图5的方框510中所述,状态元数据接收模块708接收新的元数据。如图的方框512中所述,状态转换模块710转换所接收的活动状态来支持所述新软件。在一个实施方式中,状态转换模块710是转换模块420。如图5的方框510中所述,同步状态模块712同步活动控制器卡和备份控制器卡之间的活动信息。如图5的方框516中所述,同步检查点模块714在活动状态转换过程中同步检查点。如图5的方框504和506中所述,新软件模块716为控制器卡接收和存储新软件。如图5的方框520中所述,线卡升级模块718升级线卡。
所述元数据驱动升级的执行是一个示例,而不作为限制。因而,具有其它体系结构配置的网络元件可以整合本发明的实施方式。可以整合本发明的实施方式的其它网络元件的实施例可以具有多个控制器卡或者具有单独一个整合元数据驱动在服务升级的功能的控制器卡。此外,分布于通信卡上的具有启发式和/或DPI点探测功能的网络元件可以整合本发明的实施方式。
包括在不同网络元件中的控制器卡204A-B和线卡202A-N包含有存储器、处理器和/或特定用途集成电路(ASIC)。所述存储器包括机器可读媒介,在所述机器可读媒介上存储了一套具有这里所述的一个或者全部方法的指令(例如软件)。软件可以完全地或者至少部分地位于所述存储器和/或所述处理器和/或ASIC内。出于本说明的目的,术语“机器可读媒介”应该指包括提供(例如,存储和/或发送)机器(例如计算机)可读的形式的信息的任何装置。例如,机器可读媒介包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储媒介;光存储媒介;闪存装置;电、光、声或者其它形式的传播信号(例如载波、红外信号、数字信号等);等等。
可替换实施方式
例如,虽然附图中的流程图显示了本发明的某些实施方式执行的操作的特定顺序,但应该理解所述顺序是示例性的(例如,可替换的实施方式可以以不同的顺序执行操作、合并某些操作、重复某些操作等)。
虽然根据一些实施方式描述了本发明,但本领域的技术人员可以认识到本发明并不局限于所述的实施方式,并且可以在所附的权利要求的精神和范围内进行修改和变换来实行。因而,所述描述被认为是举例说明性的而非限制性的。

Claims (14)

1.一种在网络元件上安装新软件的计算机化的方法,该方法包括:
接收待被安装在具有活动控制器卡和备份控制器卡的所述网络元件上的所述新软件,其中所述新软件包括新的一套元数据,所述新的一套元数据表示与所述新软件相关的活动状态的结构和域;
将所述新软件安装在所述备份控制卡上;
同步所述备份控制器卡上的所述网络元件的活动状态,其中所述活动状态与运行在所述网络元件上的当前软件相关;以及
使用所述新的一套元数据将所述活动状态转换成与所述新软件相关的新的活动状态。
2.根据权利要求1所述的计算机化的方法,其中所述新软件是网络元件操作系统和运行在所述网络元件上的服务中的一者。
3.根据权利要求1所述的计算机化的方法,其中所述转换进一步使用与运行在所述活动控制器卡上的旧的一套软件相关的旧的一套元数据。
4.根据权利要求1所述的计算机化的方法,该方法进一步包括:
将控制从所述活动控制器卡切换到所述备份控制器卡,这样,所述备份控制器卡变成新的活动控制器卡并且所述活动控制器卡变成新的备份控制器卡,其中所述新的活动控制器卡运行所述新软件;以及
在所述新的备份控制器卡上运行所述新软件。
5.根据权利要求1所述的计算机化的方法,其中所述转换支持向活动状态数据结构添加域、删除域、修改域、重排域、指定默认值、和改变枚举定义中的一者或者多者。
6.根据权利要求1所述的计算机化的方法,进一步包括从用数据定义语言定义的状态数据生成所述元数据。
7.一种在网络元件上安装新软件的计算机化的设备,该设备包括:
用于接收待被安装在具有活动控制器卡和备份控制器卡的所述网络元件上的所述新软件的装置,其中所述新软件包括新的一套元数据,所述新的一套元数据表示与所述新软件相关的活动状态的结构和域;
用于将所述新软件安装在所述备份控制卡上的装置;
用于同步所述备份控制器卡上的所述网络元件的活动状态的装置,其中所述活动状态与运行在所述网络元件上的当前软件相关;以及
用于使用所述新的一套元数据将所述活动状态转换成与所述新软件相关的新的活动状态的装置。
8.一种用于安装新软件的控制器卡,包括:
软件管理模块,用于接收待被安装在具有活动控制器卡和备份控制器卡的网络元件上的所述新软件,其中所述新软件包括新的一套元数据,所述新的一套元数据表示与所述新软件相关的活动状态的结构和域,并且其中所述软件管理模块还用于将所述新软件安装在所述备份控制卡上;
状态同步模块,用于同步所述备份控制器卡上的所述网络元件的活动状态,其中所述活动状态与运行在所述网络元件上的当前软件相关;以及
状态转换模块,用于使用所述新的一套元数据将所述活动状态转换成与所述新软件相关的新的活动状态。
9.根据权利要求8所述的控制器卡,其中所述新软件是网络元件操作系统和运行在所述网络元件上的服务中的一者。
10.根据权利要求8所述的控制器卡,其中所述状态转换模块还使用与运行在所述活动控制器卡上的旧的一套软件相关的旧的一套元数据。
11.根据权利要求8所述的控制器卡,其中所述状态转换模块支持向活动状态数据结构添加域、删除域、修改域、重排域、指定默认值、和改变枚举定义中的一者或者多者。
12.根据权利要求8所述的控制器卡,进一步包括控制模块,用于将控制从所述活动控制器卡切换到所述备份控制器卡,这样,所述备份控制器卡变成新的活动控制器卡并且所述活动控制器卡变成新的备份控制器卡,其中所述新的活动控制器卡运行所述新软件。
13.一种网络元件,包括:
活动控制器卡,用于控制所述网络元件的功能;
多个线卡,用于在所述活动控制器卡的控制下处理以及转发通信;
备份控制器卡,其中所述备份控制器卡被配置成:
接收待被安装在所述网络元件上的新软件,其中所述新软件包括新的一套元数据,所述新的一套元数据表示与所述新软件相关的活动状态的结构和域,
在所述备份控制器卡上安装所述新软件,
在所述备份控制器卡上同步所述网络元件的活动状态,其中所述活动状态与运行在所述网络元件上的当前软件相关,以及
使用所述新的一套元数据将所同步的活动状态转换成与所述新软件相关的新的活动状态。
14.根据权利要求13所述的网络元件,其中所述备份控制器卡被配置成将控制从所述活动控制器卡切换到所述备份控制器卡,这样,所述备份控制器卡变成新的活动控制器卡并且所述活动控制器卡变成新的备份控制器卡,其中所述新的活动控制器卡运行所述新软件,并且其中所述新的活动控制器卡被配置成使用与旧的软件相关的旧的一套元数据来转换所述活动状态。
CN2008100877840A 2007-09-27 2008-03-31 利用元数据驱动状态转换的在服务软件升级 Expired - Fee Related CN101399701B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US99588207P 2007-09-27 2007-09-27
US60/995,882 2007-09-27
US12/009,563 2008-01-18
US12/009,563 US8806472B2 (en) 2007-09-27 2008-01-18 In-service software upgrade utilizing metadata-driven state translation

Publications (2)

Publication Number Publication Date
CN101399701A CN101399701A (zh) 2009-04-01
CN101399701B true CN101399701B (zh) 2013-01-02

Family

ID=39493466

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100877840A Expired - Fee Related CN101399701B (zh) 2007-09-27 2008-03-31 利用元数据驱动状态转换的在服务软件升级

Country Status (6)

Country Link
US (2) US8806472B2 (zh)
EP (1) EP2042987A3 (zh)
KR (1) KR101473256B1 (zh)
CN (1) CN101399701B (zh)
CA (1) CA2626781A1 (zh)
SG (1) SG151153A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589904B2 (en) * 2009-08-10 2013-11-19 Symantec Corporation Systems and methods for updating a software product
US20110238402A1 (en) 2010-03-23 2011-09-29 Fujitsu Limited System and methods for remote maintenance in an electronic network with multiple clients
US8533668B2 (en) * 2010-04-26 2013-09-10 Red Hat, Inc. Comparing source code using code statement structures
US8799422B1 (en) 2010-08-16 2014-08-05 Juniper Networks, Inc. In-service configuration upgrade using virtual machine instances
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
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
JP5655677B2 (ja) * 2011-04-04 2015-01-21 富士通株式会社 ハイパーバイザ置き換え方法および情報処理装置
EP2715973A4 (en) * 2011-05-25 2015-03-18 Hewlett Packard Development Co IMPLEMENTING NETWORK DEVICE COMPONENTS IN NETWORK DEVICES
US20130019235A1 (en) * 2011-07-11 2013-01-17 Salesforce.Com, Inc. Mechanism for facilitating management of metadata and metada-based update of software
US9021459B1 (en) 2011-09-28 2015-04-28 Juniper Networks, Inc. High availability in-service software upgrade using virtual machine instances in dual control units of a network device
US8806266B1 (en) 2011-09-28 2014-08-12 Juniper Networks, Inc. High availability using full memory replication between virtual machine instances on a network device
KR101850817B1 (ko) 2011-11-17 2018-04-23 삼성전자주식회사 서로 다른 단말에 어플리케이션을 자동으로 설치하는 장치 및 방법
EP2639660A1 (en) * 2012-03-16 2013-09-18 Siemens Aktiengesellschaft Method and system for controller transition
US8885562B2 (en) 2012-03-28 2014-11-11 Telefonaktiebolaget L M Ericsson (Publ) Inter-chassis redundancy with coordinated traffic direction
US9264449B1 (en) * 2012-05-01 2016-02-16 Amazon Technologies, Inc. Automatic privilege determination
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
US8943489B1 (en) * 2012-06-29 2015-01-27 Juniper Networks, Inc. High availability in-service software upgrade using virtual machine instances in dual computing appliances
US8943490B1 (en) * 2012-09-28 2015-01-27 Juniper Networks, Inc. Intelligent non-stop software upgrade
CN102937925B (zh) * 2012-11-01 2015-08-12 中兴通讯股份有限公司 一种分布式通信设备软件升级方法及系统
CN102968357B (zh) * 2012-11-01 2015-09-16 中兴通讯股份有限公司 一种分布式通信设备软件升级方法及系统
ES2718385T3 (es) 2015-02-18 2019-07-01 Huawei Tech Co Ltd Actualización de una función de red móvil
US10838711B2 (en) 2018-09-20 2020-11-17 Mellanox Technologies Tlv Ltd. In-service software/firmware update
CN111752752B (zh) * 2020-05-28 2022-07-19 苏州浪潮智能科技有限公司 一种基于Spark流计算框架的消息容错方法及系统
US11741232B2 (en) 2021-02-01 2023-08-29 Mellanox Technologies, Ltd. Secure in-service firmware update

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1182847A1 (en) * 2000-03-28 2002-02-27 Matsushita Electric Industrial Co., Ltd. Communication control device and control method

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6069895A (en) * 1997-08-29 2000-05-30 Nortel Networks Corporation Distributed route server
US6836885B1 (en) * 1998-09-21 2004-12-28 Wyse Technology Inc. Method and apparatus for display of windowing application programs on a terminal
JP3674351B2 (ja) * 1999-01-08 2005-07-20 富士通株式会社 マスタサーバ
US6880086B2 (en) * 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
US7225244B2 (en) * 2000-05-20 2007-05-29 Ciena Corporation Common command interface
US20030120822A1 (en) * 2001-04-19 2003-06-26 Langrind Nicholas A. Isolated control plane addressing
US7693976B2 (en) * 2000-07-11 2010-04-06 Ciena Corporation Granular management of network resources
JP2002049502A (ja) * 2000-08-01 2002-02-15 Fujitsu Ltd 複数プロセッサシステムにおけるアップデート方式
US20020124245A1 (en) * 2000-08-14 2002-09-05 Alvin Maddux Method and apparatus for advanced software deployment
US6910148B1 (en) * 2000-12-07 2005-06-21 Nokia, Inc. Router and routing protocol redundancy
US20020147974A1 (en) * 2001-02-09 2002-10-10 Wookey Michael J. Networked installation system for deploying systems management platforms
US7516441B2 (en) * 2001-06-04 2009-04-07 Microsoft Corporation Method and system for program editing and debugging in a common language runtime environment
US20030005426A1 (en) * 2001-06-08 2003-01-02 Scholtens Dale A. Methods and apparatus for upgrading software without affecting system service
US7320126B2 (en) * 2001-11-06 2008-01-15 Sandisk Corporation Implementation of in system programming to update firmware on memory cards
US7739393B2 (en) * 2002-01-28 2010-06-15 Cisco Technology, Inc. Apparatus and method for restoring traffic during failover in a cable head end
DE60215910T2 (de) 2002-02-12 2007-04-12 Alcatel Verfahren zur Bestimmung einer aktiven oder passiven Rollenzuteilung für ein Netzelementsteuerungsmittel
JP4022081B2 (ja) 2002-02-26 2007-12-12 大成建設株式会社 シールドトンネル工事用仮設軌道
US7174547B2 (en) * 2002-03-25 2007-02-06 Ciena Corporation Method for updating and restoring operating software in an active region of a network element
US7430735B1 (en) * 2002-05-07 2008-09-30 Lucent Technologies Inc. Method, system, and computer program product for providing a software upgrade in a network node
US6966058B2 (en) * 2002-06-12 2005-11-15 Agami Systems, Inc. System and method for managing software upgrades in a distributed computing system
US20040098715A1 (en) * 2002-08-30 2004-05-20 Parixit Aghera Over the air mobile device software management
US7194728B1 (en) * 2002-11-18 2007-03-20 Bmc Software, Inc. System and method for packaging updates
US7567504B2 (en) * 2003-06-30 2009-07-28 Microsoft Corporation Network load balancing with traffic routing
WO2005045671A1 (en) * 2003-10-27 2005-05-19 American Power Conversion Corporation System and method for updating a software program
CN1556474A (zh) 2003-12-30 2004-12-22 浙江中控技术股份有限公司 软件的在线升级方法及装置
US7516355B2 (en) * 2004-11-05 2009-04-07 Broadcom Corporation Method and computer program product for backing up and restoring online system information
US7865888B1 (en) * 2004-12-21 2011-01-04 Zenprise, Inc. Systems and methods for gathering deployment state for automated management of software application deployments
US7573811B2 (en) * 2005-03-28 2009-08-11 Alcatel-Lucent Usa Inc. Network transparent OSPF-TE failover
US7739677B1 (en) * 2005-05-27 2010-06-15 Symantec Operating Corporation System and method to prevent data corruption due to split brain in shared data clusters
US9332424B2 (en) * 2005-08-05 2016-05-03 Qualcomm Incorporated Centrally managed solution for all device management activities
US9143841B2 (en) * 2005-09-29 2015-09-22 Brocade Communications Systems, Inc. Federated management of intelligent service modules
RU2388045C2 (ru) * 2006-06-19 2010-04-27 Самсунг Электроникс Ко., Лтд. Система и способ обновления программы для переносного устройства с поддержкой ота
US8122144B2 (en) * 2006-06-27 2012-02-21 International Business Machines Corporation Reliable messaging using redundant message streams in a high speed, low latency data communications environment
US8074213B1 (en) * 2006-08-11 2011-12-06 Symantec Operating Corporation Automatic software updates for computer systems in an enterprise environment
US20080115152A1 (en) * 2006-11-15 2008-05-15 Bharat Welingkar Server-controlled heartbeats
US8589909B2 (en) * 2008-01-10 2013-11-19 Oracle International Corporation Techniques for reducing down time in updating applications with metadata

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1182847A1 (en) * 2000-03-28 2002-02-27 Matsushita Electric Industrial Co., Ltd. Communication control device and control method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开平11-191069A 1999.07.13

Also Published As

Publication number Publication date
EP2042987A2 (en) 2009-04-01
US20140317252A1 (en) 2014-10-23
US20090089774A1 (en) 2009-04-02
CN101399701A (zh) 2009-04-01
SG151153A1 (en) 2009-04-30
KR20090032922A (ko) 2009-04-01
EP2042987A3 (en) 2009-11-18
US8806472B2 (en) 2014-08-12
KR101473256B1 (ko) 2014-12-16
CA2626781A1 (en) 2009-03-27

Similar Documents

Publication Publication Date Title
CN101399701B (zh) 利用元数据驱动状态转换的在服务软件升级
CN101227428B (zh) 一种应用服务器及其远程控制方法
CN102185718B (zh) 一种系统升级方法及其装置
CN101438565A (zh) 用于促进无线的基于呈现服务的方法和装置
US20020086688A1 (en) Method for processing messages in a cellular base station system
JP5367163B2 (ja) リモート無線周波数ユニットの発見及びトポロジ構成の建立のシステム及び方法
CN102448074A (zh) 一种服务器管理的方法和系统
CN101610501A (zh) 设备固件升级系统及方法、设备管理服务器及移动终端
CN105677380B (zh) 一种双主控隔离的逐板升级的方法及装置
CN103106205A (zh) 在移动终端浏览文件的方法和装置
EP1828885A1 (en) Method and device arrangement for managing the use profile of a terminal device
CN101645801A (zh) 基于集群管理的软件版本升级方法及命令交换机
JP2007006163A (ja) 通信システム及びそれに用いられる親機中継装置
CN101933389A (zh) 用于包括直接寻呼与跳跃数据信令相结合的无线通信的方法和装置
WO2008007418A1 (fr) Système et procédé de répétition de données
CN102571446A (zh) 网络设备的升级方法、装置及系统
US7376720B2 (en) Apparatus setting updating system
CN108429751A (zh) 文件传输控制方法、装置及计算机可读存储介质、终端
EP2816789A1 (en) Mobile communication system, communication system, control node, call-processing node, and communication control method
AU6536299A (en) A program updating apparatus for a radio base station and method which can easily update program for many radio base stations in short time without requiring special facility
CN101145972A (zh) 一种容灾网管系统及其网管客户端的登陆方法
CN101036344B (zh) 通信系统
CN102149185A (zh) 同步集合维持的方法及装置
CN101527976B (zh) 远程软件升级方法及系统
CN113473063B (zh) 一种智能手表兼容多套视频通话sdk的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: ERISSON

Free format text: FORMER OWNER: REDBACK NETWORKS INC.

Effective date: 20100817

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: CALIFORNIA, USA TO: STOCKHOLM, SWEDEN

TA01 Transfer of patent application right

Effective date of registration: 20100817

Address after: Stockholm

Applicant after: Erisson

Address before: American California

Applicant before: Redback Networks Inc.

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

Granted publication date: 20130102

Termination date: 20190331

CF01 Termination of patent right due to non-payment of annual fee