批量升级固件的方法

文档序号:9276681阅读:664来源:国知局
批量升级固件的方法
【技术领域】
[0001]本发明涉及通信技术领域,特别是涉及批量升级固件的方法。
【背景技术】
[0002]担任着一个电子产品最基础、最底层工作的软件称为固件(firmware),比如计算机主板上的基本输入/输出系统B1S(Basic Input/output System),通常这些硬件内所保存的程序是无法被用户直接读出或修改。但产品在生产的过程中以及出厂到达用户手中后,都有可能因为各种需求的更新需要升级固件。
[0003]随着产业的不断进步,出现了 WEB页面升级的方法,产品无需拆卸PCB板上的flash (闪存),取而代之的是登陆WEB界面直接在线升级,这样的升级方式更为便捷,快速,但却无法实现批量的升级,效率依然低下。
[0004]现今,生产自动化技术已经进入了高速发展的时代,产品生产的各个流程都已基本实现了自动化生产。目前固件升级也在逐步实现自动化,并有专门的智能系统实现批量自动化升级。现有的批量升级方法采用的是利用升级服务器通过网络将升级固件发送至各需要升级的设备,为使升级服务器可快速访问各待升级设备,将待升级设备接入到升级服务器所在的局域网,并为待升级设备分别配置相应的IP地址,升级完毕后重置各个待升级设备的IP地址,恢复到出厂设置的IP地址。这种方法需要在升级前后人工配置IP地址,无法自动配置IP地址,在待升级设备数量较大的时候带来工作量的大量提升,导致批量升级固件的效率低下。

【发明内容】

[0005]基于此,有必要针对现有的批量升级固件的效率低下的问题,提供一种无需配置待升级设备的IP地址,效率高的批量升级固件的方法。
[0006]批量升级固件的方法,包括:
[0007]建立多线程步骤:建立多线程模块,所述多线程模块用于调用文件传输工具;
[0008]接入设备步骤:通过交换机连接多个待升级设备,将所述交换机的已接入所述待升级设备的端口分别配置VLAN,将所述交换机的已接入所述待升级设备的端口配置为access 模式;
[0009]设置IP转换步骤:提供IP转换服务器,通过所述IP转换服务器与所述交换机连接,将所述交换机与所述IP转换服务器的连接的端口配置为trunk模式,所述IP转换服务器用于将IP地址转换为多个与所述VLAN分别对应的IP地址;
[0010]发送升级固件步骤:运行所述多线程模块,调用所述文件传输工具根据包含升级固件的升级报文,将所述升级固件分别发送至所述多个待升级设备。
[0011 ] 在一个实施例中,所述接入设备步骤之前还包括:
[0012]抓取报文步骤:提供测试设备,使用抓包工具抓取在测试设备通过页面升级方式进行升级的过程中的升级报文,所述升级报文包含升级固件,解析所述升级报文。
[0013]在一个实施例中,所述抓包工具为wireshark工具。
[0014]在一个实施例中,所述发送升级固件步骤之后包括:
[0015]校验重发步骤:接收所述待升级设备返回的校验值,如所述待升级设备返回的校验值与升级报文中的校验值不一致,则重新将对应的升级报文发送至所述待升级设备。
[0016]在一个实施例中,所述文件传输工具为curl工具。
[0017]上述批量升级固件的方法,通过IP转换服务器接入到网络,将升级服务器的IP地址转换为与待升级设备所在VLAN对应的IP地址,实现了升级服务器同时与多个待升级设备的通信,通过多线程模块将升级固件发送至待升级设备,实现了无需配置待升级设备的IP地址,简化工作,有效提高了批量升级固件的效率。
[0018]上述批量升级固件的方法,还提供了校验重传机制,有效提高了固件升级的可靠性。
【附图说明】
[0019]图1为本发明一较佳实施例的批量升级固件的方法的流程示意图;
[0020]图2为本发明一较佳实施例的批量升级固件的方法的网络架构示意图。
【具体实施方式】
[0021]为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。
[0022]值得一提的是,本发明尤其适用于各种电子设备或通信设备,如数字机顶盒、路由器、调制解调器或电脑,本发明适用于对多个上述电子设备或通信设备的固件进行批量升级。
[0023]例如,一种批量升级固件的方法,包括以下步骤:建立多线程模块,所述多线程模块用于调用文件传输工具;通过交换机连接多个待升级设备,将所述交换机的已接入所述待升级设备的端口分别配置VLAN,将所述交换机的已接入所述待升级设备的端口配置为access模式;提供IP转换服务器,通过所述IP转换服务器与所述交换机连接,将所述交换机与所述IP转换服务器的连接的端口配置为trunk模式,所述IP转换服务器用于将IP地址转换为多个与所述VLAN分别对应的IP地址;运行所述多线程模块,调用所述文件传输工具根据包含升级固件的升级报文,将所述升级固件分别发送至所述多个待升级设备。
[0024]如图1所示,本发明一较佳实施例的批量升级固件的方法包括:
[0025]步骤100,提供测试设备,使用抓包工具抓取在测试设备通过页面升级方式进行升级的过程中的升级报文,所述升级报文包含升级固件,解析所述升级报文。
[0026]例如,提供测试设备,通过测试设备登陆升级页面进行升级,使用抓包工具抓取测试设备在升级过程中的升级报文,所述升级报文包含升级固件,解析所述升级报文。
[0027]测试设备为待升级设备,其具有与待升级设备同样的硬件架构和固件,例如,在待升级设备中抽取一台待升级设备作为测试设备,通过测试设备进行固件升级,获取固件升级过程中的升级报文和升级固件。
[0028]提供一台页面升级服务器,页面升级服务器提供包含升级固件的升级页面的链接,如WEB页面的链接,升级方式为人工操作测试设备登陆到升级服务器的升级页面进行升级。登陆到该测试设备的升级页面后,根据页面提示选择升级固件的路径,点击页面的开始升级的提示框或按钮,测试设备获取并下载升级固件,开始升级,页面升级服务器以HTTP报文形式将升级固件发送至测试设备。不同设备或不同产品由于其WEB页面不同,升级路径也可能不同,但是原理一样。
[0029]使用抓包工具抓取升级过程中测试设备的HTTP报文,所述的HTTP报文即升级报文,所述升级报文包含升级固件。随后将抓取的HTTP报文保存,用于HTTP报文解析。升级过程相当于测试设备与升级服务器的交互的过程,而HTTP报文将体现升级过程中的交互过程。
[0030]解析HTTP报文协议,测试设备的升级过程分为三步:一、通过WEB页面登陆服务器;二、进入设备的升级页面;三、升级,服务器将升级固件发送到测试设备或测试设备下载升级固件。通过抓包工具抓取包含升级页面报文、路径和升级固件等信息的升级报文,解析该升级报文协议,记录升级报文的发送形式和内容。
[0031 ] 在一个实施例中,所述抓包工具为wireshark工具。
[0032]步骤200,建立多线程模块,所述多线程模块用于调用文件传输工具。
[0033]例如,提供升级服务器,在升级服务器上建立多线程模块,所述多线程模块用于调用文件传输工具。
[0034]升级服务器内存储有待升级设备的升级固件,在升级服务器上建立多线程模块,所述多线程模块具有多线程功能,例如,用于同时与多个终端进行通信,同时与多个终端发送和接收数据,这样,升级服务器通过多线程模块即可与多个待升级设备通信,向多个待升级设备发送数据,例如,将升级固件存储在多线程模块的根目录下,则多线程模块可直接获取升级固件;所述多线程模块用于调用文件传输工具,文件传输工具用于将升级固件发送至待升级设备。
[0035]在一个实施例中,所述文件传输工具为⑶RL工具,⑶RL工具是利用URL (UniformResource Locator,统一资源定位符)语法在命令行方式下工作的文件传输工具,用于将URL指向的文件直接下载或发送至终端,CURL兼容Unix、Linux、DOS、Win32或Win64等系统,可在上述系统的服务器或设备上运行。
[0036]步骤300,通过交换机连接多个待升级设备,将所述交换机的已接入所述待升级设备的端口分别配置VLAN,将所述交换机的已接入所述待升级设备的端口配置为access模式。
[0037]例如,将多个待升级设备接入交换机,根据接入的待升级设备的数量将交换机已接入待升级设备的端口分别配置多个VLAN,将交换机的已接入待升级设备的端口配置为access 模式。
[0038]多个待升级设备具有相同的硬件架构和固件配置,具有相同的出厂默认
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1