CN113475107A - 将云侧角色委派给设备 - Google Patents
将云侧角色委派给设备 Download PDFInfo
- Publication number
- CN113475107A CN113475107A CN202080014935.9A CN202080014935A CN113475107A CN 113475107 A CN113475107 A CN 113475107A CN 202080014935 A CN202080014935 A CN 202080014935A CN 113475107 A CN113475107 A CN 113475107A
- Authority
- CN
- China
- Prior art keywords
- network
- data
- new device
- network quality
- quality information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/10—Scheduling measurement reports ; Arrangements for measurement reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/026—Services making use of location information using location based information parameters using orientation information, e.g. compass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
提供了用于将云侧角色委派给设备的技术。针对一个网络从一个或多个设备接收网络质量信息。确定在从其接收网络质量信息的区域中网络不可用。对于新设备,预测新设备的轨迹路径。基于轨迹路径确定新设备将要进入该区域。识别一个或多个软件模块和数据。将一个或多个软件模块和数据发送到新设备,其中新设备执行一个或多个软件模块以从数据生成一个或多个洞察。
Description
技术领域
本发明的实施例涉及将云侧角色委派给设备,而云节点与设备之间的网络不可用于允许通信。
背景技术
物联网(IoT)可以被描述为具有用于彼此通信的软件和硬件的设备的网络。即,设备(例如,家庭中的恒温器或汽车中的导航系统)能够交换数据。
云节点可以被描述为云基础设施中的计算机。
随着IoT技术的广泛使用,存在云节点从IoT设备收集数据并处理数据的系统。云节点还控制IoT设备。
另一方面,移动IoT设备(诸如所连接的车辆)有时丢失与用于连接至云节点的网络的连接或者由于地理特征、周围环境、无线电波条件等而遭受与网络的不稳定连接。在这样的条件下,IoT设备的用户可能不能使用由云节点提供的服务。
为了在网络不能被使用的条件下在IoT设备上维持服务,云节点的功能中的全部或一些功能是在该设备上执行的。在这种情况下,可不执行取决于从另一IoT设备发送的数据或在云上进行的分析的结果的过程。
发明内容
根据各实施例,提供了一种用于将云侧角色委派给设备的计算机实现的方法。该计算机实现的方法包括多个操作。针对一个网络从一个或多个设备接收网络质量信息。确定在从其接收网络质量信息的区域中网络不可用。对于新设备,预测新设备的轨迹路径。基于轨迹路径确定新设备将要进入该区域。识别一个或多个软件模块和数据。将一个或多个软件模块和数据发送到新设备,其中新设备执行一个或多个软件模块以从数据生成一个或多个洞察。这有利地允许设备继续执行一个或多个软件模块以从数据生成一个或多个洞察,并且例如即使在网络不可用时也预测路线。
根据其他实施例,提供了一种用于将云侧角色委派给设备的计算机程序产品。所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有随其体现的程序代码,所述程序代码可由至少一个处理器执行以执行多个操作。针对一个网络从一个或多个设备接收网络质量信息。确定在从其接收网络质量信息的区域中网络不可用。对于新设备,预测新设备的轨迹路径。基于轨迹路径确定新设备将要进入该区域。识别一个或多个软件模块和数据。将一个或多个软件模块和数据发送到新设备,其中新设备执行一个或多个软件模块以从数据生成一个或多个洞察。这有利地允许设备继续执行一个或多个软件模块以从数据生成一个或多个洞察,并且例如即使在网络不可用时也预测路线。
根据其他实施例,提供了一种用于将云侧角色委派给设备的计算机系统。计算机系统包括一个或多个处理器、一个或多个计算机可读存储器和一个或多个计算机可读的有形存储设备;以及存储在所述一个或多个计算机可读有形存储设备中的至少一个上的用于由所述一个或多个处理器中的至少一个经由所述一个或多个存储器中的至少一个执行以执行操作的程序指令。针对一个网络从一个或多个设备接收网络质量信息。确定在从其接收网络质量信息的区域中网络不可用。对于新设备,预测新设备的轨迹路径。基于轨迹路径确定新设备将要进入该区域。识别一个或多个软件模块和数据。将一个或多个软件模块和数据发送到新设备,其中新设备执行一个或多个软件模块以从数据生成一个或多个洞察。这有利地允许设备继续执行一个或多个软件模块以从数据生成一个或多个洞察,并且例如即使在网络不可用时也预测路线。
在附加实施例中,网络质量信息被发送至新设备,将网络质量信息发送至新设备,其中,新设备使用网络质量信息来确定当设备沿着轨迹路径移动至新区域时网络质量已经改善。这有利地允许新设备确定网络何时变得可用,使得新设备能够与云节点通信。
在另外的实施例中,与网络质量信息一起创建时间序列数据,其中,网络质量信息包括网络带宽和网络延迟。使用时间序列数据来确定平均网络带宽和平均延迟。根据所述平均网络带宽和所述平均网络延迟生成所述区域的网络质量得分,其中所述网络质量得分用于确定所述网络在从中接收到所述网络质量信息的区域中不可用。这有利地允许使用在不同时间(具有时间序列数据)的网络带宽和网络延迟来生成网络质量得分。
在其他实施例中,网络质量得分与环境系数相乘。这有利地允许网络质量得分考虑环境因素。
在又其他实施例中,在持续时间之后从新设备中删除一个或多个软件模块和数据。这有利地允许云节点设置持续时间并且允许设备删除一个或多个软件模块和数据以改善本地存储。
在进一步的实施例中,新设备将传感器信息从一个或多个传感器设备发送至云节点。这允许实时数据从新设备发送到云节点。
在又进一步的实施例中,新设备是物联网(IoT)设备。这有利地允许IoT设备实现本发明的实施例。在某些实施例中,软件即服务(SaaS)被配置为执行该方法的操作。这有利地允许操作作为云环境中的服务提供。
附图说明
现在参考附图,其中贯穿全文,相同的参考号表示相应的部分:
图1在框图中示出了根据某些实施例的计算环境。
图2在框图中示出了根据某些实施例的计算环境的进一步细节。
图3示出了根据某些实施例的用于更新云节点中的网络质量信息存储器的流程图。
图4示出了根据某些实施例的用于预测云节点中的网络中断和开始同步的流程。
图5示出了根据某些实施例的用于使用设备中的软件模块来同步数据和生成洞察的流程。
图6示出了根据某些实施例的逻辑存储器中的逻辑表。
图7示出了根据某些实施例的数据存储器中的数据表。
图8示出了根据某些实施方式的网络质量信息存储器。
图9示出了根据某些实施例的地图。
图10A和10B以流程图示出了根据某些实施例的用于在云节点处选择一个或多个软件模块、数据和网络质量信息的操作。
图11A和11B以流程图示出了根据某些实施例的用于更新云节点处的网络质量信息存储器的操作。
图12以流程图示出了根据某些实施例的用于从设备向云节点上的云服务发送一个或多个洞察的操作。
图13以流程图示出了根据某些实施例的用于将传感器数据从设备发送至云节点上的云服务的操作。
图14以流程图示出了根据某些实施例的用于在设备处处理命令的操作。
图15示出了根据某些实施例的示例路线。
图16A、图16B、图16C和图16D示出了根据某些实施例的示例性路线的流程。
图17A和17B示出了根据某些实施例的在云节点处针对示例路线的分析。
图18示出根据某些实施例的计算节点。
图19示出了根据某些实施例的云计算环境。
图20示出了根据某些实施例的抽象模型层。
具体实施方式
已经出于说明的目的呈现了本发明的不同实施例的描述,但不旨在是穷尽性的或局限于所公开的实施例。在不背离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域的普通技术人员而言将是显而易见的。选择在此使用的术语以最佳地解释实施例的原理、实际应用或在市场上找到的技术上的技术改进,或使得本领域普通技术人员能够理解在此公开的实施例。
实施例针对车辆内的设备,如物联网(IoT)设备或其他移动设备。实施例根据每个位置中的网络质量信息和根据设备的当前位置来预测所调度的路线上的网络断开连接的可能性。然后,各实施例将云节点的数据处理功能中的一个或多个数据处理功能委派给设备。数据处理功能由软件模块执行。
当功能被委派时,实施例选择并同步软件模块(即,用于执行数据处理功能的逻辑)和在从云节点到设备的断开连接网络的区域中处理所需的数据,从而使得服务可在网络变得临时不可用之后的某个时间段期间在设备上被维护,如果网络在该区域中不稳定(例如,该网络的区域中的设备不能连接到云节点并且发送数据或接收命令)或者如果网络在该区域中断开连接,则该网络可被确定为在该区域中不可用。
图1在框图中示出了根据某些实施例的计算环境。在图1中,云服务102由云节点100提供。云服务102(在云侧)能够通过网络190与设备152a…152n通信。省略号和使用“a”和“n”指示任何数量的设备可以与云服务102通信。
设备152a…152n中的每一个具有网络能力。即,设备152a…152n中的每一个能够经由网络190与云节点100处的云服务102通信。在某些实施例中,设备能够152a…152n彼此通信。在某些实施例中,设备152a...152n是IoT设备或移动设备,其能够与云节点100通信并且在一些情况下能够彼此通信。
图2在框图中示出了根据某些实施例的计算环境的进一步细节。具体地,图2示出了云服务102和设备152a的进一步细节。通过网络190与云服务102进行通信的每个设备152a…152n包括为图2中的设备152a示出的组件。
设备152a包括用于实时收集数据的一个或多个传感器158。在某些实施例中,传感器158中的一个或多个是检测例如温度、湿度、大气压等的天气传感器。在某些实施例中,传感器158中的一个或多个是检测例如速度、加速度、全球定位卫星(GPS)位置等的车载传感器。通过多个实施例,在数据处理器160中处理由设备152a上的传感器设备158生成的数据,并且然后经由云数据处理代理162和数据发送器164将经处理的数据发送至云服务102的数据接收器110。
云侧的云服务102处理所收集的数据,并向服务用户提供服务。另外,云服务102通过命令发送器108向设备152a发出命令,并且能够控制设备152a上的传感器设备158。
云侧上的数据接收器110将从设备152a接收的数据传输至数据处理器106并且将关于设备152a的位置的信息和关于网络的条件的信息(例如,网络带宽和网络延迟)提供至网络质量信息(“信息”)更新器112。
在实施例中,多个设备152a...152n从传感器向云服务102提供数据,并且网络质量信息更新器112接收设备152a...152n的位置以及来自多个设备152a…152n的关于网络状况的信息。随后,当网络质量信息的子集被发送到多个设备152a…152n中的一个设备时,网络质量信息的子集包括关于来自多个设备152a…152n的网络状况的信息。
网络质量信息更新器112使用从数据接收器110接收的信息来更新网络质量信息和位置信息。网络质量信息更新器112还将更新的网络质量信息和位置信息存储在网络质量信息(“信息”)存储器114中。
网络质量信息可以被描述为映射。该映射被创建,其指示实现什么级别的网络质量以及实现该级别的位置。映射是从已经从其接收到数据的设备152a的位置信息、网络带宽和网络延迟创建的。
在某些实施例中,基于从许多设备152a...152a收集的网络信息来配置网络质量信息。152n。当每个设备152a…152n发送数据时,该设备152a…152n可以添加关于设备152a…152n在其中不能够连接到网络190以发送数据的区域的信息。在某些实施例中,可以从外部组织(例如通信运营商)获取每个位置中的网络质量信息。
在某些实施例中,设备152a…152n可以是车辆中的车辆导航设备。交通工具可以是汽车、船、飞机、摩托车、自行车等。车辆导航设备可以是专用通信设备。
网络质量信息更新器112将设备152a的位置信息发送到网络质量预测器116。
网络质量预测器116基于接收到的位置信息和网络质量信息存储器114中的附加信息来预测设备152a附近的网络质量。如果网络质量预测器116预测网络质量将降低到网络质量阈值以下,则网络质量预测器116确定云节点100上的数据处理功能应被委派给设备152a。在某些实施例中,网络质量阈值例如基于无线电场强度、分组丢失率、抖动、等待时间等。数据处理功能的实例包括例如图像识别、传感器数据的数值分析、驾驶行为分析等。
如果网络质量预测器116确定处理功能将被委托,则网络质量预测器116指示同步管理器118执行同步。
同步管理器118在从逻辑存储器104(其中存储由云侧用于数据处理的软件模块)和数据存储器120(其中存储由云侧用于数据处理的数据)委派处理功能的区域中选择用于在设备152a上执行处理功能的软件模块和数据。然后,同步管理器118向逻辑同步器124发送所选择的软件模块并且向数据同步器126发送所选择的数据。此外,同步管理器118从云侧的网络质量信息储存器114选择信息并且将该信息发送到网络质量信息同步器122。在某些实施例中,基于要接收信息的设备152a的位置和该设备152a的轨迹路径来选择来自网络质量信息存储器114的信息。
逻辑同步器124将所选择的软件模块发送到设备152a上的逻辑同步器170。软件模块可以是将由设备152a上的云数据处理代理162执行的程序代码或规则。在某些实施例中,规则引擎是云数据处理代理162的子组件并且执行软件模块。在某些实施例中,优先级可以被分配给多个软件模块并且具有更高优先级的软件模块可以被选择性地发送,这取决于设备152a的条件。
同步管理器118可为每个软件模块和相关联的数据设置有效持续时间。一旦持续时间结束,每个软件模块和相关联的数据到期并且从设备152a自动删除。
数据同步器126将所选择的数据发送到设备152a上的数据同步器176。该数据可包括来自另一设备的数据,并且还可包括在云节点100上作出的分析的结果。
网络质量信息同步器122将所选择的网络质量信息发送到设备152a上的网络质量信息同步器166。
逻辑同步器170将接收到的软件模块发送到逻辑应用器172。逻辑应用器172将软件模块应用于云数据处理代理162。逻辑应用器172还可以将软件模块存储在逻辑存储器174中,并且软件模块可以根据条件而改变。
数据同步器176将接收到的数据存储在数据存储器178中。
网络质量信息同步器166将接收的信息存储在网络质量信息存储器168中。
云数据处理代理162执行软件模块以从数据生成(“获得”或“识别”)一个或多个洞察。云数据处理代理162可以将一个或多个洞察存储在数据存储器178中。
如果作为数据处理的结果而发出命令,则云数据处理代理162将命令发送到命令执行器156。
云数据处理代理162从网络质量信息存储器168中的信息确定是否尝试与当前位置中的云节点100进行通信。如果云数据处理代理162确定要尝试通信,则云数据处理代理162通过数据发送器164向云节点100发送作为由云数据处理代理162进行的数据处理的结果而存储在数据存储器178中的洞察。
在某些实施例中,可将优先级指派给洞察,并且具有较高优先级的洞察可被转移,而无需转移其他洞察或在转移其他洞察之前。例如,当设备152a接近下一个网络断开连接区域时,具有高优先级的洞察可被转移到云节点100。
当云节点100检测到设备152a的重新连接时,云节点100基于网络质量预测器116的新确定来取消功能委派。
网络质量预测器116和质量信息更新器112可以根据条件来改变更新的频率,并且可以使得能够根据真实环境来设置更新的频率。真实环境可以被描述为在当前时间围绕设备152a的网络连接的稳定性。实施例基于区域中的网络稳定性动态地调整更新频率,该网络稳定性取决于设备152a的位置及其周围环境。
更具体地,可以增加从位于网络连接不可用的区域附近的设备152a传输数据的频率,以提高该区域中的网络连接不稳定性预测的准确性。
图3示出了根据某些实施例的用于更新云节点100中的网络质量信息存储器114的流程300。最初,设备1和设备2向数据接收器110发送数据。数据接收器110将数据发送到数据处理器106。数据处理器106处理数据,将经处理的数据存储在数据存储器120中,且经由命令发送器108将命令发送到每一设备(设备1和设备2)。在某些实施例中,该命令是给予每个设备以操作或改变该设备的状态的指令(例如,打开灯、在屏幕上显示消息等)。在某些实施例中,发送的特定命令基于规则动态地确定。在某些实施例中,经处理的数据包括从从设备接收的数据生成的洞察。
数据接收器110将每个设备的位置、网络带宽和网络延迟发送至网络质量信息更新器112。网络质量信息更新器112更新网络质量信息存储器114中的每个设备的位置、网络带宽和网络延迟。
图4示出了根据某些实施例的用于预测云节点100中的网络中断和开始同步的流程400。最初,设备1向数据接收器110发送数据。数据接收器110将设备1的位置发送到网络质量信息更新器112,网络质量信息更新器112将设备1的位置发送到网络质量预测器116。网络质量预测器116执行分析以便预测设备1将很快离线(由于网络中断)并且将同步消息发送至同步管理器118。同步管理器118选择数据、软件模块和网络质量信息。然后,同步管理器118发送用于将数据发送到数据同步器126的命令,发送用于将软件模块发送到逻辑同步器124的命令,以及发送用于将网络质量信息发送到网络质量信息同步器122的命令。数据同步器126从数据存储器120检索数据并将数据发送到设备1。逻辑同步器124从逻辑存储器104检索软件模块并将软件模块发送到设备。网络质量信息同步器122从网络质量信息存储器114检索网络质量信息,并将网络质量信息发送到设备1。
图5示出了根据某些实施例的用于使用设备中的软件模块来同步数据和生成洞察的流程500。为了同步数据,1)数据同步器176接收数据并且将数据存储在数据存储器178中,2)逻辑同步器170接收软件模块并且将软件模块发送到逻辑应用器172,以及3)网络质量信息同步器166接收网络质量信息并且将网络质量信息存储在网络质量信息存储器168中。逻辑应用器172将软件模块存储在逻辑存储器174中并且将软件模块发送到云数据处理代理162。云数据处理代理162使用该数据来执行软件模块。
为了生成洞察,传感器设备158将数据发送到数据处理器160,数据处理器160将数据发送到云数据处理代理162。云数据处理代理162检索先前存储在数据存储器178中的数据,所述数据是先前从云节点100发送的数据。云数据处理代理162执行软件模块以从数据生成一个或多个洞察,将一个或多个洞察保存到数据存储器178中,并且向命令执行器156发送命令。命令执行器156将命令发送到传感器设备158。云数据处理代理162从网络质量信息存储器168获得网络质量信息,基于网络质量信息来确定应当向云节点发送一个或多个洞察,并且向数据发送器164发送一个或多个洞察。数据发送器164将数据发送到云节点100。
图6示出了根据某些实施例的逻辑存储器中的逻辑表600。逻辑表600包括用于每一行的标识符的列、用于软件模块选择的元逻辑的列、用于数据选择的元逻辑的列以及用于逻辑内容的列。元逻辑可被描述为将由同步管理器118执行的程序代码或规则。逻辑存储器104和逻辑存储器174可存储逻辑表600。
针对逻辑存储器104中的每个条目执行用于软件模块选择的元逻辑,并且做出关于是否选择条目中的软件模块用于发送至设备的判定。用于逻辑选择的元逻辑使用数据存储器120中的数据执行处理。在这样做时,可以基于网络质量信息和关于设备将移动到的区域的信息来缩窄在软件模块选择中使用的数据。例如,可以使用属于设备将移动到其中的低网络质量区域的数据来选择软件模块。可替代地,可以使用属于该区域和邻接该区域的区域的数据。用于缩窄数据的特定技术可以在元逻辑中描述。
执行用于所选条目的数据选择的元逻辑以选择数据。作为用于软件模块选择的元逻辑的执行的结果,可以获取软件模块(或条目)的优先级。在某些实施例中,优先级被嵌入元逻辑中以用于数据选择。在某些替代实施例中,基于不同因素来确定优先级。
图7示出根据某些实施例的数据存储器中的数据表700。数据表700包括用于每行的标识符的列、用于经度的列、用于纬度的列、用于链接标识符(例如,道路标识符)的列、用于时间戳的列、用于链接类型的列、以及用于有效载荷(其是数据)的列。经度和纬度提供设备的位置。数据存储器120和数据存储器178可以包括数据表700。
图8示出了根据某些实施例的网络质量信息存储器800。网络质量信息存储器800具有用于区域标识符的列、用于时间戳的列、用于平均网络带宽的列、用于平均网络延迟的列、用于网络质量得分的列、以及时间序列数据的参考的列。例如,时间序列数据850具有用于时间戳的列、用于网络带宽的列和用于网络延迟的列。平均网络带宽是基于时间序列数据中的网络带宽的平均值。平均网络延迟是基于时间序列数据中的网络延迟的平均值。
在图8中,“Mbps:表示兆比特每秒,“kbps”表示千比特每秒,并且“ms”表示毫秒。
图9示出根据某些实施例的地图900。在某些实施例中,地图900被划分成正方形区域的网格。位置信息到区域的映射可使用计算公式来执行(例如,可基于纬度和经度将数字指派给区域,例如具有开放街道映射(OSM)瓦片编号)。
关于从设备发送的网络带宽和网络延迟的信息被存储为用于每个区域的时间序列数据,以及计算并存储每个区域中的平均网络带宽和平均网络延迟。
根据平均网络带宽和平均网络延迟计算区域中的网络质量得分。
为了适应取决于环境因素(诸如每个区域中的恶劣天气或拥塞条件)的可用网络质量信息的变化,可以定义与环境因素相对应的环境系数,并且可以将计算的网络质量得分与环境系数相乘以生成最终网络质量得分。
图10A和图10B以流程图示出根据某些实施例的用于在云节点处选择一个或多个软件模块、数据和网络质量信息的操作。控制在框1000处以云服务102从设备152a接收数据开始。在框1002中,云服务102预测设备152a的轨迹路径(路线)。在框1004中,云服务102预测设备152a沿着轨迹路径的网络质量。预测轨迹路径可被描述为车辆可能经过一个或多个区域的路线。可基于输入到车辆的导航设备中的路线、基于车辆的设备在过去大约同时行驶的路线(例如,去工作或一天结束时回家)、或者基于其他信息(诸如车辆可能正在行驶的兴趣点)来预测车辆的设备的轨迹路径。
在框1006中,云服务102确定设备152a是否将由于沿着轨迹路径的网络不可用而断开连接。如果是,则处理继续到块1008,否则,处理继续到块1000。
在方框1008中,云服务102创建网络质量信息的子集以基于轨迹路径发送到设备152a。从框1008(图10A),处理继续至框1010(图10B)。在某些实施例中,网络质量信息的子集包括关于来自设备152a…152n的一个或多个的一个或多个区域中的网络质量信息。
在框1010中,云服务102从第一条目开始,选择逻辑表中的下一条目。在框1012中,云服务102执行条目中的用于确定软件模块是否要发送到设备152a的元逻辑,其中来自网络质量信息存储库114的网络质量信息的子集和来自数据存储库120的数据被用作输入。
在框1014中,云服务102确定是否要向设备152a发送软件模块。如果是,则处理继续到块1016,否则,处理继续到块1022。
在框1016中,云服务102将软件模块添加到要发送到设备152a的软件模块的子集。在框1018中,云服务102执行条目中的元逻辑以选择要发送到设备152a的数据。在框1020中,云服务102将所选择的数据添加到要发送到设备152a的数据的子集。
在框1022中,云服务102确定是否已经选择了所有条目。如果是,则处理继续到块1024,否则,处理继续到块1010。在框1024中,云服务102向设备152a发送软件模块的子集、数据的子集和网络质量信息的子集。
图11A和图11B以流程图示出根据某些实施例的用于更新云节点处的网络质量信息存储的操作。控制在块1100处以云服务102从设备152a接收数据开始,其中数据包括网络带宽和网络延迟。在框1102中,云服务102从设备的位置识别区域。
在框1104,云服务102创建具有网络带宽和网络延迟的时间序列数据,并将其附加到该区域的时间序列数据集。在框1106中,云服务102优选地从该区域的时间序列数据集中移除较旧的数据。
在框1108中,云服务102从时间序列数据集更新该区域的平均网络带宽和网络延迟。从框1108(图11A),处理继续至框1110(图11B)。
在框1110中,云服务102根据平均网络带宽和平均网络延迟来生成该区域的网络质量得分。在框1112中,云服务102优选地在存在环境系数的情况下将网络质量得分乘以环境系数。在框1114中,云服务102利用网络质量得分来更新网络质量信息存储库114。在某些实施例中,网络质量信息包括网络质量得分。
在框1116中,云服务102确定设备152a是否是活动的(例如,经由网络进行通信和向云服务102发送数据)。如果是,则处理继续到框1100,否则,处理完成。
图12以流程图示出根据某些实施例的用于从设备152a向云节点100上的云服务102发送一个或多个洞察的操作。控制开始于块1200,其中设备152a从云节点接收软件模块的子集、数据的子集和网络质量信息的子集。在某些实施例中,网络质量信息的子集包括关于来自设备152a…152n的一个或多个中的一个或多个区域中的网络质量的信息。
在框1202中,设备152a执行一个或多个软件模块以从数据生成一个或多个洞察(例如,关于具有设备152a的车辆的路线的洞察)。在框1204中,设备152a基于网络质量信息的子集来确定网络质量是否改进。例如,当设备(作为车辆的一部分)正在移动通过不同的区域时,基于网络质量信息,设备能够确定在特定位置是否存在网络可用性。如果是,则处理继续到框1206,否则,处理继续到框1202。在框1206中,设备152a向云服务102发送一个或多个洞察。在框1208中,在软件模块的子集和数据的子集的持续时间结束时,设备152a删除软件模块的子集和数据的子集。在某些实施例中,还基于持续时间的结束来删除网络质量信息的子集。
图13以流程图示出了根据某些实施例的用于将传感器数据从设备发送至云节点100上的云服务102的操作。控制开始于块1300,其中设备152a从一个或多个传感器收集数据。在框1302中,设备152a向云服务102发送数据。
图14以流程图示出了根据某些实施例的用于在设备处处理命令的操作。控制开始于块1400,其中设备152a从云服务102接收命令。在框1402中,设备152a执行所述命令。在框1404中,如果命令生成数据,则设备152a向云服务102返回所生成的数据。
通过在云节点100与设备152a之间同步软件模块、数据和网络质量信息,实施例有利地允许即使当网络不可用于云节点100和设备152a彼此通信时,在云节点100上执行的相同过程在设备152a上执行。
有利地,云节点100能够预测网络质量将要降级,并且随着设备152a沿轨迹路径移动,网络可能变得不可用。在网络变得不可用之前,云节点100有利地与设备152a同步软件模块、数据和网络质量信息。
由于同步的数据包括数据(例如,源自除了接收数据的设备之外的设备的数据)和在云上的分析的结果,所以与发送用于接收数据的设备的数据的情况相比,可以执行宽范围的处理。
由于软件模块的子集和数据的子集被选择性地同步,所以对设备152a的网络流量和资源(诸如中央处理单元(CPU)、存储器和存储设备)的影响可被最小化。
仅为了增强对实施例的理解,本文提供了其中洞察是所建议的路线的示例。然而,在其他实施例中,可以生成其他洞察。
图15示出了根据某些实施例的示例路线1500。在该实例中,在网络连接不可用的山脉地区的区域中提供道路信息。在该区域中,在车辆中的设备进入该区域之前,执行关于障碍物(例如,落下的岩石、落下的物体和动物)的信息的同步,从而当车辆接近障碍物时并且在网络连接变得不可用之前,向设备提供适当的信息。在图15中,13:15、13:20、13:25和13:30的时间戳与移动的熊的位置相关联。此外,13:35的时间戳与车辆相关联。
图16A、图16B、图16C和图16D示出根据某些实施方式的示例性路线的流程1600。在这个实例中,在时间戳13:33处,在进入山区之前,车辆接收由另一车辆在13:31时报告的“道路上的动物”事件的软件模块和数据。因此,即使当失去网络连接时,车辆也可选择避开该动物的路线。
图17A和图17B示出根据某些实施例的用于示例路线的云节点处的分析1700。利用实施例,云侧逻辑分析从每个车辆接收的事件并且检测它是新报告的事件还是已知事件的更新。在该示例中,云侧逻辑执行图像分析并检测所报告的动物是否与已经报告的动物相同。
在附加实例中,提供关于网络连接不可用的山脉地区中的恶劣天气的信息。已检测到山脉地区中雾的发生的车辆中的设备移动到网络可用的位置,然后将指示设备已检测到雾的时间和位置的数据发送到云节点100。多个车辆的设备可执行该操作并将指示发生雾的时间和位置的数据发送到云节点100,云节点100累积该数据。
然后,在新车辆即将进入山脉地区之前,将指示发生雾的时间和位置的数据和雾预测软件模块从云节点同步到新车辆的设备。然后,新车辆的设备使用同步的数据和雾预测软件模块来预测雾将发生的时间和位置。该设备使用预测的时间和位置来进行驾驶辅助和选择用于避免雾的路线。实施例还提供用于避免其他天气问题(例如,龙卷风)或其他障碍物(例如,雪崩)的信息。
在进一步的示例中,提供了网络连接不可用的隧道中的行人(或自行车)的视力的报告。在隧道中已经看到行人的车辆的设备在车辆离开隧道之后将车辆已经看到行人的时间和位置发送到云。多个车辆的设备执行该操作并将指示行人被看见的时间和位置的数据发送到云节点100,云节点100累积该数据。
紧接在新车辆进入隧道之前,从云节点100将指示看见行人的时间和位置以及行人位置预测软件模块的数据同步到新车辆的设备。新车辆的设备使用同步数据和行人位置预测软件模块来预测行人的当前位置并使用行人的预测当前位置进行驾驶辅助。
在又一示例中,提供了关于由于自然灾害而导致网络连接变得不可用的区域中的道路状况的信息。由于基站出现故障或者由于诸如台风或者暴雨等灾害而接入网络激增,所以区域中的网络连接变得不可用。已经经过该区域的车辆的设备移动到网络可用的位置,并且向云节点100发送关于通信状况和道路状况(诸如道路切断或洪水)以及时间和位置的最新数据。多个车辆的设备执行该操作并且将指示网络连接不可用的区域和道路状况的数据发送到云节点100,云节点100累积该数据。
紧接在新车辆进入该区域之前,从云节点100同步关于道路条件的数据和相关逻辑。新车辆的设备使用同步的数据和软件模块来估计可行驶的道路并且使用该估计来选择用于避免切断的或淹没的道路的路线。
因此,在某些实施例中,云节点100通过网络与车辆的多个设备通信。云节点100从多个车辆的设备接收与车辆的位置相关联的网络质量信息(指示网络带宽和/或网络延迟)以及车辆的位置处的事件信息(指示滑路、事故、动物等)。云节点100从多条网络质量信息中确定网络中断区域。当预测到新车辆将进入断网区域时,云节点100基于断网区域中的事件信息来选择要在该区域中执行的一个或多个软件模块。在新车辆进入网络断开区域之前,云节点100将所选择的一个或多个软件模块和网络断开区域中的事件信息发送至新车辆。
通过实施例,云节点100(1)预先将选择要求与多个软件模块中的每一个相关联,(2)当断网区域中的多条事件信息满足选择要求时(如给定事件信息的条数大于阈值),选择与所述选择要求相关联的软件模块。
通过实施例,云节点100分析接收到的多条事件信息,并判断该多条事件信息是否属于同一事件类别(例如,基于图像分析来判断事件是否是同一种动物的事件)。
通过实施例,云节点100通过基于第一车辆移动的方向的行驶预测来确定新车辆是否进入断网区域。
图18示出根据某些实施例的计算环境1810。在某些实施例中,计算环境是云计算环境。参见图18,计算机节点1812仅是合适的计算节点的一个实例,并且不旨在对在本文描述的本发明的实施例的使用或功能性的范围提出任何限制。无论如何,计算机节点1812能够被实现和/或执行上文阐述的任何功能。
计算机节点1812可以是计算机系统,其可与许多其他通用或专用计算系统环境或配置一起操作。可以适合于与计算机节点1812一起使用的众所周知的计算系统、环境和/或配置的示例包括,但不限于个人计算机系统、服务器计算机系统、瘦客户机、厚客户机,手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品,网络PC、小型计算机系统、大型计算机系统和包括任何上述系统或设备的分布式云计算环境,等等。
可以在由计算机系统执行的计算机系统可执行指令(如程序模块)的一般上下文中描述计算机节点1812。一般而言,程序模块可包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机节点1812可以在分布式云计算环境中实践,其中任务由通过通信网络链接的远程处理设备来执行。在分布式云计算环境中,程序模块可位于包括存储器存储设备的本地和远程计算机系统存储介质两者中。
如图18所示,计算机节点1812以通用计算设备的形式示出。计算机节点1812的组件可以包括但不限于一个或多个处理器或处理单元1816、系统存储器1828和将包括系统存储器1828的不同系统组件耦合到一个或多个处理器或处理单元1816的总线1818。
总线1818表示若干类型的总线结构中的任一种总线结构中的一种或多种,包括存储器总线或存储器控制器、外围总线、加速图形端口、以及使用各种总线架构中的任一种的处理器或局部总线。作为示例而非限制,此类架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线和外围组件互连(PCI)总线。
计算机节点1812通常包括各种计算机系统可读介质。这样的介质可以是可由计算机节点1812访问的任何可用介质,并且它包括易失性和非易失性介质、可移动和不可移动介质两者。
系统存储器1828可以包括易失性存储器形式的计算机系统可读介质,如随机存取存储器(RAM)1830和/或高速缓存存储器1832。计算机节点1812还可以包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。仅作为示例,存储系统1834可以被提供用于从不可移动、非易失性磁介质(未示出,并且通常被称为“硬盘驱动器”)读取和向其写入。尽管未示出,可以提供用于读写可移动非易失性磁盘(例如,“软盘”)的磁盘驱动器以及用于读写可移动非易失性光盘(诸如CD-ROM、DVD-ROM)或其他光学介质之类的光盘驱动器。在这样的实例中,每一个都可以通过一个或多个数据介质接口连接到总线1818。如以下将进一步描绘和描述的,系统存储器1828可包括具有被配置成执行本发明的各实施例的功能的程序模块的集合(例如,至少一个)的至少一个程序产品。
具有一组(至少一个)程序模块1842的程序/实用工具1840以及操作系统、一个或多个应用程序、其他程序模块和程序数据可以通过举例而非限制的方式存储在系统存储器1828中。操作系统、一个或多个应用程序、其他程序模块和程序数据中的每一者或其某一组合可包含联网环境的实施例。程序模块1842总体上执行本文描述的本发明的实施例的功能和/或方法。
计算机节点1812还可以与一个或多个外部设备1814(如键盘、定点设备、显示器1824等)通信;使得用户能够与计算机节点1812交互的一个或多个设备;和/或使得计算机节点1812能够与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)。这样的通信可以经由输入/输出(I/O)接口1822发生。此外,计算机节点1812可以经由网络适配器1820与诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,互联网)之类的一个或多个网络通信。如所描绘的,网络适配器1820经由总线1818与计算机节点1812的其他部件通信。应当理解,虽然未示出,但是其他硬件和/或软件组件可以与计算机节点1812结合使用。示例包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和数据归档存储系统等。
在某些实施例中,计算节点100和/或每个设备152a...152n具有计算机节点1812的架构。
云实施例
应当理解,尽管本公开包括关于云计算的详细描述,但本文所教导的实现方式不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其他类型的计算环境来实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
现在参见图19,描绘了说明性云计算环境1950。如图所示,云计算环境1950包括一个或多个云计算节点1910,云消费者使用的本地计算设备(诸如个人数字助理(PDA)或移动电话1954A、台式计算机1954B、膝上型计算机1954C和/或汽车计算机系统1954N)可与云计算节点1910通信。节点1910可以彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中,诸如上文描述的私有云、共同体云、公有云或混合云或其组合。这允许云计算环境1950提供基础设施、平台和/或软件作为服务,云消费者不需要为这些服务提供本地计算设备上的资源。应理解,图19中所示的计算装置1954A-N的类型旨在仅是说明性的,并且计算节点1910和云计算环境1950可通过任何类型的网络和/或网络可寻址连接(例如,使用网络浏览器)与任何类型的计算机化装置通信。
现在参见图20,示出了由云计算环境1950(图19)提供的一组功能抽象层。应预先理解,图20中所示的部件、层和功能旨在仅是说明性的,并且本发明的实施例不限于此。如所描绘的,提供了以下层和相应的功能:
硬件和软件层2060包括硬件和软件组件。硬件组件的示例包括:主机2061;基于RISC(精简指令集计算机)架构的服务器2062;服务器2063;刀片服务器2064;存储设备2065;以及网络和联网组件2066。在一些实施例中,软件组件包括网络应用服务器软件2067和数据库软件2068。
虚拟化层2070提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器2071;虚拟存储器2072;虚拟网络2073,包括虚拟专用网络;虚拟应用和操作系统2074;以及虚拟客户端2075。
在一个示例中,管理层2080可以提供以下描述的功能。资源供应2081提供用于执行云计算环境内的任务的计算资源和其他资源的动态获取。计量和定价2082在云计算环境内利用资源时提供成本跟踪,并针对这些资源的消费进行计费或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及对数据和其他资源的保护。用户门户2083为消费者和系统管理员提供对云计算环境的访问。服务级别管理2084提供云计算资源分配和管理,使得满足所需的服务级别。服务水平协议(SLA)计划和履行2085为根据SLA预期未来要求的云计算资源提供预安排和采购。
工作负载层2090提供可以利用云计算环境的功能的示例。可以从该层提供的工作负荷和功能的示例包括:地图和导航2091;软件开发和生命周期管理2092;虚拟课堂教育交付2093;数据分析处理2094;事务处理2095;以及将云侧角色委派给设备2096。
因此,在某些实施例中,实现根据本文所描述的实施例的提供将云侧角色委托给的设备的软件或程序作为云环境中的服务。
附加实施例细节
本发明可以是系统、方法、和/或计算机程序产品。所述计算机程序产品可包含上面具有计算机可读程序指令的计算机可读存储介质(或介质),所述计算机可读程序指令用于致使处理器执行本发明的方面。
计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述各项的任何合适的组合。计算机可读存储介质的更具体例子的非穷举列表包括以下:便携式计算机盘,硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存),静态随机存取存储器(SRAM)、便携式致密盘只读存储器(CD-ROM),数字通用盘(DVD)、记忆棒、软盘、机械编码设备(诸如穿孔卡片或具有记录在其上的指令的凹槽中的凸起结构),以及上述的任意合适的组合。如本文中所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。
本文所描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令,指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据,或者以一种或多种编程语言的任意组合编写的源代码或目标代码,包括面向对象的Smalltalk、C++等编程语言,以及常规的过程式编程语言,例如“C”编程语言或类似的编程语言。计算机可读程序指令可完全在用户的计算机上执行、部分在用户的计算机上执行、作为独立软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的方面。
在此参照根据本发明的实施例的方法、设备(系统)、和计算机程序产品的流程图展示和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给通用计算机的处理器,专用计算机或其他可编程数据处理装置,以产生机器,其通过计算机或其他可编程数据处理装置的处理器执行,创建用于实现在流程图和/或方框图的一个或多个方框中指定的功能/动作的装置。这些计算机可读程序指令还可存储在可指导计算机的计算机可读存储介质中,可编程数据处理装置,和/或以特定方式起作用的其他设备,使得具有存储在其中的指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各方面的指令。
计算机可读程序指令还可以加载到计算机、其他可编程数据处理装置上,或使得在计算机上执行一系列操作步骤的其他装置,其他可编程装置或其他设备,以产生计算机实现的过程,使得在计算机上执行的指令,其他可编程装置或其他设备实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图示出了根据本发明的各实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个方框可以代表模块、段或指令的一部分,其包括用于实现规定的逻辑功能的一个或多个可执行指令。在一些替代实现方式中,框中所标注的功能可以不以图中所标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合可以由基于专用硬件的系统来实现,所述基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。
前面的描述提供了本发明的实施例的实例,并且在其他实施例中可以进行变化和替代。
Claims (24)
1.一种计算机实现的方法,包括:
从一个或多个设备接收网络的网络质量信息;
确定在从其接收到所述网络质量信息的区域中所述网络不可用;以及
对于新设备,
预测所述新设备的轨迹路径;
基于所述轨迹路径确定所述新设备将要进入所述网络不可用的所述区域;
识别一个或多个软件模块和数据;以及
将所述一个或多个软件模块和所述数据发送到所述新设备,其中所述新设备执行所述一个或多个软件模块以从所述数据生成一个或多个洞察。
2.如权利要求1所述的计算机实现的方法,还包括:
将所述网络质量信息发送到所述新设备,其中所述新设备使用所述网络质量信息来确定在所述新设备沿着所述轨迹路径移动到新区域时所述网络已变为可用。
3.如权利要求1所述的计算机实现的方法,还包括:
利用所述网络质量信息来创建时间序列数据,其中所述网络质量信息包括网络带宽和网络延迟;
使用所述时间序列数据来确定平均网络带宽和平均延迟;以及
根据所述平均网络带宽和所述平均网络延迟生成所述区域的网络质量得分,其中所述网络质量得分用于确定所述网络在从中接收到所述网络质量信息的区域中不可用。
4.如权利要求3所述的计算机实现的方法,还包括:
将所述网络质量得分与环境系数相乘。
5.如权利要求1所述的计算机实现方法,其中,在持续时间之后,从所述新设备删除所述一个或多个软件模块和所述数据。
6.如权利要求1所述的计算机实现的方法,其中,所述新设备将传感器信息从一个或多个传感器设备发送至云节点。
7.如权利要求1所述的计算机实现的方法,其中,所述新设备是物联网(IoT)设备。
8.如权利要求1所述的计算机实现方法,其中,软件即服务(SaaS)被配置为执行所述方法的所述操作。
9.一种计算机程序产品,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有随其包含的程序代码,所述程序代码可由至少一个处理器执行以执行以下操作:
从一个或多个设备接收网络的网络质量信息;
确定在从其接收到所述网络质量信息的区域中所述网络不可用;以及
对于新设备,
预测所述新设备的轨迹路径;
基于所述轨迹路径确定所述新设备将要进入所述网络不可用的所述区域;
识别一个或多个软件模块和数据;以及
将所述一个或多个软件模块和所述数据发送到所述新设备,其中所述新设备执行所述一个或多个软件模块以从所述数据生成一个或多个洞察。
10.如权利要求9所述的计算机程序产品,包括用于以下操作的进一步操作:
将所述网络质量信息发送到所述新设备,其中所述新设备使用所述网络质量信息来确定在所述新设备沿着所述轨迹路径移动到新区域时所述网络已变为可用。
11.如权利要求9所述的计算机程序产品,包括用于以下操作的进一步操作:
利用所述网络质量信息来创建时间序列数据,其中所述网络质量信息包括网络带宽和网络延迟;
使用所述时间序列数据来确定平均网络带宽和平均延迟;以及
根据所述平均网络带宽和所述平均网络延迟生成所述区域的网络质量得分,其中所述网络质量得分用于确定所述网络在从中接收到所述网络质量信息的区域中不可用。
12.如权利要求11所述的计算机程序产品,包括用于以下操作的进一步操作:
将所述网络质量得分与环境系数相乘。
13.如权利要求9所述的计算机程序产品,其中,在持续时间之后,从所述新设备中删除所述一个或多个软件模块和所述数据。
14.如权利要求9所述的计算机程序产品,其中,所述新设备将传感器信息从一个或多个传感器设备发送至云节点。
15.如权利要求9所述的计算机程序产品,其中,所述新设备是物联网(IoT)设备。
16.如权利要求9所述的计算机程序产品,其中,软件即服务(SaaS)被配置为执行所述计算机程序产品的操作。
17.一种计算机系统,包括:
一个或多个处理器、一个或多个计算机可读存储器和一个或多个计算机可读有形存储设备;以及
存储在所述一个或多个计算机可读有形存储设备中的至少一个上的程序指令,该程序指令用于由所述一个或多个处理器中的至少一个经由所述一个或多个存储器中的至少一个来执行,以执行包括以下的操作:
从一个或多个设备接收网络的网络质量信息;
确定在从其接收到所述网络质量信息的区域中所述网络不可用;以及
对于新设备,
预测所述新设备的轨迹路径;
基于所述轨迹路径确定所述新设备将要进入所述网络不可用的所述区域;
识别一个或多个软件模块和数据;以及
将所述一个或多个软件模块和所述数据发送到所述新设备,其中所述新设备执行所述一个或多个软件模块以从所述数据生成一个或多个洞察。
18.如权利要求17所述的计算机系统,包括用于以下操作的进一步操作:
将所述网络质量信息发送到所述新设备,其中所述新设备使用所述网络质量信息来确定在所述新设备沿着所述轨迹路径移动到新区域时所述网络已变为可用。
19.如权利要求17所述的计算机系统,包括用于以下各项的进一步操作:
利用所述网络质量信息来创建时间序列数据,其中所述网络质量信息包括网络带宽和网络延迟;
使用所述时间序列数据来确定平均网络带宽和平均延迟;以及
根据所述平均网络带宽和所述平均网络延迟生成所述区域的网络质量得分,其中所述网络质量得分用于确定所述网络在从中接收到所述网络质量信息的区域中不可用。
20.如权利要求19所述的计算机系统,包括用于以下各项的进一步操作:
将所述网络质量得分与环境系数相乘。
21.如权利要求17所述的计算机系统,其中,在持续时间之后,从所述新设备中删除所述一个或多个软件模块和所述数据。
22.如权利要求17所述的计算机系统,其中,所述新设备将传感器信息从一个或多个传感器设备发送至云节点。
23.如权利要求17所述的计算机系统,其中,所述新设备是物联网(IoT)设备。
24.如权利要求17所述的计算机系统,其中,软件即服务(SaaS)被配置为执行所述计算机系统的操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/279,818 US10834524B2 (en) | 2019-02-19 | 2019-02-19 | Delegating cloud-side roles to devices |
US16/279,818 | 2019-02-19 | ||
PCT/IB2020/051131 WO2020170076A1 (en) | 2019-02-19 | 2020-02-12 | Delegating cloud-side roles to devices |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113475107A true CN113475107A (zh) | 2021-10-01 |
CN113475107B CN113475107B (zh) | 2022-09-20 |
Family
ID=72040722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080014935.9A Active CN113475107B (zh) | 2019-02-19 | 2020-02-12 | 将云侧角色委派给设备的方法、系统和计算机可读存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10834524B2 (zh) |
JP (1) | JP7410157B2 (zh) |
CN (1) | CN113475107B (zh) |
DE (1) | DE112020000881B4 (zh) |
GB (1) | GB202112393D0 (zh) |
WO (1) | WO2020170076A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363815A (zh) * | 2021-12-23 | 2022-04-15 | 北京三快在线科技有限公司 | 网络质量确定方法、设备控制方法、装置、介质及设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11601348B2 (en) | 2020-12-10 | 2023-03-07 | Amazon Technologies, Inc. | Managing radio-based private networks |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120151061A1 (en) * | 2010-12-14 | 2012-06-14 | International Business Machines Corporation | Management of service application migration in a networked computing environment |
US8547834B1 (en) * | 2010-05-26 | 2013-10-01 | Sprint Communications Company L.P. | Quality of service optimizer for mobile device |
US20140200038A1 (en) * | 2013-01-16 | 2014-07-17 | Apple Inc. | Location Assisted Service Capability Monitoring |
US20150373560A1 (en) * | 2014-06-18 | 2015-12-24 | Google Inc. | Method for collecting and aggregating network quality data |
US20160044127A1 (en) * | 2014-08-08 | 2016-02-11 | Facebook, Inc. | Identifying and caching content for offline use |
CN105659209A (zh) * | 2013-10-15 | 2016-06-08 | 微软技术许可有限责任公司 | 在客户端设备上托管的云服务 |
CN108234671A (zh) * | 2018-01-31 | 2018-06-29 | 广东欧珀移动通信有限公司 | 一种数据下载方法、数据下载装置及移动终端 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006080579A (ja) | 2004-09-07 | 2006-03-23 | Fujitsu Ten Ltd | 情報端末装置 |
JP5440053B2 (ja) | 2009-09-14 | 2014-03-12 | ソニー株式会社 | 情報処理装置及び情報処理方法、並びにコンピューター・プログラム |
JP5476880B2 (ja) | 2009-09-14 | 2014-04-23 | ソニー株式会社 | 情報提供装置及び情報提供方法、コンピューター・プログラム、並びに無線通信装置 |
US20110087603A1 (en) * | 2009-10-13 | 2011-04-14 | Google Inc. | Cloud based media player and offline media access |
US8863256B1 (en) | 2011-01-14 | 2014-10-14 | Cisco Technology, Inc. | System and method for enabling secure transactions using flexible identity management in a vehicular environment |
US8984030B2 (en) * | 2011-05-04 | 2015-03-17 | International Business Machines Corporation | Journaling and integrity in mobile clouded collaborative spaces |
US8938544B2 (en) | 2012-03-09 | 2015-01-20 | Toyota Jidosha Kabushiki Kaisha | Vehicle network connectivity management |
US9295022B2 (en) * | 2012-05-18 | 2016-03-22 | Comcast Cable Communications, LLC. | Wireless network supporting extended coverage of service |
US9046370B2 (en) | 2013-03-06 | 2015-06-02 | Qualcomm Incorporated | Methods for providing a navigation route based on network availability and device attributes |
WO2015193727A1 (en) | 2014-06-19 | 2015-12-23 | Orange | Method, apparatus and readable medium for an api notifying an application that qos will change in future |
US9451020B2 (en) | 2014-07-18 | 2016-09-20 | Legalforce, Inc. | Distributed communication of independent autonomous vehicles to provide redundancy and performance |
TWI547824B (zh) * | 2014-12-16 | 2016-09-01 | 緯創資通股份有限公司 | 適用於互動式電子白板系統的控制權限分享方法及其主機端裝置 |
US9998528B2 (en) * | 2016-02-17 | 2018-06-12 | International Business Machines Corporation | Direct access storage device analyzer |
US10057742B2 (en) * | 2016-05-18 | 2018-08-21 | Veniam, Inc. | Systems and methods for managing the routing and replication of data in the download direction in a network of moving things |
CN108174391B (zh) | 2016-12-07 | 2021-07-23 | 中国电信股份有限公司 | 用户业务感知优化方法和系统、业务平台 |
US10728345B2 (en) * | 2017-11-16 | 2020-07-28 | Servicenow, Inc. | Field service management mobile offline synchronization |
US10587670B2 (en) * | 2017-12-29 | 2020-03-10 | Dish Network L.L.C. | Coverage optimized content buffering |
-
2019
- 2019-02-19 US US16/279,818 patent/US10834524B2/en active Active
-
2020
- 2020-02-12 WO PCT/IB2020/051131 patent/WO2020170076A1/en active Application Filing
- 2020-02-12 JP JP2021542568A patent/JP7410157B2/ja active Active
- 2020-02-12 CN CN202080014935.9A patent/CN113475107B/zh active Active
- 2020-02-12 DE DE112020000881.9T patent/DE112020000881B4/de active Active
- 2020-02-12 GB GBGB2112393.0A patent/GB202112393D0/en not_active Ceased
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8547834B1 (en) * | 2010-05-26 | 2013-10-01 | Sprint Communications Company L.P. | Quality of service optimizer for mobile device |
US20120151061A1 (en) * | 2010-12-14 | 2012-06-14 | International Business Machines Corporation | Management of service application migration in a networked computing environment |
US20140200038A1 (en) * | 2013-01-16 | 2014-07-17 | Apple Inc. | Location Assisted Service Capability Monitoring |
US20170332344A1 (en) * | 2013-01-16 | 2017-11-16 | Apple Inc. | Location-assisted service capability monitoring |
CN105659209A (zh) * | 2013-10-15 | 2016-06-08 | 微软技术许可有限责任公司 | 在客户端设备上托管的云服务 |
US20150373560A1 (en) * | 2014-06-18 | 2015-12-24 | Google Inc. | Method for collecting and aggregating network quality data |
US20160044127A1 (en) * | 2014-08-08 | 2016-02-11 | Facebook, Inc. | Identifying and caching content for offline use |
CN108234671A (zh) * | 2018-01-31 | 2018-06-29 | 广东欧珀移动通信有限公司 | 一种数据下载方法、数据下载装置及移动终端 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363815A (zh) * | 2021-12-23 | 2022-04-15 | 北京三快在线科技有限公司 | 网络质量确定方法、设备控制方法、装置、介质及设备 |
CN114363815B (zh) * | 2021-12-23 | 2023-10-20 | 北京三快在线科技有限公司 | 网络质量确定方法、设备控制方法、装置、介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
DE112020000881B4 (de) | 2023-01-05 |
DE112020000881T5 (de) | 2021-11-11 |
US10834524B2 (en) | 2020-11-10 |
CN113475107B (zh) | 2022-09-20 |
GB202112393D0 (en) | 2021-10-13 |
WO2020170076A1 (en) | 2020-08-27 |
JP2022519818A (ja) | 2022-03-25 |
US20200267495A1 (en) | 2020-08-20 |
JP7410157B2 (ja) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7401163B2 (ja) | HiLaaS(Hardware-in-the-Loop as a Service)を使用した埋め込みシステムおよびアプリケーションのテスト | |
US10360800B2 (en) | Warning driver of intent of others | |
US10988143B2 (en) | Using cloud-based traffic policies to alleviate issues with cross geographic traffic in autonomous vehicles | |
US10620011B2 (en) | Autonomous vehicle routing | |
US10650678B2 (en) | Cognitive traffic light pattern analysis and notification | |
US11462101B2 (en) | Non-essential autonomous vehicle rerouting | |
US10252461B2 (en) | Cognitive-based driving anomaly detection based on spatio-temporal landscape-specific driving models | |
US11538338B2 (en) | Providing map fragments to a device | |
CN111353632A (zh) | 用于车辆调度和路线选择的系统及方法 | |
CN113475107B (zh) | 将云侧角色委派给设备的方法、系统和计算机可读存储介质 | |
US10775178B2 (en) | Spatio-temporal re-routing of navigation | |
US9816834B2 (en) | Generating a query index and querying on the basis of the query index | |
US11159449B1 (en) | Dispatching tasks and data using multi-access edge computing | |
US20210123753A1 (en) | Enhanced path mapping based on safety consideration | |
Shaer et al. | Multi-component V2X applications placement in edge computing environment | |
US20200164881A1 (en) | Vehicle passing controller | |
WO2022175783A1 (en) | Joint optimization of vehicle mobility, communication networks, and computing resources | |
US9915723B1 (en) | Geographic locator responsive to data packet attributes | |
US11030890B2 (en) | Local driver pattern based notifications | |
US20180245931A1 (en) | Power consumption during navigation via smart sleep and wake | |
US20230077360A1 (en) | Dynamic edge computing with resource allocation targeting autonomous vehicles | |
US20230175851A1 (en) | Data-analysis-based navigation system assistance | |
Zakarya et al. | ApMove: A service migration technique for connected and autonomous vehicles | |
US10760915B2 (en) | Synchronizing nodes at a meeting point | |
TW202314481A (zh) | 一邊緣伺服器之基於生成對抗網路之識別 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |