Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND SYSTEM FOR UPGRADING SOFTWARE OF DISTRIBUTED COMMUNICATION DEVICE
Document Type and Number:
WIPO Patent Application WO/2014/067335
Kind Code:
A1
Abstract:
Disclosed are a method and system for upgrading software of a distributed communication device. Software is upgraded sequentially on main control units and on a line card, concurrent running of a new version and an old version of the software is employed, and, by means of a primary-standby switchover between a primary main control unit and a standby control unit, the new version of the software is allowed to seamlessly replace the old version of the software and to enter a working state. In addition, the present invention upgrades on the line card the software for a control interface and for a management interface, and upgrades the software for a forwarding interface only when necessary, thus preventing unnecessary service interruptions due to software upgrade, increasing service reliability and availability, preventing major economic losses due to service interruption, and enhancing user service experience.

Inventors:
ZHAO ZHENFU (CN)
WANG LICHUN (CN)
Application Number:
CN2013/082501
Publication Date:
May 08, 2014
Filing Date:
August 28, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
International Classes:
G06F11/14; G06F9/445
Foreign References:
CN102968357A2013-03-13
CN101383724A2009-03-11
CN102195845A2011-09-21
CN102495739A2012-06-13
Other References:
See also references of EP 2916228A4
None
Attorney, Agent or Firm:
CHINA PAT INTELLECTUAL PROPERTY OFFICE (CN)
北京派特恩知识产权代理事务所(普通合伙) (CN)
Download PDF:
Claims:
权利要求书

1、 一种分布式通信设备软件升级方法, 主控单元中包含基于物理冗余 的主用主控单元和备用主控单元, 所述方法包括:

步驟一:

主用主控单元通知备用主控单元启动新版本软件且以备用状态运行, 并通过主用主控单元上的老版本软件对备用主控单元上新版本软件进行数 据及数据状态恢复;

主用主控单元与备用主控单元进行主备状态倒换;

步驟二:

当前的主用主控单元通知线卡注销控制面和管理面的老版本软件并启 动控制面和管理面的新版本软件, 并通过当前的主用主控单元对线卡上的 所述控制面和管理面的新版本软件进行数据及数据状态恢复;

线卡刷新转发面软件的数据及数据状态。

2、 根据权利要求 1所述的分布式通信设备软件升级方法, 其中, 所述 主用主控单元包括: 第一版本管理组件和第一主备管理组件; 所述备用主 控单元包括: 第二版本管理组件和第二主备管理组件; 主控单元上的软件 中均包含数据恢复组件;

所述步驟一, 包括:

第一版本管理组件通知第二版本管理组件在备用主控单元上启动新版 本软件;

主用主控单元上的老版本软件基于数据恢复组件对备用主控单元上新 版本软件进行数据及数据状态恢复;

在所述数据及数据状态恢复完成后, 第一版本管理组件通知第一主备 管理组件将主用主控单元的运行状态倒换成备用, 同时, 第二版本管理组 件通知第二主备管理组件将备用主控单元的运行状态倒换成主用。 3、 根据权利要求 1所述的分布式通信设备软件升级方法, 其中, 所述 线卡包括: 第三版本管理组件; 主控单元及线卡上的软件均包含数据恢复 组件;

所述步驟二, 包括:

第三版本管理组件在主用主控单元与备用主控单元的主备状态倒换完 成后, 注销线卡上的控制面和管理面的老版本软件并启动控制面和管理面 的新版本软件;

当前的主用主控单元上的新版本软件基于数据恢复组件对线卡上的所 述控制面和管理面的新版本软件进行数据及数据状态恢复;

当线卡上的所述数据及数据状态恢复完成后, 第三版本管理组件刷新 转发面软件的数据及数据状态。

4、 根据权利要求 1所述的分布式通信设备软件升级方法, 其中, 所述 步驟二还包括:

当线卡上的所述数据及数据状态恢复完成之后且在刷新转发面软件的 数据及数据状态之前, 升级线卡上的转发面软件。

5、 根据权利要求 1-4中任一项所述的分布式通信设备软件升级方法, 其中, 所述步驟一, 还包括:

在主用主控单元与备用主控单元进行主备状态倒换后, 将原主用主控 单元上的老版本软件升级为新版本软件并以备用状态运行。

6、 一种分布式通信设备软件升级系统, 主控单元中包含基于物理冗余 的主用主控单元和备用主控单元, 所述系统包括:

主用主控单元, 配置为通知备用主控单元启动新版本软件; 通过主用 主控单元上的老版本软件对备用主控单元上的新版本软件进行数据及数据 状态恢复; 当所述数据及数据状态恢复完成后, 将运行状态倒换成备用; 备用主控单元, 配置为启动新版本软件并以备用状态运行; 配合主用 主控单元对新版本软件进行数据及数据状态恢复; 当所述数据及数据状态 恢复完成后, 将运行状态倒换成主用;

线卡, 配置为在主用主控单元与备用主控单元的主备状态倒换完成后, 注销线卡上的控制面和管理面的老版本软件并启动控制面和管理面的新版 本软件, 并通过当前的主用主控单元对线卡上的所述控制面和管理面的新 版本软件进行数据及数据状态恢复; 当线卡上的所述数据及数据状态恢复 完成后, 刷新转发面软件的数据及数据状态。

7、 根据权利要求 6所述的分布式通信设备软件升级系统, 其中, 所述 主用主控单元包括: 第一版本管理组件和第一主备管理组件; 所述备用主 控单元包括: 第二版本管理组件和第二主备管理组件; 主控单元上的软件 中均包含数据恢复组件;

第一版本管理组件, 配置为通知第二版本管理组件在备用主控单元上 启动新版本软件; 在所述数据及数据状态恢复完成后, 通知第一主备管理 组件将主用主控单元的运行状态倒换成备用;

数据恢复组件, 主用主控单元上的老版本软件基于数据恢复组件对备 用主控单元上新版本软件进行数据及数据状态恢复;

第二版本管理组件, 配置为在备用主控单元上启动新版本软件; 在所 述数据及数据状态恢复完成后, 通知第二主备管理组件将备用主控单元的 运行状态倒换成主用;

第一主备管理组件, 配置为对主用主控单元的运行状态进行主备倒换; 第二主备管理组件, 配置为对备用主控单元的运行状态进行主备倒换。

8、 根据权利要求 6所述的分布式通信设备软件升级系统, 其中, 所述 线卡包括: 第三版本管理组件; 主控单元及线卡上的软件均包含数据恢复 组件;

第三版本管理组件, 配置为在主用主控单元与备用主控单元的主备状 态倒换完成后, 注销线卡上的控制面和管理面的老版本软件并启动控制面 和管理面的新版本软件; 当线卡上的所述数据及数据状态恢复完成后, 刷 新转发面软件的数据及数据状态;

数据恢复组件, 当前的主用主控单元的新版本软件基于数据恢复组件 对线卡上的所述控制面和管理面的新版本软件进行数据及数据状态恢复。

9、 根据权利要求 6所述的分布式通信设备软件升级系统, 其中, 所述 线卡, 还配置为:

当线卡上的所述数据及数据状态恢复完成后且在刷新转发面软件的数 据及数据状态之前, 升级线卡上的转发面软件。

10、 根据权利要求 6-9中任一项所述的分布式通信设备软件升级系统, 其中, 所述主用主控单元, 还配置为:

在主用主控单元与备用主控单元进行主备状态倒换后, 将原主用主控 单元上的老版本软件升级为新版本软件并以备用状态运行。

Description:
一种分布式通信设备软件升级方法及系统 技术领域

本发明涉及通信技术领域, 尤其涉及一种分布式通信设备软件升级方 法及系统。 背景技术

随着人们对随时随地接入网络以获取信息的需 求不断扩大, 各种有线 和无线终端不断涌现并接入到网络中。 为了提升用户体验, 网络中用于承 载用户网络业务的网络设备就显得越来越重要 , 网络设备出现异常, 轻则 影响用户接入体验, 导致用户流失, 重则影响企业的电子商务网络的运行, 导致重大的经济损失。

在网络上运行的网络通信设备中, 为了性能和可扩展性等考虑, 很多 设备是基于多进程操作系统实现的分布式的通 信设备。 在使用多进程操作 系统的通信设备中, 通常采用多个业务进程协同完成通信设备的路 由学习、 数据转发功能。 通信设备与外部设备进行交互, 学习网络路由, 并计算生 成转发面使用的最佳路由表。 然后下发到转发面, 转发面再根据最佳路由 表完成数据的路由转发。

在网络设备运行过程中, 因可能存在软件故障或者新增功能特性, 不 得不面临各种各样的网络设备软件升级。 为了避免网络设备在软件升级过 程中引起业务中断, 需要考虑支持业务不中断的软件升级方法。 发明内容

本发明实施例要解决的技术问题是, 提供一种分布式通信设备软件升 级方法及系统, 避免软件升级带来不必要的业务中断, 提高业务的可靠性 和可用性, 提升用户业务体验。

本发明采用的技术方案是, 所述分布式通信设备软件升级方法, 主控 单元中包含基于物理冗余的主用主控单元和备 用主控单元, 该方法包括: 步驟一:

主用主控单元通知备用主控单元启动新版本软 件且以备用状态运行, 并通过主用主控单元上的老版本软件对备用主 控单元上新版本软件进行数 据及数据状态恢复;

主用主控单元与备用主控单元进行主备状态倒 换;

步驟二:

当前的主用主控单元通知线卡注销控制面和管 理面的老版本软件并启 动控制面和管理面的新版本软件, 并通过当前的主用主控单元对线卡上的 所述控制面和管理面的新版本软件进行数据及 数据状态恢复;

线卡刷新转发面软件的数据及数据状态。

优选的, 所述主用主控单元包括: 第一版本管理组件和第一主备管理 组件; 所述备用主控单元包括: 第二版本管理组件和第二主备管理组件; 主控单元上的软件中均包含数据恢复组件;

所述步驟一, 具体包括:

第一版本管理组件通知第二版本管理组件在备 用主控单元上启动新版 本软件;

主用主控单元上的老版本软件基于数据恢复组 件对备用主控单元上新 版本软件进行数据及数据状态恢复;

在所述数据及数据状态恢复完成后, 第一版本管理组件通知第一主备 管理组件将主用主控单元的运行状态倒换成备 用, 同时, 第二版本管理组 件通知第二主备管理组件将备用主控单元的运 行状态倒换成主用。

优选的, 所述线卡包括: 第三版本管理组件; 主控单元及线卡上的软 件均包含数据恢复组件;

所述步驟二, 具体包括:

第三版本管理组件在主用主控单元与备用主控 单元的主备状态倒换完 成后, 注销线卡上的控制面和管理面的老版本软件并 启动控制面和管理面 的新版本软件;

当前的主用主控单元上的新版本软件基于数据 恢复组件对线卡上的所 述控制面和管理面的新版本软件进行数据及数 据状态恢复;

当线卡上的所述数据及数据状态恢复完成后, 第三版本管理组件刷新 转发面软件的数据及数据状态。

优选的, 所述步驟二还包括:

当线卡上的所述数据及数据状态恢复完成之后 且在刷新转发面软件的 数据及数据状态之前, 升级线卡上的转发面软件。

优选的, 所述步驟一, 还包括:

在主用主控单元与备用主控单元进行主备状态 倒换后, 将原主用主控 单元上的老版本软件升级为新版本软件并以备 用状态运行。

本发明还提供一种分布式通信设备软件升级系 统, 主控单元中包含基 于物理冗余的主用主控单元和备用主控单元, 该系统包括:

主用主控单元, 配置为通知备用主控单元启动新版本软件; 通过主用 主控单元上的老版本软件对备用主控单元上的 新版本软件进行数据及数据 状态恢复; 当所述数据及数据状态恢复完成后, 将运行状态倒换成备用; 备用主控单元, 配置为启动新版本软件并以备用状态运行; 配合主用 主控单元对新版本软件进行数据及数据状态恢 复; 当所述数据及数据状态 恢复完成后, 将运行状态倒换成主用;

线卡, 配置为在主用主控单元与备用主控单元的主备 状态倒换完成后, 注销线卡上的控制面和管理面的老版本软件并 启动控制面和管理面的新版 本软件, 并通过当前的主用主控单元对线卡上的所述控 制面和管理面的新 版本软件进行数据及数据状态恢复; 当线卡上的所述数据及数据状态恢复 完成后, 刷新转发面软件的数据及数据状态。

优选的, 所述主用主控单元包括: 第一版本管理组件和第一主备管理 组件; 所述备用主控单元包括: 第二版本管理组件和第二主备管理组件; 主控单元上的软件中均包含数据恢复组件;

第一版本管理组件, 配置为通知第二版本管理组件在备用主控单元 上 启动新版本软件; 在所述数据及数据状态恢复完成后, 通知第一主备管理 组件将主用主控单元的运行状态倒换成备用;

数据恢复组件, 主用主控单元上的老版本软件基于数据恢复组 件对备 用主控单元上新版本软件进行数据及数据状态 恢复;

第二版本管理组件, 配置为在备用主控单元上启动新版本软件; 在所 述数据及数据状态恢复完成后, 通知第二主备管理组件将备用主控单元的 运行状态倒换成主用;

第一主备管理组件, 配置为对主用主控单元的运行状态进行主备倒 换; 第二主备管理组件, 配置为对备用主控单元的运行状态进行主备倒 换。 优选的, 所述线卡包括: 第三版本管理组件; 主控单元及线卡上的软 件均包含数据恢复组件;

第三版本管理组件, 配置为在主用主控单元与备用主控单元的主备 状 态倒换完成后, 注销线卡上的控制面和管理面的老版本软件并 启动控制面 和管理面的新版本软件; 当线卡上的所述数据及数据状态恢复完成后, 刷 新转发面软件的数据及数据状态;

数据恢复组件, 当前的主用主控单元的新版本软件基于数据恢 复组件 对线卡上的所述控制面和管理面的新版本软件 进行数据及数据状态恢复。

优选的, 所述线卡, 还配置为: 当线卡上的所述数据及数据状态恢复完成后且 在刷新转发面软件的数 据及数据状态之前, 升级线卡上的转发面软件。

优选的, 所述主用主控单元, 还配置为:

在主用主控单元与备用主控单元进行主备状态 倒换后, 将原主用主控 单元上的老版本软件升级为新版本软件并以备 用状态运行。

采用上述技术方案, 本发明实施例至少具有下列技术效果:

本发明实施例所述分布式通信设备软件升级方 法及系统,依次在主控 单元和线卡上升级软件, 采用新老版本软件同时运行, 通过主用主控单元 与备用主控单元的主备倒换使得新版本软件无 缝接替老版软件本进入工作 状态。 另外, 本发明实施例在线卡上升级控制面和管理面的 软件, 在需要 的情况下再升级线卡的转发面软件, 以避免软件升级带来不必要的业务中 断, 提高了业务的可靠性和可用性, 避免了业务中断带来重大的经济损失, 提升了用户业务体验。 附图说明

图 1 为本发明第一实施例中的分布式通信设备软件 升级方法流程图; 图 2 为本发明第二实施例中的分布式通信设备软件 升级方法流程图; 图 3 为本发明第三实施例中的分布式通信设备软件 升级系统组成示意 图;

图 4 为本发明应用实例中分布式接入网关软件升级 交互序列图; 图 5 为本发明应用实例中分布式接入网关软件升级 前的状态示意图; 图 6 为本发明应用实例中分布式接入网关主控 2启动新版本软件并进 行数据及数据状态恢复的示意图;

图 7 为本发明应用实例中分布式接入网关主控 2的运行状态倒换为主 用的示意图;

图 8 为本发明应用实例中分布式接入网关线卡注销 老版本软件的示意 图;

图 9 为本发明应用实例中分布式接入网关线卡的新 版本软件进入工作 状态示意图;

图 10 为本发明应用实例中分布式接入网关主控 1的老版本软件升级到 新版本软件的示意图。 具体实施方式

下结合附图及较佳实施例, 对本发明进行详细说明如后。

本发明第一实施例, 一种分布式通信设备软件升级方法, 主控单元中 包含基于物理冗余的主用主控单元和备用主控 单元,

主控单元: 主处理单元, 也叫主控单元。 在通信设备中的现有功能是 负责系统管理、 路由计算等。

主用主控单元指的是主处理器上的软件运行在 主状态, 并对外界提供 服务。

备用主控单元指的是主处理器上的软件运行在 备状态, 不对外界提供 服务, 只有转为主状态后才能对外界提供服务。

线卡: 在通信设备中的现有功能是执行转发数据管理 和数据转发等业 务。

如图 1所示, 该方法包括以下两个阶段:

第一阶段, 主控单元软件升级过程, 包括:

步驟 S101 , 主用主控单元通知备用主控单元启动新版本软 件且以备用 状态运行, 并通过主用主控单元上的老版本软件对备用主 控单元上新版本 软件进行数据及数据状态恢复。

具体的, 主用主控单元包括: 第一版本管理组件和第一主备管理组件; 所述备用主控单元包括: 第二版本管理组件和第二主备管理组件; 主控单 元上软件中均包含数据恢复组件。

步驟 S101 , 具体包括:

步驟 A1: 第一版本管理组件通知第二版本管理组件在备 用主控单元上 启动新版本软件;

步驟 A2: 主用主控单元上的老版本软件基于数据恢复组 件对备用主控 单元上新版本软件进行数据及数据状态恢复; 步驟 A2, 具体包括:

步驟 A21 : 主用主控单元与备用主控单元之间通过各自的 数据恢复组 件建立单条或多条通信链路;

步驟 A22: 主用主控单元上的老版本软件基于数据恢复组 件向备用主 控单元上的新版本软件同步数据及数据状态。 相应的, 备用主控单元上的 新版本软件也基于数据恢复组件接收主用主控 单元上的新版本软件同步过 来的数据及数据状态。

步驟 S102, 主用主控单元与备用主控单元进行主备状态倒 换, 使未升 级的老版本软件进入备用工作状态, 等待升级; 使完成升级的新版本软件 进入主用工作状态。

具体的, 在所述数据及数据状态恢复完成后, 第一版本管理组件通知 第一主备管理组件将主用主控单元的运行状态 倒换成备用, 同时, 第二版 本管理组件通知第二主备管理组件将备用主控 单元的运行状态倒换成主 用。

第二阶段, 线卡软件升级过程, 包括:

步驟 S103, 当前的主用主控单元通知线卡注销控制面和管 理面的老版 本软件并启动控制面和管理面的新版本软件, 并通过当前的主用主控单元 对线卡上的所述控制面和管理面的新版本软件 进行数据及数据状态恢复。

具体的, 线卡包括: 第三版本管理组件; 主控单元及线卡上的软件均 包含数据恢复组件; 第三版本管理组件在主用主控单元与备用主控 单元的主备状态倒换完 成后, 注销线卡上的控制面和管理面的老版本软件并 启动控制面和管理面 的新版本软件;

当前的主用主控单元上的新版本软件基于数据 恢复组件对线卡上的所 述控制面和管理面的新版本软件进行数据及数 据状态恢复。

在步驟 S103中, 所述通过当前的主用主控单元对线卡上的所述 控制面 和管理面的新版本软件进行数据及数据状态恢 复, 具体包括:

步驟 B1: 当前的主用主控单元与线卡之间基于数据恢复 组件建立单条 或多条通信链路;

步驟 B2: 当前的主用主控单元的新版本软件基于数据恢 复组件向线卡 上的控制面和管理面的新版本软件同步数据及 数据状态。 相应的, 线卡上 的控制面和管理面的新版本软件基于数据恢复 组件接收主用主控单元同步 过来的数据及数据状态。

步驟 S104, 当线卡上的所述数据及数据状态恢复完成后, 刷新转发面 软件的数据及数据状态。

具体的, 当线卡上的所述数据及数据状态恢复完成后, 第三版本管理 组件刷新转发面软件的数据及数据状态。

可选的, 在本实施例所述方法的第一阶段中,

在步驟 S101之前,将新版本软件拷贝到通信设备的主 单元和线卡上; 或者, 在步驟 S101之前, 将新版本软件拷贝到通信设备的主控单元, 后续 由线卡向主控单元请求获取新版本软件进行升 级。 这里的主控单元指的是 处于主用状态的主控单元即主用主控单元, 因为备用主控单元不对系统提 供服务。

本发明第二实施例, 如图 2所示, 一种分布式通信设备软件升级方法, 主控单元中包含基于物理冗余的主用主控单元 和备用主控单元, 该方法包 括以下两个阶段:

第一阶段, 主控单元软件升级过程, 包括:

步驟 S201 , 主用主控单元通知备用主控单元启动新版本软 件并以备用 状态运行, 并通过主用主控单元上的老版本软件对备用主 控单元上新版本 软件进行数据及数据状态恢复。

具体的, 主用主控单元包括: 第一版本管理组件和第一主备管理组件; 所述备用主控单元包括: 第二版本管理组件和第二主备管理组件; 主控单 元上软件中均包含数据恢复组件。

步驟 S201 , 具体包括:

步驟 A1 : 第一版本管理组件通知第二版本管理组件在备 用主控单元上 启动新版本软件;

步驟 A2: 主用主控单元上的老版本软件基于数据恢复组 件对备用主控 单元上新版本软件进行数据及数据状态恢复;

步驟 S202, 主用主控单元与备用主控单元进行主备状态倒 换, 使未升 级的老版本软件进入备用工作状态, 等待升级; 使完成升级的新版本软件 进入主用工作状态。

具体的, 在所述数据及数据状态恢复完成后, 第一版本管理组件通知 第一主备管理组件将主用主控单元的运行状态 倒换成备用, 同时, 第二版 本管理组件通知第二主备管理组件将备用主控 单元的运行状态倒换成主 用。

步驟 S203 , 在主用主控单元与备用主控单元进行主备状态 倒换后, 将 原主用主控单元上的老版本软件升级为新版本 软件并以备用状态运行。

第二阶段, 线卡软件升级过程, 包括:

步驟 S204, 当前的主用主控单元通知线卡注销控制面和管 理面的老版 本软件并启动控制面和管理面的新版本软件, 并通过当前的主用主控单元 对线卡上的所述控制面和管理面的新版本软件 进行数据及数据状态恢复。 具体的, 线卡包括: 第三版本管理组件; 主控单元及线卡上的软件均 包含数据恢复组件;

第三版本管理组件在主用主控单元与备用主控 单元的主备状态倒换完 成后, 注销线卡上的控制面和管理面的老版本软件并 启动控制面和管理面 的新版本软件;

当前的主用主控单元上的新版本软件基于数据 恢复组件对线卡上的所 述控制面和管理面的新版本软件进行数据及数 据状态恢复。

步驟 S205 , 当线卡上的所述数据及数据状态恢复完成后, 升级线卡上 的转发面软件, 刷新转发面软件的数据及数据状态。

具体的, 线卡上的第三版本管理组件对转发面软件升级 过程与对线卡 上的控制面和管理面软件升级过程类似, 之所以把转发面软件升级放在最 后, 是因为转发面的功能直接影响通信设备的业务 运行, 先升级线卡上的 控制面和管理面软件并不会对业务造成中断, 转发面软件升级的过程也须 经过: 转发面老版本软件注销并启动转发面的新版本 软件, 通过当前的主 用主控单元上的新版本软件对线卡上的所述转 发面的新版本软件进行数据 及数据状态恢复, 刷新转发面新版本软件的数据及数据状态, 使新版本转 发面的转发表项生效。 升级转发面软件的时间非常短, 几乎不影响业务运 行。

可选的, 在本实施例所述方法的第一阶段中,

在步驟 S201之前,将新版本软件拷贝到通信设备的主 单元和线卡上; 或者, 在步驟 S201之前, 将新版本软件拷贝到通信设备的主控单元, 后续 由线卡向主控单元请求获取新版本软件。 这里的主控单元指的是处于主用 状态的主控单元即主用主控单元, 因为备用主控单元不对系统提供服务。

本发明第三实施例, 如图 3所示, 一种分布式通信设备软件升级系统, 主控单元 10中包含基于物理冗余的主用主控单元 20和备用主控单元 30, 该系统包括:

1 )主用主控单元 20, 配置为通知备用主控单元 30启动新版本软件; 通过主用主控单元 20上的老版本软件对备用主控单元 30上的新版本软件 进行数据及数据状态恢复; 当所述数据及数据状态恢复完成后, 将运行状 态倒换成备用。

2 )备用主控单元 30, 配置为启动新版本软件并以备用状态运行; 配合 主用主控单元 20对新版本软件进行数据及数据状态恢复; 当所述数据及数 据状态恢复完成后, 将运行状态倒换成主用。

具体的, 主用主控单元 20包括: 第一版本管理组件 21和第一主备管 理组件 22, 备用主控单元 30包括: 第二版本管理组件 31和第二主备管理 组件 32, 主控单元 10上的软件中均包含数据恢复组件 11。

第一版本管理组件 21 ,配置为通知第二版本管理组件 31在备用主控单 元 30上启动新版本软件; 在所述数据及数据状态恢复完成后, 通知第一主 备管理组件 22将主用主控单元 20的运行状态倒换成备用, 使未升级的老 版本软件进入备用工作状态, 等待升级;

数据恢复组件 11 ,主用主控单元 20上的老版本软件基于数据恢复组件 11对备用主控单元 30上新版本软件进行数据及数据状态恢复;

第二版本管理组件 31 , 配置为在备用主控单元 30上启动新版本软件; 在所述数据及数据状态恢复完成后, 通知第二主备管理组件 32将备用主控 单元 30的运行状态倒换成主用, 使完成升级的新版本软件进入主用工作状 态;

第一主备管理组件 22,配置为对主用主控单元 20的运行状态进行主备 倒换;

第二主备管理组件 32,配置为对备用主控单元 30的运行状态进行主备 倒换。

3 )线卡 40, 配置为在主用主控单元 20与备用主控单元 30的主备状态 倒换完成后, 注销控制面和管理面的老版本软件并启动控制 面和管理面的 新版本软件, 并通过当前的主用主控单元对线卡上的所述控 制面和管理面 的新版本软件进行数据及数据状态恢复; 当线卡上的所述数据及数据状态 恢复完成后, 刷新转发面软件的数据及数据状态。

具体的, 线卡 40包括: 第三版本管理组件 41 , 主控单元及线卡上的软 件均包含数据恢复组件。

第三版本管理组件 41 , 配置为在主用主控单元 20与备用主控单元 30 的主备状态倒换完成后, 注销线卡 40上的控制面和管理面的老版本软件并 启动控制面和管理面的新版本软件; 当线卡 40上的所述数据及数据状态恢 复完成后, 刷新转发面软件的数据及数据状态。

数据恢复组件 11 ,当前的主用主控单元 20的新版本软件基于数据恢复 组件 11对线卡 40上的所述控制面和管理面的新版本软件进行 据及数据 状态恢复。

本发明第四实施例, 如图 3 所示, 本实施例的分布式通信设备软件升 级系统与第三实施例大致相同, 区别在于, 本实施例的所述系统中,

主用主控单元 20, 还配置为: 在主用主控单元 20与备用主控单元 30 进行主备状态倒换后, 将原主用主控单元 20上的老版本软件升级为新版本 软件并以备用状态运行。

另外, 线卡 40还配置为: 当线卡 40上的所述数据及数据状态恢复完 成后且在刷新转发面软件的数据及数据状态之 前, 升级线卡 40上的转发面 软件。

具体的, 线卡 40上的第三版本管理组件 41对转发面软件升级过程与 对线卡 40上的控制面和管理面软件升级过程类似, 之所以把转发面软件升 级放在最后, 是因为转发面的功能直接影响通信设备的业务 运行, 先升级 线卡 40上的控制面和管理面软件并不会对业务造成 断, 转发面软件升级 的过程也须经过: 转发面老版本软件注销并启动转发面的新版本 软件, 通 过当前的主用主控单元 20上的新版本软件对线卡 40上的所述转发面的新 版本软件进行数据及数据状态恢复, 刷新转发面新版本软件的数据及数据 状态, 使新版本转发面的转发表项生效。 升级转发面软件的时间非常短, 几乎不影响业务运行。

基于上述实施例, 介绍一个本发明的应用实例, 该应用实例的应用场 景和执行过程如下:

场景: 接入网关软件升级场景。

图 4为分布式接入网关软件升级交互序列图,图 5~图 10分别显示了分 布式接入网关进行软件升级时的各种状态, 图中的接入网关是完成用户接 入网络的分布式通信设备, 出于高可靠性、 高可用性的要求, 设备配置有 主备用主控板, 图 5 为分布式接入网关软件升级前的状态, 主用主控板上 的处理单元为主控 1 , 备用主控板上的处理单元为主控 2。 同时配置有 4块 线卡完成用户的接入和转发处理。 主控单元上运行有 80个进程, 如支撑进 程、 BGP进程、 RIP进程、 OSPF进程、 FIB进程等。 线卡有 30个进程, 包括收发包进程、 路由转发进程、 用户接入进程等。 由于运行的软件版本 存在故障, 会导致业务随机断流。 因此, 需要考虑进行软件版本升级, 以 解决设备故障。 接入网关的 4块线卡采用的是逐线卡升级方案。 即依次对 每块线卡升级, 先升级 1号线卡, 再升级 2号线卡, 然后升级 3号线卡, 最后升级 4号线卡。

接入网关软件版本升级涉及如下组件: 老版本软件、 新版本软件、 版 本管理组件, 主备管理组件。 其中, 老版本软件和新版本软件实现的功能 相同; 版本管理组件负责管理软件的版本升级、 失败回滚等; 主备管理组 件负责对新老版本软件进行主备管理, 并在老版本向新版本完成数据及数 据状态的主备同步后触发新版本软件的主备倒 换, 以实现软件新版本无缝 接替老版本进入工作状态, 完成业务不中断升级;

在网络上实施分布式接入网关软件升级的处理 步驟如下:

阶段一、 主控软件升级:

S1 : 在进行软件升级前, 需要将待升级的新版本软件拷贝到接入网关 的主用主控上(设备自动拷贝到备用主控)。 线卡新版本软件通过主控来请 求获取;

S2: 在接入网关的主控 1上的老版本软件以主状态运行, 用户向主控 1 上的版本管理组件( Version Manager, 以下简称 VM )发起主控软件升级指 令;

S3: 主控 1上的 VM收到主控软件升级指令后, 发送命令到主控 上 的 VM, 在主控 2上升级并启动新版本软件;

S4: 主控 2上的新版本软件启动后以备状态运行。 在主控 2转入主状 态运行前, 主控 2上的新版本软件不对系统外界提供服务;

S5: 如图 6所示, 主控 2上的新版本软件通过主控 1上的老版本软件 进行数据及数据状态恢复, 以便进入工作状态后能无缝接管老版本软件对 外界提供的服务。 可选的, 数据及数据状态恢复的通信链路, 可以是单条 或多条通信链路;

S6: 主控 2上的新版本软件在数据及数据状态的恢复完 后, 通过主 控 2上的 VM向主控 1上的 VM发起备用主控新版本启动完成通知;

S7: 主控 1上的 VM收到备用主控新版本启动完成通知后, 向主控 1 上的主备管理组件( Active-Standby Manager, 以下简称 ASM )触发主用主 控的主备倒换,如图 7所示。同时,通过主控 2上的 VM向主控 2上的 ASM 触发备用主控的主备倒换; S8: 主控 1主备倒换成新备用主控, 主控 2主备倒换成新主用主控。 新主用主控上的新版本软件接替老版本软件进 入主工作状态, 对外界提供 服务。 新备用主控上的老版本软件不再对外界提供服 务;

S9: 可选的, 如图 10所示, 在主控 1倒换成新备用主控的同时, 可以 将老版本软件升级为新版本软件并以备状态启 动;

S10: 主控 1上的 VM将软件升级成功的结果反馈给用户, 指示可以进 行后续的线卡软件升级。

阶段二、 线卡软件升级(逐线卡升级, 下面以升级 1 号线卡为例进行 详细说明, 其他线卡类似):

S11: 在主控软件升级成功后, 用户向主控 2上的 VM发起 1号线卡软 件升级指令;

S12: 主控 2上的 VM收到 1号线卡软件升级指令后, 发送线卡软件升 级命令到 1号线卡上的 VM;

S13: 1号线卡上的 VM收到线卡软件升级命令后, 向线卡上的老版本 软件发起注销指令。

S14: 如图 8所示, 1号线卡上的 VM在成功注销线卡上的控制面和管 理面的老版本软件后, 从主控 2获取新版本软件, 升级并启动线卡上的控 制面和管理面的新版本软件的控制面和管理面 功能;

S15: 为了避免业务中断, 1号线卡上的控制面和管理面的新版本软件 在进入工作状态前, 需要恢复对外提供服务所需要的数据及数据状 态。 线 卡的控制面和管理面的新版本软件的数据及数 据状态恢复通过主控进行;

S16: 1号线卡上的控制面和管理面的新版本软件在 据及数据状态的 恢复完成后, 按需升级转发面功能, 并触发刷新转发表, 使得新版本转发 表项生效。 并向线卡上的 VM发起数据及数据状态同步完成通知;

S17: 1号线卡上的 VM收到控制面和管理面的新版本软件的数据及 据状态恢复完成通知后, 向主控 2上的 VM反馈线卡软件升级结果;

S18: 如图 9所示, 1号线卡软件升级完成进入工作状态, 用户可以继 续对 2~4号线卡逐块线卡进行升级。

通过具体实施方式的说明, 应当可对本发明为达成预定目的所采取的 技术手段及功效得以更加深入且具体的了解, 然而所附图示仅是提供参考 与说明之用, 并非用来对本发明加以限制。 工业实用性

本发明实施例的技术方案, 依次在主控单元和线卡上升级软件, 采用 新老版本软件同时运行, 通过主用主控单元与备用主控单元的主备倒换 使 得新版本软件无缝接替老版软件本进入工作状 态。 另外, 本发明在线卡上 升级控制面和管理面的软件, 在需要的情况下再升级线卡的转发面软件, 以避免软件升级带来不必要的业务中断; 从而提高了业务的可靠性和可用 性, 避免了业务中断带来重大的经济损失, 提升了用户业务体验。