一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

无线通信网络中IoT设备的管理的制作方法

2022-07-13 16:49:05 来源:中国专利 TAG:

无线通信网络中iot设备的管理
技术领域
1.本发明大体上涉及无线通信网络中的物联网(iot)设备的领域。更具体地,它涉及无线通信网络中iot设备的管理。


背景技术:

2.物联网(此后在本公开中将被称为iot)是相互关联的计算设备的系统。通常预计,未来可能有数十亿个iot设备部署在世界各地的多个方面。例如,个别股份公司和公司可能有数以千计的iot设备要管理。设备的绝对数量通常会在设备的安全性和脆弱性方面带来挑战。例如如果在发现安全漏洞时未更新iot设备,则iot设备可能遭受潜在的黑客攻击。
3.然而,管理iot设备的大型机群(包括非常大的数目,例如数千、数万或更多)变得越来越复杂。这在测试实验室环境中通常具有挑战性,对于无人值守的远程iot设备而言更是如此。随着时间的推移和iot设备的各种条件,它变得特别具有挑战性。
4.因此,需要用于管理iot设备的替代方法。


技术实现要素:

5.应该强调的是,当在本说明书中使用时,术语“包括/包含”(可替换为“包括/包含”)用于指定所述特征、整数、步骤或部件的存在,但不排除一个或多个其他特征、整数、步骤、部件或它们的组的存在或添加。如本文所用,除非语境另外清楚地指出,否则单数形式“一”、“一个”和“该”旨在也包括复数形式。
6.一般来说,本文提到的布置,应当理解为物理产品;例如,装置。物理产品可以包括一个或多个部分,例如采用一个或多个控制器、一个或多个处理器等形式的控制电路。
7.一些实施例的目的是解决或减轻、减缓或消除上述缺点中的至少一些,并提供用于iot设备管理的方法和装置。
8.根据第一方面,这通过网络运营商控制器的用于管理与iot设备所有者相关联的并连接到无线网络的多个物联网(iot)设备的方法来实现。
9.网络运营商控制器可以是与网络运营商相关联或属于网络运营商的实体。它可以例如是部署在网络中的中央服务器或云实现方式。
10.应当注意,术语网络运营商、网络运营商控制器和网络运营商服务器在本公开中可以互换。
11.根据第一方面的方法,包括接收被调度用于固件更新的iot设备的列表,其中,该列表指示用于该列表中的每个iot设备的相应更新数据和更新过程。更新数据可以例如与更新固件绑定并且可以包括固件升级。此外,不同的iot设备可能需要相同或不同的固件更新,这可能在列表中指定。
12.该方法还包括确定服务于覆盖该设备的列表中的每个iot设备的相应位置的地理区域的至少一个网络节点。根据该列表中的设备可能散布在几个不同的位置。该方法可以包括找到服务于该列表中的设备的网络节点。一个网络节点可以服务于该列表中的多个设
备。
13.该方法还包括使得对相应更新数据的缓存。
14.该方法还包括确定指示(该列表中的)每个iot设备何时将接收其相应更新数据的更新调度,并且还指示该至少一个网络节点根据更新调度和更新过程利用所缓存的相应更新数据来更新iot设备。
15.因此,根据第一方面的方法将更新属于设备所有者的iot设备的责任从设备所有者转移到提供iot设备的网络的网络运营商。然后,网络运营商可以将更新iot设备的任务分配给网络内的服务于待更新的相应iot设备所在的地理区域的网络节点。与常规设置相比,该设置为设备所有者提供了更好的网络透明度,并减少了网络流量和负载。
16.在一些实施例中,更新过程包括指示用于执行固件更新的至少一个过程和用于确定固件更新是否成功执行的至少一个过程的信息。更新过程可以例如包括关于应该分发哪些升级/更新/补丁/固件以及分发给谁以及以什么顺序分发的说明。更新过程可以进一步包括应该执行的控制指令或确认过程,以便确立更新被正确执行并且设备已经被正确升级/更新。
17.在一些实施例中,该方法可以进一步包括指示至少一个网络节点指示iot设备在根据更新调度接收相应更新数据的整个持续时间内保持在活动状态,并且在固件更新完成时返回默认睡眠周期。更新可以例如在可能跨越一定量时间(例如秒、分钟、小时等)的多个数据传输中传输,并且网络节点可以指示它所服务的以及将接收更新的iot设备,更新将在该时间段期间中继,并且iot设备不被允许进入其默认睡眠周期直到更新已经被接收和/或成功安装为止。
18.在一些实施例中,iot设备的列表可以包括进一步的易受攻击的iot设备的列表。因此,在一些实施例中,该方法还可以包括指示至少一个网络节点阻止易受攻击的iot设备与网络通信,直到它们已经接收到所需的更新数据为止。接收(和安装)所需的更新数据可能会导致iot设备进入所需状态,这可能是成功更新的结果。在一些实施例中,该进一步的列表可以与iot设备的列表合并,并且将要被阻止的设备在iot设备的列表中被标记成如此。
19.在一些实施例中,该列表中的所有iot设备都可以被认为是易受攻击的设备。
20.在一些实施例中,该方法可以包括指示至少一个网络节点阻止易受攻击的iot设备使用wi-fi、蓝牙、近场通信(nfc)或其他短程通信类型中的至少一种进行通信。
21.在一些实施例中,该方法可以包括指示至少一个网络节点阻止易受攻击的iot设备与除了该至少一个网络节点之外的任何其他实体进行通信。因此,在一些实施例中,阻止指令可以包括阻止外部实体与易受攻击的设备通信,并且易受攻击的设备可以仅与该至少一个网络节点(或网络运营商控制器)通信,直到解除阻止为止。
22.在一些实施例中,该方法可以进一步包括指示至少一个网络节点根据更新调度将所需的更新数据推送给被阻止的易受攻击的iot设备,并确定易受攻击的iot设备是否基于该更新过程被成功更新了。
23.在一些实施例中,该方法可以进一步包括通知iot设备所有者任何不成功的更新,以及当确定易受攻击的iot设备被成功更新时,指示该至少一个网络节点解除对该易受攻击的iot设备的阻止,以及通知iot设备所有者服务器该成功的更新。
24.在一些实施例中,更新调度是基于至少一个网络状况,该至少一个网络状况与以下中的至少一项或多项有关:预期网络负载,来自网络用户的预期负载,内部传输网络的使用,计算节点,定时,iot设备顺序,iot设备活动和iot设备优先级。
25.在一些实施例中,使得对相应更新数据的缓存包括:在中央网络服务器处缓存相应更新数据和/或指示至少一个网络节点缓存相应更新数据。更新数据(即固件更新)可以集中缓存在网络运营商服务器处或中央计算节点处或边缘计算节点(边缘数据中心)处,也可以本地缓存在服务于待更新的iot设备的网络节点处。可以基于更新的大小、本地和/或整体网络负载、更新的复杂性、待更新的iot设备的位置等来确定在哪里缓存数据。
26.边缘数据中心可以是例如是部署在网络中并靠近网络小区的网络节点或服务器,其具有存储和计算能力。边缘数据中心可以例如存储固件更新并将它们直接或通过另一个网络节点中继到iot设备。因此,边缘数据中心在本公开中被理解为比中央数据中心更靠近运营商基础设施中的enb/gnb的通用计算节点。数据中心的大小和位置可能会有很大差异。边缘数据中心通常使得存储和计算可用于固件缓存和iot设备更新过程以及与设备所有者的交互/反馈。它通常允许与负责设备物联网连接性的传统网络节点进行交互。
27.在一些实施例中,该方法可以进一步包括基于更新过程确定该列表中的iot设备是否根据更新调度被成功更新了,并且通知iot设备所有者服务器任何不成功的更新或成功的更新。
28.在一些实施例中,当确定该列表中的iot设备未能成功更新时,该方法可以进一步包括收集与更新相关联的并指示未能成功更新的原因的信息,并通知iot设备所有者服务器所收集的信息。该信息可能例如包含有关升级完成时发生的信息(日志、收到的确认/否定确认、(未)成功的控制检查、定时等)。它还可能包括从网络角度来看发生的事情的信息(日志、过程、传输、响应等)。在某些情况下,也可以提供地理位置,例如如果设备所有者必须亲自前往设备进行维修/更新则需要地理位置。
29.在一些实施例中,至少一个网络节点是基站或计算节点。在一些实施例中,至少一个网络节点是边缘数据中心。在一些实施例中,至少一个网络节点是enb、gnb或接入节点。
30.第二方面是一种包括非暂时性计算机可读介质的计算机程序产品。在非暂时性计算机可读介质上存储有计算机程序,该计算机程序包括程序指令。计算机程序被配置为可加载到数据处理单元中,该数据处理单元包括处理器和与数据处理单元相关联的或集成到数据处理单元的存储器。当被加载到数据处理单元中时,计算机程序被配置为存储在存储器中。计算机程序在加载到处理器中并由处理器运行时被配置为使得执行根据第一方面的方法步骤。
31.第三方面是一种网络运营商控制器的用于管理与iot设备所有者相关联的并连接到无线网络的多个物联网(iot)设备的装置。该装置包括控制电路,该控制电路被配置为使得接收被调度用于固件更新的iot设备列表,其中该列表指示用于该列表中的每个iot设备的相应更新数据和更新过程。
32.控制电路还被配置为确定服务于覆盖该设备的列表中的每个iot设备的相应位置的地理区域的至少一个网络节点并缓存该相应更新数据。
33.控制电路还被配置为确定指示每个iot设备何时将接收其相应更新数据的更新调度,并且对于被调度用于更新的每个iot设备,指示该至少一个网络节点根据该更新调度和
更新过程利用所缓存的相应更新数据来更新iot设备。
34.第四方面是一种包括根据第三方面的装置的网络节点。
35.在一些实施例中,任何上述方面可以另外具有与如上文针对任何其他方面所解释的各种特征中的任何一个相同或对应的特征。
36.一些实施例的优点是通过减少网络流量和增加对设备所有者的网络透明度来改进iot设备管理。
37.一些实施例的优点是增强了iot设备的安全性,因为没有充分更新最新固件并因此可能造成风险的设备可能被阻止与网络通信。
38.一些实施例的另一个优点是可以增强对物联网固件更新的控制。
39.一些实施例的另一个优点在于增加了iot设备成功更新的概率,因为可以指示iot设备偏离它们的默认睡眠周期以便在正在接收更新的整个持续时间内保持清醒。
附图说明
40.参考附图,将从以下实施例的详细描述中显而易见进一步的目的、特征和优点,其中:
41.图1是图示网络拓扑的示意图;
42.图2是图示网络拓扑的示意图;
43.图3是图示根据一些实施例的设备管理的示意图;
44.图4是图示根据一些实施例的设备管理的示意图;
45.图5是图示根据一些实施例的示例方法步骤的流程图;
46.图6是图示根据一些实施例的示例方法步骤的流程图;
47.图7是图示根据一些实施例的示例方法/信令步骤的组合流程图和信令图;
48.图8是图示根据一些实施例的计算机程序产品的示意图;以及
49.图9是图示根据一些实施例的示例布置的框图。
具体实施方式
50.在下文中,将描述通过改进的iot设备管理来增强网络透明度并减少脆弱性的实施例。
51.如前所述,当连接的iot设备数量增加时,管理设备的挑战也随之增加。借助iot,预计全球将有数十亿个此类设备部署在多个方面。个别股份公司和公司可以管理数以千计的iot设备。大规模的安全和设备管理通常是使iot可行的关键。具体来说,通常需要包含安全补丁和功能的无线固件更新(fota)来保持iot设备的安全和高度功能性。如果在发现安全漏洞后不进行更新,iot设备就会面临潜在的黑客攻击。然而,iot设备可能难以触及,例如由于移动性、省电算法和受限的连接性,或者仅仅因为设备所有者无法真正了解其拥有的相应iot设备的实际和/或确切位置。
52.向大量iot设备分发新固件通常需要发送与iot设备数量相同的相同固件,或者当在传输或更新过程中出现故障时需要发送更多固件。大量的数据传输会导致在用于传输和执行更新的时间段内在可能关键系统上的高负载。
53.管理大量设备、跟踪当前状态、更新、确认更新、处理iot设备在更新时段期间没有
在执行其一个或多个任务、处理错误情况等变得复杂。这在测试实验室环境中具有挑战性,对于在真实场景中无人值守的远程iot设备而言更是如此。随着时间的推移和iot设备的各种条件,它变得特别具有挑战性。
54.包含iot设备的典型(尽管有些简化)网络拓扑如图1所示。在图1中,可以由服务器或控制器110表示和/或包括服务器或控制器110的iot设备所有者正经由网络云120连接到运营商网络130。网络云可以例如是互联网。
55.多个数据服务器中心140与运营商网络130并与多个网络节点141(1-n)通信。网络节点141(1-n)服务于其中部署了一个或多个iot设备143(1-n)的地理区域142(1-n)(诸如网络小区)。iot设备143(1-n)位于不同的物理位置,可能是集群的。如上所述,设备所有者服务器110可以经由互联网访问运营商网络130。此外,iot设备可能使用不同的运营商并存在于许多国家。即设备所有者服务器通常可以通过互联网访问许多不同的运营商网络。
56.在一些实施例中,数据服务器中心140可以是边缘dc(数据中心),但是所提供的特征/服务也可以由网络内的其他计算节点(诸如enb、gnb或例如演进的分组核心(epc))来处理。如果有一个边缘dc,它可能是每enb一个边缘dc,一个边缘dc用于多个enb,等等,具体取决于网络的需求和布局。
57.如图2所示,对于在常规系统中部署的iot设备143(1-n),新固件通常存储在与iot设备所有者相关联的远程中央服务器(例如,设备所有者服务器110,术语设备所有者和设备所有者服务器可以互换使用)中并从其分发。固件更新通常需要iot设备访问设备所有者的中央服务器并从其获取新固件。当开始更新时,设备所有者110将需要从包含固件的服务器提供足够的带宽。
58.从设备所有者服务器110的远程服务器向iot设备143(1-n)推出固件更新。固件通常需要通过遍及整个网络的每设备的一个连接/会话来从设备所有者的服务器传播到每个iot设备143(1-n)。由于固件更新的大小可能为数兆字节,并且从设备发送到基站/运营商控制器/设备所有者的数据可能为数千字节大小,因此设备所有者的推出通常需要大量资源,因此构成了总体大的网络负载。然而,数据的大小应该被视为一个示例,并且可能会根据系统、部署、未来需求等而采用其他值。
59.iot设备所有者服务器110发送更新消息,并且一旦相应的iot设备上线以发送其拥有的任何数据,它还将检查其是否具有来自设备所有者服务器110的任何未决消息。设备所有者服务器110无法详细知道从服务器110发送消息到接收消息之间的时间,因为它通常取决于网络配置和iot设备的通信调度,这一切都由运营商网络130控制。
60.因此,更新可能需要时间才能完成,因为可能有成千上万的iot设备,而且它们通常不会同时更新。这归因于服务器访问和使设备在延长的时间段内与网络断开连接的省电功能。
61.更新,尤其是不协调的更新(即一遍又一遍地尝试发送/接收和失败)将消耗iot设备的电力,这通常会缩短电池寿命。
62.设备所有者通常不具有对与单个iot设备的连接的了解和控制,这意味着他们不知道何时可能执行更新或需要多少次尝试。与iot设备的连接可能是例如由于网络拥塞、不存在无线覆盖或部分无线覆盖而无法实现。
63.因此,具有安全漏洞、严重错误或api不兼容的未更新iot设备通常会继续与网络
连接并通信,直到更新为止。即没有真正的方法可以断开正在等待更新的iot设备的连接。固件更新通常按比例大于iot设备中的单独数据对象。因此,iot设备可能会在等待更新的同时长时间运行和/或通信,从而可能构成严重的安全威胁。
64.将3gpp技术用于iot设备时,由于调制解调器通常是封闭的,网络由网络运营商运营,并且网络内部通常对外部参与者非常隐蔽,所以iot设备所有者对网络的可见性比他们在其他无线技术中通常可能拥有的要低。寻找3gpp堆栈的能力比例如wifi或其他更开放的标准更难。
65.因此,根据本文的一些实施例,建议利用网络运营商来提供服务以执行固件更新并将其分发给设备所有者的iot设备,如图3-4示意性地示出的。
66.简而言之,在图3中,网络运营商(即网络运营商服务器或控制器)330可以从iot设备所有者310(例如设备所有者服务器)接收应更新的iot设备143(1-n)的列表以及接收执行更新所需的其他特征。iot设备可以与其sim卡的id和/或设备的imsi号码相关联地呈现在列表中。
67.应当注意,当在本公开中提及iot设备所有者时,指的是iot设备的所有者。设备所有者可以例如是已经生产和/或部署和/或使用iot设备的服务的公司、协会、合作社、自然人、法人等,并且可以例如通过关联的设备所有者服务器在网络中表示。服务器可以是物理实现方式或云实现方式。因此,设备所有者可以包括有资格与iot设备和/或网络运营商/网络节点通信的服务器或其他计算实体。因此,术语iot设备所有者、设备所有者和iot设备所有者服务器在本公开中可以互换使用。
68.以同样的方式,网络运营商可以被视为提供网络及其服务的参与者。网络运营商可以是公司、协会、合作社等,并且可以通过网络运营商服务器和/或网络运营商控制器在网络中表示,因此术语网络运营商服务器、网络运营商、网络运营商控制器在本公开中可以互换使用。
69.网络运营商服务器330可以通过互联网连接320从iot设备所有者服务器310接收列表和其他需要的特征。将要更新的新固件是从设备所有者服务器310上传,例如经由可编程应用程序编程接口(api)或经由图形用户界面(gui)上传,然后其被分发在运营商网络内以到达最接近(或最适合访问)将要更新的iot设备143(1-n)的地方。然后,运营商根据计算出的调度执行升级(基于优化目标,考虑到例如一天中的时间、设备顺序、当时的设备编号等)。
70.网络运营商服务器330可以例如在运营商服务器和/或网络节点340、341处集中缓存固件,这些节点最终将处理iot设备的实际更新。这将减少设备所有者基础设施的负载,并在收集固件时减少网络负载,因为比较例如图2和图4,不是在整个网络上在存在iot设备的尽可能多的连接上推出相同的更新,而是在地理上靠近设备(例如在同一个小区中)缓存并分发一个更新。
71.图4图示了根据一些实施例的iot设备管理方案,其中iot设备的管理已经从中央iot设备所有者服务器310转移到网络运营商服务器330,网络运营商服务器330继而指示服务于待更新的iot设备所处的区域的网络节点更新该设备。与图2相比,减少了所需的网络通信量,从而减少了网络负载,并且如下面所述,实现了对于设备所有者的更好的设备可见性。
72.此外,由于网络运营商可以保持跟踪哪些设备成功地执行了它们的更新,哪些没有成功,因此可以增强整体安全性。未成功执行更新的设备可能会被阻止访问互联网,直到他们得到充分更新为止。以同样的方式,网络运营商可以从iot设备所有者接收指示哪些iot设备由于尚未收到足够的固件更新而易受攻击的信息,并且网络运营商可能会暂时阻止这些设备与例如互联网通信和/或暂时阻止这些设备与不是网络运营商和/或执行更新的网络节点的外部实体进行通信。
73.图5图示了根据一些实施例的示例方法500。方法500可以由图3和4的网络运营商服务器/控制器330执行。
74.方法500是网络运营商控制器的,用于管理与物联网(iot)设备所有者相关联并连接到无线网络的多个iot设备。方法500开始于步骤510,接收被调度进行固件更新的iot设备的列表。该列表指示用于该列表中的每个iot设备的各自的更新数据和更新过程。更新数据可以例如包括应分发到各自iot设备的一个或多个特定固件更新。更新过程可以包括指示用于执行固件更新的至少一个过程和用于确定固件更新是否成功执行的至少一个过程的信息。因此,更新过程可以包括指示如何执行更新以及如何确定更新是否成功的指令。此外,更新过程可能涉及在网络侧执行的不同工具。
75.列表、更新过程和固件/更新数据可以由设备所有者上传到网络运营商控制器,例如通过设备所有者服务器(例如图3-4的设备所有者服务器310)。
76.方法500然后在步骤520中继续,确定服务于覆盖该设备的列表中的每个iot设备的相应位置的地理区域的至少一个网络节点(与图3和图4相比)。在步骤530中,方法500包括引起对相应更新数据的缓存。网络运营商控制器可以例如将更新数据(即用于待更新的每个相应iot设备的固件)本地缓存在内部或外部服务器上,或者更靠近待更新的设备,例如通过在服务于包括待更新的一个或多个iot设备的区域的网络节点处或在与网络节点相关联的计算节点/基站处缓存更新数据。因此,在一些实施例中,使得相应更新数据的缓存包括在中央网络服务器处缓存相应更新数据和/或指示至少一个网络节点缓存相应更新数据。
77.然后方法500在步骤540中继续,确定指示每个iot设备何时接收其相应更新数据的更新调度。在一些实施例中,更新调度可以基于至少一个网络状况。在一些实施例中,至少一个网络状况可以与以下中的至少一项或多项有关:预期网络负载,来自网络用户的预期负载,内部传输网络的使用,计算节点,定时,iot设备顺序,iot设备活动性和iot设备优先级。例如,如果预计网络的某些部分可能会遇到重负载,则更新由预计会遇到重负载的网络节点服务的iot设备可能会被调度在预计网络负载不会如此高的时间点进行。在一些实施例中,本质上可能是某一组设备快速接收它们的更新,并且因此可以调度它们尽快接收它们的更新。
78.然后,方法500在步骤550中继续,指示至少一个网络节点根据更新调度和更新过程用所缓存的相应更新数据来更新iot设备。在一些实施例中,更新调度可用于通知iot设备何时应保持清醒以接收更新。因此,在一些实施例中,方法500可以包括指示至少一个网络节点指示iot设备:在根据更新调度接收相应更新数据的整个持续时间内保持在活动状态,并且在固件更新完成时返回默认睡眠周期。在一些实施例中,调度更新(即在列表上)但尚未接收到更新或正在安装更新的iot设备可以在等待它们的更新时被置于更加积极的省
电模式,他们可能例如被指示进入将在某个时间点结束的睡眠期,并且在此睡眠期期间,设备根本不可联系。这可能是可行的,因为来自设备的可能传输数据在它已经更新之前可能是不需要的,因此这被认为是安全的。积极省电模式的另一个优点在于,通过无需为等待更新的iot设备提供服务,可以更好地利用网络频率/空中/计算资源。然后使设备处于活动状态以确保顺利更新,并且一旦更新就恢复到默认睡眠周期。
79.因此,在一个会话中完成更新的概率增加了,因为iot设备在接收更新期间进入睡眠状态的风险降低了。由于可以减少更新的多次传输尝试,这可以使总体上的网络负载减少。以同样的方式增强了安全性,因为降低了iot设备部分更新或根本不更新的风险。
80.在一些实施例中,iot设备的列表还可以包括易受攻击的iot设备的另一列表,并且方法500可以进一步在其中确定更新调度的步骤540中包括可选步骤541,其包括指示至少一个网络节点阻止易受攻击的iot设备与网络通信,直到它们(iot设备)已经接收到所需的更新数据(即一个或多个iot设备已进入所需状态为止,所需状态可能是成功更新/数据传输的结果)。将结合图6更详细地描述阻止易受攻击设备的方面。
81.在一些实施例中,该列表中的所有iot设备都可以被标记为易受攻击,因此应该被阻止通信。它可能是例如在一些实施例中,如果iot设备没有最新的可用固件,则应该阻止它进行通信。即它不应该被允许通信,并且并非网络运营商或将执行更新的网络节点的其他实体不可以与未更新的设备通信。因此,在一些实施例中,另外的列表可以是列表,并且列表上的所有设备都应该被阻止,直到它们被成功更新为止。
82.因此,在一些实施例中,该列表中的所有iot设备都可以被认为是易受攻击的设备。
83.在一些实施例中,该方法可以包括指示至少一个网络节点阻止易受攻击的iot设备使用wi-fi、蓝牙、近场通信(nfc)或其他短程通信类型中的至少一种进行通信。
84.在一些实施例中,该方法可以包括指示至少一个网络节点阻止易受攻击的iot设备与除了至少一个网络节点/网络运营商之外的任何其他实体进行通信。因此,在一些实施例中,阻止指令可以包括阻止外部实体与易受攻击的设备通信,并且易受攻击的设备可以仅与至少一个网络节点(或网络运营商控制器)通信,直到阻止被解除为止。
85.在一些实施例中,方法500可以可选地包括步骤551,其基于更新过程来确定列表中的iot设备是否根据更新调度成功更新了。更新过程可以例如通知网络运营商如何确定更新是否成功。更新过程可以例如包括如果更新被正确安装则设备应具有的固件版本,并且网络运营商可以向iot设备请求当前版本并检查当前版本是否与该过程的固件版本匹配。然后,该方法可以在步骤552和554中继续,向iot设备所有者服务器通知任何不成功的(步骤554,551中的否-路径)或成功的(步骤552,551中的是-路径)更新。
86.在一些实施例中,当确定该列表中的iot设备未能成功更新时(551中的否-路径),该方法可以进一步包括步骤553,收集与更新相关联的并指示未能成功更新的原因的信息,并向iot设备所有者服务器通知所收集的信息(可能在方法500的步骤554中)。该信息可以例如指示更新完成时发生的情况。包括从网络角度的关于发生了什么的信息。在一些实施例中,该信息可以包括iot设备的地理位置,如果iot设备所有者需要亲自前往iot设备,则该地理位置可以帮助iot设备所有者实际找到iot设备。
87.因此,iot设备所有者能够始终了解固件更新的当前状态和进度。通过本文的实施
例,iot设备所有者不仅可以看到故障。然而,如本文所述,当检测到更新失败时可能要特别小心。故障可能导致来自设备的任何都被“封堵”(即它永远不会重新上线)、通信失败(即iot设备现在是或变得无法通过网络访问)或需要重试,等等。当发生故障时,向iot设备所有者传达信息以帮助修改其软件或更新过程中的问题,定位设备以进行物理检查,以及可能在执行更新时利用网络运营商识别问题,可能很重要。
88.iot设备所有者可能会在更新的进度状态上实施触发器。这样的触发器可以例如通知设备所有者和/或其关联用户/客户更新进度,开始使用iot设备,进行升级后检查,等等。
89.在一些实施例中,方法500可以与图6的方法600结合。例如,在方法500的步骤541中,易受攻击的iot设备被阻止与例如互联网和/或网络通信,因为它们构成潜在攻击的风险。然后方法500的步骤550可以与方法600的步骤601结合。在步骤601中,方法600包括指示至少一个网络节点根据更新调度将所需的更新数据推送(或以其他方式传输)到被阻止的易受攻击的iot设备,并且在步骤602中基于更新过程确定易受攻击的iot设备是否成功更新。
90.应当注意,术语“推送所需更新数据”可以具有多种含义。例如,该术语可以指示来自网络运营商(或网络节点)的实际推送,即网络运营商以“这是固件,安装它!”的方式(即作为命令式指令)指示设备。在一些实施例中,推送可以是设备周期性地呼叫服务器/网络运营商/网络节点并检查是否有可用的新固件然后下载它。在一些实施例中,推送可以是当设备呼叫家庭以检查新固件时,网络运营商或设备所有者将告诉设备从网络运营商缓存的更新包中获取它。因此,在某些情况下,网络运营商可能会充当设备检查固件更新的地方。
91.在一些实施例中,方法600的步骤602可以与方法500的步骤551结合。
92.方法600然后可以在步骤605(602中的否-路径)中继续,向iot设备所有者服务器通知任何不成功的更新,或者在步骤603(602中的是-路径)中继续,指示至少一个网络节点当确定易受攻击的iot设备已成功更新时,解除对易受攻击的iot设备的阻止。然后,该方法可以在步骤604中继续,向iot设备所有者服务器通知该成功更新。
93.在一些实施例中,方法600的步骤605可以与方法500的步骤554结合,并且可以进一步包括步骤553,收集与更新失败的原因相关联的信息,并进一步将收集到的信息通知设备所有者。
94.在一些实施例中,至少一个网络节点是基站或计算节点。在一些实施例中,至少一个网络节点是边缘数据中心,或enb、gnb、epc或接入节点。
95.本文描述的实施例需要网络运营商通过给予运营商管理和更新iot设备固件的机制来提高iot设备安全性和网络效率的手段。这消除了这样的需要:所有iot设备(预计有数千个)从设备所有者的服务器获取相同固件从而给设备所有者和运营商的网络带来压力。
96.本文描述的实施例通过阻止尚未更新的请求更新的设备的连接并且一旦设备已经更新则再次允许连接,来最小化未更新的iot设备易受恶意攻击的易受攻击窗口。
97.根据一些实施例,网络运营商可能成为iot设备所有者(制造商)持续集成/持续部署(ci/cd)流程的重要组成部分,从而确保使用3gpp标准的iot可以通过不强迫设备制造商投入大量测试设备和互操作性测试能力(人员、组织和设备)来保持高质量和低成本。这将降低小型公司为全球市场生产设备的障碍,从而刺激3gpp iot设备生态系统的创新。
98.本文的实施例允许通过网络运营商的分布式网络分发固件和其他所需组件,以便减少服务器和网络上用于一遍又一遍地重新发送相同的固件的负载。
99.图3和4的场景以及图5和6的方法可以在图7的组合流程图和信令图中可视化。在图7中,设备所有者(own)710、网络运营商(op)720、计算节点(cn)730、网络节点(nw)740和iot设备(dev)750被布置为进行通信。设备所有者710可以例如是结合前面图3-6中的任何一个描述的设备所有者(服务器/控制器)。类似地,网络运营商720可以是图3-6的网络运营商(服务器/控制器),计算节点730可以是图3-6的计算节点,网络节点740可以是图3-6的网络节点并且iot设备750可以是图3-6的iot设备。在一些实施例中,计算节点730和网络节点740指的是同一实体。
100.设备所有者710可以向网络运营商720执行711认证信令。必要的凭证和一个或多个密钥可以是例如按常规方法交换。然后设备所有者710可以向网络运营商上传应该用于更新设备所有者的一个或多个iot设备的固件。网络运营商720可以例如接收被调度进行固件更新的iot设备的列表,其中,该列表指示相应的更新数据(即,上传的固件)和该列表中的每个iot设备的更新过程(与方法500的步骤510相比)。应该注意,更新数据可以指示针对所有设备的相同固件更新。即该列表可以包括n个设备,并且可以指示列表上的设备1到n(其中n是整数)将接收固件x。因此,对于列表上的每个设备或设备子集,相应的固件数据可能不必不同。在一些实施例中,该列表可以指示设备1到y(y《n)将接收固件x,而设备(y 1)到n将接收固件y,因此对于不同的设备,相应的固件数据可以不同。
101.然后,网络运营商可以确定721服务于覆盖该设备的列表中的每个iot设备的相应位置的地理区域的至少一个网络节点(与方法500的步骤520相比),并使得缓存723a、723b相应的更新数据(与方法500的步骤530相比较)。网络运营商可以例如在计算节点处分发和缓存更新的固件,该计算节点继而可以将其分发到服务于包括待更新的相应iot设备的区域的网络节点。
102.在图7中,网络节点740被示为确定741指示每个iot设备何时将接收其相应更新数据的更新调度。然而,在一些实施例中,该确定也可以由网络运营商720执行。网络运营商可以例如确定调度并将其中继到网络节点,或指示网络节点740确定调度。
103.网络运营商720可进一步指示742至少一个网络节点根据更新调度和更新过程用所缓存的相应更新数据更新iot设备。在图7中,网络节点740对iot设备执行741固件更新。
104.网络节点740然后可以被网络运营商720指示收集与不成功更新有关的信息744并且通知设备所有者710所收集的信息以及执行的不成功和成功的更新,可能以网络运营商720作为中间人(与方法500的步骤551-554和方法600的步骤602-605相比)。
105.如方法5和6中所述,本文中的一些实施例使网络运营商能够接收缺乏正确固件更新的易受攻击的iot设备的信息。因此,网络运营商可以阻止722已被标记为易受攻击的iot设备(与方法500的步骤541相比)。网络节点可以例如指示网络节点阻止易受攻击的iot设备与网络通信,直到它们已经收到(和/或成功安装)所需的更新数据为止。
106.然后,当网络节点740已经确定被阻止的iot设备已经成功地更新了所需的固件时,网络节点740可以解除743iot设备上的阻止,从而允许它再次与网络自由通信(与方法600中的步骤602-605相比)。
107.因此,在一些实施例中,设备所有者可以经由例如表示状态转移(rest)api将固
件、列表和其他需要的信息上传到网络运营商。
108.然后,网络运营商可以进一步将更新任务分发给enb,这些enb的任务是在其具有低负载时调度设备的升级,并处理阻止和解除阻止以及向enb和/或与这些设备相关的边缘节点报告错误。这是为了防止针对每个设备或从执行实际更新的每个enb一次又一次地获取相同的固件。
109.本文描述的一些实施例可以进一步被实现为网络云实现方式。
110.在一些实施例中,iot设备所有者的认证被设想经由用于管理iot设备的相同接口和iot设备订阅来完成。即网络运营商和设备所有者有一个现有的可以经由网络/云服务自动化的信任设置。
111.在一些实施例中,固件升级服务可以作为容器或虚拟机(vm)从设备所有者分发给运营商。vm/容器可以包含用于更新设备所有者拥有的设备所需的所有组件和配置。有关如何启动和运行vm并对其进行配置的详细信息可以由设备所有者指定。如何运行vm和容器是相当标准化的,并且可以根据常规和已知的方法进行。这将提供遍及运营商网络的可移植性、与正常网络操作的隔离以及升级(用于升级的原始固件、密钥和进程)的安全性,以防被不应访问它的实体篡改或访问。
112.然后可以从系统中清除vm或容器(可能在安全容器变体中)中的升级包,以确保它不会在稍后阶段被误用。
113.在一些实施例中,运营商提供的固件更新服务可以通过网络运营商提供的rest(或类似)接口与设备制造商ci/cd流程绑定在一起。这可以使整个流程以有效的方式自动化,并为网络运营商和设备制造商/所有者提供一种流线型和更现代的方式来将软件/固件部署到iot设备。
114.云实现方式可以为较小的公司提供一种以更云原生的方式扩展业务的方法,即他们可以出售他们的设备,而不必在基础设施上投资太多来管理更新,并且考虑到信息的增加和与网络运营商的协作,缩短调试活动的交付周期。鉴于iot设备要具有成本效益,理想情况下应该在全球销售相同的设备,这种服务将有助于在许多不同的运营商和网络配置中进行测试,而设备所有者不必为他们的固件测试投资大型测试设置。
115.可以设想,运营商提供特殊的测试节点,iot设备所有者可以在其中放置一些设备进行早期测试,以进一步降低破坏实时网络的风险。
116.图8图示了包括非临时性计算机可读介质800的计算机程序产品,其中,非临时性计算机可读介质800在其中存储了包括程序指令的计算机程序。计算机程序被配置为可加载到数据处理单元810中,数据处理单元810包括处理器(proc)830和与该数据处理单元相关联或集成到该数据处理单元的存储器(mem)820。当被加载到数据处理单元810中时,计算机程序被配置为存储在存储器820中,其中,当计算机程序被加载到处理器830中并由处理器830运行时,计算机程序被配置为使得执行根据结合图5-7描述的方法中的任一个的方法步骤。
117.图9图示了根据一些实施例的用于管理与物联网(iot)设备所有者相关联并连接到无线网络的多个iot设备的网络运营商控制器的装置900的布置。例如,该装置可以被包括在网络运营商服务器中。例如,如结合前面的图3-8中的任何一个所描述的网络运营商服务器。装置900可以被配置为执行结合图5-7中的任何一个所描述的任何方法。在一些实施
例中,装置900可以被包括在网络节点中,例如如结合图3-8所述的网络节点。在一些实施例中,装置900可以被包括在iot设备所有者服务器中,例如,结合图3-8描述的设备所有者服务器。
118.装置900可以包括控制电路910(cntr),该控制电路被配置为使得接收被调度进行固件更新的iot设备列表,其中,该列表指示用于该列表中的每个iot设备的相应更新数据和更新过程。控制电路910可以被配置为使得确定至少一个网络节点,该至少一个网络节点服务于覆盖该设备的列表中的每个iot设备的相应位置的地理区域并缓存相应的更新数据。控制电路910可以被配置为使得确定更新调度,该更新调度指示每个iot设备何时将接收其相应的更新数据,并且对于被调度进行更新的每个iot设备,使得指示至少一个网络节点根据更新调度和更新过程利用所缓存的相应更新数据来更新iot设备。
119.在一些实施例中,更新调度基于至少一个网络状况,并且该至少一个网络状况与以下中的至少一项或多项有关:预期网络负载,来自网络用户的预期负载,内部传输网络的使用,计算节点,定时,iot设备顺序,iot设备活动性和iot设备优先级。
120.在一些实施例中,控制电路910被配置为在中央网络服务器处缓存相应的更新数据,和/或使得指示至少一个网络节点缓存相应的更新数据。
121.在一些实施例中,并且如图9所示,装置900还可以包括编程api模块911。api可以由设备所有者使用/访问以便访问本文的一些实施例并且可以包括用于升级的二进制组件和规范(例如设备列表)。
122.装置900还可以包括gui模块912。gui 912可以提供与gui形式的编程api相同的接口以用于探索和手动交互。它还可以以更易于使用的方式提供状态和进度,以及管理任务。
123.在一些实施例中,控制电路910可以被配置为使api模块911和/或gui模块912提供待更新的iot设备的列表以及相关联的固件升级和更新过程。
124.在iot设备的列表包括易受攻击的iot设备的另一列表的一些实施例中,控制电路910可以被配置为使得指示至少一个网络节点阻止易受攻击的iot设备与网络通信,直到它们已经接收到所需的更新数据为止。
125.装置900还可以包括认证服务模块(conf)913。认证服务可以检查设备所有者(及其服务器)是否是他们声称的身份(与方法700的步骤711相比)。
126.装置900还可以包括授权服务模块(aut)916。授权服务916可以被配置为检查设备所有者是否被允许做它请求做的事情。
127.装置900还可以包括日志服务模块(log)919。日志服务919可以被配置为对来自系统的日志进行收集、过滤、翻译等以供设备所有者了解他们的设备如何表现。
128.在一些实施例中,控制电路910可以被配置为使得日志服务模块919在确定列表中的iot设备未能成功更新时,收集与更新相关联的指示未能成功更新的原因的信息,以及控制电路910可以被配置为使得向iot设备所有者通知所收集的信息。
129.装置900还可以包括更新过程模块(proc)914。更新过程可以被配置为实现设备的实际更新。因此,它可能导致阻止和解除阻止、滚动升级、重新运行、确保一定百分比的设备总是在运行,等等。因此,在一些实施例中,控制电路910可以被配置为使更新过程模块914包括更新过程,该更新过程包括指示用于执行固件更新的至少一个过程和用于确定固件更新是否成功执行的至少一个过程的信息。
130.装置900还可以包括更新调度模块(sched)917。更新调度可以被配置为决定何时以及如何以额外的自由度对设备进行更新,以供网络优化以减少升级的完成时间。
131.在一些实施例中,控制电路910可以被配置为使得(例如,通过使得更新调度模块917)指示至少一个网络节点指示iot设备在根据更新调度接收相应更新数据的整个持续时间内保持在活动状态,并且在固件更新完成时返回默认睡眠周期。
132.在一些实施例中,控制电路可以被配置为使得,例如通过使得更新调度模块917和/或更新过程模块914,指示至少一个网络节点根据更新调度将所需的更新数据推送到被阻止的易受攻击的iot设备,并基于更新过程确定易受攻击的iot设备是否更新成功。
133.在一些实施例中,控制电路910可以被配置为使得向iot设备所有者服务器通知任何不成功的更新,指示至少一个网络节点解除对易受攻击的iot设备的阻止,并且当确定易受攻击的iot设备成功时,通知iot设备所有者更新成功。
134.在一些实施例中,控制电路910可以被配置为使得例如通过使得更新调度模块917和/或更新过程模块914基于更新过程确定列表中的iot设备是否根据更新调度成功更新,并通知iot设备所有者任何不成功或成功的更新。
135.装置900还可以包括定位和调试服务模块(debug)920。定位和调试服务可以被配置为帮助设备所有者定位和调试他们的设备。
136.装置900还可以包括存储模块(mem)923。存储可以被配置为存储用于升级和回退的新旧固件版本。
137.装置900还可以包括分发和缓存模块(dist)915。分发和缓存可以被配置为决定在哪里缓存固件(哪些边缘数据中心、计算节点、enb、网络节点、gnb等)以将网络上的负载保持在最低。
138.装置900还可以包括实验室服务模块(lab)918。实验室服务可以被配置为为设备所有者提供一种可能性,以提供在网络运营商的实验室设置中的受限设备集合。可能具有扩展/附加调试和日志可能性,例如设备日志记录或功耗测量。
139.装置900还可以包括网络使用和稳定性特征模块(netw)921。网络使用和稳定性特征可以是运营商的内部服务,并被配置为确保网络服务的设备得到服务而不会造成干扰。它可以被配置为检查数据使用情况、数据使用方式以及网络中存在的设备的数量和位置。它可以进一步被配置为帮助决定如何进行更新、扩展物联网服务/网络和预测未来的用途。网络使用和稳定性特征可以让运营商更深入地了解他们的网络是如何被使用的,而不仅仅是作为设备所有者和iot设备之间通信的比特管道。
140.装置900还可以包括物理资源模块(phys)922。物理资源可以被配置为包括对用于诸如enb、实验室、网络、服务器等服务的所有物理资源的引用。
141.由于iot设备的所有管理优选是完全自动化的,因此可以从“任何地方”完成,从而从设备所有者交给网络运营商。更新过程可以与云技术(诸如虚拟机(vm)或容器或这些技术的组合)打包并交给网络运营商。可替代地,使用更新固件的标准化(或事实上的标准)方式,对于运营商来说,为更新固件的不同标准方式提供服务努力更多。
142.更新服务可以包括来自第三方的用于升级的组件,该第三方可以是设备实施的合作伙伴。这取决于如何将不同部分的设备组合在一起。iot设备通常由用于执行设备设计的任务的处理器和用于通信的调制解调器组成。调制解调器组件的升级可能需要调制解调器
供应商提供然后由设备所有者使用的工具。这些外部组件可能需要额外的组件/步骤才能被更新。
143.由于iot设备的用例和解决方案/实施方式变化很大,升级服务优选是可插拔的并且非常灵活,以便为尽可能多的不同设备所有者提供服务。
144.作为从网络节点推出新固件的替代方案,有一种可能性是(从制作固件的实体)部分地向网络推送然后让设备在准备好时拉取固件并进行更新。
145.在一些实施例中,装置900可以被包括在网络节点中。在一些实施例中,该装置可以被包括在网络运营商服务器中。在一些实施例中,网络运营商服务器可以是网络节点和/或中央服务器。
146.本文所描述的实施例提供了几个优点。例如,对于iot设备开发人员/所有者(使用3gpp标准)来说,网络不再是一个黑匣子,因为设备制造商/所有者现在可以更好地了解连接过程并帮助调试和开发以及利用网络(运营商)的知识和基础设施,而不是仅仅知道设备在运营商网络中的某处并且点对点地对每个设备工作。
147.由于在发现和推出针对安全漏洞/关键错误的修复之间的窗口被关闭或显著减少,因此本文描述的实施例还能够提高安全性。此外,在许多情况下,可能不允许被视为固件不安全版本的设备进行通信和/或操作。
148.另一个优点是iot设备潜在节省电力,因为它们在等待更新时不进行通信。由于网络能够及时调度固件更新并调度构成更新的特定业务,因此还可以获得潜在的电力节省。
149.另一个优点是通过潜在地减少完全推出新固件所需的时间来使推出顺利,因为工作被分发给网络运营商,该网络运营商可以将其分发到更靠近为iot设备服务的边缘/enb。
150.由于网络可以在低负载时间更好地调度更新,并且可以更好地确保保持连接,因此可以进一步提高更新的成功率。
151.由于来自网络侧的更详细的日志,本文描述的实施例允许更快地识别和纠正问题,因为当升级/更新无法帮助修复非工作设备时,设备的物理位置可以附加到日志中。
152.此外,网络运营商能够更好地规划网络负载,因为它将控制更新的定时。与正常操作相比,固件升级/更新通常要大很多,并且在另一个方向(即从网络到设备)进行。
153.本文描述的实施例增加了iot设备所有者的可扩展性,而不会导致设备所有者本身的成本,因为网络基础设施可以用于分发固件,而不是一遍又一遍地反复获取相同的固件。
154.以同样的方式减少了运营商网络上的负载,因为固件变得更靠近设备进行缓存。
155.本文所述的实施例还可以降低由于iot设备中的不良固件升级而导致的网络干扰风险。
156.所描述的实施例及其等价物可以以软件或硬件或其组合来实现。它们可以由与通信设备相关联或集成到通信设备的通用电路执行,该通用电路例如为数字信号处理器(dsp)、中央处理单元(cpu)、协处理器单元、现场可编程门阵列(fpga)或其他可编程硬件,或由诸如例如专用集成电路(asic)的专用电路执行。所有这些形式都被认为在本公开的范围内。
157.各实施例可以出现在包括电路/逻辑或执行根据任何实施例的方法的电子装置(诸如无线通信设备)中。例如,电子装置可以是便携式或手持式移动无线电通信设备、移动
无线电终端、移动电话、基站、基站控制器、寻呼机、通信器、电子管理器、智能手机、计算机、笔记本计算机、u盘、插卡、嵌入式驱动器或移动游戏设备。
158.根据一些实施例,计算机程序产品包括计算机可读介质,诸如例如软盘或cd-rom。计算机可读介质可以在其上存储包括程序指令的计算机程序。该计算机程序可以加载到数据处理单元中,该数据处理单元例如可以包括在移动终端中。当加载到数据处理单元中时,计算机程序可以存储在与数据处理单元相关联或集成到数据处理单元的存储器中。根据一些实施例,当计算机程序加载到数据处理单元中并由其运行时,计算机程序可以使数据处理单元执行根据例如图5-6中的任何一个中所示的方法的方法步骤。
159.本文参考了各种实施例。然而,本领域的技术人员将认识到对所描述的实施例的许多变化仍将落入权利要求的范围内。例如,本文描述的方法实施例通过以特定顺序执行的方法步骤来描述示例方法。然而,应当认识到,这些事件序列可以以另一种顺序发生而不脱离权利要求的范围。此外,一些方法步骤可以并行执行,即使它们已被描述为按顺序执行。
160.以同样的方式,需要说明的是,在实施例的描述中,将功能块划分为特定的单元并不是限制性的。相反,这些分区仅仅是示例。本文描述为一个单元的功能块可以分成两个或更多个单元。以相同的方式,在不脱离权利要求的范围的情况下,本文描述为被实现为两个或更多个单元的功能块可以被实现为单个单元。
161.在合适的情况下,本文公开的任何实施例的任何特征可以应用于任何其他实施例。同样地,任何实施例的任何优点可以适用于任何其他实施例,反之亦然。
162.因此,应该理解,所描述的实施例的细节仅用于说明目的,而绝非限制。相反,所有落入权利要求的范围内的变化都旨在包含在其中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献