软件更新方法、服务器及存储介质与流程
未命名
07-27
阅读:87
评论:0
1.本发明涉及通信技术领域,尤其涉及一种软件更新方法、服务器及存储介质。
背景技术:
2.通信基站的软件版本经常需要升级,以增加新功能满足用户需求或者修复漏洞,一个网管服务器一般管理多个基站,在第四代移动通信技术(the 4th generation mobile communication technology,4g)和第五代移动通信技术(5th-generation mobile communication technology,5g)网络中,一个网管服务器管理成千上万个基站,由于硬件性能的瓶颈和网管服务器带宽的限制,若同时对这些基站进行升级,必须分批次的分发基站版本文件,将会耗费大量的时间,导致基站版本的更新效率较低。因此,如何高效的为各基站分发软件数据包是目前亟待解决的问题。
技术实现要素:
3.本发明实施例在于提供一种软件更新方法、服务器及存储介质,旨在提高给各基站分发软件数据包的效率,实现最短时间给各基站分发完软件数据包。
4.第一方面,本发明实施例提供一种软件更新方法,包括:
5.获取文件服务器支持的并行下载数量;
6.根据所述并行下载数量和多个基站组中的每个所述基站组的基站总数,从由多个所述基站组中的各基站形成的基站库中确定目标基站;
7.向所述目标基站发送第一软件下载指令,以使所述目标基站根据所述第一软件下载指令,从所述文件服务器中下载目标软件数据包;
8.在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带所述种子基站标签的基站所处的基站组中的其余基站根据所述第二软件下载指令从携带所述种子基站标签的基站中下载所述目标软件数据包。
9.第二方面,本发明实施例还提供一种服务器,所述服务器包括处理器、存储器、存储在所述存储器上并可被所述处理器执行的计算机程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,其中所述计算机程序被所述处理器执行时,实现如本发明说明书提供的任一项软件更新方法的步骤。
10.第三方面,本发明实施例还提供一种存储介质,用于计算机可读存储,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如本发明说明书提供的任一项软件更新的方法的步骤。
11.本发明实施例提供一种软件更新方法、服务器及存储介质,本发明实施例通过获取文件服务器支持的并行下载数量;然后根据并行下载数量和多个基站组中的每个基站组的基站总数,从由多个基站组中的各基站形成的基站库中确定目标基站;之后向目标基站发送第一软件下载指令,以使目标基站根据第一软件下载指令,从文件服务器中下载目标
软件数据包;在获取到目标基站返回的目标软件数据包的下载完成信息时,对目标基站添加种子基站标签,并向携带种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带种子基站标签的基站所处的基站组中的其余基站根据第二软件下载指令从携带种子基站标签的基站中下载目标软件数据包。通过文件服务器对分发目标基站目标软件数据包,并将已接收目标软件数据包的目标基站添加种子基站标签,使携带种子标签的基站对所处的基站组中的其余基站从携带种子标签的基站中下载目标软件数据包,极大地提高给各基站分发软件数据包的效率,实现最短时间给各基站分发完软件数据包。
附图说明
12.图1为本发明实施例提供的一种软件更新方法的流程示意图;
13.图2为图1中的软件更新方法的子步骤流程示意图;
14.图3为本发明实施例提供的另一种软件更新方法的流程示意图;
15.图4为本发明实施例提供的软件更新方法的一场景示意图;
16.图5为本发明实施例提供的一种服务器的结构示意性框图。
具体实施方式
17.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
18.附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
19.应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
20.本发明实施例提供一种软件更新方法、服务器及存储介质。其中,该软件更新方法可应用于服务器中,该服务器可以是网管服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
21.下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
22.请参照图1,图1为本发明实施例提供的一种软件更新方法的流程示意图。
23.如图1所示,该软件更新方法包括步骤s101至步骤s104。
24.步骤s101、获取文件服务器支持的并行下载数量。
25.其中,文件服务器是用于给各基站提供下载的服务器,该并行下载数量为文件服务器在相同时刻点能够提供传输链路的数量,传输链路的数量是由文件服务器的硬件资源决定的,该硬件资源可以根据实际情况进行确定,本实施例对此不做具体限定,例如,该硬
件资源可以是文件服务器的中央处理器(central processing unit,cpu)利用率、内存利用率和传输带宽利用率等。
26.在一实施例中,获取文件服务器的cpu利用率、内存利用率和传输带宽利用率和获取预设的cpu利用率、内存利用率和传输带宽利用率与传输链路的数量之间的第一映射关系表,从该第一映射关系表中查询文件服务器的cpu利用率、内存利用率和传输带宽利用率对应的传输链路的数量,得到文件服务器传输链路的数量。其中,该第一映射关系表为预先根据文件服务器的cpu利用率、内存利用率、传输带宽利用率和传输链路的数量建立的,该第一映射关系表可以根据实际情况进行建立,本实施例对此不做具体限定。通过该第一映射关系表能够准确的查询得到文件服务器在相同时刻点的能够提供的传输链路的数量。
27.示例性的,获取文件服务器的cpu利用率为30%、内存利用率为50%和传输带宽利用率为45%,根据cpu利用率30%、内存利用率50%和传输带宽利用率45%从该映射关系表中查询得到文件服务器传输链路的数量为5。
28.步骤s102、根据所述并行下载数量和多个基站组中的每个所述基站组的基站总数,从由多个所述基站组中的各基站形成的基站库中确定目标基站。
29.其中,该基站库为同一基站组内基站组成的基站库,同一基站组内的各基站能够通信连通,不同基站组的各基站不能通信连通。
30.在一实施例中,获取待下载目标软件数据包的各基站的基站信息,该基站信息包括基站与各基站的连通信息,根据各基站的连通信息,将能够通信连通的基站分在同一基站组,得到多个基站组,对每个基站组内的基站进行归集,得到每个基站组的基站库。通过将能够通信连通的基站分在同一基站组,能够提高基站组内传输目标软件数据包的准确性。
31.示例性的,待下载目标软件数据包的基站包括基站1、基站2、基站3、基站4和基站5,从各基站的基站信息中确定基站1与基站2和基站5连通,基站3和基站4连通,则将基站1、基站2和基站5分在基站组1中,将基站3和基站4分在基站组2中。
32.在一实施例中,获取每个所述基站与各所述基站的传输损耗;根据每个基站与各基站的传输损耗,将传输损耗小于或等于预设阈值的各基站分在同一基站组,得到多个基站组。其中,传输损耗是基站之间传输数据的损耗值,该预设阈值可以根据实际情况进行设置,本实施例对此不做具体限定,例如,该预设阈值可以设置为0.03db,通过基站之间的传输损失小于或等于预设阈值的基站分在同一基站组,能够提高基站组内传输目标软件数据包的准确性和效率。
33.示例性的,待下载目标软件数据包的基站包括基站6、基站7、基站8、基站9和基站10,预设阈值为0.03db,基站6与基站7之间传输损耗为0.02db,基站6与基站8之间传输损耗为0.04db,基站6与基站8之间传输损耗为0.05db,基站6与基站9之间传输损耗为0.05db,基站6与基站10之间传输损耗为0.01db,基站7与基站8之间传输损耗为0.05db,基站7与基站9之间传输损耗为0.02db,基站7与基站10之间传输损耗为0.03db,基站8与基站9之间传输损耗为0.01db,基站8与基站10之间传输损耗为0.08db,基站9与基站10之间传输损耗为0.04db,由上可知,基站6、基站7和基站10之间的传输损耗小于0.03db,基站8和基站9之间的传输损耗小于0.03db,则将基站6、基站7和基站10分在基站组3中,将基站8和基站9分在基站组4中。
34.在一实施例中,获取每个基站待下载的软件数据包信息;根据每个基站待下载的软件数据包信息,将待下载的软件数据包相同且传输损耗小于或等于预设阈值的各基站分在同一基站组,得到多个所述基站组。通过将待下载的软件数据包相同的基站分在同一基站组,能够提高基站组内传输软件数据包的效率。
35.在一实施例中,如图2所示,步骤s102包括子步骤s1021至子步骤s1022。
36.子步骤s1021、根据各所述基站组的基站总数,确定各所述基站组内的目标基站的分配比例。
37.示例性的,基站组1包括30个基站、基站组2包括50个基站、基站组3包括20个基站和基站组4包括60个基站,对各基站组中的基站总数做比例运算,得到基站组1:基站组2:基站组3:基站组4=3:5:2:6,则确定各基站组内的目标基站的分配比例为基站组1:基站组2:基站组3:基站组4=3:5:2:6。
38.子步骤s1022、根据各所述基站组内的目标基站的分配比例和所述并行下载数量,从由多个所述基站组中的各基站形成的基站库中确定目标基站。
39.根据并行下载数量和各基站组内的目标基站的分配比例,确定各基站组内的目标基站的分配数量;根据各基站组内的目标基站的分配数量,从基站库中确定各基站组内的目标基站。通过确定各基站组内的目标基站的分配数量,进而从基站库中确认各基站组内的目标基站,能够提高基站组内传输目标软件数据包的准确性和效率。
40.需要说明的是,从各基站组的基站库中确定各基站组内的目标基站可以实际情况进行确认,本实施例对此不做具体限定,例如,从基站库中随机选取分配数量个的基站作为目标基站。
41.示例性的,各基站组内的目标基站的分配比例为基站组1:基站组2:基站组3:基站组4=3:5:2:6,文件服务器的并行下载数量为16,则基站组1目标基站分配的数量为3,基站组2目标基站分配的数量为5,基站组3目标基站分配的数量为2,基站组4目标基站分配的数量为6,从基站组1中随机选取3个基站作为目标基站,从基站组2中随机选取5个基站作为目标基站,从基站组3中随机选取2个基站作为目标基站,从基站组4中随机选取6个基站作为目标基站。
42.示例性的,各基站组内的目标基站的分配比例为基站组5:基站组6:基站组7:基站组8=3:5:2:6,文件服务器的并行下载数量为18,先对各基站组按照比例进行目标基站的分配,将剩余未分配的目标基站数量按照基站组中基站数量由多到少依次进行分配,则先对基站组5目标基站分配的数量为3,基站组6目标基站分配的数量为5,基站组7目标基站分配的数量为2,基站组8目标基站分配的数量为6,还剩2个目标基站数量未分配,将1个未分配目标基站数量分配给基站组8和将1个未分配目标基站数量分配给基站组6,则5目标基站分配的数量为3,基站组6目标基站分配的数量为6,基站组7目标基站分配的数量为2,基站组8目标基站分配的数量为7。从基站组5中随机选取3个基站作为目标基站,从基站组6中随机选取6个基站作为目标基站,从基站组7中随机选取2个基站作为目标基站,从基站组8中随机选取7个基站作为目标基站。
43.在一实施例中,根据并行下载数量,从各基站组的基站库中选取出相同数量的基站作为目标基站,通过从各基站组的基站库中选取出相同数量的基站作为目标基站,能够提高目标基站选取的效率。
44.示例性的,并行下载数量为10,存在基站组1、基站组2、基站组3、基站组4和基站组5,则给基站组1、基站组2、基站组3、基站组4和基站组5各分配目标基站的数量为2,从基站组1的基站库中选取2个基站作为目标基站、从基站组2的基站库中选取2个基站作为目标基站、从基站组3的基站库中选取2个基站作为目标基站、从基站组4的基站库中选取2个基站作为目标基站和从基站组5的基站库中选取2个基站作为目标基站。
45.示例性的,并行下载数量为12,存在基站组6、基站组7、基站组8、基站组9和基站组10,则给基站组6、基站组7、基站组8、基站组9和基站组10各分配目标基站的数量为2,剩余两个目标基站未确认,获取每个基站组中基站总数,将剩余两个目标基站分配给基站总数排在第一和基站总数排在第二的基站组,其中,基站组8的基站总数排在第一,基站组6的基站总数排在第二,基站组6分配目标基站数量为3、基站组7分配目标基站数量为2、基站组8分配目标基站数量为3、基站组9分配目标基站数量为2和基站组10分配目标基站数量为2,从基站组6的基站库中选取3个基站作为目标基站、从基站组7的基站库中选取2个基站作为目标基站、从基站组8的基站库中选取3个基站作为目标基站、从基站组9的基站库中选取2个基站作为目标基站和从基站组10的基站库中选取2个基站作为目标基站。
46.在一实施例中,获取各基站能够支持的并行下载数量,将文件服务器支持的并行下载数量、各基站组中的基站总数和各基站能够支持的并行下载数量输入至预设的目标基站分配模型中,得到各基站组中分配的目标基站的分配数量,从基站库中确定各基站组内的目标基站。其中,各基站能够支持的并行下载数量为每个基站在相同时刻点能够提供的传输链路的数量,该目标基站分配模型为预先训练好的神经网络模型,该神经网络模型可以根据实际情况进行选择,本实施例对此不做具体限定,例如,该神经网络模型可以卷积神经网络模型、循环神经网络模型和循环卷积神经网络模型等神经网络模型。通过目标基站分配模型进行目标基站的分配,能够提高目标基站分配的准确性。
47.在一实施例中,获取各基站能够支持的并行下载数量的方式可以为:获取每个基站的cpu利用率、内存利用率和传输带宽利用率;获取预设的基站的cpu利用率、内存利用率和传输带宽利用率与传输链路之间的第二映射关系表,从该第二映射关系表中查询每个基站的cpu利用率、内存利用率和传输带宽利用率对应的传输链路的数量,得到每个基站的传输链路的数量。其中,该第二映射关系表为预先根据基站的cpu利用率、内存利用率、传输带宽利用率和传输链路的数量建立的,该第二映射关系表可以根据实际情况进行建立,本实施例对此不做具体限定。通过该第二映射关系表能够准确的查询得到每个基站在相同时刻点的能够提供的传输链路的数量。
48.在一实施例中,该预设的目标基站分配模型的训练方式可以为:将文件服务器支持的并行下载数量、各基站组中的基站总数、各基站能够支持的并行下载数量和各基站组中分配的目标基站的分配数量确定为一条目标样本数据,根据多个样本数据对神经网络模型进行迭代训练,得到目标基站分配模型。通过对多个目标样本数据进行迭代直至收敛能够准确的得到目标基站分配模型。
49.在一实施例中,根据多个样本数据对神经网络模型进行迭代训练,得到目标基站分配模型的方式可以为:将该目标样本数据输入至神经网络模型中,得到各基站组中分配的目标基站的预测分配数量,根据各基站组中分配的目标基站的预测分配数量和各基站组中分配的目标基站的分配数量,调整神经网络模型的模型参数直至该神经网络模型收敛,
得到目标基站分配模型。通过调整神经网络模型的模型参数,能够提高目标基站分配模型分配的准确性。
50.在一实施例中,根据各基站组中分配的目标基站的预测分配数量和各基站组中分配的目标基站的分配数量,调整神经网络模型的模型参数直至该神经网络模型收敛,得到目标基站分配模型的方式可以为:根据预测分配数量和分配数量,确定模型的损失值,根据该损失值确认模型是否收敛,若神经网络模型未收敛,则调整神经网络模型的模型参数,并继续训练神经网络模型,直至神经网络模型收敛,得到目标基站分配模型。
51.在一实施例中,根据预测分配数量和分配数量,确定模型的损失值的方式可以为:获取预设第一权重值和预设第二权重值,将预设第一权重值和预测分配数量做乘法运算,得到第一参数;将预设第二权重值和分配数量做乘法运算,得到第二参数,对第一参数与第二参数做减法运算并取绝对值,得到损失值。其中,该预设第一权重值和预设第二权重值可以根据实际情况进行设置,本实施例对此不做具体限定。通过对预测分配数量和分配数量进行权重的运算,能够准确的得到模型的损失值。
52.在一实施例中,根据该损失值确认模型是否收敛的方式为:确定该损失值是否大于或等于预设损失值,若该损失值大于或等于预设损失值,确定神经网络模型未收敛,若该损失值小于预设损失值,确定神经网络模型已收敛。其中,该预设损失值可以根据实际情况进行设置,本实施例对此不做具体限定。通过确定损失值与预设损失值的大小能够准确的确定模型是否收敛。
53.步骤s103、向所述目标基站发送第一软件下载指令,以使所述目标基站根据所述第一软件下载指令,从所述文件服务器中下载目标软件数据包。
54.其中,该第一软件下载指令用于指示目标基站从文件服务器中下载目标软件数据包。
55.在一实施例中,在确定目标基站之后,生成第一软件下载指令,并将该第一软件下载指令发送给各目标基站,各目标基站接收到该第一软件下载指令,根据该第一软件下载指令从文件服务器中下载该目标软件数据包。目标基站根据该第一软件下载指令能够准确的从文件服务器中下载该目标软件数据包。
56.步骤s104、在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带所述种子基站标签的基站所处的基站组中的其余基站根据所述第二软件下载指令从携带所述种子基站标签的基站中下载所述目标软件数据包。
57.其中,种子基站标签用于对基站进行标识,携带种子基站标签的基站能够给同一基站组内的基站传输目标软件数据包,该种子基站标签可以根据实际情况进行设置,本实施例对此不做具体限定,例如,该种子基站标签可以在基站的基站信息中加入数字1。该第二软件下载指令用于指示基站从同一基站组内携带种子基站标签的基站中下载目标软件数据包。
58.在一实施例中,在获取到目标基站发送的目标软件数据包的下载完成信息时,对个目标基站添加种子基站标签,并生成第二软件下载指令,将第二软件下载指令发送给携带种子基站标签的基站所处的基站组中的其余基站,其余基站接收到第二软件下载指令后
根据第二软件下载指令从携带种子基站标签的基站中下载目标软件数据包。通过从携带种子基站标签的基站处下载目标软件数据包,能够提高数据包下载的效率。
59.在一实施例中,其余基站接收到第二软件下载指令后根据第二软件下载指令从携带种子基站标签的基站中下载目标软件数据包的方式可以为:获取同一基站组内携带种子基站标签的基站的并行下载数量,对同一基站组内未下载目标软件数据包的基站进行排队,得到未下载目标软件数据包的基站队列;根据携带种子基站标签的基站的并行下载数量,从未下载目标软件数据包的基站队列中选取并行下载数量个的基站作为第一批下载的基站,第一批下载的基站从携带种子基站标签的基站中下载目标软件数据包。通过从携带种子基站标签的基站处下载目标软件数据包,能够提高数据包下载的效率。
60.需要说明的是,对同一基站组内未下载目标软件数据包的基站进行排队的方式可以根据实际情况进行选择,本实施例对此不做具体限定,例如,根据基站与携带种子基站标签的基站之间的传输损耗由低到高进行排序,得到未下载目标软件数据包的基站队列。
61.示例性的,基站组中包括基站1、基站2、基站3、基站4、基站5、基站6、基站7、基站8、基站9和基站10,其中,基站1为携带种子基站标签的基站,基站1的并行下载数量为3,从基站2、基站3、基站4、基站5、基站6、基站7、基站8、基站9和基站10中选取基站2、基站3和基站4作为第一批下载的基站,基站2、基站3和基站4从基站1中下载目标软件数据包。通过从携带种子基站标签的基站处下载目标软件数据包,能够提高数据包下载的效率。
62.在一实施例中,当获取到基站发送的下载失败信息时,生成第三软件下载指令,下载失败信息是基站从携带种子基站标签的基站下载目标软件数据包失败时生成的;将第三软件下载指令发送给下载目标软件数据包失败的基站,以使下载目标软件数据包失败的基站根据第三软件下载指令从文件服务器中下载目标软件数据包。其中,该第三软件下载指令用于指示下载目标软件失败的基站从文件服务器中下载目标软件数据包。在基站从同一基站组内的携带种子基站标签的基站下载目标软件数据包失败时,指示该基站从文件服务器中下载目标软件数据包,能够提高目标软件数据包下载的效率和准确性。
63.在一实施例中,当获取到基站发送的下载失败信息时,生成第四软件下载指令,下载失败信息是基站从携带种子基站标签的基站下载目标软件数据包失败时生成的;将第四软件下载指令发送给下载目标软件数据包失败的基站,以使基站根据第四软件下载指令从所属的基站组中的其他携带种子基站标签的基站中下载目标软件数据包。其中,该第四软件下载指令用于指示下载目标软件失败的基站从所属的基站组中的其他携带种子基站标签的基站中下载目标软件数据包。在基站从同一基站组内的携带种子基站标签的基站下载目标软件数据包失败时,指示该基站从所属的基站组中的其他携带种子基站标签的基站中下载目标软件数据包,能够提高目标软件数据包下载的效率和准确性。
64.示例性的,基站组中包括基站1、基站2、基站3、基站4、基站5、基站6、基站7、基站8、基站9和基站10,其中,基站1和2为携带种子基站标签的基站,基站3从基站1中下载目标软件数据包失败,并向服务器发送下载失败信息,该下载信息包括基站3从基站1中下载目标软件数据包失败,服务器生成第四软件下载指令,该第四软件下载指令用于指示从基站2中下载目标软件数据包,将该第四软件下载指令发送给基站3,基站3根据该第四软件下载指令从基站2中下载该目标软件数据包。
65.请参照图3,图3为本发明实施例提供的另一种软件更新方法的流程示意图。
66.如图3所示,该软件更新方法包括步骤s201。
67.步骤s201、在获取到基站发送的所述目标软件数据包的下载完成信息时,向下载完所述目标软件数据包的基站发送种子基站标签添加指令,以使所述基站根据所述种子基站标签添加指令添加所述种子基站标签,以使携带所述种子基站标签的基站所属的基站组中未下载所述目标软件数据包的基站从携带所述种子基站标签的基站中下载所述目标软件数据包。
68.在获取到基站发送的目标软件数据包的下载完成信息时,生成给下载完成目标软件数据包基站添加种子基站标签的种子基站标签添加指令,将该种子基站标签添加指令发送给下载完目标软件数据包的基站,该基站接收到该种子基站标签添加指令,根据该种子基站标签添加指令添加种子基站标签,以使该基站携带种子基站标签。
69.在一实施例中,在基站添加种子基站标签后,获取携带种子基站标签的各基站的并行下载数量,获取同一基站组内未下载目标软件数据包的基站,对未下载目标软件数据包的基站进行排队,得到未下载目标软件数据包的基站队列,从未下载目标软件数据包的基站队列中选取各并行下载数量个的基站作为第二批下载的基站,第二批下载的基站从携带种子基站标签的基站中下载目标软件数据包。通过从携带种子基站标签的基站处下载目标软件数据包,能够提高数据包下载的效率。
70.示例性的,基站组中包括基站1、基站2、基站3、基站4、基站5、基站6、基站7、基站8、基站9、基站10、基站11、基站12、基站13、基站14、基站15、基站16、基站17、基站18、基站19和基站20,其中,基站1、基站2、基站3和基站4为携带种子基站标签的基站,基站1、基站2、基站3和基站4的并行下载数量均为3,从基站5、基站6、基站7、基站8、基站9、基站10、基站11、基站12、基站13、基站14、基站15、基站16、基站17、基站18、基站19和基站20中选取基站5、基站6、基站7、基站8、基站9、基站10、基站11、基站12、基站13、基站14、基站15和基站16作为第二批下载的基站,基站5、基站6、基站7、基站8、基站9、基站10、基站11、基站12、基站13、基站14、基站15和基站16从基站1、基站2、基站3和基站4中下载目标软件数据包。通过从携带种子基站标签的基站处下载目标软件数据包,能够提高数据包下载的效率。需要说明的是,基站组中还存在基站17、基站18、基站19和基站20未下载目标软件数据包,则通过第三轮从携带种子基站标签的基站中下载该目标软件数据包。
71.在一实施例中,获取各基站组中未下载目标软件数据包的基站的数量;根据各基站组中未下载目标软件数据包的基站的数量,从多个基站组中未下载目标软件数据包的基站确定目标基站。通过确定各基站组中未下载目标软件数据包的基站的数量,重新确认目标基站,以使重新确认的目标基站从文件服务器处下载目标软件数据包。能够提高基站下载目标软件数据包的效率,实现最短时间给各基站分发完目标软件数据包。
72.在一实施例中,获取已下载目标软件数据包的携带种子基站标签的各基站的下载信息,其中,下载信息包括基站下载的目标软件数据包中子软件数据包的标识;将携带种子基站标签的各基站的下载信息发送给未下载软件数据包的基站,以使未下载软件数据包的基站根据携带种子基站标签的各基站的下载信息从对应的基站下载子软件数据包。其中,该子软件数据包的标识可以根据实际情况进行设置,本实施例对此不做具体限定。通过将携带种子基站标签的各基站的下载信息发送给未下载软件数据包的基站,能够使未下载软件数据包的基站根据该携带种子基站标签的各基站的下载信息选择有所需子软件数据包
的基站处下载软件数据包,能够提高软件数据包下载的效率和准确性。
73.示例性的,如图4所示,服务器10获取文件服务器支持的并行下载数量,根据并行下载数量、基站组1 30、基站组2 40和基站组3 50中基站总数,从基站组1 30、基站组2 40和基站组3 50中确定目标基站,当确定基站组1 30中的基站1、基站组2 40中的基站1和基站组3 50中的基站1为目标基站,向基站组1 30中的基站1、基站组2 40中的基站1和基站组3 50中的基站1发送第一软件下载指令,基站组1 30中的基站1、基站组2 40中的基站1和基站组3 50中的基站1根据第一软件下载指令从文件服务器20中下载目标软件数据包。在获取到基站组1 30中的基站1、基站组2 40中的基站1和基站组3 50中的基站1发送的的下载完成信息时,对基站组1 30中的基站1、基站组2 40中的基站1和基站组3 50中的基站1添加种子基站标签,并向基站组1 30、基站组2 40和基站组3 50的其余基站发送第二软件下载指令,基站组1 30中未下载软件数据包的基站从同一基站组内的基站1中下载软件数据包,基站组2 40中未下载软件数据包的基站从同一基站组内的基站1中下载软件数据包,基站组3 50中未下载软件数据包的基站从同一基站组内的基站1中下载软件数据包。
74.上述实施例中的软件更新方法,通过获取文件服务器支持的并行下载数量;然后根据并行下载数量和多个基站组中的每个基站组的基站总数,从由多个基站组中的各基站形成的基站库中确定目标基站;之后向目标基站发送第一软件下载指令,以使目标基站根据第一软件下载指令,从文件服务器中下载目标软件数据包;在获取到目标基站返回的目标软件数据包的下载完成信息时,对目标基站添加种子基站标签,并向携带种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带种子基站标签的基站所处的基站组中的其余基站根据第二软件下载指令从携带种子基站标签的基站中下载目标软件数据包。通过文件服务器对分发目标基站目标软件数据包,并将已接收目标软件数据包的目标基站添加种子基站标签,使携带种子标签的基站对所处的基站组中的其余基站从携带种子标签的基站中下载目标软件数据包,极大地提高给各基站分发软件数据包的效率,实现最短时间给各基站分发完软件数据包。
75.请参阅图5,图5为本发明实施例提供的一种服务器的结构示意性框图。
76.如图5所示,服务器300包括处理器301和存储器302,处理器301和存储器302通过总线303连接,该总线比如为i2c(inter-integrated circuit)总线。
77.具体地,处理器301用于提供计算和控制能力,支撑整个服务器的运行。处理器301可以是中央处理单元(central processing unit,cpu),该处理器301还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
78.具体地,存储器302可以是flash芯片、只读存储器(rom,read-only memory)磁盘、光盘、u盘或移动硬盘等。
79.本领域技术人员可以理解,图5中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
80.其中,所述处理器用于运行存储在存储器中的计算机程序,并在执行所述计算机
程序时实现本发明实施例提供的任意一种所述的软件更新方法。
81.在一实施方式中,所述处理器用于运行存储在存储器中的计算机程序,并在执行所述计算机程序时实现如下步骤:
82.获取文件服务器支持的并行下载数量;
83.根据所述并行下载数量和多个基站组中的每个所述基站组的基站总数,从由多个所述基站组中的各基站形成的基站库中确定目标基站;
84.向所述目标基站发送第一软件下载指令,以使所述目标基站根据所述第一软件下载指令,从所述文件服务器中下载目标软件数据包;
85.在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带所述种子基站标签的基站所处的基站组中的其余基站根据所述第二软件下载指令从携带所述种子基站标签的基站中下载所述目标软件数据包。
86.在一实施例中,所述处理器在实现所述根据所述并行下载数量和多个基站组中的每个所述基站组的基站总数,从由多个所述基站组中的各基站形成的基站库中确定目标基站时,用于实现:
87.根据各所述基站组的基站总数,确定各所述基站组内的目标基站的分配比例;
88.根据各所述基站组内的目标基站的分配比例和所述并行下载数量,从由多个所述基站组中的各基站形成的基站库中确定目标基站。
89.在一实施例中,所述处理器在实现所述根据各所述基站组内的目标基站的分配比例和所述并行下载数量,从由多个所述基站组中的各基站形成的基站库中确定目标基站时,用于实现:
90.根据所述并行下载数量和各所述基站组内的目标基站的分配比例,确定各所述基站组内的目标基站的分配数量;
91.根据各所述基站组内的目标基站的分配数量,从所述基站库中确定各所述基站组内的目标基站。
92.在一实施例中,所述处理器在实现所述在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令之后,还用于实现:
93.在获取到基站发送的所述目标软件数据包的下载完成信息时,向下载完所述目标软件数据包的基站发送种子基站标签添加指令,以使所述基站根据所述种子基站标签添加指令添加所述种子基站标签,以使携带所述种子基站标签的基站所属的基站组中未下载所述目标软件数据包的基站从携带所述种子基站标签的基站中下载所述目标软件数据包。
94.在一实施例中,所述处理器在实现所述在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令之后,还用于实现:
95.获取各所述基站组中未下载所述目标软件数据包的基站的数量;
96.根据各所述基站组中未下载所述目标软件数据包的基站的数量,从多个所述基站组中未下载所述目标软件数据包的基站确定目标基站。
97.在一实施例中,所述处理器还用于实现:
98.当获取到基站发送的下载失败信息时,生成第三软件下载指令,所述下载失败信息是基站从携带所述种子基站标签的基站下载所述目标软件数据包失败时生成的;
99.将所述第三软件下载指令发送给下载所述目标软件数据包失败的基站,以使下载所述目标软件数据包失败的基站根据所述第三软件下载指令从所述文件服务器中下载所述目标软件数据包。
100.在一实施例中,所述处理器还用于实现:
101.当获取到基站发送的下载失败信息时,生成第四软件下载指令,所述下载失败信息是基站从携带所述种子基站标签的基站下载所述目标软件数据包失败时生成的;
102.将所述第四软件下载指令发送给下载所述目标软件数据包失败的所述基站,以使所述基站根据所述第四软件下载指令从所属的基站组中的其他携带所述种子基站标签的基站中下载所述目标软件数据包。
103.在一实施例中,同一基站组内的各基站能够通信连通,不同基站组的各基站不能通信连通。
104.在一实施例中,所述处理器还用于实现:
105.获取每个所述基站与各所述基站的传输损耗;
106.根据每个所述基站与各所述基站的传输损耗,将传输损耗小于或等于预设阈值的各所述基站分在同一基站组,得到多个所述基站组。
107.在一实施例中,所述处理器还用于实现:
108.获取每个所述基站待下载的软件数据包信息;
109.根据每个所述基站待下载的软件数据包信息,将待下载的软件数据包相同且传输损耗小于或等于预设阈值的各所述基站分在同一基站组,得到多个所述基站组。
110.在一实施例中,所述处理器所述目标软件数据包包括多个子软件数据包,所述方法用于实现:
111.获取已下载所述目标软件数据包的携带所述种子基站标签的各基站的下载信息,其中,所述下载信息包括基站下载的目标软件数据包中子软件数据包的标识;
112.将携带所述种子基站标签的各基站的下载信息发送给未下载软件数据包的基站,以使未下载软件数据包的基站根据携带所述种子基站标签的各基站的下载信息从对应的基站下载子软件数据包。
113.需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器的具体工作过程,可以参考前述软件更新方法实施例中的对应过程,在此不再赘述。
114.本发明实施例还提供一种存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如本发明说明书提供的任一项软件更新的方法的步骤。
115.其中,所述存储介质可以是前述实施例所述的服务器的内部存储单元,例如所述服务器的硬盘或内存。所述存储介质也可以是所述服务器的外部存储设备,例如所述服务器上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。
116.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装
置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
117.应当理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
118.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种软件更新方法,其特征在于,包括:获取文件服务器支持的并行下载数量;根据所述并行下载数量和多个基站组中的每个所述基站组的基站总数,从由多个所述基站组中的各基站形成的基站库中确定目标基站;向所述目标基站发送第一软件下载指令,以使所述目标基站根据所述第一软件下载指令,从所述文件服务器中下载目标软件数据包;在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带所述种子基站标签的基站所处的基站组中的其余基站根据所述第二软件下载指令从携带所述种子基站标签的基站中下载所述目标软件数据包。2.根据权利要求1所述的软件更新方法,其特征在于,所述根据所述并行下载数量和多个基站组中的每个所述基站组的基站总数,从由多个所述基站组中的各基站形成的基站库中确定目标基站,包括:根据各所述基站组的基站总数,确定各所述基站组内的目标基站的分配比例;根据各所述基站组内的目标基站的分配比例和所述并行下载数量,从由多个所述基站组中的各基站形成的基站库中确定目标基站。3.根据权利要求2所述的软件更新方法,其特征在于,所述根据各所述基站组内的目标基站的分配比例和所述并行下载数量,从由多个所述基站组中的各基站形成的基站库中确定目标基站,包括:根据所述并行下载数量和各所述基站组内的目标基站的分配比例,确定各所述基站组内的目标基站的分配数量;根据各所述基站组内的目标基站的分配数量,从所述基站库中确定各所述基站组内的目标基站。4.根据权利要求1所述的软件更新方法,其特征在于,所述在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令之后,还包括:在获取到基站发送的所述目标软件数据包的下载完成信息时,向下载完所述目标软件数据包的基站发送种子基站标签添加指令,以使所述基站根据所述种子基站标签添加指令添加所述种子基站标签,以使携带所述种子基站标签的基站所属的基站组中未下载所述目标软件数据包的基站从携带所述种子基站标签的基站中下载所述目标软件数据包。5.根据权利要求1所述的软件更新方法,其特征在于,所述在获取到所述目标基站返回的所述目标软件数据包的下载完成信息时,对所述目标基站添加种子基站标签,并向携带所述种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令之后,还包括:获取各所述基站组中未下载所述目标软件数据包的基站的数量;根据各所述基站组中未下载所述目标软件数据包的基站的数量,从多个所述基站组中未下载所述目标软件数据包的基站确定目标基站。6.根据权利要求1-5中任一项所述的软件更新方法,其特征在于,所述方法还包括:
当获取到基站发送的下载失败信息时,生成第三软件下载指令,所述下载失败信息是基站从携带所述种子基站标签的基站下载所述目标软件数据包失败时生成的;将所述第三软件下载指令发送给下载所述目标软件数据包失败的基站,以使下载所述目标软件数据包失败的基站根据所述第三软件下载指令从所述文件服务器中下载所述目标软件数据包。7.根据权利要求1-5中任一项所述的软件更新方法,其特征在于,所述方法还包括:当获取到基站发送的下载失败信息时,生成第四软件下载指令,所述下载失败信息是基站从携带所述种子基站标签的基站下载所述目标软件数据包失败时生成的;将所述第四软件下载指令发送给下载所述目标软件数据包失败的所述基站,以使所述基站根据所述第四软件下载指令从所属的基站组中的其他携带所述种子基站标签的基站中下载所述目标软件数据包。8.根据权利要求1-5中任一项所述的软件更新方法,其特征在于,同一基站组内的各基站能够通信连通,不同基站组的各基站不能通信连通。9.根据权利要求1-5中任一项所述的软件更新方法,其特征在于,所述方法还包括:获取每个所述基站与各所述基站的传输损耗;根据每个所述基站与各所述基站的传输损耗,将传输损耗小于或等于预设阈值的各所述基站分在同一基站组,得到多个所述基站组。10.根据权利要求9所述的软件更新方法,其特征在于,所述方法还包括:获取每个所述基站待下载的软件数据包信息;根据每个所述基站待下载的软件数据包信息,将待下载的软件数据包相同且传输损耗小于或等于预设阈值的各所述基站分在同一基站组,得到多个所述基站组。11.根据权利要求1-5中任一项所述的软件更新方法,其特征在于,所述目标软件数据包包括多个子软件数据包,所述方法还包括:获取已下载所述目标软件数据包的携带所述种子基站标签的各基站的下载信息,其中,所述下载信息包括基站下载的目标软件数据包中子软件数据包的标识;将携带所述种子基站标签的各基站的下载信息发送给未下载软件数据包的基站,以使未下载软件数据包的基站根据携带所述种子基站标签的各基站的下载信息从对应的基站下载子软件数据包。12.一种服务器,其特征在于,所述服务器包括处理器、存储器、存储在所述存储器上并可被所述处理器执行的计算机程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,其中所述计算机程序被所述处理器执行时,实现如权利要求1至11中任一项所述的软件更新方法的步骤。13.一种存储介质,用于计算机可读存储,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1至11中任一项所述的软件更新方法的步骤。
技术总结
本发明实施例提供一种软件更新方法、服务器及存储介质,属于通信领域。获取文件服务器支持的并行下载数量;根据并行下载数量和多个基站组中的每个基站组的基站总数,从由多个基站组中的各基站形成的基站库中确定目标基站;向目标基站发送第一软件下载指令,以使目标基站根据第一软件下载指令,从文件服务器中下载目标软件数据包;在获取到目标基站返回的目标软件数据包的下载完成信息时,对目标基站添加种子基站标签,并向携带种子基站标签的基站所处的基站组中的其余基站发送第二软件下载指令,以使携带种子基站标签的基站所处的基站组中的其余基站从携带种子基站标签的基站中下载所述目标软件数据包。提高给各基站分发软件数据包的效率。数据包的效率。数据包的效率。
技术研发人员:邹伟松 崔卓 金昌盛
受保护的技术使用者:中兴通讯股份有限公司
技术研发日:2022.01.14
技术公布日:2023/7/26
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
