具体实施方式
呈现以下描述以使所属领域的技术人员能够制备且使用实施例,且在特定应用以及其需求的背景下提供以下描述。所属领域的技术人员将易于了解对所揭示的实施例的各种修改,并且在不脱离本发明的精神和范围的情况下,本文中所定义的一般原理可应用于其它实施例以及应用。因此,本发明不限于所示出的实施例,而是应符合与本文中所揭示的原理和特征一致的最宽范围。
概述
本发明的实施例提供一种用于移动应用专用网络(MASNET)的系统,所述系统使用主干基础设施以获得用于大型MANET的应用专用组网,例如,营级通信。此应用专用组网是通过以下操作获得的:在网络中引发小于由当前路由方案引发的开销的开销;允许应用从最适当的位置访问内容和服务,而不是固定位点;以及动态地供应资源以满足多个并发应用的需求同时最大化资源利用率和公平性。
已经提出在商业和军事网络中使用网络架构和协议。然而,这些架构并不支持应用专用组网。商业网络架构依赖于基于基础设施节点的广泛和谨慎部署的严格的阶层以及通过上方布建基础设施访问的服务云的可用性。传统的军事架构依赖于基于对等信令的移动自组网(MANET)、到达-返回集中服务和具有严格边界的网关节点互连网络的使用。这些网络架构引发不可持续的开销以随着网络大小的增长维持路由表并且需要消耗过量电力和带宽的过度复杂的路由节点。这些网络架构进一步需要复杂的且低效的网络工程以通过变为业务瓶颈的若干网关节点使网络互连,并且因此无法适应于应用需求。
本发明的实施例提供一种促进应用专用组网并且基于软件定义组网、信息为中心的组网和基于实用性的组网方法的集成的系统。此集成允许大型动态网络适应于应用的需要同时还考虑了当前网络状态。所述系统采用主干基础设施而没有网络组件的人工限制或到集群或区域中的严格的层级网络组织。整个主干基础设施充当分布式控制器并且虚拟化整个协议堆栈。
更确切地说,所述系统包含:1)基于智能主干基础设施的软件定义MANET(SDM),其消除了引发用于动态无线网络中的路由和信道接入的大部分信令,减少了网络装置和软件的复杂性,并且简化了网络的总体管理;2)信息发现、交换和存储(IDES)系统,其允许应用基于网络的状态和应用需求发现和使用来的网络中的最方便位置的服务和内容,而不会导致网络开销和复杂性随着网络大小和动力学增大而激增;以及3)基于实用性的交叉成层(UBCL)机构,其允许网络通过零配置设计制造可供使用的资源以便优化网络服务如何应用。所述系统基于最小化复杂性且最大化网络满足服务需求能力的智能主干基础设施集成SDM、IDES和UBCL。
主干基础设施实施SDM以对彼此造成最小干扰并且彼此无缝地通信。主干充当用于网络的其余部分的分布式控制器并且进一步控制SDM节点。虚拟化网络状态跨越整个协议堆栈,而不仅仅是网络层。主干控制器可以监测节点的地理位置、它们到其它节点的无线电连接,以及网络中的活跃信息流。因此,主干控制器可以控制由不同MANET使用的路线、无线电信道、应该作为MANET之间的网关操作的节点,以及用于访问可供使用的信道的传输调度。此灵活性可以是有用的,例如,在战场中,其中节点的物理部署和军事无线电的传输范围造成彼此的无线电连接中的许多节点同时属于单独的社会群组。在第14/161,410号和第14/161,406号美国专利申请案中描述了主干控制器与SDM节点之间的信令(例如,发送请求以用于到目的地的路线并且从主干接收响应)。
本发明的实施例进一步包含发现、交换和存储信息(IDES)的系统。在传统的网络中,终端用户应用使用名称来表示所请求的服务或内容,同时高效包转发需要目的地的固定长度地址。因此,要么需要目录服务以将名称映射到地址,要么必须在内容和服务的标识符上执行路由。然而,如上文所述,用于名称解析或内容路由的现有方法,例如,ICN,引发过量的信令开销并且不适用于例如MASNET等大型动态网络。本发明的信息发现方法基于公开订用基础通过节点的子集提供目录和存储服务,其中实体将它们的请求提交到附近的IDES节点,并且IDES节点使用一致散列函数的家族确定内容或服务所在的位置。内容可以按需要高速缓存在网络中,并且高速缓存节点可以是IDES节点或愿意播发意图用于局部消耗的内容的其它节点。在第15/823,188号美国专利申请案中描述了提供设计为确保跨越在动态或静态网络中操作的异构名称解析系统的高效名称解析的通用名称解析框架。
在IDES中,所有网络节点维持到附近IDES节点的路线,所有IDES节点维持到彼此的路线,并且网络节点以分布式方式选择应该是IDES节点的那些节点使得不需要节点的手动配置。选择IDES节点可以通过使用新分布式(k,d)支配集算法执行,其中每个网络节点由间隔不大于d的至少k个IDES节点覆盖。算法的运行可以通过由主干控制器维持的网络状态信息加速。
本发明的MASNET还使用基于实用性的组网,例如,基于实用性的交叉成层机构(UBCL)。一般来说,基于实用性的组网允许应用以实用性模型表示它们的数据,使得每个个体数据样本或内容对象可以通过其值评级到接收节点。接收节点可以使用单独的应用专用关联性函数以向网络表达其对应用的数据流的兴趣。接收或转发节点在整个网络上聚集接收器相关性并且确定如何转发个体包或内容对象以及将个体包或内容对象转发到何处。更确切地说,在内容产生者处UBCL使用应用专用实用性函数以将“微实用性”分配到每个包,使得包的集合实现应用专用实用性曲线。微实用性将动态改变的优先级分配给在传输中的每个个体内容对象。同时,内容请求者表示针对数据的与它们的相关性。应用实用性和相关性函数一起告知网络关于沿不同路径的微实用性形状业务的重要性,并且当面对拥塞或延迟时进一步允许网络智能地丢弃数据或添加资源。
网络架构和示例性通信
用于当今的无线网络中的协议堆栈本质上是基于对等信令的并且设计为以有限的信息操作。在这些现有协议中,控制和数据平面并不太多考虑用户数据在其中散播的背景,并且每个包在其标头中规定其自身的背景。仅在用于应对大小的层级网络架构的背景内的链路级处采用主干。相比之下,本发明提供一种使用主干基础设施的系统,例如,主干服务提供商,以获得用于大型移动自组网(MANET)的应用专用组网。在一些实施例中,所述系统包含维持无线网络的加权曲线的集中主干服务并且包含可以发送状态更新到主干服务以报告状态相关信息的多个移动节点(如描述于第14/161,410号和第14/161,406号美国专利申请案中)。所述系统还可以使用流专用路由以确保服务质量(QoS),其中主干收集由一组无线节点报告的邻域信息并且使用所收集的信息来确定针对给定流到目的地的最佳路线(如描述于第14/161,410号和第14/161,406号美国专利申请案中)。
在一些实施例中,移动节点监测它们的邻域环境以将状态相关信息周期性地报告给主干。由移动节点报告给主干的状态相关信息可包含:邻域度量值(例如,基于所接收的信号到每个一跳邻居的链路质量);由所述节点使用的一组多播地址;用于所述移动节点的地理位置(例如,全球定位系统(GPS)坐标);以及通过移动节点高速缓存(如果存在)的内容的改变。在一些实施例中,集中主干服务中的控制器节点从无线节点中收集状态相关信息。状态相关信息可以进一步包含:网络的业务流;网络上的资源、存储或服务;网络的当前配置;邻居节点以及与邻居节点相关联的状态信息;以及控制器节点的知识。此外,所述系统可以应用基于实用性的交叉层机构(UBCL)以确定如何提供各种网络元件以便基于所收集的状态信息和基于实用性的机构最大化性能。
图1A呈现说明示例性移动自组网(MANET)100的图,其包含从一个节点到另一节点的包的路由。不同于本发明的实施例,网络100并不适应于应用专用需要并且并未采用主干服务。网络100可以包含基站网络102和一组移动网络节点106到136。更确切地说,基站网络102可以包含一个或多个基站节点,例如,基站节点104,所述节点经由有线或无线网络彼此通信。移动节点106到136中的至少一些可以在无线网络上直接或经由多跳路径与基站网络102通信。举例来说,移动节点108经由一跳链路耦合到基站网络102,而移动节点106经由二跳链路通过节点108耦合到基站网络102。
类似于用于IP子网和MANET信道的架构,在网络100中的移动节点处操作的应用使用具有如所描绘的静态网络拓扑结构的网络。举例来说,如果在移动节点120处操作的应用对仅可从移动节点130供使用的一条内容感兴趣,那么移动节点120发送请求(通过包142描绘),所述请求行进通过移动节点118、移动模式114、基站节点104、移动节点126、移动节点128,并且最后到达移动节点130。移动节点130沿着相反路径发送所述所请求的内容(通过包144描绘)回到移动节点120。
图1B呈现说明根据本发明的一个实施例的示例性移动应用专用网络(MASNET)150的图,其包含从一个节点到另一节点的包的路由。MASNET150可以包含主干云152(下文称为“主干152”)和一组移动网络节点106到136。更确切地说,主干152可以包含一个或多个控制器节点,例如,控制器节点154,所述节点经由有线或无线网络彼此通信。移动节点106到136中的至少一些可以在无线网络上直接或经由多跳路径与主干152通信。
在操作期间,控制器节点154从移动节点106到136收集状态信息。所述状态信息可包含涉及可在MASNET150上供使用的资源、存储和服务的信息。所述状态信息还可以包含涉及网络上的业务的流的信息、网络拓扑结构的当前配置、一个或多个邻居节点、邻居节点的状态、控制器节点的知识,以及移动节点的应用专用需要。基于所述所收集的信息,控制器节点154应用基于实用性的机构以分配网络元件。响应于分配网络元件,所述系统可以通过使用软件定义的移动自组网(SDM)节点对网络150的拓扑结构进行进一步成形或重新配置。
举例来说,在MASNET150中,控制器节点154从移动节点106到136并且涉及所述移动节点收集状态信息,包含移动节点120发送请求专用内容的包142到移动节点130的应用专用需要,以及移动节点130传输含有所述所请求的内容的包144到移动节点120的应用专用需要。基于所收集的状态信息,控制器节点154执行两个动作:1)应用基于实用性的机构以分配网络元件;以及ii)重新配置MASNET150以获得所应用的实用性机构。举例来说,控制器节点154可以重新配置网络使得直接在移动节点120与移动节点130之间存在SDM链路,允许移动节点120与移动节点130之间的更有效的业务流。图1B还描述了通过控制器节点154添加作为重新配置的一部分的额外的SDM链路:在移动节点114与移动节点124之间引导链路,并且在移动节点106与移动节点112之间引导链路。此重新配置可以响应于基于MASNET150中的所收集的状态信息应用基于实用性的机构。
因此,在常规MANET中,路由操作(单播或多播)以对等方式执行,这可以是效率低下的并且限制了网络可扩展性,如图1A中所示。相比之下,在图1B中所示的实例中,主干152提供到一组移动节点的集中主干服务。所述主干服务减轻来自MASNET(其包含移动节点)的大部分路由开销,方法是使用报告给主干152或通过主干152收集的节点信息。在第14/161,410号和第14/161,406号美国专利申请案中描述了最佳单播路线的生成以及计算每多播群组的共享多播树。
图2呈现说明根据本发明的一个实施例通过主干中的控制器节点执行的示例性路由过程的流程图200。所述系统通过控制器节点收集与移动无线网络中的一个或多个无线节点相关联的状态信息(操作202)。所述控制器节点将预定的基于实用性的技术应用于所收集的信息(操作204)并且基于所收集的状态信息和基于实用性的技术分配一个或多个网络元件(操作206)。响应于一个或多个网络元件的分配,所述系统重新配置移动无线网络的逻辑拓扑结构(操作208)。所述系统采用SDM节点以基于所收集的信息和网络元件分配执行网络的重新配置(操作210)。
具有动态QoS的包的示例性路由
图3A呈现说明示例性移动自组网(MANET)300的图,其包含具有服务质量(QoS)标记的包的路由。网络300可以包含基站网络302和一组移动网络节点306到336。更确切地说,基站网络302可以包含一个或多个基站节点,例如,基站节点304,所述节点经由有线或无线网络彼此通信。移动节点306到336中的至少一些可以在无线网络上直接或经由多跳路径与基站网络302通信。类似于图1A中所描绘的网络300,网络300具有如同用于其中拓扑结构是相对静态的IP子网和MANET信道中的架构。举例来说,使用IP服务质量(QoS)标记,在移动节点处操作的应用可以仅指定简单的不变的优先级用于数据包。换句话说,跨越网络300传输的数据包具有静态优先级。基于例如包的目的地需要用于数据包的动态优先级的网络300中的应用需要通过不同优先级创建多个数据流。替代地,所述系统可以实施应用专用规则并且将这些规则放置在每个受影响网络元件的配置文件中。没有这些权变措施,业务可能在网络300中不正确的或不精确地分类。
在操作期间,如果移动节点306希望将高优先级的包342(通过高346优先级指示)发送到移动节点312,那么包342从移动节点306行进到移动节点308再到移动节点310,并且最后到达移动节点312。此外,因为仅存在一个多播流,当包342到达移动节点308时,所述系统还通过主干302将包342发送到移动节点336(通过高346优先级指示)。包342在行进中和达到两个移动节点312和336时保持相同优先级。同时,如果移动节点308希望将中间优先级的包344(通过中间348优先级指示)发送到移动节点336,那么包344从移动节点308行进到主干302并且再到移动节点336上。
然而,在其中包342意图用于仅到移动节点312的高优先级以及意图仅作为用于移动节点336的低优先级的情况下,从移动节点308到移动节点336的具有高346优先级的包342的流在相同路径上(从移动节点308到移动节点336)与具有中间348优先级的包344的流竞争。换句话说,高优先级的包342优先于中间优先级的包344。由于仅存在一个多播流,所以包344的流在主干云302上方的链路上是错误分类的。此外,包344的中间优先级流的一部分可能不恰当地掉落。
图3B呈现说明根据本发明的一个实施例的示例性移动应用专用网络(MASNET)350的图,其包含具有服务质量标记的包的路由。MASNET350可以包含主干云352(下文称为“主干352”)和一组移动网络节点306到336。更确切地说,主干352可以包含一个或多个控制器节点,例如,控制器节点354,所述节点经由有线或无线网络彼此通信。移动节点306到336中的至少一些可以在无线网络上直接或经由多跳路径与主干云352通信。在操作期间,控制器节点354收集涉及MASNET350中的移动节点306到336的状态信息,包含移动节点306发送高优先级的包342到移动节点312的应用专用需要。基于所收集的状态信息,控制器节点354执行两个动作:1)应用基于实用性的机构以分配网络元件;以及ii)重新配置网络350以获得所应用的实用性机构。控制器节点354可以应用通过动态微实用性分配包的基于实用性的机构使得包的优先级基于接收移动节点随着包行进通过网络350而改变。
在图3B中,当移动节点306发送高优先级的包342到移动节点312时,应用专用效用函数标记包342以告知网络350包342对于移动节点312是高优先级的(通过高366优先级指示),但是对于移动节点336仅是低优先级的(通过低368优先级指示)。以此方式,因为包342的优先级是动态地且精确地重新标记在从移动节点308到移动节点336的链路中的,所以包342的低368优先级流并不与包344的中间348优先级流在移动节点308与移动节点336之间竞争。因此,中间优先级包344正确地分类且到达移动节点336而不会不恰当地掉落。此外,响应于施加基于实用性的机构,控制器节点354可以重新配置网络使得直接在移动节点306与移动节点312之间存在SDM链路,允许从移动节点306到移动节点312的更有效的业务流。
图4呈现说明根据本发明的一个实施例的通过主干中的控制器节点执行的示例性路由过程的流程图400,其包含含有动态服务质量(QoS)标记的包的路由。在操作期间,所述系统在移动无线网络中将与一个或多个无线节点相关联的状态信息通过一个或多个无线节点发送到控制器节点(操作402)。在第一无线节点处操作的应用将含有指示包的优先级水平的QoS标记的包发送到在第二无线节点处操作的应用(操作404)。所述系统通过分配具有随着包行进通过网络而改变的动态微实用性的包应用基于实用性的交叉成层机构(操作406)。所述系统通过控制器节点基于所收集的状态信息和基于实用性的技术分配一个或多个网络元件(操作408)。所述系统随着包行进通过网络进一步修改包的动态微实用性(操作410)。响应于网络元件的分配,控制器节点重新配置网络的逻辑拓扑结构(操作412)并且采用软件定义的移动自组网(SDM)节点以重新配置移动无线网络的逻辑拓扑结构(操作414)。
示例性计算机及通信系统
图5说明根据本发明的一个实施例的促进大型MANET适应于移动无线网络中的无线节点的专用应用需要的示例性计算机及通信系统502。计算机及通信系统502包含处理器504、存储器506和存储装置508。存储器506可包含易失性存储器(例如,RAM),所述易失性存储器充当管理存储器并且可用于存储一个或多个内存池。此外,计算机及通信系统502可以耦合到显示器装置510、键盘512和指向装置514。存储装置508可以存储操作系统516、内容处理系统518和数据532。
内容处理系统518可包含指令,当通过计算机及通信系统502执行所述指令时可以使得计算机及通信系统502执行本发明中描述的方法和/或过程。具体来说,内容处理系统518可以包含用于通过控制器节点收集与一个或多个无线节点相关联的状态信息的指令(状态信息收集机构522)。内容处理系统518还可以包含用于基于所收集的状态信息和预定的基于实用性的技术分配一个或多个网络元件的指令(网络元件分配机构524)。内容处理系统518可包含用于响应于一个或多个网络元件的分配通过使用软件定义的移动自组(SDM)节点重新配置移动无线网络的逻辑拓扑结构的指令(拓扑结构重新配置机构526)。内容处理系统518还可以包含用于将预定的基于实用性的技术应用于在一个或多个无线节点处操作的应用的专用需要的指令,其中所述实用性技术最大化应用的性能(基于实用性的交叉成层机构528)。
内容处理系统518可以进一步包含用于通过一个或多个无线节点将状态信息发送到控制器节点的指令(通信机构520和状态信息收集机构522)。内容处理系统518可包含用于响应于网络的逻辑拓扑结构的重新配置满足基于重新配置逻辑拓扑结构在一个或多个无线节点处操作的应用的需要的指令(应用专用机构530)。
数据532可包含通过本发明中描述的方法和/或过程作为输入需要的或作为输出生成的任何数据。具体来说,数据532可以至少存储:包;与一个或多个无线节点相关联的状态信息,包含:涉及网络的资源的信息、网络的存储设施、在网络上运行的服务、网络上的业务流以及网络的拓扑结构的当前配置;涉及一个或多个无线节点的邻居节点的信息,包含涉及邻居节点的状态信息;涉及控制器节点的知识的信息;基于实用性的组网方法;基于实用性的交叉成层机构;应用专用实用性曲线;基于所述基于实用性的交叉成层机构的相关性函数;与所述包相关联的微实用性;分配动态优先级到每个包或内容对象的微实用性;在一个或多个无线节点处操作的应用的应用专用需要;网络拓扑结构的重新配置;到内容发布者的应用实用性的指示;以及到内容订户的包的相关性的指示。
此具体实施方式中所描述的数据结构以及代码通常存储在计算机可读存储媒体上,该计算机可读存储媒体可以是能存储计算机系统可用的代码和/或数据的任何装置或媒体。计算机可读存储媒体包含但不限于易失性存储器、非易失性存储器、磁性以及光学存储装置,例如磁盘驱动器、磁带、CD(光盘)、DVD(数字通用光盘或数字视频光盘),或能够存储目前已知或稍后研发的计算机可读媒体的其它媒体。
在具体实施方式中所描述的方法和过程可以实施为代码和/或数据,所述代码和/或数据可以存储于如上文所描述的计算机可读存储媒体中。当计算机系统读取并且执行存储于计算机可读存储媒体上的代码和/或数据时,计算机系统执行实施为数据结构以及代码且存储在计算机可读存储媒体内的方法以及过程。
此外,上文所描述的方法和过程可以包含在硬件模块或设备中。所述硬件模块或设备可包含但不限于专用集成电路(ASIC)芯片、现场可编程门阵列(FPGA)、在特定时间执行特定软件模块或一段代码的专用处理器或共享处理器以及现在已知或稍后开发的其它可编程逻辑装置。当硬体模块或设备启动时,这些硬体模块或设备执行其内部所包含的方法和过程。