一种基于泛洪机制的软件升级方法

文档序号:8512471阅读:944来源:国知局
一种基于泛洪机制的软件升级方法
【技术领域】
[0001]本发明涉及一种基于泛洪机制的软件升级方法,适用于包含窄带卫星广播信道的专用网络。
【背景技术】
该专用网络目前使用的软件升级方式包括直接升级和间接升级两种方式。当网络初始开通时,只能依靠直接升级的方式,直接升级要求人员与设备在一起,升级设备和被升级设备直接连接。间接升级在路由已通的情况下完成,远程连接升级。直接升级的成本太高,需要人员到现场,间接升级不可靠,因为路由时常不稳定,导致升级不成功。
[0002]急需一种方法能够在网络物理链路连通的情况下,能够实现全网的软件升级。由于网络中可能包含窄带卫星广播链路,必须考虑软件升级功能在信道上的开销问题,尽可能减少升级消息对广播信道的使用。该方法不依赖于网络路由,只需要物理链路连通,支持传输IP报文。

【发明内容】

[0003]本发明提供了一种基于泛洪机制的软件升级方法,通过对泛洪机制进行改进减小升级消息对窄带卫星广播信道的占用。该方法包括:
使用基本的泛洪算法在有线互联的区域内进行软件升级,连接卫星的节点向升级源节点发起卫星信道通知消息,由源节点选择最先回复的节点作向卫星信道升级节点,通过卫星信道将升级文件发送到其他区域。在其他区域内部按照基本的泛洪算法完成软件升级。
[0004]软件升级人员在某一节点将升级文件上传到连接的路由交换设备。路由交换设备向全网泛洪一个软件升级请求消息,各节点采用基本的泛洪算法在区域内转发软件升级请求消息。软件升级请求消息中包含发起升级的源节点、升级文件的版本信息、升级文件的长度、升级文件的整体校验信息。各节点记录软件升级请求消息的内容,等待接收升级文件。
[0005]报文在网络泛洪的时候,各节点记录接收源节点报文的接口,形成确知路径,下一次转发到目的节点为该节点的报文时,使用确知路径转发,减少报文泛洪对信道的开销。同时,各节点根据报文内容判断,不转发报文到接收接口,从同一接口接收到了相同的报文不再向该接口转发相同报文,避免形成环路。
[0006]连接了卫星信道并且卫星信道准备好的节点,向升级源节点发送卫星信道通知消息,通知源节点本节点连接了卫星信道。由源节点选择最先返回的节点作为继续向卫星信道转发升级文件的节点,源节点向该节点发送卫星信道升级消息。卫星信道通知消息和卫星信道升级消息指定接收的目的节点,其他节点接收到消息之后,采用确知路径转发。通过指定节点向卫星信道转发消息,避免了同一区域内的多个节点将消息发送到卫星信道,浪费信道资源。
[0007]软件升级请求消息发送5秒后未收到卫星信道通知消息,或者发送卫星信道升级消息5秒之后,开始发送升级文件消息。升级源节点将升级文件压缩后分割成1400字节的报文,封装报文头部形成升级文件消息。升级文件消息中包含发送源节点、报文的序号、文件尾部标识、报文内容、报文的校验和。
[0008]网络中的各节点将升级文件消息泛洪,卫星信道升级节点向卫星信道转发升级文件消息。节点接收到升级文件消息后,对消息内容中的升级报文进行校验,校验有效则存储。当文件尾部标识被置位后,将所有的升级报文组装成升级文件,对整个文件的长度和校验进行验证。单个报文校验不正确时,丢弃报文,使用从其他接口接收的相同报文。如果所有接口接收的报文均不正确,则认为本节点升级文件接收失败。
[0009]接收到升级文件的节点,将升级文件存储到备份区域,然后试运行该文件,运行正常替换原有文件。
[0010]节点启动时,向邻居发起软件版本请求消息携带本节点的软件版本,如果邻居节点的软件版本不一致,则回复软件版本响应消息。收到软件版本响应消息后,软件版本低的节点向软件版本高的节点发起升级文件请求消息,高版本节点发送升级文件给请求节点。
[0011]本发明的有益技术效果是:该方法采用改进的泛洪机制实现专用网络的软件升级功能,支持跨区域的网络设备软件升级,只需满足物理链路正常连接,支持IP报文传输即可,不再依靠直接升级和依托于路由远程升级。该方法能够最大限度的节省窄带卫星广播信道的资源,实现升级文件在全网的共享,保证所有节点软件版本一致。
【附图说明】
[0012]图1、网络拓扑示意图;
图2、报文传播流程;
图3、报文封装格式。
【具体实施方式】
[0013]为了实现专用网络的软件升级功能,需要处理以下三个方面的内容。
[0014]泛洪算法的实现及改进,减少泛洪消息占用窄带卫星广播信道的资源。具体步骤实施如下:
1.有线连接区域内的节点采用基本的泛洪算法向邻居节点转发消息
2.连接卫星信道且信道正常的节点向软件升级源节点发送卫星信道通知消息
3.软件升级源节点选择最先收到卫星信道通知消息的节点作为向卫星信道升级节点
4.软件升级源节点向卫星信道升级节点发送卫星信道升级消息
5.接收到卫星信道升级消息的节点,向卫星信道转发消息
6.从卫星信道接收到消息的节点,在有线连接的区域内采用基本的泛洪算法转发升级消息
升级文件的处理:
1.软件升级的源节点将升级文件上传到连接的路由交换设备
2.路由交换设备将升级文件压缩后,分割成升级报文组装消息对外发送
3.各节点将接收到的合法升级报文组装成升级文件,校验正确后存储到备份区域
4.设备试运行升级文件,试运行正常,替换原有文件设备启动的处理流程:
1.设备启动时,向邻居发起软件版本请求消息,携带自己的软件版本
2.接收到软件版本请求消息的节点,如果软件版本不一致回复软件版本响应消息3.接收到软件版本响应消息后,低版本的节点向高版本的节点发起升级文件请求消息
4.接收到升级文件请求消息的节点发送升级文件给请求节点。
【主权项】
1.一种基于泛洪机制的软件升级方法,其特征在于:通过基本泛洪算法在区域内完成软件升级,采用改进的泛洪算法在区域之间通过窄带卫星广播信道完成软件升级;节点启动时与邻居节点比较软件版本,软件版本不一致时,低版本节点向高版本节点请求升级文件,高版本节点下发升级文件给低版本节点。
2.根据权利要求1所述的软件升级方法,其特征在于: 1)采用基本的泛洪算法完成区域内的软件升级,节点之间的泛洪消息使用IP组播方式发送,节点接收到泛洪消息后,根据消息内容判断是否需要继续转发和转发至哪些接口,防止环路产生; 2)由区域内连接卫星信道且信道正常的节点告知升级源节点,升级源节点选择最先返回的节点作为卫星信道升级节点; 3)节点启动时,与邻居节点比较软件版本; 4)软件版本不一致时,低版本节点向高版本节点请求升级文件,高版本节点下发升级文件给低版本节点; 5)升级源节点将升级文件压缩后分割成1400字节的报文,封装成升级文件消息对外泛洪,其他节点接收后校验报文,然后组装成升级文件,存放到备份区域; 6)节点试运行升级文件,试运行正常替换原有文件。
3.根据权利要求2所述的软件升级方法,其特征在于:步骤I)中,只需要物理链路连通,支持传输IP报文,节点之间即可泛洪消息,接收到消息的接口不再将相同的消息转发至接收接口,不再转发消息至接收过相同消息的接口,避免环路产生。
4.根据权利要求2所述的软件升级方法,其特征在于:步骤2)中,连接卫星的节点先不转发消息到卫星信道,给软件升级源节点发送卫星信道通知消息,由升级源节点选择最先回复的节点作为卫星信道升级节点,通过卫星信道向其他区域转发消息,避免同一区域多个节点向卫星信道发送消息造成资源浪费。
5.根据权利要求2所述的软件升级方法,其特征在于:步骤3)中,节点启动时,向邻居节点发起软件版本请求消息,消息中携带本节点的软件版本,接收到的节点软件版本不一致时回复软件版本响应消息,减少卫星广播信道上报文数量。
6.根据权利要求2所述的软件升级方法,其特征在于:步骤4)中,软件版本不一致时,选择从其中的一个高版本节点请求升级文件,避免多高版本节点同时下发升级文件。
【专利摘要】本发明公开了一种基于改进的泛洪机制实现的软件升级方法。该方法包括:采用基本的泛洪算法完成区域内的软件升级,连接卫星的节点向升级源节点返回卫星信道通知消息,源节点选择最先返回的节点向其他区域转发升级文件,保证区域内只有一个节点向卫星信道转发消息。节点启动时与邻居节点之间比较软件版本,低版本的节点向高版本的节点请求升级文件,高版本的节点下发升级文件给低版本的节点。该方法支持跨区域的网络设备软件升级功能,只需满足物理链路正常能够传输IP报文即可,不再依靠就近直接升级和依托于路由远程升级,能够最大限度的节省窄带卫星广播信道的资源,实现升级文件在全网的共享,保证网络所有节点软件版本一致。
【IPC分类】H04B7-185, G06F9-445
【公开号】CN104834540
【申请号】CN201510135363
【发明人】蒋元兵, 刘先桥, 王杨, 王凯, 王波, 陈量
【申请人】重庆金美通信有限责任公司
【公开日】2015年8月12日
【申请日】2015年3月26日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1