欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 用于客户端计算设备的虚拟存储服务独创技术95197字

用于客户端计算设备的虚拟存储服务

2021-02-15 20:42:05

用于客户端计算设备的虚拟存储服务

  技术领域

  本发明的实施例总体上涉及计算的技术领域,并且更具体地涉及通过雾网络用于客户端计算设备的虚拟存储服务。

  背景技术

  本文中所提供的背景描述是出于总体上呈现本公开的上下文的目的。除非在本文中另有指示,否则本部分中描述的材料不是本申请中的权利要求的现有技术,并且不因为包含在本部分中而被承认为现有技术。

  随着云向客户端计算设备提供各种服务,云计算已经变得越来越流行。近来,随着雾网络的出现,一些服务已经从云转移到雾网络,从而可以在更靠近客户端计算设备的边缘处提供服务。

  附图说明

  通过下列具体实施方式并结合所附附图,可容易地理解实施例。为了便于该描述,类似的附图标记指示类似的结构元件。通过示例方式而非通过限制的方式在附图的各图中示出各实施例。

  图1图示出根据各实施例的示例计算基础设施,其包括耦合到一个或多个存储设备以向客户端计算设备提供虚拟存储服务的一个或多个服务器。

  图2图示出根据各实施例的另一示例计算基础设施,其包括耦合到一个或多个存储设备以提供多个客户端计算设备的虚拟存储服务的一个或多个服务器。

  图3图示出根据各实施例的雾网络向客户端计算设备提供虚拟存储服务的示例过程。

  图4图示出根据各实施例的客户端计算设备使用虚拟存储服务存储文件和文件的元数据的示例过程。

  图5图示出根据各实施例的适用于实施本公开的各方面的示例设备。

  图6图示了根据各实施例的具有用于实施参考图1-5所述的方法的指令的存储介质。

  图7图示出根据各实施例的布置,其示出可以存在于网络与物联网(IoT)网络之间以提供虚拟存储服务的互连。

  图8图示出根据各实施例的用于提供虚拟存储服务的IoT网络的示例域拓扑。

  图9图示出根据各实施例的与多个IoT设备通信以提供虚拟存储服务的云计算网络或云的示例布置。

  图10图示出根据各实施例的与IoT设备或IoT雾的网状网络通信以提供虚拟存储服务的云计算网络或云的布置。

  具体实施方式

  期望提供虚拟存储服务以尤其通过更靠近客户端计算设备的计算设备的雾网络来存储计算设备的文件。在当今的技术下,为虚拟存储服务提供必要的安全性和私密性是一项挑战,尤其是通过雾网络提供此类虚拟存储服务。一种提高安全性的方法可涉及对待由虚拟存储服务存储的文件进行加密。然而,搜索经加密的文件是不可能的。为了执行搜索,可能需要将整个经加密的文件传输回客户端计算设备。此类文件传输可能给虚拟存储服务带来额外的延迟和复杂性,并且同时降低其可用性。

  在实施例中,可以在提供给虚拟存储服务之前由客户端计算设备使用不同的安全密钥分别对文件及其元数据(文件的关联信息)进行加密。例如,可以利用客户端计算设备的秘密密钥来对文件进行加密,并且可以利用客户端计算设备与虚拟存储服务之间的共享会话密钥来对文件的元数据进行加密。秘密密钥加密的文件可以具有增加的安全性,而共享会话密钥加密的文件的元数据可以响应于查询,特别是利用相同的共享会话密钥加密的查询而保持可被虚拟存储服务搜索。因此,本文的实施例可以具有提高了文件的安全性,并且提高了对在虚拟存储服务中存储的文件的经加密元数据执行的操作的效率的优点。

  在实施例中,一种用于存储文件的设备可以包括彼此耦合的一个或多个服务器和一个或多个存储设备,以提供用于存储客户端计算设备的文件和文件的元数据的虚拟存储服务。在提供给虚拟存储服务之前,文件和文件的元数据可以由客户端计算设备分别加密。可以利用客户端计算设备的秘密密钥来对文件进行加密,并且可以利用客户端计算设备与虚拟存储服务之间的共享会话密钥来对文件的元数据进行加密。经加密的文件可以存储在一个或多个存储设备中,文件的经加密的元数据可以存储在一个或多个服务器的一个或多个安全区域中。在实施例中,设备可以是雾网络的一部分。

  在实施例中,客户端计算设备(虚拟存储服务的消费者)可以包括一个或多个处理器以及与一个或多个处理器耦合的通信接口。一个或多个处理器可以基于计算设备的秘密密钥来对文件进行加密,并且可以基于在计算设备与虚拟存储服务之间共享会话密钥来对文件的元数据进行加密。通信接口可以将经加密的文件和文件的经加密的元数据发送到用于存储计算设备的经加密的文件和文件的经加密的元数据的虚拟存储服务。

  在实施例中,一种或多种非暂态计算机可读介质可以包括指令,响应于指令的执行而使雾网络提供虚拟存储服务。彼此耦合的一个或多个服务器和一个或多个存储设备可以提供虚拟存储服务。响应于指令的执行,雾网络的虚拟存储服务可以从客户端计算设备接收利用客户端计算设备的私密密钥加密的经加密的文件。雾网络可以进一步将经加密的文件存储在一个或多个存储设备中。另外,雾网络的虚拟存储服务可以从客户端计算设备接收利用客户端计算设备与虚拟存储服务之间的共享会话密钥加密的文件的经加密的元数据;并将文件的经加密的元数据存储在一个或多个服务器的一个或多个安全区域中。

  在实施例中,一种用于操作客户端计算设备的方法可以包括:生成经加密的文件,其中,可以通过基于客户端计算设备的秘密密钥对文件进行加密来生成经加密的文件;以及生成文件的经加密的元数据,其中,文件的经加密的元数据可以通过基于客户端计算设备与虚拟存储服务之间的共享会话密钥对文件的元数据进行加密来生成。虚拟存储服务可以由彼此耦合的一个或多个服务器和一个或多个存储设备来提供。该方法可进一步包括:将经加密的文件和文件的经加密的元数据发送到虚拟存储服务,其中,经加密的文件可以被虚拟存储服务接收并存储在一个或多个存储设备中,并且文件的经加密的元数据可以存储在一个或多个服务器的一个或多个安全区域中。

  在以下描述中,参考形成本文一部分的附图,其中贯穿各附图类似的标记指示类似的部分,并且其中通过图示的方式示出了可实施的实施例。应理解,可利用其他实施例,并且可作出结构或逻辑的改变而不背离本公开的范围。因此,以下详细描述不应以限制的意义来理解,并且实施例的范围由所附权利要求及其等效方案来限定。

  按照在理解要求保护的主题时最有帮助的方式,可将各种方法的操作依次描述为多个分立的动作或操作。然而,不应当将描述的次序解释为暗示这些操作必然依赖于次序。具体而言,可以不按照呈现的次序执行这些操作。能以不同于所描述的实施例的次序执行所描述的操作。在附加的实施例中,可执行各种附加操作和/或可省略、拆分或组合所描述的操作。

  对于本公开的目的,短语“A或B”和“A和/或B”意思是(A)、(B)或(A和B)。出于本公开的目的,短语“A、B和/或C”意指(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。

  说明书可使用短语“在实施例中”或“在多个实施例中”,其可各自指代相同或不同实施例中的一个或多个。此外,如相对于本公开的实施例所使用的术语“包含”、“包括”、“具有”等是同义的。

  如在下文(包括权利要求书)中所使用,术语“单元”、“引擎”、“模块”或“例程”可指代专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共享的、专用的、或组)和/或存储器(共享的、专用的、或组)、组合逻辑电路和/或提供所描述功能的其他合适的组件,可以是以上组件的部分,或者可以包括以上组件。

  在本公开记载“一个”或“第一”要素或其等效物的情况下,这种公开包括一个或多个此类要素,既不要求也不排除两个或更多个此类要素。此外,所标识的要素的顺序指示符(例如,第一、第二或第三)用于在要素之间进行区分,并且不指示或暗示所要求或所限定数量的此类要素,也不指示此类要素的特定位置或顺序,除非另外特别声明。

  在本申请中可使用术语“与……耦合”和“耦合至”等。“耦合”可意指以下一个或多个。“耦合的”可意指两个或更多个元件直接物理或电气接触。然而,“耦合”还可意指两个或更多个元件彼此间接接触,但仍彼此协作或交互,并且可意指一个或多个其他元件被耦合或连接在被称为彼此耦合的元件之间。作为示例而非限制,“耦合”可意指两个或更多个元件或设备通过诸如例如主板之类的印刷电路板上的电连接而耦合。作为示例而非限制,“耦合”可意指两个或更多个元件/设备通过诸如有线和/或无线网络之类的一个或多个网络链接来协作和/或交互。作为示例而非限制,计算装置可包括“耦合”在主板上或通过一个或多个网络链接耦合的两个或更多个计算设备。作为示例而非限制,如果第一系统、装置或设备可以在操作期间耦合至第二系统、装置或设备,则当两个系统、装置或设备不操作时,两个系统、装置或设备彼此耦合。例如,当雾网络的接口不操作时,则雾网络可“耦合”至云,如果雾网络的接口正在操作,则雾网络耦合到云。术语“直接耦合”可意指两个或更多个元件彼此直接接触。术语“通信地耦合的”可意指两个或更多个元件可通过通信装置彼此接触,通过通信装置包括通过线或其他互连连接、通过无线通信信道或链路等等。

  如本文中所使用,术语“电路系统”可指代下列各项的部分或包括下列各项:专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共享的、专用的、或组)和/或存储器(共享的、专用的、或组)、组合逻辑电路和/或提供所述的功能的其他合适的硬件组件。如在本文中所使用,“计算机实现的方法”可以指由以下各项执行的任何方法:一个或多个处理器、具有一个或多个处理器的计算机系统、诸如智能电话(其可以包括一个或多个处理器)的移动设备、平板、膝上型计算机、机顶盒、游戏控制台等。

  如本文中所使用,术语“接口”或“接口电路系统”可指提供两个或更多个组件或设备之间的信息交换的电路系统,是该电路系统的部分,或者包括该电路系统。术语“接口电路系统”可指一个或多个硬件接口(例如,总线、输入/输出(I/O)接口、外围组件接口、网络接口卡等)。

  一些实施例可与各种计算设备和系统结合使用,例如,通信系统、通信设备、无线设备、无线通信系统、无线通信设备、有线通信设备、有线通信系统、个人计算机(PC)、台式计算机、移动计算机、膝上型计算机、笔记本计算机、超极本TM计算机、平板计算机、服务器计算机、手持式计算机、手持式设备、个人数字助理(PDA)设备、手持式PDA设备、板载设备、板外设备、混合式设备、车载设备、非车载设备、移动或便携式设备、消费者设备、非移动或非便携式设备、无线通信站、无线通信设备、有线或无线调制解调器、视频设备、音频设备、音频视频(AN)设备、有线或无线网络,无线区域网、无线视频区域网(WVAN)、局域网(LAN)、无线LAN(WLAN)、个域网(PAN)、无线PAN(WPAN)、无线广域网(WWAN)等。

  本文所使用的术语“无线设备”可包括例如能够进行无线通信的设备、能够进行无线通信的通信设备、能够进行无线通信的通信站、能够进行无线通信的便携式或非便携式设备等。在一些实施例中,无线设备可以是或可以包括与计算机集成的外围设备,或者附接到计算机的外围设备。在一些实施例中,术语“无线设备”可以任选地包括无线服务。

  本文所使用的术语“通信设备”可包括例如能够进行无线和/或有线通信的设备、能够进行无线和/或有线通信的通信设备、能够进行无线和/或有线通信的通信站、能够进行无线和/或有线通信的便携式或非便携式设备等。在一些实施例中,通信设备可以是或可以包括与计算机集成的外围设备,或者附接到计算机的外围设备。

  一些实施例可与根据现有网络实时通信标准、IEEE 802.11标准、无线千兆联盟(WGA)规范、无线保真(WiFi)联盟(WFA)对等(P2P)规范、第三代合作伙伴计划(3GPP)、3GPP长期演进(LTE)、其当前版本和/或未来版本和/或衍生物操作的计算设备和/或网络结合使用。

  一些实施例可以与以下各项结合使用:单向和/或双向无线电通信系统、蜂窝无线电话通信系统、移动电话、蜂窝电话、无线电话、个人通信系统(PCS)设备、包含无线通信设备的PDA设备、移动或便携式全球定位系统(GPS)设备,包含GPS接收器或收发器或芯片的设备、包含RFID元件或芯片的设备、多输入多输出(MIMO)收发器或设备、单输入多输出(SIMO)收发器或设备、多输入单输出(MISO)收发器或设备、具有一个或多个内部天线和/或外部天线的设备、数字视频广播(DVB)设备或系统、多标准无线电设备或系统、有线或无线手持式设备,例如智能电话、无线应用协议(WAP)设备等。

  一些实施例可与一种或多种类型的无线通信信号和/或系统结合使用,例如,射频(RF)、红外(IR)、频分复用(FDM)、正交FDM(OFDM)、时分复用(TDM)、时分多址(TDMA)、扩展TDMA(E-TDMA)、通用分组无线电服务(GPRS)、扩展GPRS、码分多址(CDMA)、宽带CDMA(WCDMA)、CDMA2000、单载波CDMA、多载波CDMA、多载波调制、离散多音调(DMT)、全球定位系统(GPS)、Wi-Fi、Wi-Max、ZigBeeTM、超宽带(UWB)、全球移动通信系统(GSM)、2G、2.5G、3G、3.5G、4G、第五代(5G)移动网络、3GPP、长期演进(LTE)、LTE高级、GSM演进增强数据速率(EDGE)等等。其他实施例可用于各种其他有线和/或无线设备、系统和/或网络。

  图1图示出根据各实施例的示例计算基础设施100,其包括一个或多个服务器(例如,服务器131),该一个或多个服务器耦合到一个或多个存储设备(例如,存储设备133)以提供用于存储客户端计算设备101的文件和文件的元数据的虚拟存储服务135。为清楚起见,计算基础设施100、服务器131、存储设备133、虚拟存储服务135和客户端计算设备101的特征在下文可被描述为用于理解示例计算基础设施、服务器、存储设备、虚拟存储服务和客户端计算设备的示例。应当理解,计算基础设施100、服务器131、存储设备133、虚拟存储服务135和客户端计算设备101中可以包括更多或更少的组件。此外,应当理解,计算基础设施100、服务器131、存储设备133、虚拟存储服务135和客户端计算设备101内的一个或多个设备和组件可以包括与以下说明书的附加和/或不同的特征,并且可以包括本领域普通技术人员将考虑和/或称为计算基础设施、服务器、存储设备、虚拟存储服务和客户端计算设备的设备和组件的任何设备和组件。

  在实施例中,服务器131和存储设备133可以是经由网关151耦合到云105的雾网络103的一部分。客户端计算设备101可以通过信道121耦合到雾网络103,具体地耦合到雾网络103提供的虚拟存储服务135。信道121可以是客户端计算设备101与虚拟存储服务135之间的安全信道。客户端计算设备101可以是充当虚拟存储服务135的客户端的任何计算设备,该虚拟存储服务135用于存储客户端计算设备101的文件或文件的元数据。

  在实施例中,客户端计算设备101可包括文件117、文件的元数据113、共享会话密钥115和秘密密钥119,这些可以存储在存储器112中。秘密密钥119可以是仅为客户端计算设备101所知而不为虚拟存储服务135所知的加密密钥。共享会话密钥115可以在客户端计算设备101与虚拟存储服务135之间共享。例如,在存储设备133中可以存储有共享会话密钥145,以供虚拟存储服务135使用。此外,客户端计算设备101可以包括一个或多个处理器(例如,处理器114),以及与处理器114耦合的通信接口116。

  在实施例中,文件117可以包括音频文件、多媒体文件、文档、对象文件或任何其他数据、文档或文件。在转移到虚拟存储服务135以供存储之前,文件117可以最初作为一个实体被存储在客户端计算设备101中。附加地且可替代地,在转移到虚拟存储服务135以供存储之前,文件117可以最初包括存储在客户端计算设备101中的多个实体。文件113的元数据可以包括文件名、文件大小、文件的日期、文件的所有者、文件的标签、文件的一部分或文件的摘要,例如,文件117。文件的元数据113可以是文件117的较短或简化版本,并且可以包含比文件117少的敏感信息、个人信息。此外,文件的元数据113可以包含文件117的总结、摘要、或者一些指示,使得经由查询对文件的元数据113进行搜索可以确定文件117是否是查询所要搜索的文件。

  在实施例中,处理器114可以基于客户端计算设备101的秘密密钥119对文件117进行加密,并且可以基于共享会话密钥115对文件的元数据113进行加密。基于秘密密钥119加密的文件117可以具有比经加密的元数据更高的安全级别,而基于共享会话密钥115加密的文件的元数据113可以具有比经加密的文件更低的安全级别。共享会话密钥115可以是持续一定有限时间量的时间受限安全密钥,或者可以是持续较长时间(例如,比会话时间更长)的稳定安全密钥。可以经由本领域普通技术人员已知的各种安全机制来建立共享会话密钥115。

  在实施例中,通信接口116可以将经加密的文件和文件的经加密的元数据发送到虚拟存储服务135,以存储客户端计算设备101的经加密的文件和文件的经加密的元数据。例如,虚拟存储服务135可以在存储设备133中存储经加密的文件(例如,经加密的文件147),并且可以在一个或多个服务器的一个或多个安全区域(例如,服务器131的安全区域141)中存储文件的经加密的元数据(例如,文件的经加密的元数据143)。在一些实施例中,安全区域141可以是可信执行环境(TEE),诸如受软件保护扩展(SGX)保护的执行环境。更具体地,SGX是一种技术,其使应用开发人员能够提供执行飞地来保护选定的代码和数据免于泄露或修改。安全区域141(执行飞地)可以由虚拟存储服务135建立。客户端计算设备101和虚拟存储服务135可以共同设置用于保护其通信的安全信道121。安全区域141可以保护隐私并提供文件的经加密的元数据143的安全性,同时提高文件的经加密的元数据143和经加密的文件147的操作效率。

  在实施例中,在处理器114已经将文件117提供给虚拟存储服务135以代表其存储之后,处理器114可以进一步生成查询118以查询文件117。在实施例中,处理器114可以进一步基于共享会话密钥115来对查询118进行加密以获得经加密的查询。通信接口116可以将经加密的查询发送到虚拟存储服务135。虚拟存储服务135可以基于共享会话密钥145来对经加密的查询138进行解密以获得查询,并且响应于查询而搜索所存储的文件的经加密的元数据143。通信接口116可以响应于查询而进一步从虚拟存储服务135接收相对应的经加密的文件,其中,可以由虚拟存储服务135将相对应的经加密的文件确定为经加密的查询138的主题。

  在实施例中,如前所述,被布置成提供虚拟存储服务以存储客户端计算设备101的文件和文件的元数据的一个或多个服务器131和一个或多个存储设备133可以是位于客户端计算设备101附近的边缘的雾网络103的一部分。文件117和文件的元数据113可以在提供给虚拟存储服务135之前由客户端计算设备101加密。可以利用客户端计算设备101的秘密密钥119对文件117进行加密,而利用客户端计算设备101与虚拟存储服务135之间的共享会话密钥115来对文件的元数据113进行加密。经加密的文件147可以存储在存储设备133中而文件的经加密的元数据143可以存储在服务器131的一个或多个安全区域(例如,安全区域141)中。附加地且可替代地,一个或多个存储设备中的一些(例如,存储设备153)可以设置在耦合到雾网络103的云105中。虚拟存储服务135可以将来自客户端计算设备101的经加密的文件作为经加密的文件157存储在云105的存储设备153内。换句话说,客户端计算设备101可以发送利用秘密密钥119加密的文件117,并且虚拟存储服务135可以接收经加密的文件117,将其存储在存储设备133中以成为经加密的文件147,或者将其存储在存储设备153中以成为经加密的文件157。

  在实施例中,虚拟存储服务135可以基于共享会话密钥145接收关于文件的经加密的查询138,并且服务器131可以基于共享会话密钥145来对经加密的查询138进行解密以获得查询,并且基于该查询搜索存储在服务器131上的文件的经加密的元数据143。另外,服务器131可以基于对存储的文件的经加密的元数据143执行的搜索来确定经加密的文件157被存储在存储设备153中,或者从云105中检取经加密的文件157,然后将检取到的经加密的文件157发送到客户端计算设备101。

  图2图示出根据各实施例的示例计算基础设备200,其包括一个或多个服务器(例如,服务器231),该一个或多个服务器耦合到一个或多个存储设备(例如,存储设备233)以提供用于存储多个客户端计算设备(例如,客户端计算设备201和客户端计算设备261)的文件和文件的元数据的虚拟存储服务235。计算基础设备200、服务器231、存储设备233、虚拟存储服务235、和客户端计算设备201或客户端计算设备261可以分别是图1中所示的计算基础设备100、服务器131、存储设备133、虚拟存储服务135和客户端计算设备101的示例的扩展。

  在实施例中,计算基础设施200可以包括通过信道221耦合到雾网络203和虚拟存储服务235的客户端计算设备201,以及通过信道223耦合到雾网络203和虚拟存储服务235的客户端计算设备261。信道221可以是客户端计算设备201与虚拟存储服务235之间的安全信道,而信道223可以是客户端计算设备261与虚拟存储服务235之间的安全信道。雾网络203可通过网关251进一步耦合到云205。

  在实施例中,客户端计算设备201可以包括文件217、文件的元数据213、共享会话密钥215和秘密密钥219,这些可以存储在存储器212中。共享会话密钥215可以在计算设备201与虚拟存储服务235之间共享。例如,在存储设备233中可以存储有共享会话密钥245以供虚拟存储服务235使用。此外,客户端计算设备201可以包括一个或多个处理器(例如,处理器214)和与处理器214耦合的通信接口216。

  在实施例中,处理器214可以基于客户端计算设备201的秘密密钥219来对文件217进行加密,并且可以基于共享会话密钥215来对文件的元数据213进行加密。通信接口216可以将经加密的文件和文件的经加密的元数据发送到虚拟存储服务235,以存储客户端计算设备201的经加密的文件和文件的经加密的元数据。例如,虚拟存储服务235可以将经加密的文件(例如,经加密的文件247)存储在存储设备233中,并且可以将文件的经加密的元数据(例如,文件的经加密的元数据243)存储在服务器231的安全区域241中。处理器214可以进一步生成关于文件217的查询218,并且可以进一步基于共享会话密钥215对查询218进行加密以获得经加密的查询。通信接口216可以将经加密的查询发送到虚拟存储服务235以将其存储为经加密的查询238。虚拟存储服务235可以基于共享会话密钥245对经加密的查询238进行解密以获得查询并基于该查询来搜索存储的文件的经加密的元数据243。通信接口216可进一步从虚拟存储服务235接收相对应的经加密的文件,其中可以由虚拟存储服务235基于经加密的查询238来确定相对应的经加密的文件。

  在实施例中,客户端计算设备261可以包括文件277、文件273的元数据、共享会话密钥275和秘密密钥279,这些可以存储在存储器272中。共享会话密钥275可以被共享在计算设备261与虚拟存储服务235之间,作为共享会话密钥246存储在存储设备233中以供虚拟存储服务235使用。此外,客户端计算设备261可以包括处理器274和与处理器274耦合的通信接口276。

  在实施例中,处理器274可以基于客户端计算设备261的秘密密钥279来对文件277进行加密,并且可以基于共享会话密钥275来对文件的元数据273进行加密。通信接口276可以将经加密的文件和文件的经加密的元数据发送到虚拟存储服务235,以存储客户端计算设备261的经加密的文件和文件的经加密的元数据。例如,虚拟存储服务235可以将经加密的文件(例如,经加密的文件248)存储在存储设备233中,并且可以将文件的经加密的元数据(例如,文件的经加密的元数据244)存储在服务器231的安全区域241中。处理器274可进一步生成关于文件277的查询278,并且可进一步基于共享会话密钥275来对查询278进行加密以获得经加密的查询。通信接口276可以将经加密的查询发送到虚拟存储服务235,以将其存储为经加密的查询239。虚拟存储服务235可以基于共享会话密钥246来对经加密的查询239进行解密,以获取查询并基于该查询搜索存储的文件的经加密的元数据244。通信接口276可以进一步从虚拟存储服务235接收相对应的经加密的文件,其中可以由虚拟存储服务235基于经加密的查询239来确定相对应的经加密的文件。

  在实施例中,雾网络203可以包括彼此耦合的服务器231和存储设备233,以提供虚拟存储服务235来存储客户端计算设备201的文件217和文件的元数据213并存储客户端计算设备261的文件277和文件的元数据273。

  在实施例中,文件217和文件的元数据213可以在提供给虚拟存储服务235之前由客户端计算设备201加密。文件217可以利用客户端计算设备201的秘密密钥219进行加密,而文件的元数据213可以利用客户端计算设备201与虚拟存储服务235之间的共享会话密钥215进行加密。经加密的文件247可以存储在存储设备233中,而文件的经加密的元数据243可以存储在服务器231的安全区域241中。附加地且可替代地,存储设备253可以设置在耦合到雾网络203的云205中。虚拟存储服务235可以将来自客户端计算设备201的经加密的文件作为经加密的文件257存储在云205的存储设备253内。虚拟存储服务235可以基于共享会话密钥245来接收关于文件的经加密的查询238,并且服务器231可以基于共享会话密钥245来对经加密的查询238进行解密以获得查询,并基于该查询来搜索存储在服务器231上的文件的经加密的元数据243。此外,服务器231可基于对所存储的文件的经加密的元数据243执行的搜索来确定存储在存储设备233中的经加密的文件247,并将所确定的经加密的文件247发送到客户端计算设备201。

  在实施例中,文件277和文件的元数据273可以在提供给虚拟存储服务235之前由客户端计算设备261进行加密。可以利用客户端计算设备261的秘密密钥279对文件277进行加密,并且可以利用客户端计算设备261与虚拟存储服务235之间的共享会话密钥275对文件的元数据273进行加密。可以将经加密的文件248存储在存储设备233中,并且将文件的经加密的元数据244存储在服务器231的安全区域241中。附加地且可替代地,虚拟存储服务235可以将来自客户端计算设备261的经加密的文件作为经加密的文件258存储在云205的存储设备253内。虚拟存储服务235可以基于共享会话密钥246来接收关于文件的经加密的查询239,并且服务器231可以基于共享会话密钥246来对经加密的查询239进行解密以获得查询,并基于该查询来搜索存储在服务器231上的文件的经加密的元数据244。另外,服务器231可以基于对存储的文件的经加密的元数据244执行的搜索来确定存储在存储设备233中的经加密的文件248,并将所确定的经加密的文件248发送到客户端计算设备261。

  图3图示出根据各实施例的用于雾网络向客户端计算设备提供虚拟存储服务的示例过程300。在实施例中,过程300可以是由雾网络103执行以提供图1中的虚拟存储服务135或由雾网络203执行以提供图2中的虚拟存储服务235的过程。

  过程300可始于交互301。在交互301期间,雾网络可以提供用于从客户端计算设备接收利用客户端计算设备的私密密钥加密的经加密的文件的虚拟存储服务。例如,在交互301期间,雾网络103可以提供用于从客户端计算设备101接收经加密的文件147的虚拟存储服务135,其中可以利用客户端计算设备101的秘密密钥119来对经加密的文件147进行加密。

  在交互303期间,虚拟存储服务可以将经加密的文件存储在一个或多个存储设备中。例如,在交互303期间,虚拟存储服务135可以将经加密的文件147存储在存储设备133中。

  在交互305期间,虚拟存储服务可以从客户端计算设备接收利用客户端计算设备与虚拟存储服务之间的共享会话密钥加密的文件的经加密的元数据。例如,在交互305期间,虚拟存储服务135可以从客户端计算设备101接收文件的经加密的元数据143,该文件的经加密的元数据143利用客户端计算设备101与虚拟存储服务135之间的共享会话密钥115加密。

  在交互307期间,虚拟存储服务可以将文件的经加密的元数据存储在一个或多个服务器的一个或多个安全区域中,其中,彼此耦合的一个或多个服务器和一个或多个存储设备提供虚拟存储服务。例如,在交互307期间,虚拟存储服务135可以将文件的经加密的元数据143存储在服务器131的安全区域141中。彼此耦合的服务器131和存储设备133提供虚拟存储服务135。

  在交互309期间,虚拟存储服务可以基于共享会话密钥来从客户端计算设备接收关于文件的经加密的查询。例如,在交互309期间,虚拟存储服务135可以基于共享会话密钥115来从客户端计算设备101接收关于文件117的经加密的查询138。

  在交互311期间,虚拟存储服务可以基于共享会话密钥对经加密的查询进行解密以获得查询。例如,在交互311期间,虚拟存储服务135可以基于共享会话密钥145对经加密的查询138进行解密以获得查询。

  在交互313期间,虚拟存储服务可以基于该查询来搜索存储在一个或多个服务器上的文件的经加密的元数据。例如,在交互313期间,虚拟存储服务135可以基于该查询来搜索存储在服务器131上的文件的经加密的元数据143。

  在交互315期间,虚拟存储服务可以基于对存储的文件的经加密的元数据执行的搜索来确定存储在一个或多个存储设备中的经加密的文件。例如,在交互315期间,虚拟存储服务135可以基于对存储的文件的经加密的元数据143执行的搜索来确定存储在存储设备133中的经加密的文件147。

  在交互317期间,虚拟存储服务可以将所确定的经加密的文件发送到客户端计算设备。例如,在交互317期间,虚拟存储服务135可以将所确定的经加密的文件147发送到客户端计算设备101。

  图4图示出根据各实施例的用于客户端计算设备使用虚拟存储服务来存储文件和文件的元数据的示例过程400。在实施例中,过程400可以是在图1中由客户端计算设备101执行以使用虚拟存储服务来由存储虚拟存储服务135存储文件和文件的元数据的过程,或者可以是在图2中由客户端计算设备201执行以由虚拟存储服务235存储文件和文件的元数据的过程。

  过程400可始于交互401。在交互401期间,客户端计算设备可以生成经加密的文件,其中通过基于计算设备的私密密钥对文件进行加密来生成经加密的文件。例如,在交互401期间,客户端计算设备101可以生成经加密的文件,其中可以通过基于秘密密钥119对文件117进行加密来生成经加密的文件。

  在交互403期间,客户端计算设备可以生成文件的经加密的元数据,其中可以通过基于计算设备与虚拟存储服务之间的共享会话密钥对文件的元数据进行加密来生成文件的经加密的元数据,并且其中彼此耦合的一个或多个服务器和一个或多个存储设备提供虚拟存储服务。例如,在交互403期间,客户端计算设备101可以生成文件的经加密的元数据,其中可以通过基于客户端计算设备101与虚拟存储服务135之间的共享会话密钥115对文件的元数据113进行加密来生成文件的经加密的元数据。

  在交互405期间,客户端计算设备可以将经加密的文件和文件的经加密的元数据发送到虚拟存储服务,其中经加密的文件由虚拟存储服务接收并存储在一个或多个存储设备中,而文件的经加密的元数据存储在一个或多个服务器的一个或多个安全区域中。例如,在交互405期间,客户端计算设备101可以将经加密的文件和文件的经加密的元数据发送到虚拟存储服务135。经加密的文件147可以由虚拟存储服务135接收并且存储在存储设备133中,而文件的经加密的元数据143可以存储在服务器131的安全区域141中。

  在交互407期间,客户端计算设备可以生成关于文件的查询。例如,在交互407期间,客户端计算设备101可以生成查询118以查询文件117。

  在交互409期间,客户端计算设备可以基于共享会话密钥对查询进行加密以获得经加密的查询。例如,在交互409期间,客户端计算设备101可以基于共享会话密钥115对查询118进行加密以获得经加密的查询。

  在交互411期间,客户端计算设备可以将经加密的查询发送到虚拟存储服务,其中虚拟存储服务基于共享会话密钥对经加密的查询进行解密以获得查询,并基于该查询来搜索存储的文件的经加密的元数据。例如,在交互411期间,客户端计算设备101可以将经加密的查询发送到虚拟存储服务135。虚拟存储服务135可以基于共享会话密钥145对经加密的查询138进行解密以获得查询,并且基于该查询来搜索存储的文件的经加密的元数据143。

  在交互413期间,客户端计算设备可以从虚拟存储服务接收相对应的经加密的文件,其中,由虚拟存储服务响应于经加密的查询来确定相对应的经加密的文件。例如,在交互413期间,客户端计算设备101可以从虚拟存储服务135接收相对应的经加密的文件147,其中可以由虚拟存储服务135基于经加密的查询138来确定相对应的经加密的文件147。

  图5例示出根据各实施例的适用于实施本公开的各方面的示例设备500。设备500可用于实现计算设备101、计算设备201、计算设备261或过程400的功能。此外,设备500可用于实现雾网络103、雾网络203或过程300的功能。

  如图所示,设备500可包括一个或多个处理器502,每个处理器具有一个或多个处理器核,或者以及任选地包括硬件加速器503(其可以是ASIC或FPGA)。在替代实施例中,硬件加速器503可以是处理器502的部分,或者被一起集成在SOC上。另外,设备500可包括主存储器设备504和数据存储电路系统508,主存储器设备504可以是许多已知的永久存储介质中的任何一个。另外,500可包括I/O接口电路系统518,该I/O接口电路系统518具有发送器523和接收器517,并且被耦合到一个或多个传感器514、显示设备513和输入设备521。此外,设备500可包括通信电路系统505,该通信电路系统505包括收发器(Tx)511和网络接口控制器(NIC)512。可经由系统总线516将这些元件彼此耦合,该系统总线516可表示一个或多个总线。在多个总线的情况下,可通过一个或多个总线桥(未示出)来桥接它们。

  在实施例中,当设备500可以实现计算设备时,存储508可包括文件557、文件的元数据553、共享会话密钥555和私密密钥559。在实施例中,文件557、文件的元数据553、共享会话密钥555和私密密钥559可以与如图1所示的文件117、文件的元数据113、共享会话密钥115和私密密钥119,如图2所示的文件217、文件的元数据213、共享会话密钥215和私密密钥219,如图2所示的文件277、文件的元数据273、共享会话密钥275和私密密钥279类似。(多个)处理器502可以与图1所示的处理器114、图2所示的处理器214或如图2所示的处理器274类似地执行功能。

  在实施例中,当设备500可以实现雾网络时,存储508可包括加密文件567,并且在处理器502的安全区域561中存储有加密的文件的元数据563。加密文件567、加密的文件的元数据563和安全区域561可以与图1中所示的加密文件147、加密的文件的元数据143和安全区域141类似,或者与图2中所示的加密文件247、加密的文件的元数据243和安全区域241类似。

  在实施例中,(多个)处理器502(也被称为“处理器电路系统502”)可以是被配置成用于通过执行指令来执行基本算数、逻辑和输入/输出操作的一个或多个处理元件。处理器电路系统502可被实现为独立系统/设备/封装,或者被实现为现有系统/设备/封装的部分。处理器电路系统502可以是一个或多个微处理器、一个或多个单核处理器、一个或多个多核处理器、一个或多个多线程处理器、一个或多个GPU、一个或多个超低电压处理器、一个或多个嵌入式处理器、一个或多个DSP、一个或多个FPD(硬件加速器)(诸如FPGA、结构化ASIC、可编程SoC(PSoC)等)、和/或其他处理器或处理/控制电路。处理器电路系统502可以是SoC的部分,其中处理器电路系统502和本文中所讨论的其他组件在该SOC中被形成为单个IC或单个封装。作为示例,处理器电路系统502可包括一个或多个(多个)酷睿(Core)处理器;超微半导体(AMD)加速处理单元(APU)处理器;(多个)苹果公司A系列、S系列、W系列等处理器;(多个)处理器;(多个)处理器;和/或类似处理器。

  在实施例中,I/O接口电路系统518可包括传感器中枢,该传感器中枢可通过处理从一个或多个传感器514获取的数据而充当协处理器。传感器中枢可包括被配置成用于通过执行算术、逻辑和输入/输出操作来集成从一个或多个传感器514中的每个传感器获取的数据的电路系统。在实施例中,传感器中枢可以能够:对所获取的传感器数据加时间戳、响应于对传感器数据的查询而将此类数据提供给处理器电路系统502、缓冲传感器数据、将传感器数据连续地流送到处理器电路系统502(包括用于一个或多个传感器514中的每个传感器的独立流)、基于预定义的阈值或条件/触发器来报告传感器数据,和/或其他类似的数据处理功能。

  在实施例中,存储器504(也被称为“存储器电路系统504”等)可以是被配置成用于存储用于操作计算机设备500的数据或逻辑的电路系统。存储器电路系统504可包括可用于提供给定数量的系统存储器的数个存储器设备。例如,存储器电路系统504可以是任何合适类型、数量的能以如已知的任何合适的实现方式配置的易失性存储器设备(例如,随机存取存储器(RAM)、动态RAM(DRAM)、静态RAM(SAM)等)和/或非易失性存储器设备(例如,只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、反熔丝等)和/或这些存储器设备的组合。在各实现方式中,各个存储器设备可由任何数量的不同封装类型形成,这些不同的封装类型诸如单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(Q17P),双列直插式存储器模块(DIMM)(诸如微DIMM或微型DIMM)和/或任何其他类似的存储器设备。为了提供诸如数据、应用、操作系统等等之类的信息的持久性存储,存储器电路系统504可包括:一个或多个大容量存储设备,诸如固态盘驱动器(SSDD);闪存卡(诸如SD卡、微SD卡、xD图片卡等)以及USB闪存驱动器;与处理器电路系统502相关联的管芯上存储器或寄存器(例如,在低功率实现方式中);微硬盘驱动器(HDD);来自三维交叉点(3D XPOINT)存储器等。

  在使用FPD的情况下,处理器电路系统502和存储器电路系统504(和/或数据存储电路系统508)可包括逻辑块或逻辑构造、存储器单元、输入/输出(I/O)块、以及可被编程为用于执行本文中所讨论的示例实施例的各种功能的其他互连的资源。存储器单元可用于将数据存储在由处理器电路系统502使用的查找表(LUT)中,以实现各种逻辑功能。存储器单元可包括各级别的存储器/存储的任何组合,包括但不限于EPROM、EEPROM、闪存、SRAM、反熔丝等。

  在实施例中,具有共享或相应控制器的数据存储电路系统508(也被称为“存储电路系统508”等)可提供信息、操作系统等的持久性存储。数据存储电路系统508可被实现为:固态驱动器(SSD);固态硬盘驱动器(SSDD);串行AT附件(SATA)存储设备(例如,SATA SSD);闪存驱动器;闪存卡(诸如SD卡、微SD卡、xD图片卡等)以及USB闪存驱动器;三维交叉点(3DXpoint)存储器设备;与处理器电路系统502相关联的管芯上存储器或寄存器;硬盘驱动器(HDD);微HDD;阻变存储器;相变存储器;全息图存储器;或化学存储器等等。如图所示,数据存储电路系统508被包括在计算机设备500中;然而,在其他实施例中,数据存储电路系统508可被实现为与计算机设备500的其他元件分开的一个或多个设备。

  在一些实施例中,数据存储电路系统508可包括操作系统(OS)(未示出),该操作系统可以是通用操作系统或者专门为计算机设备500编写和定制的操作系统。OS可包括一个或多个驱动程序、库和/或应用程序编程接口(API),其提供程序代码和/或软件组件,和/或控制系统配置以控制和/或获取/处理来自一个或多个传感器514的数据。

  计算机设备500的组件可通过总线516彼此通信。总线516可包括任何数量的技术,诸如本地互连网络(LIN);工业标准架构(ISA);扩展ISA(EISA);PCI;扩展的PCI(PCIx);PCIe;内部集成电路(I2C)总线;并行小型计算机系统接口(SPI)总线;通用应用编程接口(CAPI);点对点接口;功率总线;专有总线,例如,超路径接口(UPI)、加速器链路(IAL)或在基于SoC的接口中使用的某一其他专有总线;或任何数量的其他技术。在一些实施例中,总线516可以是控制器区域网络(CAN)总线系统、时间触发协议(TTP)系统或FlexRay系统,其可允许各种设备(例如,一个或多个传感器514等)使用消息或帧来彼此通信。

  通信电路系统505可包括用于与无线网络或有线网络进行通信的电路系统。例如,通信电路系统505可包括收发器(Tx)511和网络接口控制器(NIC)512。通信电路系统505可包括专用于特定无线通信协议的一个或多个处理器(例如,基带处理器、调制解调器等)。

  可包括NIC 512以提供到网络和/或其他设备的有线通信链接。有线通信可提供以太网连接、USB上的以太网和/或类似物,或者可基于其他类型的网络,诸如,设备网(DeviceNet)、控制网(ControlNet)、数据高速公路+(Data Highway+)、现场总线(PROFIBUS)或工业以太网(PROFINET)等等。可包括附加NIC 512以允许连接到第二网络(未示出)或其他设备,例如,提供通过以太网到网络150的通信的第一NIC 512和提供通过另一类型的网络到其他设备的通信的第二NIC 512,该另一类型的网络诸如包括个人计算机(PC)设备的个域网(PAN)。在一些实施例中,设备500的各组件(诸如一个或多个传感器514等)可经由如以上所讨论的NIC 512而不是经由下面讨论的I/O接口电路系统518连接到(多个)处理器502。

  Tx 511可包括一个或多个无线电,以与网络和/或其他设备无线地通信。Tx 511可包括硬件设备,这些硬件设备使用经调制的电磁辐射通过固体或非固体介质来启用与有线网络和/或其他设备的通信。此类硬件设备可包括交换机、滤波器、放大器、天线元件等等,以便通过生成或以其他方式产生无线电波以将数据传送到一个或多个其他设备并且将所接收的信号转换为可使用的信息(诸如可被提供给计算机设备500的一个或多个其他组件的数字数据)来促进空中(OTA)通信。在一些实施例中,设备500的各组件(诸如一个或多个传感器514等)可经由如以上所讨论的Tx 511而不是经由下面讨论的I/O接口电路系统518连接到设备500。在一个示例中,一个或多个传感器514可经由短程通信协议与设备500耦合。

  Tx511可包括与任何数量的3GPP(第三代合作伙伴计划)规范、特别是长期演进(LTE)、长期演进高级(LTE-A)、长期演进高级专业版(LTE-A Pro)和第五代(5G)新无线电(NR)规范兼容的一个或多个无线电。可以注意到,可选择与任何数量的其他固定的、移动的或卫星通信技术和标准兼容的无线电。这些可包括例如任何蜂窝广域无线电通信技术,其可包括例如,5G通信系统、全球移动通信系统(GSM)无线电通信技术、通用分组无线电服务(GPRS)无线电通信技术、或GSM演进增强数据速率(EDGE)无线电通信技术。可使用的其他第三代合作伙伴计划(3GPP)无线电通信技术包括UMTS(通用移动电信系统)、FOMA(多媒体接入自由)、3GPP LTE(长期演进)、3GPP LTE高级(长期演进高级)、3GPP LTE Advanced Pro(长期演进高级专业版)、CDMA2000(码分多址2000)、CDPD(蜂窝数字分组数据)、流动电文(Mobitex)、3G(第三代)、CSD(电路交换数据)、HSCSD(高速电路交换数据)、UMTS(3G)(通用移动电信系统(第三代))、W-CDMA(UMTS)(宽带码分多址(通用移动电信系统))、HSPA(高速分组接入)、HSDPA(高速下行链路分组接入)、HSUPA(高速上行链路分组接入)、HSPA+(高速分组接入加)、UMTS-TDD(通用移动电信系统-时分双工)、TD-CDMA(时分-码分多址)、TD-SCDMA(时分-同步码分多址)、3GPP Rel.8(Pre-4G)(Pre-4G)(第3代合作伙伴计划第8版(前-第4代))、3GPP Rel.9(第三代合作伙伴计划第9版)、3GPP Rel.10(第三代合作伙伴计划第10版)、3GPP Rel.11(第三代合作伙伴计划第11版)、3GPP Rel.12(第三代合作伙伴计划第12版)、3GPP Rel.13(第三代合作伙伴计划第13版)、3GPP Rel.14(第三代合作伙伴计划第14版)、3GPP LTE额外、LTE许可辅助接入(LAA)、UTRA(UMTS陆地无线电接入)、E-UTRA(演进UMTS陆地无线电接入)、LTE高级(4G)(长期演进高级(第4代))、cdmaOne(移动通信标准)(2G)、CDMA2000(3G)(码分多址2000(第三代))、EV-DO(演进数据优化或仅演进数据)、AMPS(1G)(高级移动电话系统(第1代))、TACS/ETACS(总接入通信系统/扩展总接入通信系统)、D-AMPS(2G)(数字AMPS(第2代))、PTT(按键通话)、MTS(移动电话系统)、IMTS(改进的移动电话系统)、AMTS(高级移动电话系统)、OLT(挪威语对应于Offentlig LandmobilTelefoni,公共陆地移动电话)、MTD(Mobiltelefonisystem D,或Mobile telephonysystem D的瑞典语缩写)、Autotel/PALM(公共自动陆地移动)、ARP(芬兰语为Autoradiopuhelin,“汽车无线电话”)、NMT(北欧的移动电话)、Hicap(NTT(日本电报和电话)的高容量版本)、CDPD(蜂窝数字分组数据)、流动电文(Mobitex)、DataTAC、iDEN(集成数字增强网络)、PDC(个人数字蜂窝)、CSD(电路交换数据)、PHS(个人手持电话系统)、WiDEN(宽带集成数字增强网络)、iBurst、非许可移动接入(UMA,也称为3GPP通用接入网络,或GAN标准))、无线千兆联盟(WiGig)标准、mmWave一般标准(无线系统在10-90GHz及以上运行,例如WiGig、IEEE 802.11ad、IEEE 802.11ay等)等。除以上所列举的标准之外,还可使用任何数量的卫星上行链路技术用于上行链路收发器,该卫星上行链路技术包括例如符合ITU(国际电信联盟)或ETSI(欧洲电信标准协会)发布的标准的无线电等等。本文中所提供的示例因此可被理解为适用于各种现有的和尚未制定的各种其他通信技术。前述协议的实现方式、组件和细节可以是本领域中已知的那些,并且为了简洁起见在本文中省略。

  输入/输出(I/O)接口电路系统518可包括用于将计算机设备500与外部组件/设备(诸如一个或多个传感器514等)连接的电路系统,诸如外部扩展总线(例如,通用串行总线(USB)、火线、雷电接口(Thunderbolt)、PCI/PCIe/PCIx等)。I/O接口电路系统518可包括任何合适的接口控制器和连接器,以使得处理器电路系统502、存储器电路系统504、数据存储电路系统508、通信电路系统505以及计算设备500的其他组件中的一者或多者互连。接口控制器可包括但不限于,存储器控制器、存储控制器(例如,独立磁盘冗余阵列(RAID)控制器、基板管理控制器(BMC))、输入/输出控制器、主机控制器等。连接器可包括例如总线(例如,总线516)、端口、插槽、跳线、互连模块、插口、模块化连接器等。I/O接口电路系统518可经由有线连接(诸如使用USB、火线、雷电接口、RCA、视频图形阵列(VGA)、数字视觉接口(DVI)和/或微型DVI、高清多媒体接口(HDMI)、S视频和/或类似的有线连接)将设备500与一个或多个传感器514等耦合。

  一个或多个传感器514可以是被配置成用于检测事件或环境改变、将所检测到的事件转换为电信号和/或数字信号、以及将这些信号/数据传送/发送到计算机设备500的任何设备。一个或多个传感器514中的一些可以是用于提供计算机生成的传感输入的传感器。一个或多个传感器514中的一些可以是用于运动和/或对象检测的传感器。此类一个或多个传感器514的示例可尤其包括电荷耦合设备(CCD)、互补金属氧化物半导体(CMOS)有源像素传感器(APS)、无透镜图像捕捉设备/相机、热成像(红外)相机、光成像检测和测距(LIDAR)系统和/或类似物。在一些实现方式中,一个或多个传感器514可包括无透镜图像捕捉机构,该无透镜图像捕捉机构包括孔元件阵列,其中穿过孔元件阵列的光限定图像的像素。在实施例中,运动检测一个或多个传感器514可与例如一个或多个红外投影仪之类的光生成设备耦合或与其相关联,以将红外光网格投射到场景上,其中,红外相机可记录所反射的红外光以计算深度信息。

  一个或多个传感器514中的一些可用于定位和/或定向检测、周围/环境状况检测等等。此类一个或多个传感器514的示例可尤其包括具有压电、压阻和/或电容组件的微机电系统(MEMS),该MEMS可用于确定与计算机设备500相关的环境状况或位置信息。在实施例中,MEMS可包括3轴加速度计、3轴陀螺仪和/或磁力计。在一些实施例中,一个或多个传感器514还可包括一个或多个重力计、高度计、气压计、接近度传感器(例如,(多个)红外辐射检测器等等)、深度传感器、环境光传感器、热传感器(温度计)、超声收发器和/或类似传感器。

  这些元件中(例如,一个或多个处理器502、硬件加速器503、存储器504、数据存储电路系统508、输入/输出接口电路系统518、一个或多个传感器514、包括Tx 511和NIC 512的通信电路系统505、以及系统总线516)的每一个可执行其在本领域中已知的常规功能。另外,它们可被用于存储和主持编程指令的执行(例如,经由存储器508、主存储器设备504和(多个)处理器502),该编程指令实现与操作系统以及一个或多个应用(例如,人工智能应用的神经网络)相关联的操作。可通过由(多个)处理器502支持的汇编指令或可编译成此类指令的高级语言(诸如例如,C)来实现操作系统和/或应用。与未在软件中实现的设备500相关联的操作可在硬件中实现,例如,经由硬件加速器503来实现。

  这些元件502-567的数量、能力和/或容量可根据设备500被配置成支持的其他设备的数量而变化。在其他方面,元件502-567的构成是已知的,并相应地将不作进一步描述。

  如本领域技术人员将领会的那样,本公开可被具体化为方法或计算机程序产品。相应地,除了以如之前所描述的硬件具体化之外,本公开可以采取完全软件实施例(包括固件、驻留软件、微代码等)或结合硬件与软件方面的实施例的形式,它们一般全部可称为“电路”、“模块”或“系统”。

  此外,本公开可采取计算机程序产品的形式,该计算机程序产品具体化在表达的任何有形的或非暂态介质中,该表达具有具体化在介质中的计算机可用的程序代码。图6图示出示例计算机可读非暂态存储介质,其可适合用于存储指令,响应于由装置或计算设备对这些指令的执行,这些指令使该装置或计算设备实施本公开的所选择的多个方面。如所示,非暂态计算机可读存储介质602可包括数条编程指令604。编程指令604可以被配置为响应于编程指令的执行而使设备(例如,设备500,具体地,(多个)处理器502)能够执行例如与包括一个或多个服务器的计算基础设施相关联的各种操作以为客户端计算设备提供用于存储文件和该文件的元数据的虚拟存储服务,该一个或多个服务器耦合到一个或多个存储设备,如图1-5所示。

  在替代实施例中,相反,可将这些编程指令604设置在多个计算机可读的非暂态存储介质602上。在替代实施例中,编程指令604可设置在计算机可读暂态存储介质602(诸如信号)上。可以利用一种或多种计算机可用或计算机可读介质的任何组合。计算机可用或计算机可读介质例如可以是但不限于,电子、磁、光、电磁、红外或半导体系统、装置、设备或传播介质。计算机可读介质的更具体的示例(非完全列表)将包括下述项:具有一条或多条线的电连接件、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储设备、诸如支持互联网或内联网的传输介质的传输介质、或磁存储设备。注意,该计算机可用或计算机可读介质甚至可以是纸或另一合适介质,在该介质上印刷有程序,因为可以经由例如对该纸或其他介质进行光学扫描来电子地捕捉该程序,然后在必要的情况下以合适的方式编译、解释或以其他方式处理该程序,并且随后将其存储在计算机存储器中。在本文档的上下文中,计算机可用或计算机可读介质可以是包含、存储、传递、传播、或传输用于由指令执行系统、装置或设备使用的或结合指令执行系统、装置或设备一起使用的程序的任何介质。计算机可用介质可包括所传播的数据信号,该数据信号在带内或作为载波的部分具有伴随其而具体化的计算机可用程序代码。可使用任何适当的介质来传送计算机可用程序代码,适当的介质包括但不限于无线、线缆、光纤电缆、射频等。

  能以一种或多种编程语言的任何组合来编写用于实施本公开的操作的计算机程序代码,这些编程语言包括:面向对象的编程语言,诸如Java、Smalltalk、C++等等;以及常规过程编程语言,诸如“C”编程语言或类似的编程语言。程序代码可完全在用户的计算机上执行,可部分地在用户的计算机上执行,可作为独立的软件包执行,可部分地在用于的计算机上且部分地在远程计算机上执行,或者可完全在远程计算机或服务器上执行。在后一场景中,可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))将远程计算机连接到用户的计算机,或可(例如,使用互联网服务提供商通过互联网)建立到外部计算机的连接。

  参照根据本公开的多个实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或框图描述了本公开。将理解,可以由计算机程序指令来实现流程图图示和/或框图的每个框以及流程图图示和/或框图中的框的组合。可将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器来生产机器,使得经由计算机或其他可编程数据处理装置的处理器执行的这些指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。

  也可将这些计算机程序指令存储在可指示计算机或其他可编程数据处理装置按特定方式运作的计算机可读介质中,使得该计算机可读介质中所存储的这些指令生产制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的指令装置。

  也可将计算机程序指令加载到计算机或其他可编程数据处理装置上以使一系列操作步骤在该计算机或其他可编程装置上被执行从而产生计算机实现的过程,使得在该计算机或其他可编程装置上执行的这些指令提供用于实现流程图和/或框图的一个或多个框中指定的功能/动作的过程。

  附图中的流程图和框图图示出根据本公开的各实施例的系统、方法和计算机程序产品的可能的实现方式的架构、功能和操作。在该方面中,流程图或框图中的每个框可表示包括用于实现指定的(多个)逻辑功能的一条或多条可执行指令的模块、代码段或代码的部分。应当注意,在一些替代实现方式中,框中所标注的功能可不按图中所标注的次序发生。例如,取决于所涉及的功能,实际上,可基本上同时地执行连续地示出的两个框,或者有时可按相反的次序来执行这些框。也将注意,可以由执行指定的功能或动作的基于专用硬件的系统或专用硬件和计算机指令的组合来实现框图和/或流程图图示中的每个框以及框图和/或流程图图示中的框的组合。如在本文中所使用,“计算机实现的方法”可以指由以下各项执行的任何方法:一个或多个处理器、具有一个或多个处理器的计算机系统、移动设备(诸如智能电话(其可以包括一个或多个处理器))、平板计算机、膝上型计算机、机顶盒、游戏控制台等。

  可将实施例实现为计算机进程、计算系统,或者实现为制品(诸如计算机可读介质的计算机程序产品)。计算机程序产品可以是计算机存储介质,该计算机存储介质可由计算机系统读取并对计算机程序指令编码以执行计算机进程。

  所附权利要求书中的所有装置或步骤以及功能元件的对应的结构、材料、动作及等效物旨在包括与具体地要求保护的其他要求保护的元件组合执行功能的任何结构、材料或动作。已出于说明和描述的目的呈现了本公开的描述,但是该描述不旨在是穷举性的,也不限于按所公开形式的本公开。在不背离本公开的范围和精神的情况下,许多修改和变型对普通技术人员将是显而易见的。选择并描述实施例,以便最好地解释本公开的原理和实际应用,并且以便使其他本领域普通技术人员能够理解对适用于所构想的特定使用的各种修改的实施例的公开。

  图7图示出根据各实施例的布置,其示出可以存在于网络(例如,互联网700)与物联网(IoT)网络之间以提供虚拟存储服务(例如,图1中所示的虚拟存储服务135、图2中所示的虚拟存储服务235)的互连。互连可将较小的网络702(小到单独的IoT设备704)耦合至互联网700的光纤主干706。为了简化该图,并非每一个设备704或其他对象都被标记。单独的IoT设备704可以与图1中客户端计算设备101、或者图2中客户端计算设备201类似,而网络(例如,网络702、光纤主干706、或互联网700)可以与图1中雾网络103或云105、或者图2中雾网络203或云205类似。

  IoT是这样的概念,其中,大量计算设备互连至彼此并互连至互联网,以在非常低的级别上提供功能和数据采集。本文中所使用,IoT设备可包括执行功能(诸如感测或控制,等等)、与其他IoT设备和范围更广的网络(诸如互联网)进行通信的半自主设备。IoT设备常在存储器、尺寸或功能方面受限,从而允许部署较大数量的IoT设备,以实现与较少数量的较大设备类似的成本。然而,IoT设备可以是智能电话、膝上型计算机、平板、或PC、或其他较大的设备。进一步地,IoT设备可以是虚拟设备,诸如智能电话或其他计算设备上的应用。IoT设备可包括IoT网关,这些IoT网关用于将IoT设备耦合至其他IoT设备并耦合至云应用,以进行数据存储、过程控制,等等。

  IoT设备的网络可包括商用和家用自动化设备,诸如给水系统、配电系统、管道控制系统、工厂控制系统、灯开关、恒温器、锁、相机、警报、运动传感器等。IoT设备可以是通过远程计算机、服务器和其他系统可访问的,从而例如控制系统或访问数据。

  互联网的未来增长可涉及非常大量的IoT设备。相应地,如本文所描述的,用于未来互联网的大量创新解决了所有这些层无障碍地增长、发现并制造能访问的经连接资源以及支持隐藏并划分所连接资源的能力的需求。可使用任何数量的网络协议和通信标准,其中,每种协议和标准被设计成解决特定的目标。此外,协议是支持无论地点、时间或空间而进行操作的人类能访问服务的结构的部分。这些创新包括服务交付和相关联的基础设施(诸如硬件和软件)。可根据在服务水平和服务交付协议中指定的服务质量(QoS)条款来提供服务。IoT设备和网络的使用在连接性的异构网络(包括图1-图7中描绘的有线和无线技术的组合)中呈现出数个新的挑战。

  在图7中,顶层级提供者(其可被称为层1提供者708)通过互联网的光纤主干耦合至其他提供者(诸如次级或层2提供者710)。在一个示例中,层2提供者710可例如通过进一步的光纤链路、通过微波通信714或通过其他通信技术耦合至LTE蜂窝网络的塔712。塔712可通过LTE通信链路716、例如通过中央节点718耦合至包括IoT设备704的网状网络。各个IoT设备704之间的通信也可基于LTE通信链路716。在另一示例中,高速上行链路720可将层2提供者710耦合至网关(GW)720。数个IoT设备704可与GW 720进行通信,并且可通过GW 720(例如通过低能量(BLE)链路722)彼此通信,其中BLE是特殊兴趣组定义的标准。

  光纤主干706可将较低层级的服务提供者(诸如层3提供者724)耦合至互联网。层3提供者724可被认为是例如从层2服务提供者购买到光纤主干710的访问并将将访问提供给企业GW 726和其他消费者的一般互联网服务提供商(ISP)。从企业GW 726,可以使用无线局域网(WLAN)通过链路728与IoT设备704进行通信。Wi-Fi链路728还可被用来耦合至低功率广域(LPWA)GW 730,该低功率广域(LPWA)GW 730可以通过LPWA链路732(例如,与由LoRa联盟颁布的LoRaWAN规范兼容)与IoT设备704进行通信。

  层3提供者724还可通过协调器设备736提供对网状网络734的访问,协调器设备736使用任何数量的通信链路与层3提供者724进行通信,这些通信链路诸如LTE蜂窝链路、LPWA链路、或基于IEEE 802.15.4标准(诸如,)的链路738。其他协调器设备736可提供形成链接的设备的集群树的链路链。

  IoT设备704可以是任何对象、设备、传感器、或“物”,这些对象、设备、传感器、或“物”与使得这些对象、设备、传感器、或“物”能够捕捉和/或记录与事件相关联的数据并且能够在很少的用户干预或没有用户干预的情况下通过网络向一个或多个其他设备传达此类数据的硬件和/或软件组件一起被嵌入。例如,在各实施例中,IoT设备704可以是非生物设备,诸如自主传感器、计量器、仪表、图像捕捉设备、话筒、机器型通信(MTC)设备、机器对机器(M2M)设备、发光设备、发声设备、音频和/或视频回放设备、机电设备(例如,开关、致动器等)等。在一些实施例中,IoT设备704可以是生物设备,诸如监测植入物、生物传感器、生物芯片等。在其他实施例中,IoT设备704可以是嵌入在计算机系统中并与计算机系统的通信电路系统耦合的计算机设备。在此类实施例中,IoT设备704可以是片上系统(SoC)、通用集成电路系统卡(UICC)、嵌入式UICC(eUICC)等,而计算机系统可以是移动站(例如,智能手机)或用户装备、膝上型PC、可穿戴设备(例如,智能手表、健身追踪器等)、“智能”装置(例如,电视、冰箱、安全系统等)等。

  IoT设备704的每一个可以包括一个或多个存储器设备以及一个或多个处理器以捕捉和存储/记录数据。IoT设备704中的每一个可以包括适当的通信电路系统(例如,(多个)收发器、调制解调器、天线元件等),以传递(例如,发送和接收)所捕捉和被存储/被记录的数据。进一步地,每个IoT设备704可包括用于使用附加的协议和频率进行通信的其他收发器。根据各实施例,IoT设备704可以装备有信息(例如,在本文中称为“调制解调器配置文件”),以将可配置的通信电路系统配置成在相对应的通信中执行通信。这可以允许IoT设备704使用多个无线通信协议进行通信,而无需IoT设备704包括针对每个无线通信协议的单独的硬件通信模块。无线通信协议可以是由IoT设备704实施以与其他设备通信的任何合适的标准化规则或指令集,包括用于对数据进行打包/拆包的指令、用于对信号进行调制/解调的指令、用于协议栈的实现方式的指令等。例如,IoT设备704可以包括通信电路系统,该通信电路系统可配置为根据一个或多个人对人(P2P)或个域网(PAN)协议(例如,基于IEEE802.15.4的协议,包括ZigBee、通过低功率无线个域网的IPv6(6LoWPAN)、WirelessHART、MiWi、Thread等;WiFi direct(WiFi直连);蓝牙/BLE协议;ANT协议;Z-波;LTE D2D或ProSe(邻近服务);UPnP等)通信;可配置为使用一种或多种LAN和/或WLAN协议(例如,基于Wi-Fi的协议或IEEE802.11协议,诸如IEEE 802.16协议)、一种或多种蜂窝通信协议(例如,LTE/LTE-A、UMTS、GSM、EDGE、Wi-MAX等)进行通信等等。在实施例中,塔712、GW720、GW 726和GW 730、协调器设备736等中的一个或多个也可以与本文所描述的实施例合并,具体地参考图1-6。

  技术和网络可实现设备和网络的指数级增长。随着技术增长,可在无需直接的人类干预的情况下开发网络以供进行自管理、功能进化和协同。因此,技术将使得网络在没有集中式控制系统的情况下起作用。本文中所描述的技术可超越当前能力使网络管理和操作功能自动化。

  图8图示出根据各实施例的IoT网络的示例域拓扑800,其通过主干链路802耦合到GW 804,以提供虚拟存储服务(例如,图1所示的虚拟存储服务135、图2所示的虚拟存储服务235)。类似标记的项如关于图7所描述。进一步地,为了简化该图,不是每一个设备704或通信链路716、722、728或732都被标记。主干链路802可包括任何数量的有线或无线技术,并且可以是局域网(LAN)、广域网(WAN)或互联网的部分。类似于图7,在实施例中,IoT设备704、GW 804等中的一个或多个可以与本文所描述的实施例合并。单独的IoT设备704可以类似于图1中的客户端计算设备101、或者图2中的客户端计算设备201,而GW 804可以类似于图1中的网关151、或者图2中的网关251。

  网络拓扑800可包括任何数量的多种类型的IoT网络,诸如使用BLE链路722的网状网络806。其他IoT网络可被呈现为包括WLAN网络808、蜂窝网络810以及LPWA网络812。如本文中所描述,这些IoT网络中的每一个都可为新的开发提供机会。例如,IoT设备704之间的(诸如,通过主干链路802的)通信可受分散式系统保护以用于认证、授权和记账(AAA)。在分散式AAA系统中,可跨互连的异构基础设施实现分布式支付、信贷、审计、授权和认证系统。这允许系统和网络迈向自主操作。

  在这些类型的自主操作中,机器甚至可订立人力资源合约,并且与其他机器网络协商伙伴关系。这可允许针对概括的计划服务水平协议实现共同目标和均衡的服务交付,并且实现提供计量、测量、可追溯性和可跟踪性的解决方案。新供应链结构和方法的产生可在没有任何人类参与的情况下使大量服务能够被产生,被挖掘价值以及坍塌。

  IoT网络可进一步通过将感测技术(诸如声、光、电子通信量、面部和模式识别、嗅觉、振动)集成到自主组织中而进一步被增强。对传感系统的集成可允许对于针对合同服务目标、基于编排和服务质量(QoS)的分群以及资源融合的服务交付的系统性和自主的通信和协调。

  网状网络806可由执行串联式数据-信息变换的系统来增强。例如,包括多链路网络的处理资源的自形成的链能以高效的方式分布原始数据向信息的变换、在资产和资源之间进行区分的能力以及对每一者的相关联的管理。此外,可插入基于基础设施和资源的恰当组件的信任和服务索引以改善数据完整性、质量、保证,并递送数据置信度的度量。

  WLAN网络808可使用执行标准转换的系统以提供多标准连接性,从而实现使用不同协议进行通信的IoT设备704。进一步的系统可提供跨多标准基础设施的无缝的互连接性,该多标准基础设施包括可见的互联网资源和隐藏的互联网资源。

  蜂窝网络810中的通信可由卸载数据的系统、将通信延伸至更远程的设备的系统或卸载数据的系统和将通信延伸至更远程的设备的系统两者来增强。LPWA网络812可包括执行非网际(IP)至IP互连、寻址和路由的系统。

  图9图示出根据各实施例的与多个IoT设备通信以提供虚拟存储服务(例如,图1所示的虚拟存储服务135、图2所示的虚拟存储服务235)的云计算网络或云的示例布置900。云902可表示互联网、一个或多个蜂窝网络、局域网(LAN)或广域网(WAN)(包括用于公司或组织的专用和/或企业网络)、或其组合。用于此类通信系统的组件可以至少部分地取决于所选的网络和/或环境的类型。用于经由此类网络进行通信的协议和组件是已知的,本文中将不详细地讨论。然而,应当理解,云902可与拥有或控制提供网络相关服务所必需的装备和其他元件(诸如一个或多个基站或接入点、用于路由数字数据或电话呼叫的一个或多个服务器(例如,核心网络或主干网络))的网络运营商相关联。

  图9中IoT设备可以与参考图7-图8所讨论的IoT设备704相同或类似。单独的IoT设备704可以与图1中的客户端计算设备101或图2中的客户端计算设备201类似,而云902可以与图1中的云105或图2中的云205类似。

  IoT设备可包括以各种组合(诸如IoT群组906)分组的任何数量的不同类型的设备,这些设备可包括为特定用户、消费者、组织等提供一个或多个服务的IoT设备。服务提供商可将IoT设备以IoT群组906部署到特定区域(例如,地理位置、建筑物等),以便提供一个或多个服务。在一个示例中,IoT群组906可以是交通控制组,其中IoT群组906中的IoT设备可以包括停车灯、交通流监测器、相机、天气传感器等,以为特定市政当局或其他类似实体提供交通控制和交通分析服务。类似于图7-图8,在实施例中,IoT设备914-924、GW 910等中的一个或多个可以与本文所描述的各种实施例合并,具体地参考图1-7。例如,在一些实施例中,IoT群组906或本文讨论的任何IoT群组可以包括关于图1-7讨论的组件、设备、系统。

  IoT群组906或其他子组可通过无线链路908(诸如LPWA链路等等)与云902通信。进一步地,有线或无线子网912可允许IoT设备诸如通过局域网、无线局域网等等来彼此通信。IoT设备可使用另一设备(诸如GW 910)来与云902进行通信。IoT设备的其他组可包括远程气象站914、本地信息终端916、警报系统918、自动化柜员机920、警报面板922或移动车辆(诸如,应急车辆924或其他车辆926),等等。这些IoT设备中的每一个可以与其他IoT设备、与服务器904或两者进行通信。

  如从图9可见,大量IoT设备可通过云902进行通信。这可允许不同的IoT设备自主地请求信息或将信息提供给其他设备。例如,IoT群组906可从能在没有人类干预的情况下提供预报的远程气象站组914请求当前的天气预报。进一步地,可由自动化柜员机920向应急车辆924警告盗窃在进行中。当应急车辆924朝自动化柜员机920行进时,它可访问交通控制组906以请求清空该位置,例如,通过在足够的时间内亮起红灯以阻止交叉路口处的交叉交通流,以使应急车辆924能够畅通无阻地进入该交叉路口。

  在另一个示例中,IoT群组906可以是工业控制组(也称为“连接工厂”、“工业4.0”组等),其中IoT群组906中的IoT设备可以包括制造厂内具有嵌入式IoT设备、射频识别(RFID)读取器、相机、客户端计算机设备等的机器或装置,以为特定制造商或工厂运营商提供生产控制、自我优化或分散式任务管理服务、分析服务等。在此示例中,IoT群组906可经由GW 910和云902与服务器904通信以提供捕捉的数据,该捕捉的数据可用于向制造商或工厂运营商提供性能监测和分析。此外,IoT群组906中的IoT设备可以彼此通信,和/或与其他IoT群组的其他IoT设备通信,以自行做出决定并尽可能自主地执行其任务。

  IoT设备的集群(诸如,图9所绘的IoT群组)可被装备成与其他IoT设备以及与云902通信。这可允许IoT设备在多个设备之间形成自组织(ad-hoc)网络,从而允许它们充当单个设备,该单个设备可被称为雾设备。参考图10对这进行进一步讨论。

  图10图示出根据各实施例的与IoT设备或IoT雾的网状网络通信的云计算网络或云的布置1000,该云计算网络或云可以被称为雾设备1002,其在云902的边缘处操作以提供虚拟存储服务(例如,图1所示的虚拟存储服务135、图2所示的虚拟存储服务235)。类似标记的项如关于图7-图9所描述。在此示例中,雾设备1002是交叉路口处的IoT设备组。雾设备1002可根据OpenFog联盟(OFC)、开放连接性基金会TM(OCF)等等发布的规范来建立。雾网络1002可以与图1中的雾网络103、或者图2中的雾网络203类似。

  在实施例中,雾设备1002可以在云902的边缘处,但不限于在云902的边缘操作。在一些实施例中,在云902的边缘处操作的雾设备1002可以重叠或包含在云902的边缘网络中。在一些其他实施例中,云902的边缘网络可以与雾设备1002重叠,或成为雾设备1002的一部分。此外,雾设备1002可以是包括边缘层和雾层的边缘-雾网络。边缘-雾网络的边缘层包括松散耦合的、自愿性的、以及人类操作的资源(诸如台式机、膝上型计算机、数据中心、平板等)的集合。雾层驻留在边缘层之上,并且是具有用于在它们的原生架构上运行云应用逻辑的高计算性能和能力的联网设备(诸如,路由器和交换机)的合并。

  数据可被捕捉、被存储/被记录、并在IoT设备1004之间被传递。对通信量流的分析以及控制方案可由聚合器1006实现,该聚合器1006通过网状网络与IoT设备1004进行通信并且彼此通信。通过经由网状网络与IoT设备1004以及聚合器1006通信的GW 910,可将数据上传至云902,并且可从云902接收命令。类似于图7-9,在实施例中,IoT设备1004、聚合器1006等中的一个或多个可以与本文所描述的各种实施例合并,具体地参考图1-7。例如,在一些实施例中,雾设备1002或本文讨论的设备的分组中的任何设备可包括以下关于图1-7讨论的一个或多个组件、设备系统等。

  可在雾设备1002中使用任何数量的通信链路。例如,与IEEE 802.15.4兼容的短距链路1008可提供彼此邻近或邻近于其他设备的IoT设备之间的局部通信。例如,与LPWA标准兼容的长距链路1010可提供IoT设备与GW 910之间的通信。为了简化该图,并非每一个通信链路1008或1010都用附图标记进行标记。

  雾设备1002可被认为是大规模互连的网络,其中大量IoT设备例如通过通信链路1008及1010彼此通信。可使用由开放连接基金会TM(Open Connectivity FoundationTM,OCF)在2015年12月23日发布的开放互连联盟(open interconnect consortium,OIC)标准说明书1.0来建立该网络。该标准允许设备发现彼此并建立通信以用于互连。还可以使用其他互连协议,包括例如,来自AllSeen联盟的AllJoyn协议、优化链路状态路由(OLSR)协议或移动自组织联网较佳方案(B.A.T.M.A.N.)等等。

  来自任何IoT设备的通信可以沿着IoT设备中的任何设备之间的最方便的路径传递以到达GW 910。在这些网络中,互连的数量可以提供大量的冗余,从而允许甚至在丢失大量IoT设备的情况下维持通信。

  并非所有的IoT设备都可以是雾设备1002的永久性构件。在图中的示例1000中,三个暂态IoT设备加入雾设备1002,分别是第一移动设备1012、第二移动设备1014、以及第三移动设备1016。可将雾设备1002作为位于云902的边缘处的单个设备呈现给云902中的客户端(诸如服务器904)。在此示例中,控制与雾设备1002中的特定资源的通信可在不标识雾设备1002内的任何特定IoT设备1004的情况下发生。相应地,如果任何IoT设备1004出现故障,其他IoT设备1004可能能够发现和控制资源。例如,IoT设备1004可被线连,以便允许IoT设备1004中的任一个控制其他IoT设备1004的测量、输入、输出等。聚合器1006也可提供对IoT设备1004的控制以及雾设备1002的其他功能中的冗余。

  在一些示例中,可使用命令性编程风格来配置IoT设备,例如,每个IoT设备具有特定功能和通信伙伴。然而,形成雾设备1002的IoT设备能以说明性编程风格被配置,从而允许IoT设备重新配置它们的操作和通信,诸如响应于条件、查询和设备故障来确定所需的资源。这可作为暂态IoT设备(诸如设备1012、1014、1016)加入雾设备1002来执行。当暂态或移动设备进入或离开雾1002时,雾设备1002可重新配置其自身以包括那些设备。这可通过形成设备1012和1014以及第三移动设备1016的临时组以控制或以其他方式与IoT设备1004通信来执行。如果设备1012、1014中的一个或两个是自主的,则临时组可以向设备1012、1014提供指令。当暂态设备1012、1014和1016离开雾设备1002的附近时,雾设备1002可重新配置其自身以从网络去除那些IoT设备。雾设备1002还可以将自身划分为功能单元,诸如IoT设备1004和邻近于特定区域或地理特征的其他IoT设备,或执行特定功能的其他IoT设备。这种类型的组合可实现使用来自雾设备1002的资源的较大IoT构造的形成。

  如由雾设备1002所图示,IoT网络的有机发展对于使IoT实现方式的效用、可用性和弹性最大化至关重要。进一步地,示例指示了改善信任并由此提高安全性的战略的有用性。设备的局部标识在实现方式中可能是重要的,因为身份的分散确保不能利用中央权限来允许对可能存在于IoT网络内的对象的模仿。进一步地,局部标识减少了通信开销和等待时间。

  因此,已描述了本公开的各示例实施例,它们包括但不限于:

  示例1可包括用于存储文件的设备,包括:彼此耦合的一个或多个服务器和一个或多个存储设备,用于提供用来存储客户端计算设备的文件和文件的元数据的虚拟存储服务;其中文件和文件的元数据在提供到虚拟存储服务之前由客户端计算设备加密,文件利用客户端计算设备的私密密钥加密,而文件的元数据利用客户端计算设备与虚拟存储服务之间的共享会话密钥加密;以及其中经加密的文件存储在一个或多个存储设备中,文件的经加密的元数据存储在一个或多个服务器的一个或多个安全区域中。

  示例2可以包括示例1和/或本文的一些其他示例的设备,其中文件的元数据包括文件名、文件大小、文件的日期、文件的所有者、文件的标签、文件的一部分或文件的摘要。

  示例3可以包括示例1和/或本文的一些其他示例的设备,其中文件包括音频文件、多媒体文件、文档或对象文件。

  示例4可以包括示例1和/或本文的一些其他示例的设备,其中一个或多个服务器和一个或多个存储设备是计算设备的雾网络的一部分。

  示例5可以包括示例1和/或本文的一些其他示例的设备,其中一个或多个服务器是雾网络的一部分,而一个或多个存储设备被设置在耦合到雾网络的云中。

  示例6可以包括示例1和/或本文的一些其他示例的设备,其中经加密的文件和文件的经加密的元数据通过客户端计算设备与虚拟存储服务之间的安全信道被提供到虚拟存储服务。

  示例7可以包括示例1和/或本文的一些其他示例的设备,其中虚拟存储服务用于基于共享会话密钥来接收关于文件的经加密的查询,并且一个或多个服务器基于共享会话密钥对经加密的查询进行解密以获得查询,并基于该查询搜索存储在一个或多个服务器上的文件的经加密的元数据。

  示例8可以包括示例7和/或本文的一些其他示例的设备,其中一个或多个服务器用于基于对存储的文件的经加密的元数据执行的搜索来确定存储在一个或多个存储设备中的经加密的文件,并将确定的经加密的文件发送到客户端计算设备。

  示例9可以包括示例1和/或本文的一些其他示例的设备,其中客户端计算设备、文件、经加密的文件、文件的经加密的元数据、秘密密钥或共享会话密钥是第一客户端计算设备、第一文件、经加密的第一文件、第一文件经加密的第一元数据、第一秘密密钥或第一共享会话密钥,并且一个或多个服务器和一个或多个存储设备提供用于存储第二客户端计算设备的第二文件和第二文件的第二元数据的虚拟存储服务;其中第二文件和第二文件的第二元数据在被提供到虚拟存储服务之前由第二客户端计算设备加密,第二文件利用第二客户端计算设备的第二秘密密钥加密,第二文件的第二元数据利用第二客户端计算设备与虚拟存储服务之间的第二共享会话密钥加密;并且其中经加密的第二文件存储在一个或多个存储设备中,第二文件经加密的第二元数据存储在一个或多个服务器的一个或多个安全区域中。

  示例10可包括一种计算设备,包括:一个或多个处理器,用于:基于计算设备的私密密钥来对文件进行加密;以及基于计算设备与虚拟存储服务之间的共享会话密钥来对文件的元数据进行加密;以及与一个或多个处理器耦合的通信接口,用于将经加密的文件和文件的经加密的元数据发送到用于存储计算设备的经加密的文件和文件的经加密的元数据的虚拟存储服务。

  示例11可以包括示例10和/或本文的一些其他示例的计算设备,其中通信接口用于通过计算设备与虚拟存储服务之间的安全信道将经加密的文件和文件的经加密的元数据发送到虚拟存储服务。

  示例12可以包括示例10和/或本文的一些其他示例的计算设备,其中一个或多个处理器用于基于共享会话密钥来生成关于文件的经加密的查询,并且通信接口用于将经加密的查询发送到虚拟存储服务,其中虚拟存储服务用于基于共享会话密钥来对经加密的查询进行解密,并搜索和定位存储的文件的经加密的元数据,以生成对经加密的查询的响应。

  示例13可以包括示例12和/或本文的一些其他示例的计算设备,其中通信接口用于从虚拟存储服务接收经加密的文件作为对经加密的查询的响应。

  示例14可以包括一个或多个非暂态计算机可读介质,其包括指令,该指令使雾网络响应于虚拟存储服务对指令的执行来提供虚拟存储服务,用于:从客户端计算设备接收利用客户端计算设备的私密密钥进行加密的经加密的文件;将经加密的文件存储在一个或多个存储设备中;从客户端计算设备接收利用客户端计算设备与虚拟存储服务之间的共享会话密钥进行加密的文件的经加密的元数据;以及将文件的经加密的元数据存储在一个或多个服务器的一个或多个安全区域中,其中彼此耦合的一个或多个服务器以及一个或多个存储设备提供虚拟存储服务。

  示例15可以包括示例14和/或本文的一些其他示例的一个或多个非暂态计算机可读介质,其中响应于虚拟存储服务对指令的执行,进一步用于:基于共享会话密钥从客户端计算设备接收关于文件的经加密的查询;基于共享会话密钥对经加密的查询进行解密以获得查询;基于该查询,搜索存储在一个或多个服务器上的文件的经加密的元数据。

  示例16可以包括示例15和/或本文的一些其他示例的一个或多个非暂态计算机可读介质,其中响应于虚拟存储服务对指令的执行,进一步用于:基于对存储的文件的经加密的元数据执行的搜索来确定存储在一个或多个存储设备中的经加密的文件,并将确定的经加密的文件发送到客户端计算设备。

  示例17可以包括示例14和/或本文的一些其他示例的一个或多个非暂态计算机可读介质,其中一个或多个服务器和一个或多个存储设备是雾网络的一部分。

  示例18可以包括示例14和/或本文的一些其他示例的一个或多个非暂态计算机可读介质,其中一个或多个服务器是雾网络的一部分,并且一个或多个存储设备被设置在耦合到雾网络的云中。

  示例19可以包括示例14和/或本文的一些其他示例的一个或多个非暂态计算机可读介质,其中经加密的文件和文件的经加密的元数据通过客户端计算设备与虚拟存储服务之间的安全信道被提供到虚拟存储服务。

  示例20可包括一种用于计算设备的方法,包括:生成经加密的文件,其中经加密的文件是通过基于计算设备的秘密密钥对文件进行加密来生成的;生成文件的经加密的元数据,其中文件的经加密的元数据是通过基于计算设备与虚拟存储服务之间的共享会话密钥对文件的元数据进行加密来生成的,并且其中彼此耦合的一个或多个服务器与一个或多个存储设备提供虚拟存储服务;以及将经加密的文件和文件的经加密的元数据发送到虚拟存储服务,其中经加密的文件由虚拟存储服务接收并存储在一个或多个存储设备中,而文件的经加密的元数据存储在一个或多个服务器的一个或多个安全区域中。

  示例21可包括示例20和/或本文一些其他示例的方法,进一步包括:生成关于文件的查询;基于共享会话密钥对查询进行加密以获得经加密的查询;以及将经加密的查询发送到虚拟存储服务,其中虚拟存储服务用于基于共享会话密钥对经加密的查询进行解密以获得查询,并基于该查询来搜索存储的文件的经加密的元数据。

  示例22可包括示例21和/或本文一些其他示例的方法,进一步包括:从虚拟存储服务接收相对应的经加密的文件,其中由虚拟存储服务基于经加密的查询确定相对应的经加密的文件。

  示例23可包括示例20和/或本文一些其他示例的方法,其中一个或多个服务器和一个或多个存储设备是雾网络的一部分。

  示例24可包括示例20和/或本文一些其他示例的方法,其中一个或多个服务器是雾网络的一部分,并且一个或多个存储设备被设置在耦合到雾网络的云中。

  示例25可以包括示例20和/或本文的一些其他示例的方法,其中经加密的文件和文件的经加密的元数据通过计算设备与虚拟存储服务之间的安全信道来发送。

  虽然出于描述目的已在本文中说明和描述了某些实施例,但是本申请旨在包含本文所讨论的实施例的任何改编或变型。因此,明确地旨在仅由权利要求来限定本文所描述的实施例。

《用于客户端计算设备的虚拟存储服务.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)