用于改进的智能基础设施数据传送的系统和方法与流程

文档序号:34652085发布日期:2023-06-29 20:43阅读:44来源:国知局
用于改进的智能基础设施数据传送的系统和方法与流程


背景技术:

1、许多智能基础设施系统具有它们自己的集中处理节点,该集中处理节点处理与其他基础设施系统以及管理若干基础设施系统的更广泛系统(例如,城市或组织系统)的通信。具体地,在智能交通基础设施的情况下,每个十字路口或道路需要针对其特定布局定制的不同硬件集合,这对管理针对特定位置的每个中央处理节点的软件部署提出挑战。结果,要么必须使用限制系统能力的标准化智能基础设施硬件设置,要么必须为每个处理节点及其相关联的硬件部件使用单独的配置和部署软件,这导致管理软件部署复杂性的问题。例如,当需要在基础设施上执行软件更新时,需要创建用于每个独特智能基础设施系统的个性化软件镜像。此外,当在智能基础设施系统上执行软件更新时,整个系统可能需要重新引导,这导致不能访问系统以确定系统中的不同硬件部件的状态。也可能难以确定是否所有设备都正确地重新引导了更新。

2、智能基础设施还面临关于如何在地理区域中包括更大的智能基础设施网络的智能基础设施节点上分发数据(例如,软件更新)的挑战。当前存在两种普遍的在节点间分发数据的模式:每个节点可以具有其自己的数据连接以从云服务接收数据,或者每个节点可以硬连线到中央节点。这两种选择在数据传送或安装远到达电缆网络方面都存在显著的成本。


技术实现思路

0、概述

1、本公开尤其涉及用于改进的智能基础设施数据传送的系统和方法。在一些实施例中,智能基础设施数据传送可以涉及部署到智能基础设施系统的软件更新,以更新可以包括智能基础设施系统的设备的软件。然而,除了软件更新之外,本文描述的系统和方法还可以同样适用于任何其他类型的一般数据传送。本文描述的智能基础设施可以指能够与位于基础设施外部的设备通信的任何基础设施。智能基础设施可以描述使得能够更智能地理解物理世界并且与基础设施更好交互的设备。作为一个示例,智能基础设施可以包括与道路十字路口相关联的设备,诸如交通摄像头、交通灯、道路传感器(例如,可以用于检测道路上的汽车的存在、道路的温度等的传感器)等。应当注意,为了一致性,本文可以参考道路相关类型的基础设施,然而,任何其他类型的基础设施也可以是适用的。例如电网中的设备、位于城市内的建筑物、或能够配备有允许与外部设备通信的处理能力的任何其他基础设施。作为第二示例,智能基础设施可以包括与匝道上的高速公路或高速公路本身相关联的设备。如本文所述的智能基础设施系统可以指位于彼此的地理邻域内的一组设备(例如,位于假想地理边界内的一组设备)。每个设备本身可以是智能基础设施设备(术语“智能基础设施设备”和“设备”在本文可以互换使用)。例如,智能基础设施系统可以包括位于特定道路十字路口处的基础设施。继续该示例,十字路口处的智能基础设施系统可以包括两个交通摄像头和两个交通灯。两个交通摄像头和两个交通灯中的每一者可以是智能基础设施设备。在一些情况下,包括在智能基础设施系统内的设备可以形成本地通信网络或者可以以其他方式硬连线在一起以允许本地通信。包括在智能基础设施系统内的设备可以被配置为服务于一个或多个常见目的,诸如管理道路十字路口处的交通。在一些实例中,被分类为包括在特定智能基础设施系统内的智能基础设施设备可以取决于该共同目标,而不是智能基础设施设备的地理接近度。例如,另一智能基础设施系统可以包括与用于向住宅家庭提供电力的电网相关联的设备。一旦智能基础设施设备可以位于发电厂,则若干其他智能基础设施设备可以位于各个住宅家庭中。在该特定示例中,此类设备之间的距离可以很大,但是该示例性电网智能基础设施系统内的所有智能基础设施设备可以服务于确保电力被正确地提供给住宅家庭的相同目的。

2、在一些实施例中,道路十字路口智能基础设施系统和电网智能基础设施系统可以仅是智能基础设施系统的类型的两个示例,并且任意数量和/或组合类型的智能基础设施系统可以存在于环境(例如,城市、州、区或任何其他类型的更小或更大规模的地理区域)中。例如,一个特定城市可以包括多个此类智能基础设施系统,这些智能基础设施系统可以一起工作以确保在该城市内发现的基础设施系统的功能。这些多个智能基础设施系统可以形成智能基础设施系统的网络,该智能基础设施系统能够通过永久或临时网络连接彼此通信(或与不包括在任何智能基础设施系统内的外部设备通信),如可以在下面描述的。在一些实例中,一些或所有智能基础设施系统可能不能够直接与其他智能基础设施系统通信,并且可能需要中间方在此类智能基础设施系统之间发送数据。例如,乡村镇中的十字路口处的交通灯可能不具有与远离交通灯定位的其他基础设施交互所需的连接性。

3、在一些实施例中,用于向和从此类智能基础设施系统(和/或智能基础设施系统内的个体设备)的数据传送的常规方法可以与如上所述的某些低效率相关联。因为在智能基础设施系统内可能存在无穷多个不同类型的智能基础设施系统和/或设备,所以在向智能基础设施系统提供软件更新时可能涉及复杂性。即,需要对包括在不同智能基础设施系统内的设备进行标准化,使得当需要软件更新时可以将相同的软件镜像部署到每个智能基础设施系统(这限制了基础设施的能力),或者需要为不同设备创建多个软件镜像(这增加了软件部署的复杂性)。软件镜像可以是软件执行状态的捕获,其也可以用于将设备被配置为处于该执行状态。类似地,计算机操作系统的映像可用于将计算机恢复到出厂设置。另外,如果智能基础设施系统内的任何设备是不可访问的,则在没有物理访问给定智能基础设施系统的位置的情况下可能难以确定。设备不可访问可能意味着该设备不能向其他设备发送和/或接收数据。也就是说,设备的“智能”能力可能不可用。这可能由于多种原因而发生,诸如智能基础设施设备的故障。作为一个示例,智能基础设施系统最初可以安装有五个设备,但是可以添加或移除设备,或者一个或多个设备可能经历阻止它们正确地起作用或能够连接到网络以接收软件更新的问题。在该情况下,可能难以确定软件镜像需要如何被配置以部署到给定的智能基础设施系统。例如,如果设备之一不能连接到网络,或者不能起作用,并且创建了包括该设备的软件镜像,则软件部署可能不成功。这可能是因为在每个智能基础设施系统处的软件更新可以由管理智能基础设施系统上的所有设备的集中处理节点来促进。如果将包括不可访问的设备的不正确的软件镜像提供给集中处理节点,则集中处理节点可能不能在任何智能基础设施设备上安装软件更新。这可能是因为软件镜像可能是如上所述的程序执行状态的捕获,并且集中处理节点可能不能够分离出最终不可访问的设备的映像的部分,一些智能基础设施系统可能位于更隔离的地理区域中,并且可能缺乏其他智能基础设施系统的网络连接能力。例如,这些基础设施系统可以具有与更多本地设备通信的一些能力,但是可能缺少与更多远程设备通信的必要连接(例如,可能不具有到蜂窝网络或长距离硬连线网络的连接)。这可能导致难以向这些智能基础设施系统提供软件更新。

4、在一些实施例中,本文描述的系统和方法可以用于以多种方式补救传统智能基础设施系统数据传送的这些和其他低效。首先,该系统和方法可以提供对智能基础设施系统的软件部署的动态重新配置。如下所述,该动态重新配置可以允许为部署而创建的软件镜像被特别地定制为适合被确定为在给定智能基础设施系统上可访问的设备,甚至是可访问的设备的数量和/或类型自从智能基础设施设备的初始安装以来就发生了改变。动态重新配置还可以允许跟踪在一些或所有智能基础设施系统处可访问的设备的数量和/或类型,这可以用于多种目的,诸如确定哪些设备可能需要服务。其次,该系统和方法可提供用于向智能基础设施提供软件更新的独特方法(或用于由智能基础设施获得软件更新的方法)。

5、在一些实施例中,本文描述的系统和方法可以补救传统智能基础设施软件部署方法的低效率的第一方式可以是通过使用此类软件部署的动态重新配置。该动态重新配置可以涉及两个阶段,这两个阶段可以包括发现阶段,随后是动态重新配置阶段。在一些实例中,该动态重新配置可以由计算系统执行,该计算系统可以位于智能基础设施系统本地,或者可以位于远离多个智能基础设施系统(例如,下面参考图5描述的管理设备506)。计算系统可负责跟踪一个或多个智能基础设施系统的状态以标识智能基础设施系统上可访问的设备的数量和/或类型、标识智能基础设施系统或智能基础设施系统上的一个或多个设备的软件更新的可用性,以及确定如何创建或重新配置软件镜像以匹配智能基础设施系统上的可访问的设备,使得软件更新可被部署到智能基础设施系统并正确地安装在智能基础设施系统上。在一些实例中,计算系统可以是与集中处理节点分离的设备,该集中处理节点在上面被描述为与每个单独的智能基础设施系统相关联。然而,在一些情况下,本文关于动态重新配置描述的任何操作(或任何其他操作)也可以由集中处理节点和/或包括在智能基础设施系统内的任何智能基础设施设备本地地执行。

6、在一些实施例中,动态重新配置的发现阶段可以涉及确定实际上可访问的包括在智能基础设施系统内的哪些智能基础设施设备。在智能基础设施系统上初始物理设置智能基础设施设备时,可以存储参考硬件配置,该参考硬件配置可以指示哪些智能基础设施设备位于智能基础设施系统处。作为一个示例,位于道路十字路口处的智能基础设施系统可以包括第一交通摄像头、第二交通摄像头、第一交通灯和第二交通灯。该参考硬件配置可以包括与安装在智能基础设施系统中的智能基础设施设备有关的任何数量的类型的数据,诸如智能基础设施设备类型、智能基础设施设备功能、智能基础设施设备软件版本或任何其他类型的数据。在部署软件更新时,发现阶段可以涉及确定哪些智能基础设施设备仍然被连接和可访问。智能基础设施设备可以由于多种原因而被确定为不可访问。例如,不可访问的智能基础设施设备可能不再物理地存在于智能基础设施系统中(可能已经被物理地移除)。作为另一个示例,不可访问的智能基础设施设备可能仍然物理地存在于智能基础设施系统处,但是可能由于智能基础设施设备不能发送和/或接收网络通信而发生故障。继续以上示例,可以确定除了第二交通摄像头之外的所有智能基础设施设备都是可访问的。在一些实例中,即使智能基础设施系统当前没有软件更新可用和/或不需要软件更新,也可以周期性地执行该发现阶段。这可以允许智能基础设施系统上的设备的状态被连续地更新,这可能由于诸如系统故障检修的多种原因而有用。这还可以允许对智能基础设施设备的系统监视和维护计划和/或调度有用。对这些类型的智能基础设施系统的维护可能是昂贵的,并且不是依赖于操作员的手动检查,具有连续报告的状态信息(并且在一些情况下,仅在问题被识别时报告)可能是更高效的。

7、在一些实施例中,确定智能基础设施设备是否仍然被连接和可访问可以涉及向智能基础设施设备发送请求(例如,向智能基础设施设备发送数据分组)。如果从智能基础设施设备接收到响应(例如,确认分组),则可以确定智能基础设施设备是连接的并且可访问的。然而,如果在预定时间量内未从智能基础设施设备接收到响应,则可以确定智能基础设施设备不再被连接和可访问。在一些情况下,可以发送多个请求,因为缺少来自智能基础设施设备的响应可能是诸如分组丢失的联网问题的结果,而不是智能基础设施设备未被连接和可访问。该过程也可以对任何数量的其他智能基础设施设备重复。在一些情况下,请求可以被发送至各个智能基础设施设备,然而,在其他情况下,请求可以被发送至单个智能基础设施设备或智能基础设施设备的子集,并且那些智能基础设施设备可以将请求转发到其他智能基础设施设备。例如,所有请求可以被发送到中央处理节点,或者发送到可以以对等方式与其他设备共享请求的单个智能基础设施设备。应当注意,如上所述的可以确定智能基础设施设备被连接和可访问或未连接和不可访问的方式仅是一个非限制性示例,并且这些确定也可以以任何数量的其他方式进行。

8、在一些实施例中,第二阶段可以是动态重新配置阶段。动态重新配置阶段可以是在其期间可以配置或重新配置用于智能基础设施系统的软件部署以用于部署到在发现阶段期间被识别为可访问的设备的阶段。如上所述,此类重新配置可以在本地由集中处理节点和/或与特定智能基础设施系统相关联的任何智能基础设施设备来执行,或者也可以远程执行。例如,如下所述的软件镜像可以在集中处理节点和/或与特定智能基础设施系统相关联的任何智能基础设施设备处或在远程位置处被创建和/或重新配置。在一些实例中,软件部署可涉及软件镜像的创建。在其他实例中,代替创建新的软件镜像,智能基础设施系统的先前软件镜像可以是先前软件镜像的重新配置版本,该先前软件镜像被创建以部署在智能基础设施系统处以用于先前软件更新。可以将在先前软件部署时被确定为在智能基础设施系统中可访问的设备的数量和/或类型与针对当前部署被确定为在智能基础设施系统中可访问的设备的数量和/或类型进行比较,以确定软件镜像需要如何被重新配置。例如,如果智能基础设施系统在前一软件更新时包括四个设备,并且确定四个设备中仅有三个当前可访问,则当前部署的软件镜像可能需要被重新被配置为仅包括三个可访问设备。然后,可以将重新配置的软件镜像部署到智能基础设施系统,以更新被确定为可访问的设备。

9、在一些实施例中,用于更新软件镜像以对应于智能基础设施系统的当前状态(例如,智能基础设施系统内可连接和可访问的智能基础设施设备的当前数量和类型)的过程可如下执行。包括智能基础设施系统内所包括的智能基础设施设备的数量和/或类型的给定智能基础设施系统的初始配置可以在智能基础设施设备的物理安装期间被存储。当软件更新正被准备部署到智能基础设施系统时,初始配置和当前配置之间的比较可以通过枚举期望配置中的设备并尝试连接到它们(例如,使用上述方法来确定智能基础设施设备是否被连接和可访问)来执行。如果确定在智能基础设施系统中不同数量的智能基础设施设备被确定为连接的并且可访问的,则与智能基础设施系统的初始配置相关联的软件镜像可以被修改以适合当前配置(例如,如果智能基础设施设备由于任何数量的原因离线)。软件镜像可以由两部分组成:一个或多个执行二进制代码和一个或多个配置文件。执行二进制代码可以保持不被触摸,并且可以在实际执行软件更新之前修改配置文件以匹配智能基础设施系统的当前配置。然后,更新软件镜像可以被安装在连接的和可访问的智能基础设施设备上(例如,其可以由智能基础设施系统中的中央处理节点管理,但是也可以由智能基础设施设备自身中的一者或多者管理)。另外,在一些情况下,软件镜像还可以不仅被配置用于所有智能基础设施设备,而且还被配置用于智能基础设施设备的某些子集。例如,软件更新可以仅旨在用于智能基础设施系统中的特定设备类型的智能基础设施设备。在此类情况下,软件镜像可以被创建为仅包括用于那些特定类型的智能基础设施设备的更新。此外,一旦确定了智能基础设施系统的当前配置,这可以用于替换初始配置作为基线或者与用于后续软件部署的当前配置进行比较。即,在第一软件部署期间连接的设备的数量可以被存储并被用作与在随后的第二软件部署期间连接的设备的数量进行比较的基线。然而,在一些情况下,在初始物理安装时智能基础设施系统的初始配置也可以保持为基线,以用于与通过任何数量的后续软件部署的后续当前配置进行比较。

10、在一些实施例中,一旦软件更新被部署到智能基础设施系统,关于在发现阶段期间被确定为可访问的设备的数据就可以被提供用于本地或远程存储装置。例如,数据可以与被识别为可访问的设备的数量和被识别为可访问的设备的类型有关。可以存储该数据,以便跟踪在环境中可能存在的一些或所有智能基础设施系统处可访问的设备。作为一个示例,该数据可以用于跟踪何时将某些设备物理地添加到智能基础设施系统和/或从智能基础设施系统移除。该数据还可以用于其他目的,诸如识别智能基础设施系统内的某些设备何时可能发生故障。例如,如果已知哪些设备被物理地安装在给定的智能基础设施系统处,则如果设备被确定为不可访问,则可能是因为设备发生故障而不是因为设备被从智能基础设施系统移除。在该情况下,当确定设备可能发生故障时,可以将维护工人调度到发生故障的设备的位置以执行修理。除了在软件部署之后提供该数据之外,或者可替代地,还可以在软件部署之前和/或期间(例如,在发现阶段期间)提供该数据。类似地,发现和重新配置过程可以在新软件部署之外周期性地运行,以提供更频繁的问题检测和诊断,并且确保节点的正确操作,即使在降级状态下。周期性地运行发现和重新配置过程还可以允许实时识别先前未连接且不可访问、但是由于任何数量的原因(例如,对故障设备执行维护)而变为连接或可访问的设备。作为一个示例,如果初始智能基础设施系统包括五个设备,并且确定仅有四个设备被连接和可访问,则可以创建软件镜像以仅更新这四个连接的设备。然而,如果第五设备在软件部署之后变为连接,则这可以被识别,并且软件更新然后也可以被提供给第五设备(例如,通过被重新被配置为仅更新第五设备的软件镜像,或者被配置为更新所有五个设备的软件镜像)。

11、在一些实施例中,这种动态可重新配置的智能基础设施软件部署方法相对于传统智能基础设施软件部署可以具有许多优点。一个示例性优点可以是,随着更新被展开或设备被重新引导,关于智能基础设施系统上的设备的信息被编译和提供。这可以消除对在智能基础设施系统位置处物理地检查每个设备以确定它们是否连接到网络的需要。第二示例性优点可以是,即使系统上的一些设备没有正确地运行,智能基础设施系统仍可以以一定容量运行。即使一个摄像头故障,这也不一定意味着整个系统故障。也就是说,即使智能基础设施系统中的一个或多个设备停机,其他设备的功能也可以是可用的。这源于智能基础设施的动态重新配置能力。第三示例性优点可以是,任何给定的智能基础设施系统可能能够通过仅利用无论哪个设备都可访问来部署新软件而不是因为不是所有设备都可访问而不能部署来维持高正常运行时间。第四示例性优点可以包括不再可访问的任何设备的可检测性,这允许对智能基础设施系统进行故障排除以识别可能发生故障的设备。

12、在一些实施例中,本文描述的系统和方法可以补救常规智能基础设施软件部署方法的低效率的第二方式可以通过使用对等网络来分发软件更新。对等网络可以是互连“节点”的网络,这些节点能够在彼此之间直接传送数据,而不是使用诸如服务器之类的集中式设备作为中介来向其他节点发送数据和从其他节点接收数据。关于本文描述的智能基础设施系统,节点可以包括存在于网络上的任何智能基础设施系统内的单独设备。在一些情况下,节点还可以包括作为整体的智能基础设施系统,或者甚至多个智能基础设施系统的组。节点还可以包括智能基础设施系统之外的实体。例如,节点可以包括可以用于向智能基础设施系统中的任何设备发送数据和/或从智能基础设施系统中的任何设备接收数据的任何其他实体。如下所述,此类实体的一些示例可以包括自主或非自主车辆、电动滑板车、诸如智能电话之类的移动设备等。因此,在如上所述的对等网络中,任何节点都能够直接发送和/或接收软件更新而不使用中央服务器(发生此类数据传送的具体方式可在下面进一步详细描述,并且可至少在图2中可视地描绘)。在一些实例中,对等(peer-to-peer)网络也可以是自组织(ad-hoc)网络。自组织网络可以是临时网络,其可以被建立以允许数据传送直接发生在如上所述的两个节点之间。因此,可以形成自组织网络以允许进行对等数据传送,并且一旦发生数据传送,就可以结束自组织网络。

13、在一些实施例中,对等自组织网络的使用可以允许软件更新被快速且高效地分布在智能基础设施系统的网络中。例如,对等网络可以允许软件更新在单个智能基础设施系统上的设备之间和/或在不同的智能基础设施系统上的设备之间分发。例如,在一些情况下,多个智能基础设施系统可以包括相同数量和/或类型的设备。在此类情况下,可以向智能基础设施系统之一提供软件更新,并且该系统可以随后将该软件更新分发到被确定为包括相同数量和/或类型的设备的任何其他智能基础设施系统。作为另一个示例,完整的软件更新可以仅被提供给智能基础设施系统内的单个设备,并且该设备然后可以将该软件更新分发到智能基础设施系统上的其他设备,以及分发到其他智能基础设施系统上的其他设备。完整的软件更新可以可替代地被分割成离散的部分,并且这些部分可以被提供给一个或多个智能基础设施系统上的一个设备或多个设备。例如,完整的软件更新可被分成两个单独的部分,每个部分包括完整软件更新的50%。这些部分中的每一者可以被提供给一个或不同的智能基础设施系统上的不同设备,并且这些设备可以将这些部分发送给其他设备。其他设备然后可以将该部分分发到甚至更多的设备,等等,直到智能基础设施系统中的一些或所有设备都具有软件更新的两个部分。使用该对等分发方法的好处在于,与需要集中式系统来向每个智能基础设施系统部署软件更新的情况相比,可以更快地分发数据。分发方法也可以是有益的,因为不是所有的智能基础设施系统都需要连接到软件部署系统。即,可能仅需要一个智能基础设施系统连接到软件部署系统,并且随后可以分发到可能不是软件部署系统的其他智能基础设施系统。

14、在一些实施例中,除了有益于在智能基础设施系统上的设备之间或在多个不同的智能基础设施系统上的设备之间分发软件更新之外,对等自组织网络的使用还可以有益于向第一智能基础设施系统提供软件更新以接收软件更新的目的(例如,发起向其他设备和/或智能基础设施系统分发软件更新的初始智能基础设施系统或智能基础设施系统上的设备)。虽然上述动态重新配置可涉及从中央节点分发软件更新,但对等网络的使用可允许智能基础设施系统从其他实体接收软件更新。例如,如果智能基础设施是位于道路十字路口处的基础设施,则可以从经过道路十字路口或在道路十字路口附近的一个或多个车辆接收软件更新。这对于可能不一定以其他方式连接到将允许其接收软件更新的网络的基础设施(例如,位于乡村地区的基础设施)而言可能尤其有益。继续相同的示例,智能基础设施可以确定其需要新的软件更新(或者新的软件更新可用)。然后,它可以识别车辆停在其相关的十字路口。当车辆停止时,基础设施可以请求由车辆提供软件更新。车辆可能已经具有本地存储的软件更新,或者可以可替代地从远程存储装置位置请求软件更新。在一些实例中,车辆可能不需要停止以提供软件更新。例如,智能基础设施可以连续地或周期性地监视包括智能基础设施系统的区域周围的阈值距离以用于进入车辆。当车辆进入阈值距离时,智能基础设施系统可以请求来自车辆的软件更新,并且请求车辆在车辆仍处于智能基础设施系统的通信范围内(例如,在阈值距离内)时提供尽可能多的软件更新。在一些情况下,智能基础设施系统可以具体地选择从停止的车辆请求软件更新,因为停止的车辆比简单地驾驶通过的车辆更可能在智能基础设施系统的通信范围内保持更长的时间段。智能基础设施系统可以利用关于智能基础设施设备的信息来确定车辆将在通信范围内多长时间。例如,可以知道交通灯具有一分钟的红灯时间。在这样的情况下,可以确定在该时间期间车辆可以将多少软件更新传送到智能基础设施系统。该信息可以用于确定从哪个车辆和/或车辆组合请求软件更新和/或在该时间期间应当请求或能够提供多少软件更新。例如,被确定为在智能基础设施系统的通信范围内的附近停车场中的车辆对于数据传送可能是理想的,因为与简单地驾驶通过十字路口的车辆相比,其更可能在智能基础设施系统的通信范围内保持更长的时间段。任何其他类型的信息可以类似地用于做出此类确定,诸如车辆的速度、前进方向和任何其他相关信息。

15、在一些实施例中,软件更新可以由车辆本身而不是智能基础设施系统发起。例如,车辆可以确定其进入的十字路口处的智能基础设施需要更新(或具有可用的更新),并且可以随后与基础设施建立自组织网络以向基础设施提供更新。在一些实例中,车辆可以被有意地调度到给定的智能基础设施,以便向智能基础设施系统提供软件更新。例如,如上所述的计算设备可以确定特定智能基础设施系统需要更新或具有可用更新,并且可以不是通过网络直接将软件镜像发送至智能基础设施系统,而是将车辆调度到智能基础设施系统的位置以建立与智能基础设施系统的自组织连接,以向智能基础设施系统提供软件更新。如上所述,当确定智能基础设施系统可能不具有远程网络通信能力(例如,可能不能连接到计算设备以直接接收软件更新)时,这可能是有益的。在更进一步的情况下,智能基础设施系统可以接收软件更新(直接从计算设备或通过自组织连接从车辆),并且可以将软件更新提供给进入智能基础设施系统的阈值距离的车辆,使得车辆然后可以行进到另一智能基础设施系统,并且将软件更新提供给该另一智能基础设施系统。

16、在一些实施例中,包括完整软件更新的数据可以不由单个车辆提供,而是可以由多个车辆以分段(术语“分段”和“部分”在本文中可以互换地使用)提供。继续以上示例,在十字路口处停止(或仅进入十字路口)的第一车辆可以向十字路口处的基础设施提供软件更新的片段(作为任意示例,第一车辆可以提供软件更新所需的数据的50%)。然后,第二车辆可以停在十字路口(或进入十字路口)并向基础设施提供软件更新所需的剩余50%的数据。在一些情况下,数据传送可以被分段,因为每个车辆可能仅访问所需数据的特定部分。在一些情况下,数据传送可以被分段,因为车辆在基础设施的通信范围内的时间量可以短于传送全部软件更新所需的所有数据所需的时间量。也就是说,可能不希望迫使车辆保持在十字路口,同时等待全部软件更新被传送到基础设施。在其他情况下,数据传送也可以在十字路口内的多个车辆之间同时分段,以减少每个车辆需要传送到智能基础设施系统的数据量,这减少了将完整的软件更新传送到智能基础设施的时间量。如上所述,每个车辆要提供给智能基础设施系统的路段还可以被预先分配给要部署到智能基础设施系统的各种车辆。尽管上述示例仅描述了两个车辆向基础设施传送数据,但是数据传送可以进一步在任何数量的车辆(或任何其他类型的移动实体或不同类型的移动实体的不同组合)之间分段,并且每个车辆可以传送任何百分比的软件更新(即,每个车辆传送的数据量不必相等)。

17、在一些实施例中,对等自组织网络的建立可以涉及寻求形成自组织网络的两个节点之间的初步握手过程。在一些情况下,握手过程可以是标准网络握手过程。在一些情况下,握手过程还可以包括除典型握手过程之外的附加步骤,诸如确定可以提供什么类型的数据、可能花费多长时间来传送一定量的数据、可以维持连接多长时间,以及自组织网络的两个节点之间的任何其他初始协调步骤。

18、应当注意,尽管在本文可以参考交换数据以用于智能基础设施系统的软件更新的目的,但是在本文描述的系统和方法也可以用于任何其他类型的数据发送的目的。举一个新的非限制性示例,其他目的可以包括下载从智能基础设施下载的运行时数据以调试问题和/或用于将来的测试、分析结果、获得度量和/或在不同的、未连接的智能基础设施系统之间共享数据。另外,虽然本文描述的系统和方法可以涉及向智能基础设施提供数据的车辆,但是相反的情况也是适用的。也就是说,车辆可能正在从基础设施接收数据,并且可能将数据分发给其他车辆。

19、说明性使用案例

20、图1描绘了例示如上所述的动态重新配置的使用案例100。使用案例100可以以使用案例100的第一场景102开始。使用案例100的第一场景102可以表示如上所述的动态重新配置的发现阶段。在第一场景102内描绘的可以是包括智能基础设施系统106的道路十字路口104。智能基础设施系统106可以包括若干智能基础设施设备,包括第一交通灯108a、第二交通灯108b、第三交通灯108c、第四交通灯108d、第一人行横道标志108e和第二人行横道标志108f。智能基础设施系统106还可以包括可以负责管理智能基础设施设备的中央处理节点110。中央处理节点110可以被包括在任何智能基础设施设备中,或者可以与智能基础设施设备分离(应当注意,虽然中央处理节点110被描绘为被包括在十字路口104中,但是这仅仅是出于说明的目的,并且中央处理节点110可以不物理地位于道路十字路口104的中间)。使用案例100的第一场景102还可以描绘远程系统112(其例如可以是远程服务器)。在一些实例中,远程系统112可以已经存储了用于智能基础设施系统106的硬件配置116,其可以是已知包括在智能基础设施系统106内的各种智能基础设施设备的列表。例如,在该情况下,硬件配置可以指示智能基础设施系统包括第一交通灯108a、第二交通灯108b、第三交通灯108c、第四交通灯108d、第一人行横道标志108e和第二人行横道标志108f。应当注意,在使用案例100中描述的智能基础设施系统106(以及本文描述的任何其他智能基础设施系统)可以仅仅是示例性的,并且智能基础设施系统还可以包括智能基础设施设备的类型和智能基础设施设备的数量的任何其他组合。另外,对智能基础设施系统106位于道路十字路口104的描述也可以是示例性的,并且智能基础设施系统也可以存在于任何其他位置并且也可以用于任何其他数量的目的。此外,虽然智能基础设施系统106可以被描述为包括中央处理节点110,但是在一些情况下,智能基础设施系统也可以存在而没有中央处理节点。

21、在一些实施例中,使用案例100的第一场景102可以涉及远程系统112确定软件更新114可用于智能基础设施系统106。然而,在一些情况下,也可以由除了远程系统112之外的元件做出该确定,诸如中央处理节点110、智能基础设施设备中的任何一者和/或移动实体(在图中未描绘,但是关于下面描述的图2a-2b的使用案例200进行描述)。一旦确定软件更新114可用于智能基础设施系统106,使用案例100可以进行到第二场景120(其仍然可以是发现阶段的场景)。使用案例100的第二场景120可以涉及确定智能基础设施设备中的哪些智能基础设施设备在智能基础设施系统106内是可访问的。可访问的智能基础设施设备可以意味着智能基础设施设备能够形成网络连接(或其他类型的连接)以便接收软件更新。可以如下执行该确定。首先,远程系统112可以向智能基础设施系统106的中央处理节点110发送请求122以确定智能基础设施设备中的哪些是可访问的。中央处理节点110然后可以向智能基础设施设备中的每一者发送输出信号124。输出信号124可以是请求智能基础设施设备提供返回信号126的请求的形式,以指示它们接收到输出信号124并且在智能基础设施系统106上可访问(图1可以描绘输出信号124和返回信号126被仅向和从一些智能基础设施设备发送以简化附图,但是输出信号124和返回信号126可以类似地与任何其他智能基础设施设备交换)。没有从其接收到返回信号126的任何设备可以被确定为不可访问的。例如,如图1中所描绘的,第二人行横道标志118f可能不提供返回信号126,并且因此可能被确定为不可接近。一旦确定哪些智能基础设施设备是可访问的,集中处理节点110就可以向远程系统112提供可访问的智能基础设施设备的列表。远程系统112可以将该列表存储为更新的硬件配置117以供将来参考。在一些实例中,远程系统112还可以将更新的硬件配置117与先前的硬件配置116进行比较,以确定自从先前的硬件配置116被保存以来哪些智能基础设施设备已变得不可访问。如果软件镜像基于先前的软件镜像,则该比较可用于确定如何重新配置用于执行软件更新的软件镜像。该比较还可以用于许多其他目的,诸如确定智能基础设施设备中的任何一者是否发生故障。例如,由于更新后的硬件配置117可仅包括五个设备(除第二人行横道标志108f之外的所有设备)的列表,所以可确定第二人行横道标志108f出现故障。该信息还可用于将维护人员调度至智能基础设施系统106以在第二人行横道标志108f上执行维护工作。

22、在一些实施例中,使用案例100可以继续第三场景130,其可以表示如上所述的动态重新配置阶段。使用案例100的第三场景130可以涉及基于从智能基础设施系统106接收的关于哪些智能基础设施设备被确定为可访问的信息来创建新的软件镜像或重新配置先前的软件镜像。在特定使用案例100中,可以创建软件镜像,包括用于五个可访问的智能基础设施设备的软件更新,该五个可访问的智能基础设施设备包括第一交通灯108a、第二交通灯108b、第三交通灯108c、第四交通灯108d和第一人行横道标志108e。可替代地,包括总共六个智能基础设施设备的先前软件镜像可以被重新配置以形成用于五个可访问的智能基础设施设备的软件镜像。在任一情况下,软件镜像然后可以通过信号132被提供给中央处理节点110。然后,软件更新可通过集中处理节点110安装在五个可访问的智能基础设施设备上。

23、图2a描绘了使用案例200,其例示了使用对等自组织网络向和/或从智能基础设施系统的初始数据传送。应当注意,使用案例200可以仅仅是使用对等自组织网络来提供更详细的可视示例的数据传送的一个示例,并且数据传送可以如本文别处所述的任何数量的其他方式通过对等自组织网络连接来发生。另外,如前所述,提供软件更新可以仅是可以使用这些对等网络来传送的数据的示例,并且也可以传送任何其他类型的数据。使用案例200可以以使用案例200的第一场景202开始。使用案例200的第一场景202可以描绘包括智能基础设施系统205的道路十字路口204,该智能基础设施系统包括第一交通灯212和第二交通灯214。第一交通灯212和第二交通灯214可以是如本文所述的智能基础设施设备。智能基础设施系统205还可以与假想的地理围栏206相关联,该假想的地理围栏可以位于在所有方向上与智能基础设施系统205相距阈值距离处。地理围栏206可以表示可以与诸如第一车辆208的移动实体建立自组织对等网络的最大距离。然而,在一些实例中,地理围栏206可以不表示最大距离,而是可以表示最大距离之前的距离。继续使用案例200的第一场景202,可以确定智能基础设施系统205需要(或具有)软件更新(例如,用于第一交通灯212和/或第二交通灯214的软件更新)(做出该确定的方式以及负责该确定的相关联的系统可以不在图中示出,但是可以基于本文描述的任何方法和/或系统做出该确定。例如,该确定可以由诸如车辆208的移动实体、由智能基础设施系统205本身或一些其他外部系统或设备来做出)。一旦确定智能基础设施系统205需要软件更新或者具有可用的软件更新,智能基础设施系统205就可以确定在地理围栏206内是否存在可以从其获得软件更新的任何移动实体。在示例性使用案例200中,智能基础设施系统205可以识别在地理围栏206内存在车辆208。智能基础设施系统205然后可以建立与车辆208的自组织对等网络连接210。可替代地,车辆也可以发起自组织对等网络连接210的建立(例如,如果车辆208正在检查其行驶的智能基础设施系统205以确定它们是否需要(或具有可用的)软件更新,或者如果车辆208被特定地调度到智能基础设施系统205以便向智能基础设施系统205提供软件更新)。自组织对等网络连接210还可以替代地与单独的智能基础设施设备中的一者或多者(诸如第一交通灯212和/或第二交通灯214)建立,或者可以与可以管理集市基础设施系统205内的所有设备的集中处理节点(在图中未示出,但是例如可以在图1中可视化)建立。在建立自组织对等网络210之后,软件更新的一部分可以从车辆208传送到智能基础设施系统205(例如,智能基础设施系统205可以从车辆208请求软件更新,或者车辆208可以简单地提供软件更新而不接收请求)。为了这个使用案例200的目的,车辆208可以被描述为仅提供软件更新的一部分,然而,在其他情况下,车辆208也可以提供完整的软件更新。在软件更新的部分仅被提供给智能基础设施设备中的一个(例如,仅被提供给第一交通灯212)的实例中,智能基础设施设备可以与智能基础设施系统205内的其他智能基础设施设备形成对等自组织连接以将软件更新分发到那些其他设备。例如,第一交通灯212可以形成与第二交通灯214的对等自组织连接,并且将更新的部分分发到第二交通灯214。即,在这些实例中,移动实体可以用于向智能基础设施系统205中的智能基础设施设备的子集提供软件更新,并且设备的该子集然后可以向智能基础设施系统205中的其他设备分发软件更新的部分。

24、继续使用案例200的第二场景215,在智能基础设施系统205接收到完整的软件更新之前,车辆208可以驶出智能基础设施系统205的地理围栏206。在一些情况下,车辆208仅提供软件更新的一部分可能是有意的。然而,在其他情况下,车辆208也可能简单地不能在其保持在地理围栏206内的时间量中传送完整的软件更新。在这种情况下,智能基础设施系统205可以利用其他移动实体来获得软件更新的剩余部分。例如,智能基础设施系统205可以确定第二车辆218进入地理围栏206。智能基础设施系统205还可以确定电动滑板车216和移动设备209也在地理围栏206内。智能基础设施系统205然后可以与第二车辆218建立第一自组织对等网络220、与电动滑板车216建立第二自组织对等网络222,以及与移动设备209建立第三自组织对等网络224。可替代地,智能基础设施系统205可以仅与移动实体(例如,第二车辆218、电动滑板车216和/或移动设备209)中的一者或一些建立自组织对等网络。在建立自组织对等网络之后,智能基础设施系统205可以向一些或所有移动实体请求软件更新的剩余部分。与使用案例200的第一场景202中的第一车辆208一样,移动实体可以替代地提供软件更新的剩余部分,而不从智能基础设施系统205接收请求。软件更新的剩余部分可被拆分成对应的子部分以供每个移动实体提供。例如,如果由第一车辆208提供的软件更新的部分是全部软件更新的25%,则第二车辆218可以提供包括软件更新的剩余部分的25%的子部分,电动滑板车216可以提供包括软件更新的剩余部分的25%的子部分,并且移动设备可以提供包括软件更新的剩余部分的25%的子部分。这些25%的子部分仅是示例性的,并且子部分中的每一者也可包括软件更新的剩余部分的任何其他百分比。另外,确定如何为每个移动实体分配软件更新的百分比以提供的方式可由智能基础设施205确定,或者可替代地,移动实体本身可协调它们各自想要提供的软件更新的百分比。还可以确定仅一个或一些移动实体应当提供剩余软件更新的部分或全部。例如,如果第二车辆218已经具有本地存储的软件更新,而电动滑板车216没有,则对于第二车辆218来说,提供软件更新本身的所有剩余部分可能更有效。然而,在其他情况下,可能尚未本地存储软件更新或软件更新的一部分以便分发到智能基础设施系统205的移动实体,其可从远程源221,诸如远程服务器和/或甚至可能在地理围栏206外部的另一移动实体请求软件更新或软件更新的一部分。例如,如图所示,电动滑板车216从远程源221请求剩余软件更新的一部分,使得它可以将剩余软件更新的该部分提供给智能基础设施系统205。

25、图2b描绘了使用案例200的第三场景230,其中提供给智能基础设施系统205的软件更新可以被分发到第二智能基础设施系统234和/或第三智能基础设施系统244(和/或未在图中描绘的任何数量的其他智能基础设施系统)。如图所示,智能基础设施系统205能够与智能基础设施系统234建立网络连接256。网络连接256可以是例如自组织对等网络连接。然而,在一些情况下,网络连接256还可以是更永久的网络连接,诸如通过蜂窝网络的连接(或任何其他类型的网络连接,例如,如以下关于图5所描述的)。智能基础设施系统205与第二智能基础设施系统234之间的网络连接256可以允许软件更新从智能基础设施系统205直接分发到第二智能基础设施系统234。一旦软件更新被第二智能基础设施系统234接收,它也可以被安装在第二智能基础设施系统234处的设备上。在一些实施例中,软件更新的对等分发可如上所述在设备级发生。例如,虽然上面可能已经描述了智能基础设施系统205将软件更新分发到第二智能基础设施系统234,但是智能基础设施系统205上的任何个体设备可以负责将软件更新中的一些或全部分发到智能基础设施系统234上的一个或多个设备。即,智能基础设施系统205上的每个设备可以负责将软件更新的一部分分发到智能基础设施系统234或智能基础设施系统234的设备,以便增加分发软件更新的速率。

26、继续使用案例200的第三场景230,可以确定第三智能基础设施244不能与另一智能基础设施系统形成直接网络连接以便直接从另一智能基础设施系统接收软件更新。例如,第三智能基础设施系统244可以位于没有联网能力的乡村环境中,以允许第三智能基础设施系统244连接到其他智能基础设施系统(例如,通过远程网络连接的智能基础设施系统205和/或第二智能基础设施系统234)。在这种情况下,第三智能基础设施系统244可能改为必须依赖于一个或多个移动实体,诸如车辆208(其可以是关于图2a描述的相同车辆)来接收软件更新。这可以以与智能基础设施系统205最初从车辆208接收软件更新的方式类似的方式来实现,如关于图2a所描述的。

27、说明性方法

28、图3是示例性方法300。在图3中的方法300的框302,该方法可包括标识软件更新可用于智能基础设施系统。方法300的框304可包括由智能基础设施系统的处理器并使用第一车辆和智能基础设施系统之间的信号强度来确定第一车辆在智能基础设施系统的阈值范围内。方法300的框306可包括由智能基础设施系统建立与第一车辆的第一自组织对等通信链路。

29、方法300的框308可以包括向车辆发送软件更新请求。方法300的框310可以包括从车辆接收使用第一自组织对等通信链路传送的软件更新的至少第一部分。

30、在一些实施例中,对等自组织网络的使用可以允许软件更新被快速且高效地分布在智能基础设施系统的网络中。例如,对等网络可以允许软件更新在单个智能基础设施系统上的设备之间和/或在不同的智能基础设施系统上的设备之间分发。例如,在一些情况下,多个智能基础设施系统可以包括相同数量和/或类型的设备。在此类情况下,可以向智能基础设施系统之一提供软件更新,并且该系统可以随后将该软件更新分发到被确定为包括相同数量和/或类型的设备的任何其他智能基础设施系统。作为另一个示例,完整的软件更新可以仅被提供给智能基础设施系统内的单个设备,并且该设备然后可以将该软件更新分发到智能基础设施系统上的其他设备,以及分发到其他智能基础设施系统上的其他设备。完整的软件更新可以可替代地被分割成离散的部分,并且这些部分可以被提供给一个或多个智能基础设施系统上的一个设备或多个设备。例如,完整的软件更新可被分成两个单独的部分,每个部分包括完整软件更新的50%。这些部分中的每一者可以被提供给一个或不同的智能基础设施系统上的不同设备,并且这些设备可以将这些部分发送给其他设备。其他设备然后可以将该部分分发到甚至更多的设备,等等,直到智能基础设施系统中的一些或所有设备都具有软件更新的两个部分。使用该对等分发方法的好处在于,与需要集中式系统来向每个智能基础设施系统部署软件更新的情况相比,可以更快地分发数据。分发方法也可以是有益的,因为不是所有的智能基础设施系统都需要连接到软件部署系统。即,可能仅需要一个智能基础设施系统连接到软件部署系统,并且随后可以分发到可能不是软件部署系统的其他智能基础设施系统。

31、在一些实施例中,除了有益于在智能基础设施系统上的设备之间或在多个不同的智能基础设施系统上的设备之间分发软件更新之外,对等自组织网络的使用还可以有益于向第一智能基础设施系统提供软件更新以接收软件更新的目的(例如,发起向其他设备和/或智能基础设施系统分发软件更新的初始智能基础设施系统或智能基础设施系统上的设备)。虽然上述动态重新配置可涉及从中央节点分发软件更新,但对等网络的使用可允许智能基础设施系统从其他实体接收软件更新。例如,如果智能基础设施是位于道路十字路口处的基础设施,则可以从经过道路十字路口或在道路十字路口附近的一个或多个车辆接收软件更新。这对于可能不一定以其他方式连接到将允许其接收软件更新的网络的基础设施(例如,位于乡村地区的基础设施)而言可能尤其有益。继续相同的示例,智能基础设施可以确定其需要新的软件更新(或者新的软件更新可用)。然后,它可以识别车辆停在其相关的十字路口。当车辆停止时,基础设施可以请求由车辆提供软件更新。车辆可能已经具有本地存储的软件更新,或者可以可替代地从远程存储装置位置请求软件更新。在一些实例中,车辆可能不需要停止以提供软件更新。例如,智能基础设施可以连续地或周期性地监视包括智能基础设施系统的区域周围的阈值距离以用于进入车辆。当车辆进入阈值距离时,智能基础设施系统可以请求来自车辆的软件更新,并且请求车辆在车辆仍处于智能基础设施系统的通信范围内(例如,在阈值距离内)时提供尽可能多的软件更新。在一些情况下,智能基础设施系统可以具体地选择从停止的车辆请求软件更新,因为停止的车辆比简单地驾驶通过的车辆更可能在智能基础设施系统的通信范围内保持更长的时间段。智能基础设施系统可以利用关于智能基础设施设备的信息来确定车辆将在通信范围内多长时间。例如,可以知道交通灯具有一分钟的红灯时间。在这样的情况下,可以确定在该时间期间车辆可以将多少软件更新传送到智能基础设施系统。该信息可以用于确定从哪个车辆和/或车辆组合请求软件更新和/或在该时间期间应当请求或能够提供多少软件更新。例如,被确定为在智能基础设施系统的通信范围内的附近停车场中的车辆对于数据传送可能是理想的,因为与简单地驾驶通过十字路口的车辆相比,其更可能在智能基础设施系统的通信范围内保持更长的时间段。任何其他类型的信息可以类似地用于做出此类确定,诸如车辆的速度、前进方向和任何其他相关信息。

32、在一些实施例中,软件更新可以由车辆本身而不是智能基础设施系统发起。例如,车辆可以确定其进入的十字路口处的智能基础设施需要更新(或具有可用的更新),并且可以随后与基础设施建立自组织网络以向基础设施提供更新。在一些实例中,车辆可以被有意地调度到给定的智能基础设施,以便向智能基础设施系统提供软件更新。例如,如上所述的计算设备可以确定特定智能基础设施系统需要更新或具有可用更新,并且可以不是通过网络直接将软件镜像发送至智能基础设施系统,而是将车辆调度到智能基础设施系统的位置以建立与智能基础设施系统的自组织连接,以向智能基础设施系统提供软件更新。如上所述,当确定智能基础设施系统可能不具有远程网络通信能力(例如,可能不能连接到计算设备以直接接收软件更新)时,这可能是有益的。在更进一步的情况下,智能基础设施系统可以接收软件更新(直接从计算设备或通过自组织连接从车辆),并且可以将软件更新提供给进入智能基础设施系统的阈值距离的车辆,使得车辆然后可以行进到另一智能基础设施系统,并且将软件更新提供给该另一智能基础设施系统。

33、在一些实施例中,包括完整软件更新的数据可以不由单个车辆提供,而是可以由多个车辆以分段(术语“分段”和“部分”在本文中可以互换地使用)提供。继续以上示例,在十字路口处停止(或仅进入十字路口)的第一车辆可以向十字路口处的基础设施提供软件更新的片段(作为任意示例,第一车辆可以提供软件更新所需的数据的50%)。然后,第二车辆可以停在十字路口(或进入十字路口)并向基础设施提供软件更新所需的剩余50%的数据。在一些情况下,数据传送可以被分段,因为每个车辆可能仅访问所需数据的特定部分。在一些情况下,数据传送可以被分段,因为车辆在基础设施的通信范围内的时间量可以短于发送全部软件更新所需的所有数据所需的时间量。也就是说,可能不希望迫使车辆保持在十字路口,同时等待全部软件更新被传送到基础设施。在其他情况下,数据传送也可以在十字路口内的多个车辆之间同时分段,以减少每个车辆需要传送到智能基础设施系统的数据量,这减少了将完整的软件更新传送到智能基础设施的时间量。如上所述,每个车辆要提供给智能基础设施系统的路段还可以被预先分配给要部署到智能基础设施系统的各种车辆。尽管上述示例仅描述了两个车辆向基础设施传送数据,但是数据传送可以进一步在任何数量的车辆(或任何其他类型的移动实体或不同类型的移动实体的不同组合)之间分段,并且每个车辆可以传送任何百分比的软件更新(即,每个车辆传送的数据量不必相等)。

34、在图3的说明性过程流程中描述和描绘的操作可以如本公开的各种示例性实施例中期望的任何合适的顺序来执行或进行。另外,在某些示例性实施例中,可以并行地执行操作的至少一部分。此外,在某些示例性实施例中,可以执行比图3中所描绘的操作更少、更多或不同的操作。

35、说明性系统架构

36、图4图示了根据本公开的一个或多个实施例的示例性系统400。系统400可以表示用于促进如本文所述的智能基础设施系统的改进的软件更新(例如,如通过图1-2的使用案例所示)的系统。在一些实施例中,系统400可以包括一个或多个智能基础设施系统402(例如,智能基础设施系统402、智能基础设施系统402b或任何数量的智能基础设施系统)。系统400还可以包括一个或多个移动实体404(例如,移动实体404a、移动实体404b、移动实体404c或任意数量的移动实体)和管理设备406。在一些实例中,智能基础设施系统402、移动实体404和/或管理设备406中的任何一者可以通过通信网络408通信。

37、在一些实施例中,通信网络408可以包括多个不同类型的网络中的任何一者或组合,诸如电缆网络、因特网、无线网络和其他私有和/或公共网络。在一些实例中,通信网络408可以包括蜂窝、wi-fi或wi-fi直连。在一些实施例中,网络可以涉及网络中的车辆之间和/或网络中的车辆与网络外部的元件之间的通信。例如,可以使用车辆到车辆(v2v)、车辆到基础设施(v2i)、车联万物(v2x)和/或专用短程通信(dsrc),仅举几个例子。通信网络408还可以是对等网络。对等网络可以是互连“节点”的网络,这些节点能够在彼此之间直接传送数据,而不是使用诸如服务器之类的集中式设备作为中介来向其他节点发送数据和从其他节点接收数据。关于本文描述的智能基础设施系统,节点可以包括存在于网络上的任何智能基础设施系统内的单独设备。在一些情况下,节点还可以包括作为整体的智能基础设施系统,或者甚至多个智能基础设施系统的组。节点还可以包括智能基础设施系统之外的实体。例如,节点可以包括可以用于向智能基础设施系统中的任何设备发送数据和/或从智能基础设施系统中的任何设备接收数据的任何其他实体。如上所述,此类实体的一些示例可以包括自主或非自主车辆、电动滑板车、诸如智能电话之类的移动设备等。在一些实例中,对等网络也可以是自组织网络。自组织网络可以是临时网络,其可以被建立以允许数据传送直接发生在如上所述的两个节点之间。因此,可以形成自组织网络以允许进行对等数据传送,并且一旦发生数据传送,就可以结束自组织网络。因此,通信网络408在在一些情况下可以是临时的,而在其他情况下可以是永久的。通信网络408也可以同时包括临时和永久连接。例如,管理设备406与智能基础设施系统402之间的连接可以是永久网络连接,并且移动实体404与智能基础设施系统之间的连接可以是临时的。然而,这些仅仅是示例,并且在该系统400中描述的任何元件之间的任何网络连接可以是临时的和/或永久的。

38、在一些实施例中,智能基础设施系统402可以指能够与位于基础设施外部的部件通信的任何基础设施。单个智能基础设施系统402可以包括在给定地理区域内所包括的一个或多个智能基础设施设备。在一些实例中,包括在智能基础设施系统402内的智能基础设施设备可以服务于共同目标(例如,管理道路十字路口处的交通,如在示例性智能基础设施402a中所描述的)。智能基础设施系统402a和402b描绘了此类智能基础设施系统402的两个示例。例如,智能基础设施系统402a可以描绘位于道路十字路口410处的智能基础设施。示例性智能基础设施系统402a可以用于管理道路十字路口410处的交通。为此,智能基础设施系统402a可以包括用于辅助管理道路十字路口410处的交通的若干智能基础设施设备412。例如,此类智能基础设施设备412可包括第一人行横道标志412a、第二人行横道标志412b、第三人行横道标志412c和第四人行横道标志412d。智能基础设施设备412还可以包括第一交通灯412e、第二交通灯412f、第三交通灯412g和第四交通灯412h。即,智能基础设施系统402a作为整体可包括一组智能基础设施设备412,其包括四个人行横道标志和八个交通灯。智能基础设施系统402a和包括在智能基础设施系统402a内的设备可以由地理区域来定义,在该情况下,诸如道路十字路口410。然而,智能基础设施系统402和它们包括的设备可以以任何其他数量的方式来定义。例如,智能基础设施系统可以包括服务于共同目的(例如,管理交通十字路口)的一组智能基础设施设备。第二示例性智能基础设施系统402b可以包括用于帮助将电力从发电厂分配到住宅的智能基础设施设备412。例如,智能基础设施系统402b可以包括发电厂处的管理设备412i、一个或多个线路监测设备412j和/或一个或多个住宅家庭监测设备412i。这些智能基础设施系统402a和402b仅仅是智能基础设施系统402的类型的示例,并且任何其他类型的智能基础设施也可以是适用的。

39、在一些实施例中,移动实体404(例如,移动实体404a、移动实体404b、移动实体404c或任何数量的移动实体)可以包括通常能够从一个位置移动到另一个位置(例如,穿越智能基础设施系统402所位于的地理区域)的任何实体。如图所示,移动实体404a可以是车辆,移动实体404b可以是电动滑板车,并且移动实体404c可以是移动电话。为了提供进一步的示例,在示例性智能基础设施系统402a的上下文中,移动实体404可以包括车辆414、自行车415和/或移动电话416。然而,这些仅仅是移动实体的示例,并且任何其他类型的实体都是可应用的,诸如无人驾驶飞行器(uav)无人机。在一些实施例中,移动实体404可以包括存储器(如可以在下面关于图5的示例性计算设备500所描述的),该存储器可以用于存储用于包括智能基础设施系统402的智能基础设施设备的软件更新。单个移动实体404可能能够存储完整的软件更新本身,但也可能只存储软件更新的一部分。在一些情况下,移动实体404可以不在本地存储软件更新,而是可以可替代地从诸如管理设备406之类的外部源请求软件更新。在此类情况下,移动实体404可以仅充当智能基础设施系统402与软件更新所位于的外部源之间的中介。

40、在一些实施例中,管理设备406可以是除了其他目的之外还监视智能基础设施系统402的状态的设备。即,管理设备406可以用于请求和/或接收关于在给定智能基础设施系统402上可访问的智能基础设施设备的数量和/或类型的数据。管理设备406可以存储任何智能基础设施系统402的状态。管理设备406还可以确定软件更新何时对于一些或所有智能基础设施系统402和/或位于给定智能基础设施系统402内的各个智能基础设施设备可用和/或需要。为此,管理设备406可以促进创建要用于执行软件更新的软件镜像,以及向相关智能基础设施系统402提供映像。在一些实例中,管理设备406可以是单个集中式设备,诸如服务器。在一些情况下,可以存在多个管理设备406,每个管理设备负责一组智能基础设施系统402。在更进一步的情况下,每个智能基础设施系统402可以具有其自己的相关联的管理设备406。

41、图5图示了根据本公开的一个或多个实施例的示例性计算设备500。计算设备500可以表示本文描述的任何数量的元件,诸如智能基础设施系统402、移动实体404、管理设备406中的任何一者或本文描述的任何其他元件。计算设备500可以包括执行存储在一个或多个存储器设备(称为存储器504)中的指令的至少一个处理器502。指令可以是例如用于实现被描述为由以上公开的一个或多个模块和系统执行的功能的指令,或者用于实现以上公开的方法中的一者或多者的指令。处理器502可以被具体化为例如cpu、多个cpu、gpu、多个gpu、tpu、多个tpu、多核处理器、其组合等。在一些实施例中,处理器502可以被布置在单个处理设备中。在其他实施例中,处理器502可以分布在两个或多个处理设备(例如,多个cpu;多个gpu;其组合;等等)上。处理器可以被实现为处理电路或计算处理单元(诸如cpu、gpu或两者的组合)的组合。因此,为了说明起见,处理器可以指单核处理器;具有软件多线程执行能力的单个处理器;多核处理器;具有软件多线程执行能力的多核处理器;具有硬件多线程技术的多核处理器;并行处理(或计算)平台;以及具有分布式共享存储器的并行计算平台。另外,或作为另一个示例,处理器可指代经设计或以其他方式配置(例如,制造)以执行本文中描述的功能的集成电路(ic)、asic、数字信号处理器(dsp)、fpga、plc、复杂可编程逻辑设备(cpld)、离散门或晶体管逻辑、离散硬件部件或其任何组合。

42、处理器502可以通过通信架构506(例如,系统总线)来访问存储器504。通信架构506可以适合于处理器502的特定布置(局部化或分布式)和类型。在一些实施例中,通信架构506可以包括一个或多个总线架构,诸如存储器总线或存储器控制器;外围总线;加速图形端口;处理器或本地总线;其组合等。作为说明,此类架构可包括工业标准架构(isa)总线、微通道架构(mca)总线、增强型isa(eisa)总线、视电标准协会(vesa)局部总线、加速图形端口(agp)总线、外部设备互连(pci)总线、串行总线(pci-express bus)、个人电脑存储卡国际协会(pcmcia)总线、通用串行总线(usb)等。

43、本文公开的存储器部件或存储器设备可体现于易失性存储器或非易失性存储器中或可包括易失性和非易失性存储器两者。另外,存储器部件或存储器设备可以是可移除的或不可移除的,和/或在计算设备或部件的内部或外部。各种类型的非暂时性存储介质的示例可以包括硬盘驱动器、压缩磁碟、cd-rom、数字多功能盘(dvd)或其他光学存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储装置、闪存卡或其他类型的存储卡、盒式磁带、或适合于保留期望的信息并且可以由计算设备访问的任何其他非暂时性介质。

44、作为说明,非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可以包括充当外部高速缓冲存储器的随机存取存储器(ram)。作为说明而非限制,ram可以以许多形式获得,诸如同步ram(sram)、动态ram(dram)、同步dram(sdram)、双数据速率sdram(ddr sdram)、增强型sdram(esdram)、同步链路dram(sldram)和直接rambus ram(drram)。本文描述的操作或计算环境的公开的存储器设备或存储器旨在包括这些和/或任何其他适当类型的存储器中的一者或多者。

45、除了存储可执行指令之外,存储器504还可以保留数据,诸如任何账本156信息以及其他数据。

46、每个计算设备500还可以包括可由处理器502借助于通信架构506访问的大容量存储装置508。大容量存储装置508可以包括机器可访问指令(例如,计算机可读指令和/或计算机可执行指令)。在一些实施例中,机器可访问指令可以被编码在大容量存储装置508中并且可以被布置在可以被构建(例如,链接和编译)并且以计算机可执行形式保留在大容量存储装置508中或被包括在计算设备500中的一个或多个其他机器可访问非暂时性存储介质中的部件中。此类部件可以体现或者可以构成本文公开的各种模块中的一者或多者。此类模块被图示为智能基础设施更新模块514。

47、由处理器502中的至少一者单独地或组合地执行智能基础设施更新模块514可以使得计算设备500执行本文描述的操作中的任何操作(例如,关于图3描述的操作以及任何其他操作)。

48、每个计算设备500还可以包括一个或多个输入/输出接口设备510(称为i/o接口510),其可以允许或以其他方式促进外部设备与计算设备500通信。例如,i/o接口510可以用于从外部计算设备接收数据和/或指令以及向外部计算设备发送数据和/或指令。

49、计算设备500还包括一个或多个网络接口设备512(被称为网络接口512),其可以允许或以其他方式促进将计算设备500与一个或多个外部设备功能性地耦合。将计算设备500功能性地耦合到外部设备可以包括在计算设备500和外部设备之间建立有线连接或无线连接。网络接口设备512可以包括一个或多个天线以及可以允许计算设备500与另一外部设备之间的无线通信的通信处理设备。例如在车辆和智能基础设施系统之间、在两个智能基础设施系统之间等。此类通信处理设备可以根据一种或多种无线电技术的定义协议来处理数据。无线电技术可以包括例如3g、长期演进(lte)、高级lte、5g、ieee 802.11、ieee802.16、蓝牙、zigbee、近场通信(nfc)等。通信处理设备也可根据其他协议处理数据,诸如车辆到基础设施(v2i)通信、车辆到车辆(v2v)通信等。网络接口512还可用于促成如本文所描述的对等自组织网络连接。

50、如本技术中所使用的,术语“环境”、“系统”、“单元”、“模块”、“架构”、“接口”、“部件”等是指计算机相关的实体或与具有一个或多个定义的功能的操作装置相关的实体。术语“环境”、“系统”、“模块”、“部件”、“架构”、“接口”和“单元”可以互换地使用,并且可以一般地被称为功能元件。此类实体可以是硬件、硬件和软件的组合、软件、或执行中的软件。作为一个示例,模块可以体现在运行于处理器上的进程、处理器、对象、软件的可执行部分、执行线程、程序和/或计算设备中。作为另一个示例,在计算设备上执行的软件应用和计算设备两者都可以体现为模块。作为又一个示例,一个或多个模块可驻留在进程和/或执行线程内。模块可以位于一个计算设备上或者分布在两个或多个计算设备之间。如本文公开的,模块可以从其上存储有各种数据结构的各种计算机可读非暂时性存储介质执行。模块可以根据例如具有一个或多个数据分组(例如,来自一个部件的数据,该部件经由信号与本地系统、分布式系统中的另一部件交互和/或跨诸如广域网之类的网络与其他系统交互)的信号(模拟或数字)经由本地和/或远程进程进行通信。

51、作为又一个示例,模块可以被体现在或者可以包括具有由机械部件提供的定义功能的装置,该机械部件由电气或电子电路操作,该电气或电子电路由处理器执行的软件应用或固件应用控制。此类处理器可以在装置的内部或外部,并且可以执行软件或固件应用的至少一部分。在另一个示例中,模块可以被包含在或包括通过电子部件而不是机械部件提供定义的功能的装置。电子部件可以包括处理器以执行软件或固件,该软件或固件允许或以其他方式至少部分地促进电子部件的功能。

52、在一些实施例中,模块可以根据例如具有一个或多个数据分组(例如,来自一个部件的数据,该部件经由信号与本地系统、分布式系统中的另一部件交互和/或跨诸如广域网之类的网络与其他系统交互)的信号(模拟或数字)经由本地和/或远程进程进行通信。此外,或在其他实施例中,模块可以经由热、机械、电和/或机电耦合机构(诸如导管、连接器、其组合等)通信或以其他方式耦合。接口可以包括输入/输出(i/o)部件以及相关联的处理器、应用和/或其他编程部件。

53、此外,在本说明书和附图中,诸如“存储”、“存储装置”、“数据存储装置”、“存储器”、“储存库”以及与本公开的部件的操作和功能相关的基本上任何其他信息存储部件的术语指的是存储器部件、在一个或若干存储器设备中体现的实体、或形成存储器设备的部件。注意,本文描述的存储器部件或存储器设备体现或包括可以是计算设备可读或以其他方式可访问的非暂时性计算机存储介质。此类介质可以以用于存储信息的任何方法或技术来实现,该信息诸如机器可访问指令(例如,计算机可读指令)、信息结构、程序模块或其他信息对象。

54、除非另外具体说明或者在所使用的上下文内以其他方式理解,否则诸如“能够”、“可能”或“可以”等条件语言一般旨在传达某些实现可包括而其他实现不包括某些特征、元素和/或操作。因此,此类条件语言一般不旨在暗示特征、元素和/或操作以任何方式对于一个或多个实现是需要的,或者一个或多个实现必须包括用于在有或没有用户输入或提示的情况下决定这些特征、元素和/或操作是否被包括在任何特定实现中或者是否要在任何特定实现中执行的逻辑。

55、在本说明书和附图中已经描述的内容包括系统、设备、技术和计算机程序产品的示例,其单独地和组合地允许自动提供车辆简档包的更新。当然,不可能为了描述本公开的各种要素而描述部件和/或方法的每个可想到的组合,但是可以认识到,公开的要素的许多进一步的组合和排列是可能的。因此,可以明显的是,在不偏离本公开的范围或精神的情况下,可以对本公开进行各种修改。另外,或者可替代地,通过考虑说明书和附图以及如本文所呈现的本公开的实践,本公开的其他实施例可以是显而易见的。在说明书和附图中所阐述的示例在所有方面都应被认为是说明性的而非限制性的。尽管在本文使用了特定术语,但是它们仅在一般和描述性意义上使用,而不是为了限制的目的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1