实现堆叠设备软件升级的方法、设备及系统的制作方法

文档序号:7686696阅读:257来源:国知局

专利名称::实现堆叠设备软件升级的方法、设备及系统的制作方法
技术领域
:本发明涉及堆叠设备技术,尤指一种堆叠设备软件升级的方法、控制堆叠设备软件升级的方法、网管设备、堆叠设备中的主设备及堆叠设备软件升级的系统。
背景技术
:相同类型支持智能弹性架构(IRF,IntelligentResilientFramework)特性的交换机可以通过互相连接构成联合设备,对外使用一个IP地址。其中每台设备称为一个单元(Unit),联合设备称为堆叠设备。堆叠设备由于其通过多个设备联合而构成的,因此能够提供高数据的端口和高性能的交换能力,同时也可以通过多台设备之间的互相备份增强设备的可靠性。在堆叠设备中,Unit号最小设备的称为主(Master)设备,其他的称为从(Slave)设备。在目前的技术中,主设备能够实现与各从设备之间的信息交互。由于堆叠设备中的各设备均是作为堆叠设备的一部分进行工作,因此为了使堆叠设备能够正常工作,必须保证各设备拥有相同的软件版本。这就需要在进行软件升级时,统一对各设备进行升级。而在现有技术中,堆叠设备软件版本的升级是比较费时、低效的过程。堆叠设备的软件升级主要包括两个过程,升级软件版本的复制和升级软件版本的配置。升级软件版本的复制是指将升级软件版本拷贝到堆叠设备中的各设备上,首先Master设备从外部服务器下载升级软件版本,然后通过Telnet协议传输至各Slave设备。在该复制过程中,由于Telnet协议需要每个设备具有独立IP地址,因此这一过程的实现需要将堆叠设备拆开,并赋予拆开的每个设备各自的独立IP。另外,升级软件版本的配置是指将升级软件版本配置到堆叠设备中的各设备上。具体的实现,首先将升级软件版本配置为Master设备的下次启动软件,并依次登录到每个Slave设备设置当前升级软件版本为下次启动软件。同时,为了实现堆叠设备中各设备的同步升级,还需重启设备,以生效配置的升级软件版本。可见,现有堆叠设备的软件升级过程复杂,需要重复使用Telnet命令将升级软件版本到堆叠设备中的各设备上,并且还需要逐个配置各设备是复制到设备的升级软件版本生效,效率低且容易出错。此外,该软件升级过程还需要分裂堆叠,在一定程度上影响了堆叠业务的正常使用。
发明内容有鉴于此,本发明提供了实现堆叠设备软件升级的方法、设备及系统,通过应用本发明的技术方案能够有效的提高堆叠设备软件升级的效率。为达到上述目的,本发明的技术方案具体为一种控制堆叠设备软件升级的方法,网管设备向堆叠设备中的主设备发送全局拷贝消息,指示主设备执行堆叠设备复制升级软件版本的操作;并,向堆叠设备中的主设备发送全局配置消息,指示主设备执行堆叠设备配置升级软件版本的操作。一种堆叠设备软件升级的方法,堆叠设备中的主设备收到全局拷贝消息后,将获取的升级软件版本发送至所述堆叠设备中的从设备;并,在收到全局配置消息后,为自身配置所述升级软件版本,并指示所述从设备配置所述升级软件版本。一种控制堆叠设备软件升级的网管设备,包括处理单元,用于在需要主设备执行堆叠设备复制升级软件版本的操作时,发送全局拷贝消息;以及,在需要主设备执行堆叠设备配置升级软件版本的操作时,发送全局配置消息;收发单元,用于向堆叠设备中的主设备发送收到的指示。一种堆叠设备中的主设备,包括执行单元,用于在收到全局拷贝消息后,发送升级软件版本;以及,在收到全局配置消息后,为所在主设备配置所述升级软件版本,并发送用于指示所述堆叠设备中的从设备配置所述升级软件版本的消息;收发单元,用于向堆叠设备中的从设备发送从所述主设备收到的升级软件版本以及消息。以及,包括上述网管设备和堆叠设备中主设备的实现堆叠设备软件升级的系统。本发明所提供的实现堆叠设备软件升级的技术方案,通过该网管设备向Master设备发送指示消息,进而由Master设备根据指示消息控制各Slave设备进行升级软件版本的复制和配置,有效的提高了堆叠设备软件升级的效率。从而,能够更加方便、快捷的实现堆叠设备的软件升级,避免堆叠设备由于升级过程复杂导致容易出错的问题。图1为本发明实施例系统的结构图;图2为本发明实施例网管设备的结构图;图3为本发明实施例堆叠设备中主设备的结构图;图4为本发明较佳实施例的方法流程图。具体实施方式在本部分的详细描述中,仅通过对实施本发明的发明者所预期的最佳方式的示例,示出并描述了本发明的较佳实施例。应意识到,可以在不背离本发明的前提下,就各个显而易见的方面对其进行修改。相应地,附图和说明书应被视为在本质上是示例性的,而不是限制性的。在本发明实施例的技术方案中,考虑到堆叠设备中的Master设备能够实现与各Slave设备之间的信息交互,因此为了提高堆叠设备软件升级的效率,能够更加方便、快捷的实现堆叠设备的软件升级,可以配置一台网管设备,通过该网管设备向Master设备发送指示消息,由Master设备根据指示消息控制各Slave设备进行升级软件版本的复制和配置,从而避免堆叠设备升级过程复杂以及容易出错的问题。在网管设备侧,该网管设备控制堆叠设备软件升级的需要执行的操作包括网管设备向堆叠设备中的主设备发送全局拷贝消息,指示主设备执行堆叠设备复制升级软件版本的操作;并,向堆叠设备中的主设备发送全局配置消息,指示主设备执行堆叠设备配置升级软件版本的操作。堆叠设备中的Master设备,为了实现整个堆叠设备的软件升级需要执行的操作包括堆叠设备中的Master设备收到全局拷贝消息后,将获取的升级软件版本发送至所述堆叠设备中的Slave设备;并,在收到全局配置消息后,为自身配置所述升级软件版本,并指示所述从设备配置所述升级软件版本。其中,Master设备将获取的升级软件版本发送至所有Slave设备的方法可以是Master设备将升级软件版本广播至所有Slave设备。升级软件版本的方式,也可以从网管设备处获取升级软件版本。此时,网管设备则可以向所述主设备发送全局拷贝消息之前,向所述主设备发送升级软件版本。此外,由于在Master设备上和Slave设备上配置升级软件版本的具体操作可以是,将升级软件版本配置下次启动软件,并在配置完下次启动软件后重启设备,因此网管设备可以向Master设备发送全局配置消息包括向所述主设备发送全局下次启动软件消息;并在收到所述主设备返回的设置成功响应时,向所述主设备发送全局重启消息。相应的,Master设备在收到全局下次启动软件消息时,将所述升级软件版本设置为下次启动软件,并指示所述从设备将所述升级软件版本设置为下次启动软件;当成功完成对自身以及从设备的设置后,向所述网管设备返回设置成功响应;并在收到全局重启消息时,在指示所述从设备执行重启操作后,自身进行重启。参见图1,图1为本发明实施例中实现堆叠设备软件升级的系统,包括网管设备和由Master设备与Slave设备组成的堆叠设备。其中,网管设备用于向堆叠设备中的主设备发送全局拷贝消息,指示主设备执行堆叠设备复制升级软件版本的操作;并,向堆叠设备中的主设备发送全局配置消息,指示主设备执行堆叠设备配置升级软件版本的操作。而堆叠设备中的Master设备收到全局拷贝消息后,将获取的升级软件版本发送至所述堆叠设备中的从设备;并,在收到全局配置消息后,为自身配置所述升级软件版本,并指示所述从设备配置所述升级软件版本。网管设备和Master设备具体的组成结构可参见图2和图3。参见图2,图2为本发明实施例中网管设备的结构图,包括处理单元和收发单元。具体的,处理单元,用于在需要主设备执行堆叠设备复制升级软件版本的操作时,发送全局拷贝消息;以及,在需要主设备执行堆叠设备配置升级软件版本的操作时,发送全局配置消息。收发单元,用于向堆叠设备中的主设备发送收到的指示。所述处理单元,还可进一步用于将升级软件版本发送至所述收发单元;相应的,收发单元,还可进一步用于将收到的升级软件版本发送至所述主设备。另外,收发单元,还可进一步用于将从所述主设备收到的消息发送至所述处理单元。相应的,处理单元,用于在收到所述主设备返回的拷贝成功响应时,向发送全局下次启动软件消息;并在收到所述主设备返回的设置成功响应时,向所述主设备发送全局重启消息。参见图3,图3为本发明实施例中Master设备的组成结构图,具体包括执行单元和收发单元。其中,执行单元,用于在收到全局拷贝消息后,发送升级软件版本;以及,在收到全局配置消息后,为所在主设备配置所述升级软件版本,并发送用于指示所述堆叠设备中的从设备配置所述升级软件版本的消息。收发单元,用于向堆叠设备中的从设备发送从所述主设备收到的升级软件版本以及消息。这里,所述收发单元可以通过广播方式将所述升级软件版本发送至所述堆叠设备中的从设备。所述收发单元,还可进一步用于接收从网管设备发送的升级软件版本,并发送至所述执行单元;相应的,所述执行单元,进一步用于从所述收发单元接收升级软件版本并保存。另外,所述收发单元,还可进一步用于将从网管设备收到的消息发送至所述执行单元。相应的,所述执行单元,在收到网管设备发送的全局下次启动软件消息时,将所述升级软件版本设置为下次启动软件,并通过所述收发单元向所述从设备发送将升级软件版本设置为下次启动软件的消息;并在成功完成对自身以及从设备的设置后,向所述网管设备返回设置成功响应;在收到网管设备发送的全局重启消息时,通过所述收发单元向所述从设备发送指示从设备重启的消息后,自身进行重启。在本发明实施例的技术方案中,网管设备与Master设备之间的信息交互可以利用简单网络管理协议(SNMP)协议以及自定义的协议来实现。SNMP采用了Client/Server模型的特殊形式代理站/网管站模型。对网络的管理与维护是通过SNMP网管站与代理站之间的交互完成。网管站主要依据管理信息库(MIB,ManagementInformationBase)定义信息的各种查询或操作,向代理站发送网络管理命令或请求,一般位于服务器端。代理站是位于成员设备上,主要负责接收网管站发送的消息,并与该设备上的其他模块进行沟通、交互,完成网管站所要求的查询或操作。以下,以SNMP协议来实现网关设备与Master设备之间的信息交互为例,介绍本发明的较佳实施例。当网管设备通过SNMP协议与Master设备进行交互时,则需要在网管设备中设置SNMP网管站,由SNMP网管站根据SNMP协议向设置了SNMP代理站的Master设备发送全局拷贝消息以及全局配置消息。相应的,在Master设备中也需要设置SNMP代理站,由SNMP代理站处理网管设备中SNMP网管站发送的全局拷贝消息以及全局配置消息。那么,网管设备中的处理单元则可以为根据SNMP设置的用于实现SNMP网管站的模块,根据SNMP协议发送全局拷贝消息以及全局配置消息。相应的,Master设备中的执行单元则可以是根据SNMP设置的用于实现SNMP代理站的模块,根据SNMP协议处理收到的全局拷贝消息以及全局配置消息。根据SNMP协议的特性,为了实现网管设备与Master设备之间的信息交互需要定义下列MIB,包括表SysCurTable、表FlhOperTable、表SysReloadScheduleTable、节点SysReloadSchedule、节点SysReloadAction,口节点SysReloadTag。其中,SysCurTable,用来定义并收集当前设备启动时所使用的软件版本信息。在本发明实施例后续的介绍,如无特殊说明,将堆叠设备中的各设备(包括Master设备和Slave设备)简称为设备。SysCurTable中可以包括软件版本的大小、版本号等信息。FlhOperTable,用来定义Master设备与网管设备之间升级软件版本的传输操作信息。如表一所示,为FlhOperTable的一个示例。该表格中也包含了对FlhOperTable中各字段说明。<table>tableseeoriginaldocumentpage11</column></row><table>表一SysReloadScheduleTable,用来定义下次启动时所使用的升级软件版本以及其他相关信息。表二所示为SysReloadScheduleTable表格的一个具体实例,该表格中也包含了对SysReloadScheduleTable中各字段说明。<formula>formulaseeoriginaldocumentpage12</formula>表二另夕卜,SysReloadSchedule用来在重启设备时,指定表SysReloadScheduleTable的索引,进而以SysReloadScheduleTable中叶只t象名为SysReloadlmage定义的版本文件为重启后配置的软本版本。SysReloadAction,用来指定重启设备的动作,在本发明实施例中,其取值为3,表示立即重启设备。另外,还可以将其取值1,表示为在指定的时间重启设备。SysReloadTag,用于选择需要重启的Slave设备。参见图4,图4为本发明较佳实施例的流程图。现详细介绍如下在步骤401中,网管设备向Master设备发送SNMP协议的GETNEXT报文,其中携带SysCurTable,用来查询Master设备当前软件版本。在步骤402中,由于定义的MIB会在基于Client/Server模型两端进行预先设置,因此Master设备收到携带SysCurTable的GETNEXT报文后,则能够获知网管设备需要自身返回当前正在使用的软件版本,Master设备向网管站返回自身当前正在使用的软件版本的信息。在堆叠设备中,由于堆叠设备中的所有设备均是使用相同版本的软件,因此Master设备返回的软件版本信息必然能够反映当前堆叠设备所使用的软件版本。在步骤403中,网管设备收到Master设备返回的软件版本信息,当Master设备当前使用的软件低于升级软件,则确定当前堆叠设备的软件需要升级,此时向Master设备发送SNMP协议的SET报文给Master设备,相当于全局拷贝消息,指示Master设备下载升级软件版本的信息。依据网管设备设置的FlhOperTable,假设网管设备的IP地址为10.153.130.69,升级软件版本为ar46-vrp340-r1601.bin,文件传输协议为FTP,网管站FTPServer的一个用户名与密码为admin和123456,则SNMP的SET报文的内容如下FlhOperType.65537=1〃1表示从网管上传文件到i殳备FlhOperProtocol.65537=1〃1表示FTP协议FhOperServerAddress.65537="10.153.130.69"FlhOperServerUser.65537="admin"FlhOperPassword.65537="123456"FlhOperSourceFile.65537="ar46-vrp340-rl601.bin"FlhOperDestinationFile.65537="ar46-vrp340-rl601.bin"FlhOperRowStatus.65537=4〃表示创建4亍其中,FlhOperTable表的行索引可以为定义的特定索引,表示对全局进行操作,如为65537。在定义了特定索引之后,Master设备接收到该索引的FlhOperTable表的数据之后,就会启动FTP客户端,从网管设备下载升级软件版本,并发送至各Slave设备。由于在MIB中,索引共有32为,高16位索引为1代表设备的框,在堆叠设备中也就是代表堆叠设备中的所有Unit。因此,特定索引的范围可以为65536(0x10000)~131071(0xlFFFF)之间的任意值。在步骤404中,Master设备接收到网管设备发送的SET报文后,检测SET报文的合法性,当收到的SET报文合法,则向网管设备返回成功;否则,返回失败。这里Master设备对SET报文的合法性检测,主要是对报文中携带的IP地址、文件名有效性等信息真实性的检测。在步骤405中,当SET报文检测合法之后,Master设备启动FTP客户端,从网管设备的FTPServer下载升级软件版本。在步骤406中,Master设备下载完升级软件版本之后,为升级软件版本定义索引,并通过广播将下载的升级软件版本拷贝到各个Slave设备上,如果文件拷贝失败,则向网管设备返回升级失败;否则,向网管设备返回拷贝成功响应。这里,除了可以采用Master设备主要向网管设备上报文件拷贝状态,还可以由网管设备通过向Master设备发送查询报文,来获知Master设备的文件拷贝状态。例如,网管设备可以向Master设备发送GET报文,携带FlhOperStatus.65537。根据表二中对FlhOperStatus的描述可知,FlhOperStatus可以体现三种状态包括成功、失败和正在进行。Master设备收到该GET报文后,如果文件正在传输,Master设备根据表二所定义的数据类型返回正在传输的信息,此时网管站等待一定的时间之后在发送同样的GET报文。如果Master设备返回成功,则返回成功,网管设备则认为文件传输成功;Master设备在其他情况下,则返回失败,此时网管设备则认为升级失败。在步骤407中,网管设备在确定升级软件版本成功复制到堆叠设备中的各设备上时,通过发送携带SysCurTable的GETNEXT报文给Master设备,向Master设备查询当前升级软件版本的索引。在步骤408中,Master设备返回升级软件版本的索引。如果在步骤408中定义的文件索引为131073,则此时Master设备向网管设备返回的索引为131073。如果Master不需要定义文件索引,步骤407和408则不是必需的。在步骤409中,网管设备发送SET报文给Master设备,设置堆叠设备的下次启动软件,相当于前述的全局下次启动软件消息。此时,SNMP操作的对象为SysReloadScheduleTable。报文的形式可以为SysReloadEntity.65537=1,SysReloadImage.65537=131073SysReloadReason.65537="upgradetonewsoftwareversion"SysReloadScheduleTime.65537=""SysReloadScheduleTagList.65537="all"SysReloadRowStatus.65537=4在步骤410中,Master设备接收步骤409中发送的报文后,判断当前是否存在配置软件的操作,如果存在就返回升级失败,如果不存在则返回成功响应。在步骤411中,网管设备收到Master设备返回的成功响应后,向Master设备发送SET报文,用于指示重启堆叠设备,相当于前述的全局重启消息。具体SNMP文件操作对象为节点SysReloadSchedule和SysReloadAction、SysReloadTag,取值如下SysReloadSchedule.O=65537SysReloadAction.O=3〃表示立即重启SysReloadTag.O="all"在步骤412中,Master设备接收到上述报文后,根据特定索引65537、SysReloadAction以及SysReloadTag的内容,确定需要重启整个堆叠设备,此时指示各Slave设备重启。这里,网管设备还可以在步骤409发送的SysReloadScheduleTagList中携带能够重启的Slave设备标记,在步骤411中发送的SysReloadTag中携带本次重启的Slave设备标记,将SysReloadTag中携带的标记和SysReloadScheduleTagList中携带的标记相比较,重启被SysReloadScheduleTagList包含的Slavei殳备。在步骤413中,Master设备在指示各Slavei殳备重启后,然后Master重启。本发明实施例的技术方案中,通过网管设备向Master设备发送指示消息,由Master设备根据指示消息控制各Slave设备进行升级软件版本的复制和配置,提高了堆叠设备软件升级的效率和正确性。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。权利要求1、一种控制堆叠设备软件升级的方法,其特征在于,网管设备向堆叠设备中的主设备发送全局拷贝消息,指示主设备执行堆叠设备复制升级软件版本的操作;并,向堆叠设备中的主设备发送全局配置消息,指示主设备执行堆叠设备配置升级软件版本的操作。2、根据权利要求1所述的方法,其特征在于,所述网管设备向所迷主设备发送全局拷贝消息之前,进一步包括向所述主设备发送升级软件版本。3、根据权利要求1或2所述的方法,其特征在于,所述网管设备向堆叠设备中的主设备发送全局配置消息包括所述网管设备向所述主设备发送全局下次启动软件消息;并在收到所述主设备返回的设置成功响应时,向所述主设备发送全局重启消息。4、根据权利要求1或2所述的方法,其特征在于,在所述网管设备中设置简单网络管理协议SNMP网管站,由所述SNMP网管站根据SNMP协议向设置了SNMP代理站的主设备发送全局拷贝消息以及全局配置消息。5、一种堆叠设备软件升级的方法,其特征在于,堆叠设备中的主设备收到全局拷贝消息后,将获取的升级软件版本发送至所述堆叠设备中的从设备;并,在收到全局配置消息后,为自身配置所述升级软件版本,并指示所述从设备配置所述升级软件版本。6、根据权利要求5所述的方法,其特征在于,该方法进一步包括所述主设备从网管设备处获取升级软件版本。7、根据权利要求5所述的方法,其特征在于,所述主设备将获取的升级软件版本发送至所述从设备包括所述主设备将所述升级软件版本广播至所述堆叠设备中的从设备。8、根据权利要求5、6或7所述的方法,其特征在于,所述堆叠设备中的主设备在收到全局配置消息后为自身配置所述升级软件版本,并指示所述从设备配置所述升级软件版本包括所述主设备收到全局下次启动软件消息时,将所述升级软件版本设置为下次启动软件,并指示所述从设备将所述升级软件版本设置为下次启动软件;当成功完成对自身以及从设备的设置后,向所述网管设备返回设置成功响应;所述主设备收到全局重启消息时,在指示所述从设备执行重启操作后,自身进行重启。9、根据权利要求5、6或7所述的方法,其特征在于,在所述主设备中设置简单网络管理协议SNMP代理站,由所述SNMP代理站处理网管设备中SNMP网管站发送的全局拷贝消息以及全局配置消息。10、一种控制堆叠设备软件升级的网管设备,其特征在于,包括处理单元,用于在需要主设备执行堆叠设备复制升级软件版本的操作时,发送全局拷贝消息;以及,在需要主设备执行堆叠设备配置升级软件版本的操作时,发送全局配置消息;收发单元,用于向堆叠设备中的主设备发送收到的指示。11、根据权利要求IO所述的网管设备,其特征在于,所述处理单元,进一步用于将升级软件版本发送至所述收发单元;所述收发单元,进一步用于将收到的升级软件版本发送至所述主设备。12、根据权利要求10或11所述的网管设备,其特征在于,所述收发单元,进一步用于将从所述主设备收到的消息发送至所述处理单元;所述处理单元,用于向发送全局下次启动软件消息;并在收到所述主设备返回的设置成功响应时,向所述主设备发送全局重启消息。13、根据权利要求10或11所述的网管设备,其特征在于,所述处理单元用于实现简单网络管理协议SNMP网管站,根据SNMP协议发送全局拷贝消息以及全局配置消息。14、一种堆叠设备中的主设备,其特征在于,包括执行单元,用于在收到全局拷贝消息后,发送升级软件版本;以及,在收到全局配置消息后,为所在主设备配置所述升级软件版本,并发送用于指示所述堆叠设备中的从设备配置所述升级软件版本的消息;收发单元,用于向堆叠设备中的从设备发送从所述主设备收到的升级软件版本以及消息。15、根据权利要求14所述的主设备,其特征在于,所述收发单元,进一步用于接收从网管设备发送的升级软件版本,并发送至所述执行单元;所述执行单元,进一步用于从所述收发单元接收升级软件版本并保存。16、根据权利要求14所述的主设备,其特征在于,所述收发单元,通过广播方式将所述升级软件版本发送至所述堆叠设备中的从设备。17、根据权利要求14、15或16所述的主设备,其特征在于,所述收发单元,进一步用于将从网管设备收到的消息发送至所述执行单元;所述执行单元,在收到网管设备发送的全局下次启动软件消息时,将所述升级软件版本设置为下次启动软件,并通过所述收发单元向所述从设备发送将升级软件版本设置为下次启动软件的消息;并在成功完成对自身以及从设备的设置后,向所述网管设备返回设置成功响应;在收到网管设备发送的全局重启消息时,通过所述收发单元向所述从设备发送指示从设备重启的消息后,自身进4亍重启。18、权利要求14、15或16所述的主设备,其特征在于,所述执行单元用于实现筒单网络管理协议SNMP代理站,根据SNMP协议处理收到的全局拷贝消息以及全局配置消息。19、一种实现堆叠设备软件升级的系统,其特征在于,至少包括如权利要求10至13中任一权利要求所述的网管设备和如权利要求14至18中任一权利要求所述的主设备。全文摘要本发明公开了一种实现堆叠设备软件升级的方法、设备及系统,在本发明的技术方案中,通过该网管设备向堆叠设备中的主设备发送指示消息,由主设备根据指示消息控制堆叠设备各从设备进行升级软件版本的复制和配置,有效的提高了堆叠设备软件升级的效率。从而,能够更加方便、快捷的实现堆叠设备的软件升级,避免堆叠设备由于升级过程复杂导致容易出错的问题。文档编号H04L12/24GK101217411SQ20081005593公开日2008年7月9日申请日期2008年1月2日优先权日2008年1月2日发明者张学明申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1