CN105122775A - 雾网络 - Google Patents
雾网络 Download PDFInfo
- Publication number
- CN105122775A CN105122775A CN201480013065.8A CN201480013065A CN105122775A CN 105122775 A CN105122775 A CN 105122775A CN 201480013065 A CN201480013065 A CN 201480013065A CN 105122775 A CN105122775 A CN 105122775A
- Authority
- CN
- China
- Prior art keywords
- application
- nanometer
- mobile device
- box
- network
- 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
- 239000003595 mist Substances 0.000 title description 5
- 238000000034 method Methods 0.000 claims abstract description 54
- 230000008569 process Effects 0.000 claims description 35
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000006872 improvement Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 5
- 230000004044 response Effects 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- 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/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- 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
-
- 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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/58—Message adaptation for wireless communication
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种由纳米盒实现的方法,用于向连接到该纳米盒的网络的一组设备提供处理资源以支持应用运行。该方法包含:接收对于移动设备或固定设备的应用的应用数据。使用该移动设备或固定设备的应用数据来运行应用以生成输出。接收切换通知,该切换通知指示根控制器已经基于最佳资源可用性和最小时延将该应用重新指配给一组纳米盒中的另一个纳米盒。作为响应,纳米盒使用该应用的当前状态来更新该应用数据,并且通过网络传送将被提供给另一个纳米盒的所更新的应用数据。
Description
相关申请交叉引用
本申请要求于2013年3月8日提交,申请号为61/775,054的美国临时专利申请的优先权。
技术领域
本发明的实施例涉及云计算领域。具体地,实施例涉及将移动设备或固定设备的处理和存储卸载到具有资源可用性和最小时延的服务器。
背景技术
移动设备由于其便携性和尺寸而是用户期望得到的。然而,由于移动设备的尺寸小,因此它们通常具有有限的处理能力和存储空间。一些应用已经被设计为适应移动设备的处理和存储限制。其它应用,诸如增强现实、言语翻译和面部识别,具有不能由移动设备满足的大量的处理和存储要求。
为了使这些处理资源密集型的应用可以被移动设备的用户使用,可以将处理和/或存储中的一些或全部处理和/或存储卸载到服务器。服务器通常位于远离于移动设备的大数据中心,但是能够提供极大数量的处理能力和存储容量。在服务器执行对于应用的处理后,该应用的输出被传送给移动设备并且被呈现给用户。然而,使用此类应用的用户体验受移动设备和数据中心之间的时延而被消弱。由于移动设备和服务器之间的距离,应用不能立即处理数据。当应用要求高处理能力和低时延的结合时,对于固定设备而言也出现类似的问题。例如,许多视频游戏环境显著地受固定设备的低处理能力和与服务器的时延的影响。
发明内容
一种由纳米盒(nano-box)实现的方法,用于向连接到该纳米盒的网络的一组设备提供处理资源以支持应用运行。处理资源改进该一组设备的性能,其中该一组设备包含移动设备或固定设备。基于确定该纳米盒比一组纳米盒中的其它纳米盒提供对于一组设备的更好的度量,由根控制器来选择该纳米盒以提供来自连接到该网络的一组纳米盒的处理资源。该方法包含:通过网络接收对于授权给移动设备或固定设备的应用的应用数据。应用数据特定于移动设备或固定设备。使用该移动设备或固定设备的应用数据来运行该应用以生成输出。接收切换通知,该切换通知指示根控制器已经基于最佳资源可用性和最小时延将该应用重新指配给一组纳米盒中的另一个纳米盒。作为响应,该纳米盒使用该应用的当前状态来更新该应用数据,并且通过网络传送将被提供给另一个纳米盒的所更新的应用数据。
纳米盒向连接到该纳米盒的网络的一组设备提供处理资源以支持应用运行。处理资源改进该一组设备的性能。该一组设备包含移动设备或固定设备,其中基于确定该纳米盒比一组纳米盒中的其它纳米盒提供对于该一组设备的更好的度量,由根控制器来选择该纳米盒以提供来自连接到该网络的一组纳米盒的处理资源。纳米盒包含:用于存储应用数据的存储设备,用于与网络通信的网络接口,以及耦合到网络接口和存储设备的计算机处理器。计算机处理器被配置为通过网络经由网络接口接收对于授权给移动设备或固定设备的应用的应用数据。该应用数据特定于该移动设备或固定设备。计算机处理器使用该移动设备或固定设备的应用数据来运行该应用以生成输出。计算机处理器能够接收切换通知,该切换通知指示根控制器已经基于最佳资源可用性和最小时延将该应用重新指配给一组纳米盒中的另一个纳米盒。作为响应,计算机处理器可使用该应用的当前状态来更新该应用数据,并且经由网络接口通过网络来传送将被提供给另一个纳米盒的所更新的应用数据。
附图说明
在附图的图中,作为示例而不是作为限制来说明本发明,在附图中相似的标记指示相似的元素。应当注意的是,在本公开中对于“一”或“一个”实施例的不同提及未必是相同实施例,以及此类提及意味的是至少一个。此外,当结合实施例来描述特定特征、结构或特点时,主张的是结合其它实施例来实施此类特征、结构或特点在本领域的技术人员的知识范围内,而不管是否明确描述。
图1是用于实现用于减少对于移动设备或固定设备的网络时延和资源需求的纳米盒的过程的一个实施例的流程图。
图2是包含用于减少对于移动设备的网络时延的多个纳米盒的MistNet的一个示例实施例的示意图。
具体实施方式
在一些描述中,阐述了许多特定细节。然而,理解的是,可以在没有这些特定细节的情况下来实践本发明的实施例。在其它情况下,没有详细示出众所周知的电路、结构和技术以便不使本描述难于理解。在其它情况下,没有详细地示出控制结构、门级电路和完整的软件指令序列,以便不使本发明难于理解。本领域的普通技术人员,使用所包含的描述,将能够在不进行试验的情况下实现适当的功能。
在以下的描述和权利要求书中,可以使用术语“耦合”和“连接”,连同它们的派生。应当理解的是,这些术语不是旨在彼此同义。“耦合”用于指示的是两个或更多元素可以是或可以不是彼此直接物理接触或电接触,彼此协作或交互。“连接”用于指示在彼此耦合的两个或更多元素之间的通信的建立。
为了促进实施例的理解,在附图中已经使用虚线以表示某些项目的非必需性质(例如,由本发明的给定实施例所不能支持的特征;由给定实施例支持的特征,但是在一些情况下使用而在其它情况下不使用)。
能够使用在一个或多个电子设备上存储并执行的代码和数据来实现在附图中示出的技术。电子设备(例如,端站、网络设备)使用机器可读介质,诸如,非短暂性的机器可读介质(例如,诸如磁盘的机器可读存储介质;光盘;只读存储器;闪速存储设备;相变存储器)和短暂性机器可读传输介质(例如,电、光、声或其它形式的传播信号-诸如载波、红外信号),来(内部地和/或通过网络与其它电子设备)存储和传送代码(包括软件指令)和数据。另外,此类电子设备包含:硬件,诸如耦合到一个或多个其它组件的一个或多个处理器组,诸如一个或多个非短暂性机器可读介质(用于存储代码和/或数据),用户输入/输出设备(例如,键盘、触摸屏,和/或显示器),以及网络连接(用于使用传播信号来传送代码和/或数据)。如本文中使用的,“组(set)”指的是任何正整数的项目。处理器组和其它组件的耦合通常通过一个或多个总线和桥(还被称为总线控制器)。因此,给定电子设备的非短暂性机器可读介质通常存储用于在该电子设备的一个或多个处理器上运行的指令。可以使用软件、固件和/或硬件的不同组合来实现本发明的实施例的一个或多个部分。
如本文中使用的,网络设备(例如,路由器、交换机、桥)是一块联网设备,包含通信地互连在网络上的其它设备(例如,其它网络设备、端站)的硬件和软件。一些网络设备是“多种服务网络设备”,“多种服务网络设备”提供对于多种联网功能(例如,路由选择、桥接、交换、第2层聚合、会话边界控制、服务质量,和/或订户管理)的支持,以及提供对于多种应用服务(例如,数据、语音和视频)的支持。订户端站(例如,服务器、工作站、膝上型计算机、上网本、掌上计算机、移动电话、智能电话、多媒体电话、互联网协议语音(VOIP)电话、用户设备、终端、便携式媒体播放器、全球定位系统(GPS)单元、游戏系统、机顶盒)访问在互联网上提供的内容/服务和/或在互联网上(例如,通过隧道)覆加的虚拟专用网(VPN)上提供的内容/服务。内容和/或服务通常由属于服务或内容提供商的一个或多个端站(例如,服务器端站)或参与对等服务的端站来提供,以及可以包含:例如,公共网页(例如,免费内容、商店前端、搜索服务)、专有网页(例如,提供电子邮件服务的用户名/密码访问的网页),和/或在VPN上的企业网。通常,订户端站(例如,通过(有线地或无线地)耦合到接入网的客户端设备)耦合到边缘网络设备,边缘网络设备(例如,通过一个或多个核心网设备)耦合到其它边缘网络设备,其它边缘网络设备耦合到其它端站(例如,服务器端站)。
概述
以下本文中描述的本发明的实施例提供了一种用于实现“雾网络(MistNetwork)”或“MistNet”的方法和系统。MistNet包含多个纳米盒,纳米盒是小尺寸的计算设备,与高度分布式的并且具有低网络时延的服务器群和数据中心有关。纳米盒能够被个体地或以集群来部署以向连接到MistNet的其它计算设备提供另外的处理能力和存储容量。MistNet还包含一个或多个根控制器,它们确定用于帮助移动设备和固定设备的纳米盒的初始指配,以及实时地控制在移动设备或固定设备与MistNet之间的数据交换。当移动设备移动到不同的位置时,根控制器路由数据业务以及使得能够在纳米盒之间进行切换。
由于在移动设备和一些固定设备中的处理能力和存储空间的约束,一些应用不能在这些设备上运行。例如,诸如增强现实、言语翻译、面部识别以及甚至一些游戏的应用要求超过能够被适应到移动设备或一些固定设备中的资源的资源。为了使得这些应用对于这些移动设备和固定设备用户而言可以使用,与该应用相关联的处理和存储被卸载到数据中心。这些数据中心通常位于接近网络的骨干或接近冷却设施。在数据中心处运行资源密集型应用,以及将输出传送给这些移动设备和固定设备。
现有技术的缺点包含:网络时延能够降低用户体验,特别是对于诸如游戏的时间敏感应用。由于对于数据在数据中心和移动设备或固定设备之间行进所花费的时间,因此当使用该应用时,用户能够体验到明显的延迟。另外,由于病毒或丢失保存关键数据的移动设备的可能性,因此在移动设备或固定设备上直接运行较小的应用能够造成高安全风险。还增加了通过移动设备的无线无线电接口交换的数据量,这对无线电接入网(RAN)提出更高的需求以及消耗移动设备的电池。
本发明的实施例通过定义MistNet克服了现有技术的缺点,MistNet是密集的、高分布式的以及低时延的纳米盒的网络,它执行对于移动设备和固定设备的云计算。MistNet能够被部署在固定宽带网络和移动宽带网络两者中。在MistNet中纳米盒的近距离减少了时延并且改进了对于用户交互的响应时间。进而,新的服务和应用可以被立即提供给用户,而用户不必将整个应用下载到移动设备或固定设备上。例如,移动设备或固定设备能够使用在雾中运行的一个或多个虚拟机(VM)而不必担心该用户的移动设备或固定设备的有限的物理能力。在一些实施例中,当新版本的应用可以获得时,仅雾需要更新该应用,而不是每个个体移动设备或固定设备。这减少了在移动宽带网络或有线宽带网络上的数据业务量,并且节省了在移动设备中的功率和在移动设备和固定设备中的存储空间。
在一个实施例中,一种方法由实现纳米盒的计算系统来执行,用于处理和存储对于授权给移动设备的应用的数据。纳米盒经由网络耦合到用于与无线设备通信的无线收发器。纳米盒包含:网络接口(通常是但是不是必须是有线的),其用于与无线收发器通信以及用于通过网络与根控制器通信。根控制器管理至多个纳米盒的设备和应用的指配,以及使得在多个纳米盒中能够进行会话的切换。
该方法通过减少至移动设备的网络时延,改进了对于移动设备的用户体验。该方法包含:接收来自根控制器的注册通知,该注册通知指示的是,给定纳米盒将向所指定的移动设备提供特定应用或一组应用的服务。由根控制器例如基于确定具有最佳资源可用性的控制器来做出特定纳米盒的选择。最佳资源可用性可以是存在小于50毫秒(ms)的至该移动设备的估计时延之处。通过网络接收对于授权给移动设备的应用的数据。这个数据特定于该移动设备。使用移动设备特定数据来运行该应用以生成输出。该输出被无线地传送给该移动设备。
在移动设备和应用之间可以有多个数据交换,来自移动设备的多个输入以及至移动设备的多个输出。在操作期间,可以由纳米盒接收切换通知,该切换通知指示的是,根控制器已经判定应当将服务移动到不同的纳米盒。可以例如基于根控制器推断出至移动设备的往返网络时延不再小于50毫秒,来做出这个判定。使用该应用的当前状态来更新应用数据。通过网络将所更新的应用数据传送给根控制器。
在另一个实施例中,计算机系统实现用于处理和存储对于授权给移动设备的应用的数据的纳米盒。纳米盒耦合到根控制器,根控制器使得能够进行至移动设备的初始授权服务递送以及在多个纳米盒之间的切换。计算机系统通过减少至移动设备的网络时延来改进对于该移动设备的用户体验。计算机系统包括:网络接口,其被配置为与移动设备和根控制器通信。网络接口可以包含有线收发器和/或无线收发器。计算机系统还包含:存储设备,其被配置为存储应用数据。计算机系统包含:耦合到网络接口和存储设备的计算机处理器。
计算机处理器被配置为接收来自根控制器的注册通知,该注册通知指示的是,给定纳米盒将向所指定的移动设备提供特定应用或一组应用的服务。由根控制器做出特定纳米盒的选择。由根控制器做出的选择可以基于确定具有最佳资源可用性的纳米盒。例如,最佳资源可用性可以基于至移动设备的估计小于50毫秒(ms)的时延。过程还可以包含通过网络接收对于授权给移动设备的应用的数据。该数据特定于该移动设备。该过程可以使用移动设备特定数据来运行该应用以生成输出,将该输出传送给该移动设备,以及接收切换指示,该切换指示指示的是,根控制器已经判定应当将服务移动到不同的纳米盒。可以例如基于根控制器推断出至移动设备的往返网络时延不再小于50毫秒,来做出这个判定。在这种情况下,执行使用该应用的当前状态的应用数据的更新,以及通过网络将所更新的应用数据传送给根控制器。
此外,固定设备,即通常不漫游的设备,诸如桌面计算机,也受对于它们的固定设备应用的时延和在处理能力中的限制的影响。一些固定设备,诸如控制台设备和较旧的台式机设备可能具有有限的存储器和处理能力,这阻止了它们利用新的更多的资源密集型应用。类似地,这些固定设备可能远离于数据中心、云计算设施和类似的资源,导致当访问由此类设施所托管的资源和应用时在性能中的降级。此外,一些固定设备可以被设计为具有与通常与移动设备相关联的资源类似的非常低的资源,使得这些设备成本更低或更小。一些固定设备也可以包含嵌入在消费电子产品(诸如电视和其它电器)中的计算设备。
图1是由用于减少对于移动设备或固定设备的网络时延和资源需求的纳米盒实现的过程的一个实施例的流程图。该过程通常由计算机处理器来实现。纳米盒包含至少一个计算机处理器和至少一个存储设备。计算机处理器可以是包含通用或中央处理器、专用集成电路(ASIC)或类似的处理设备的任何类型的处理设备。计算机处理器可以通过在彼此耦合的一组主板或类似基板上布线的一组总线与存储设备连接。备选地,计算机处理器和存储设备可以通过网络连接。
在一个实施例中,该过程从框102开始,其中纳米盒接收来自根控制器的注册通知,该注册通知指示的是,移动设备或固定设备已经被指配给该纳米盒或更具体地由移动设备或固定设备使用的应用已经被指配给该纳米盒以用于运行。根控制器可以使用任何过程以用于选择在MistNet中的哪个纳米盒被指配给该移动设备或固定设备。在一个实施例中,根控制器可以选择具有最佳资源可用性和/或最低时延的纳米盒。可以使用任何算法和由纳米盒报告给根控制器的任何度量来确定最佳资源可用性。在一个实施例中,度量可以包含处理器或存储设备度量。
时延也可以与阈值相关联,其中阈值定义能够接受的最大时延。在一个示例实施例中,根控制器尝试将具有50毫秒(ms)或更低时延的纳米盒指配给移动设备或固定设备。在一个实施例中,所选择的纳米盒可以是基于在MistNet中用于处置该移动设备或固定设备的可以使用的可能的纳米盒中的最小时延,至移动设备或固定设备最近的纳米盒。
当移动设备和固定设备进入或连接到MistNet时,根控制器执行移动设备和固定设备的注册。根控制器可以驻留在纳米盒上,或它可以驻留在MistNet中或在RAN中的不同的网络设备上,诸如边缘路由器上。根控制器可以由单个设备,一组设备来运行,或可以在MistNet中跨域多个设备而被分布。当移动设备或固定设备与根控制器注册时,根控制器向纳米盒传送注册通知以向该纳米盒通知它将执行对于该移动设备的处理。注册通知可以包含:包含设备类型或能力信息的对于移动设备的标识信息,诸如互联网协议(IP)地址的设备位置信息,或类似信息。可以使用任何类型或组合的通信协议,包含机器至机器通信协议,来传送注册通知。初始注册还可以标识新注册的设备正在运行的或它最近或常常使用的应用或一组应用。可以使用任何类型的标识符,诸如名字、资源定位符或类似的标识符,来标识应用。
在框104处,纳米盒通过有线、无线或类似的网络来接收对于授权给移动设备或固定设备的应用的数据。授权的应用可以是根控制器或其它授权控制器确定由MistNet支持的、由该移动设备或固定设备的用户所拥有的、由网络提供商批准用于操作的或类似被授权的任何应用。应用可以被配置为使得移动设备或固定设备可以具有在该移动设备或固定设备上正在运行的或常常使用的应用的客户端或完整的应用。该应用的处理要求可能超过移动设备或固定设备所能够的或如果仅在该移动设备或固定设备处处理则可能只是对该移动设备增加很大负载。纳米盒运行该应用的服务器组件、完整应用或该应用的功能性的任何组合以减轻该移动设备或固定设备的负载。出于清楚的原因,在本文中纳米盒被描述为运行应用,然而,本领域的技术人员将理解的是,纳米盒和移动设备或固定设备共享该应用的功能中的至少一些功能,其中在许多实施例中,移动设备或固定设备提供用户接口方面,以及纳米盒运行该应用的资源密集型功能。实施例描述了处置单个移动设备的单个应用的示例。然而,本文中描述的原理、过程和结构能够与能够处置任何数量的移动设备或固定设备的、由网络中的任何数量的纳米盒所支持的系统一起使用,其中每个纳米盒能够托管任何数量的应用以卸载对于由一组根控制器指配给该纳米盒的任何数量的移动设备或固定设备的任何数量的应用的运行。如本文中使用的,‘组’可以指的是包含一个项目的任何正整数的项目。
所接收的应用数据特定于移动设备或固定设备,设备的用户,和/或应用的实例。应用数据可以包含诸如在应用上一次被运行后该应用的状态的信息,以及其它用户、设备或应用特定信息。在一个实施例中,通过互联网从存储服务器来接收应用数据。该存储服务器可以与根控制器、任何纳米盒共位,或独立地被放置在MistNet中。在另一个实施例中,从与移动设备或固定设备上一次相关联的不同的纳米盒来接收应用数据。可以以一个或多个互联网协议(IP)分组的形式来接收应用数据,或应用数据可以具有任何其它格式或结构。
在框106处,纳米盒使用用户、设备或应用特定数据来运行应用以生成输出。在一个实施例中,纳米盒将最常使用的应用存储在本地存储设备中。第一次或每次纳米盒运行应用时,该纳米盒检查以查看该应用是否已经在本地存储设备中。如果应用不在本地存储设备中,则可以通过诸如局域网(LAN)或例如互联网的广域网(WAN)的网络从存储服务器来检索该应用。通过检索并且使用用户、设备和应用特定数据来运行该应用,对用户而言卸载过程似乎是无缝的,因为该应用在用户上一次中断的地方重新开始,而不管该应用的上一次操作是由另一个纳米盒来处置还是在过去的任何时间处发生。所生成的输出可以是与应用的用户交互的结果或任何自动化的应用功能。所生成的输出可以具有任何形式、内容或大小。所生成的输出可以是具有计算值的数据结构、视频、音频或类似的内容。输出的生成可以是一次性发生、周期性的,或连续的。出于清楚的原因,示例被论述好像输出是单次发生;然而,本领域的技术人员将理解的是,它可以是周期性的或连续的。
在生成输出后,通过无线(例如,通过无线电接入网(RAN)或局域网(LAN))、固定宽带网络或它们的任何组合,将该输出传送给移动设备或固定设备(框108)。可以使用任何类型或组合的通信协议,包含机器至机器通信协议,通过连接到纳米盒的网络接口来传送该输出。在一个示例实施例中,使用超文本标记语言5(HTML5)和异步JavaScript和XML(AJAX)消息来传送该输出。
可以由在移动设备或固定设备上的应用的本地组件(即,客户端)来接收该输出,其中本地组件可以主要被配置为与纳米盒通信以及提供至用户的用户接口,而不是被配置为实际上执行对于该应用的任何实质上的处理。在其它的实施例中,根据需要以及当对于应用是最优的时,本地或客户端应用可以运行对于该应用的一系列功能。本地或客户端应用可以是对于特定移动平台或固定平台而特定开发的原生应用。备选地,可以使用诸如HTML的更加普遍地标准化语言来开发本地或客户端应用。在优选实施例中,使用原始应用语言和HTML5的组合来编码本地或客户端应用。本地或客户端应用在接收到输出后在用户接口上显示该输出。
在框110处,纳米盒能够接收切换通知,该切换通知指示的是,该纳米盒将移动设备或固定设备的应用和一般服务的运行切换到另一个纳米盒。可以由纳米盒在应用的运行中的任何点处以及在运行的任何持续时间后来接收这个通知。在一些实施例中,通知指示的是,该纳米盒不是在网络中用于支持该移动设备或固定设备的具有最佳资源可用性或最低时延的纳米盒。该通知可以类似地指示对于某一度量而言阈值已经达到,使得在与传递相关联的开销方面,此类传递所导致的应用的减少的时延和改进的性能比至另一个纳米盒的应用的传递的代价更重要。可以以任何类型或组合的通信协议(包含机器至机器通信协议)的形式,从根控制器来接收切换通知,根控制器跟踪纳米盒和移动设备或固定设备的时延、资源度量和/或位置。切换通知向纳米盒通知,由于增加的时延或类似的性能问题,因此该纳米盒将不再运行对于该移动设备或固定设备的应用。这种切换过程最频率地应用于在相当长的距离上漫游的移动设备,其能够显著地影响时延和类似的度量。然而,在所指配的纳米盒上的负载可能增加的情况下或在附近的纳米盒的能力以其它方式改变的情况下(例如,新的纳米盒被添加到MistNet),它也可以应用于重定位的固定设备。
在框112,纳米盒使用应用的当前状态来更新应用数据。这存储了应用的当前状态,以便下一个纳米盒(移动设备或固定设备与它相关联)能够在它的运行中的相同点处来恢复该应用的处理。可以响应于切换通知,来执行这种更新,或可以周期性地或持续地执行这种更新。在框114处,通过网络将所更新的应用数据传送给根控制器。根控制器于是可以将所更新的应用数据传送给存储服务器或下一个纳米盒。在其它实施例中,可以在纳米盒之间直接传送应用数据。当前的纳米盒可以将应用和状态数据发送给由根控制器选择的新的纳米盒。可以以任何形式,例如以具有任何结构或格式的一个或多个IP分组的形式,来传送所更新的应用数据。
图2是包含用于减少对于移动或固定设备200的网络时延和资源的多个纳米盒202和218的MistNet的一个示例实施例的示意图。通过示例而不是限制来提供该图示。尽管示出了移动节点的示例,但是本领域的技术人员将理解的是,MistNet可以与固定节点结合使用以及使用任何类型的有线或无线网络。出于清楚的原因使用该图示的示例以演示MistNet的原理和结构。MistNet被示出为具有单个移动设备200、单个根控制器224,以及由两个RAN216和220和提供商网络250(或在RAN和根控制器224之间的类似网络)连接的两个纳米盒202和218,以及互联网连接226。本领域的技术人员将理解的是,MistNet可以被扩展以包含任何数量的移动设备、RAN、纳米盒以及具有任何相关配置的根控制器。‘MistNet’指的是包括连接网络和所连接的移动设备或固定设备以及根控制器的纳米盒的整体网络。
在所图示的示例中,MistNet包含在网络设备222、服务器或类似设备上实现的根控制器224。在其它实施例中,可以有超过一个根控制器,以及可以在除了网络设备的纳米盒上实现根控制器。网络设备222与互联网226或类似的广域网连接。如上所述,系统可以包含任何数量的移动(或固定)设备并且包含任何数量的纳米盒,以及根控制器以使得能够从被服务的设备卸载任何数量的应用。出于清楚的原因,图示和示例被简化以示出在一组RAN上部署的简单的MistNet中在两个纳米盒之间转变的单个移动设备,该一组RAN是蜂窝提供商的网络的一部分。
第一纳米盒202包含存储设备204、网络接口208,以及与存储设备204和网络接口208连接的计算机处理器210。可以使用任何数量或类型的处理设备(包含通用或中央处理器、专用集成电路(ASIC)或类似的处理设备),来实现计算机处理器210。计算机处理器210可以通过在彼此耦合的一组主板或类似基板上布线的一组总线与存储设备204和网络接口208连接。网络接口可以被配置为通过任何网络,包含诸如提供商网络250的广域网,与根控制器或其它纳米盒通信。网络接口208可以被配置为通过RAN216的塔或类似的宽带网络与移动(或固定)设备通信。备选地,可以通过网络来分布和连接计算机处理器210和存储设备204。尽管在这个图中没有描绘,但是第二纳米盒218(和其它的纳米盒)可以包含与第一纳米盒202相同或相似的组件。
纳米盒202和218可以被放置在MistNet中作为个体纳米盒或使用多计算机系统组合的纳米盒集群以增加处理和存储资源。纳米盒202和218可以位于运营商的网络接入级别,例如,在无线电基站(RBS)、接入节点,或RAN的IP边缘。在这个示例实施例中,第一纳米盒202被部署在第一RAN216中,以及第二纳米盒218被部署在第二RAN220中。在其它的实施例中,单个RAN可以包含多个纳米盒或纳米盒的集群。类似地,在其它实施例中,纳米盒可以在其它类型的宽带网络中的适当的位置中,或被混合在不同类型的宽带网络之间。
在这个示例中,本地或客户端应用252运行在移动设备200上。当移动设备200连接到网络时,移动设备200或本地应用可以与根控制器224注册。在其它实施例中,移动设备200可以运行促进注册和与所指配的纳米盒进行客户端应用交互的专门的MistNet模块254或类似的软件。注册消息可以通过第一纳米盒202传送或与根控制器直接传送。在一个实施例中,当移动设备200或本地应用252注册时,它接收用于与移动设备200相关联的一个或多个虚拟机(VM)212、214(诸如与授权给移动设备200的应用相关联的或运行该应用的VM)的静态元素、图标以及布局。在一个实施例中,静态元素由移动设备200缓存。
在注册过程后,根控制器224选择最佳的纳米盒以帮助移动设备200和它的应用252,以及将应用数据运送给所选择的纳米盒202。在该示例中,根据依上所述的实施例中的任何实施例,第一纳米盒202被选择并且运行对于移动设备200的VM212、214和应用262、264并且根据上述的任何实施例将输出传送到移动设备200。更具体地,由第一纳米盒202中的计算机处理器210来运行VM212、214和应用262、264。可以由根控制器224远程或与根控制器224本地协调或独立于根控制器224控制用于实例化VM212、214并且传递应用数据的进程的实现。可以由纳米盒202的计算机处理器210来运行本地指配逻辑231。在一些实施例中,在该系统中可以不存在根控制器224,以及纳米盒可以经由指配逻辑231以分布式方式来协调应用数据的指配和传递。
如果计算机处理器210具有多个核心或实现诸如超线程的某一其它技术,其使得能够同时处理指令的多个线程,则计算机处理器210可以同时运行多个VM212、214。在这个实施例中,计算机处理器210运行n个数量的VM212、214。多个VM212、214可以都是对于移动设备200,或可以对于与第一RAN216连接的其它移动设备运行一些VM212、214。在每个VM212-216内,可以运行多个应用。
当移动设备200移动离开第一RAN216的范围并且进入第二RAN220的范围中时,根控制器224检测度量中的变化,以及管理从第一纳米盒202到第二纳米盒218的VM212、214和应用262、264的切换。在其它实施例中,固定或移动设备200没有在RAN连接之间转移;反而,根控制器224基于任何类型的性能度量,诸如资源可用性和时延,判定在纳米盒202,218之间重新指配应用262、264。在一个实施例中,使用软件定义网络(SDN)技术来执行切换。根控制器224通过将特定于移动设备200或它的应用的VM和/或应用数据从第一纳米盒202转移到第二纳米盒218,来管理切换。在切换后,第二纳米盒218根据本文中以上所述的实施例中的任何实施例,运行对于移动设备200的VM212,214和应用262、264。
要理解的是,以上描述旨在是说明性的而不是限制性的。根据阅读和理解以上描述,对于本领域的技术人员而言,许多其它实施例将是明显的。因此,应当参照所附权利要求书连同此类权利要求书有权享有的等同物的全部范围,来确定本发明的范围。
Claims (18)
1.一种由纳米盒实现的方法,所述纳米盒用于向连接到所述纳米盒的网络的一组设备提供处理资源以支持应用运行,所述处理资源用于改进所述一组设备的性能,所述一组设备包含移动设备或固定设备,其中基于确定所述纳米盒比一组纳米盒中的其它纳米盒提供对于所述一组设备的更好的度量,由根控制器来选择所述纳米盒以提供来自连接到所述网络的所述一组纳米盒的处理资源,所述方法包括以下步骤:
通过所述网络接收(104)对于授权给移动设备或固定设备的应用的应用数据,所述应用数据特定于所述移动设备或固定设备;
使用所述移动设备或固定设备的所述应用数据来运行(106)所述应用以生成输出;
接收(110)切换通知,所述切换通知指示所述根控制器已经基于最佳资源可用性和最小时延将所述应用重新指配给所述一组纳米盒中的另一个纳米盒;
使用所述应用的当前状态来更新(112)所述应用数据;以及
通过所述网络传送(114)将被提供给所述另一个纳米盒的所更新的应用数据。
2.权利要求1所述的方法,还包括以下步骤:
接收(102)来自所述根控制器的注册通知,所述注册通知指示的是,对于所述移动设备或固定设备的所述应用已经被选择由所述纳米盒来运行,其中所述选择基于最佳资源可用性和最小时延。
3.权利要求1所述的方法,还包括以下步骤:
传送(108)所述输出给所述移动设备或固定设备。
4.权利要求1所述的方法,其中所述网络是无线电接入网。
5.权利要求4所述的方法,其中所述纳米盒位于所述无线电接入网中的无线电基站处。
6.权利要求2所述的方法,其中所述最小时延是50毫秒。
7.权利要求1所述的方法,其中传送所更新的应用数据还包括以下步骤:
传送所述应用数据给存储服务器。
8.权利要求1所述的方法,其中传送所更新的应用数据还包括以下步骤:
传送所述应用数据给所述根控制器。
9.权利要求1所述的方法,其中所述应用的运行还包括以下步骤:
在所述纳米盒上的虚拟机中运行(106)所述应用。
10.一种纳米盒(202),所述纳米盒(202)用于向连接到所述纳米盒的网络的一组设备提供处理资源以支持应用运行,所述处理资源用于改进所述一组设备的性能,所述一组设备包含移动设备或固定设备,其中基于确定所述纳米盒比一组纳米盒中的其它纳米盒提供对于所述一组设备的更好的度量,由根控制器来选择所述纳米盒以提供来自连接到所述网络的所述一组纳米盒的处理资源,所述纳米盒包括:
存储设备(204),其用于存储应用数据;
网络接口(208),其用于与所述网络通信;以及
耦合到所述网络接口和所述存储设备的计算机处理器(210),所述网络接口被配置为通过所述网络经由所述网络接口接收对于授权给所述移动设备或固定设备的应用的应用数据,所述应用数据特定于所述移动设备或固定设备,所述计算机处理器(210)被配置为以下:使用所述移动设备或固定设备的所述应用数据来运行所述应用以生成输出;接收切换通知,所述切换通知指示所述根控制器已经基于最佳资源可用性和最小时延将所述应用重新指配给所述一组纳米盒中的另一个纳米盒;使用所述应用的当前状态来更新所述应用数据以及经由所述网络接口通过所述网络来传送将被提供给所述另一个纳米盒的所更新的应用数据。
11.权利要求10所述的纳米盒,其中所述计算机处理器还被配置为经由所述网络接口从所述根控制器接收注册通知,所述注册通知指示的是,对于所述移动设备或固定设备的所述应用已经被选择由所述纳米盒来运行,其中所述选择基于最佳资源可用性和最小时延。
12.权利要求10所述的纳米盒,其中所述计算机处理器还被配置为:
传送所述输出给所述移动设备或固定设备。
13.权利要求10所述的纳米盒,其中所述网络是无线电接入网。
14.权利要求13所述的纳米盒,其中所述纳米盒位于所述无线电接入网中的无线电基站处。
15.权利要求11所述的纳米盒,其中所述最小时延是50毫秒。
16.权利要求10所述的纳米盒,其中所述计算机处理器还被配置为传送所述应用数据给存储服务器。
17.权利要求10所述的纳米盒,其中所述计算机处理器还被配置为传送所述应用数据给所述根控制器。
18.权利要求10所述的纳米盒,其中所述计算机处理器还被配置为在所述纳米盒上的虚拟机中运行所述应用。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361775054P | 2013-03-08 | 2013-03-08 | |
US61/775054 | 2013-03-08 | ||
US13/909,958 US9118681B2 (en) | 2013-03-08 | 2013-06-04 | Mist networks |
US13/909958 | 2013-06-04 | ||
PCT/IB2014/059056 WO2014136006A1 (en) | 2013-03-08 | 2014-02-18 | Mist networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105122775A true CN105122775A (zh) | 2015-12-02 |
CN105122775B CN105122775B (zh) | 2018-11-09 |
Family
ID=51489245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480013065.8A Expired - Fee Related CN105122775B (zh) | 2013-03-08 | 2014-02-18 | 雾网络 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9118681B2 (zh) |
EP (1) | EP2965493B1 (zh) |
CN (1) | CN105122775B (zh) |
WO (1) | WO2014136006A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109286508A (zh) * | 2017-07-19 | 2019-01-29 | 中兴通讯股份有限公司 | 一种雾节点部署方法及系统 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107067244B (zh) * | 2016-11-03 | 2020-09-29 | 阿里巴巴集团控股有限公司 | 业务实现方法、支付方法、业务实现装置及支付服务端 |
US10855753B2 (en) | 2018-02-23 | 2020-12-01 | Standard Cognition, Corp. | Distributed computing of vehicle data by selecting a computation resource of a remote server that satisfies a selection policy for meeting resource requirements according to capability information |
US10616340B2 (en) * | 2018-02-23 | 2020-04-07 | Standard Cognition, Corp. | Distributed computing of large data by selecting a computational resource of a remote server based on selection policies and data information wherein the selections policies are associated with location constraints, time constraints, and data type constraints |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1735059A (zh) * | 2003-10-24 | 2006-02-15 | 微软公司 | 能经由多个网络通信媒体建立连接的计算设备上的网络和接口选择 |
US20080126511A1 (en) * | 2006-07-26 | 2008-05-29 | Appaji Anuradha K | Method for Handing Off Applications for WebOS-Enabled User Devices |
US20100287263A1 (en) * | 2009-05-05 | 2010-11-11 | Huan Liu | Method and system for application migration in a cloud |
US20110289205A1 (en) * | 2010-05-20 | 2011-11-24 | International Business Machines Corporation | Migrating Virtual Machines Among Networked Servers Upon Detection Of Degrading Network Link Operation |
CN102573024A (zh) * | 2010-12-28 | 2012-07-11 | 微软公司 | 基于灵活策略的网络决策 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8935317B2 (en) * | 2010-06-23 | 2015-01-13 | Microsoft Corporation | Dynamic partitioning of applications between clients and servers |
-
2013
- 2013-06-04 US US13/909,958 patent/US9118681B2/en active Active
-
2014
- 2014-02-18 CN CN201480013065.8A patent/CN105122775B/zh not_active Expired - Fee Related
- 2014-02-18 WO PCT/IB2014/059056 patent/WO2014136006A1/en active Application Filing
- 2014-02-18 EP EP14711609.9A patent/EP2965493B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1735059A (zh) * | 2003-10-24 | 2006-02-15 | 微软公司 | 能经由多个网络通信媒体建立连接的计算设备上的网络和接口选择 |
US20080126511A1 (en) * | 2006-07-26 | 2008-05-29 | Appaji Anuradha K | Method for Handing Off Applications for WebOS-Enabled User Devices |
US20100287263A1 (en) * | 2009-05-05 | 2010-11-11 | Huan Liu | Method and system for application migration in a cloud |
US20110289205A1 (en) * | 2010-05-20 | 2011-11-24 | International Business Machines Corporation | Migrating Virtual Machines Among Networked Servers Upon Detection Of Degrading Network Link Operation |
CN102573024A (zh) * | 2010-12-28 | 2012-07-11 | 微软公司 | 基于灵活策略的网络决策 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109286508A (zh) * | 2017-07-19 | 2019-01-29 | 中兴通讯股份有限公司 | 一种雾节点部署方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US9118681B2 (en) | 2015-08-25 |
EP2965493B1 (en) | 2020-05-20 |
EP2965493A1 (en) | 2016-01-13 |
CN105122775B (zh) | 2018-11-09 |
US20140258376A1 (en) | 2014-09-11 |
WO2014136006A1 (en) | 2014-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10749740B2 (en) | Deploying network-based cloud platforms on end equipment | |
US20180367997A1 (en) | 5g dynamic slice and network identity instantiation, termination, and access management system and method | |
EP3447965B1 (en) | Network function instance management method and relevant device | |
CN111345008B (zh) | 移动边缘主机服务通知方法和装置 | |
CN110072273B (zh) | 一种通信方法、装置、实体及存储介质 | |
CN113783922A (zh) | 负载均衡的方法、系统和装置 | |
CN104333568A (zh) | 基于cdn和负载均衡技术的家居电商云系统及实现方法 | |
CN104636184A (zh) | 虚拟机实例的部署方法和装置及设备 | |
CN103297468A (zh) | 针对群组资源的操作方法、群组服务器 | |
CN110234140B (zh) | 一种通信方法、装置、实体及存储介质 | |
CN109428839B (zh) | 一种cdn调度方法、设备及系统 | |
CN105122775A (zh) | 雾网络 | |
EP3942782B1 (en) | Management for managing resource allocation in an edge computing system | |
CN103354927B (zh) | 用于管理处理设备中的内容的方法和装置 | |
CN104426816B (zh) | 一种虚拟机通信方法及装置 | |
CN114679349A (zh) | 一种数据通信方法及装置 | |
CN104267985A (zh) | 一种软件加载方法和设备 | |
CN103001989A (zh) | 参数接收方法及系统 | |
US10349291B2 (en) | Method and system for establishing a self-organized mobile core in a cellular communication network | |
CN109495591A (zh) | 访问服务方法、装置及系统 | |
CN104539442B (zh) | 用于提高可靠性的方法、网络设备及系统 | |
CN113098705B (zh) | 网络业务的生命周期管理的授权方法及装置 | |
JP6246677B2 (ja) | 通信システム、コントロール装置及び処理装置切替方法 | |
CN115037788A (zh) | 一种创建网络服务ns的方法及相关装置 | |
CN117478543A (zh) | 集群节点的连通性检测方法、系统、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181109 |