命名数据网络中可扩展内容路由和移动性的方法和装置与流程

文档序号:18125244发布日期:2019-07-10 09:51阅读:283来源:国知局
命名数据网络中可扩展内容路由和移动性的方法和装置与流程

本申请要求2014年1月2日提交的申请号为14/146540、题为“命名数据网络中可扩展内容路由和移动性的方法和装置”的美国非临时专利申请的优先权,通过引用将其纳入本申请,就如同将其内容全文复制在此一样。

技术领域

本公开大体涉及命名数据网络(NDN)中的内容路由,具体涉及NDN的域间/域内移动性。



背景技术:

命名数据网络(NDN)项目旨在开发一种新的网络架构,可利用互联网现有的基于主机的点对点通信架构的优势——并克服其弱点——以自然地适应新兴通信模式。该项目对必须解决的技术难题——路由可扩展性、快速转发、信任模型、网络安全、内容保护和隐私以及基本通信理论——进行了研究,以证实NDN可作为未来的互联网架构。

该项目采用端到端的试验台的部署、仿真和理论分析,以对该架构做出评价,并且正在开发NDN协议和应用的规范和原型实现。NDN技术报告NDN-0001命名数据网络(NDN)项目对NDN项目计划稍有修改。

目前,NDN体系中还没有解决方案来处理包括NDN域间/域内移动性在内的移动性。

需要解决方案来处理包括NDN域间/域内移动性在内的移动性。目标包括提供可扩展性、在固定的基础架构元件上进行路由、路由/转发稳定性、处理内容消费者和内容提供者的无缝移动性、迭代位置解析和本地缓存。



技术实现要素:

本公开提供了解决方案,通过标识与寻址空间的完全解耦,处理包括NDN域间/域内移动性在内的移动性。本公开的一方面中,通过在报头中提供具有节点/域/全局范围的可变转发标签字段,实现标识从解析业务点的解耦。转发标签还允许利用SDN原理以及基于决策的全局解析进行基于多种决策的路由。本公开为待处理的内容路由/移动性或业务动态性提供了高度的灵活性。作为一种业务,移动性可通过识别需要移动性业务的名称空间并向网络主动注册来处理,其在请求(interest)消息中表示为业务标记。会话内移动性通过在内容响应中设置标记来实现,这指示所有业务路由器对移动名称空间重新解析。

附图说明

为了更完整的理解本公开及其优点,结合附图并参考下列描述,其中相同数字表示相同对象,其中:

图1显示为命名数据网络的网络系统;

图2显示为根据本公开一实施例的引入报头以改善域间/域内移动性的转发标签字段;

图3显示为根据本公开一实施例的无缝移动性方法;

图4显示为处理无缝移动性的网络系统;

图5显示为名称空间上的移动性;

图6显示为网络单元的示意图,所述网络单元可以是通过网络传输及处理数据的任何设备;及

图7为网络部件的示意图。

具体实施例

本公开引入和/或涉及下列网络部件:

命名实体:可以是业务/设备/内容/用户。

域控制器:用于名称解析和快速路径表(FPT)的本地域控制器。域控制器也参与基于分布式决策的实体ID交换和网络绑定,例如,BGP可用于此目的。

转发标签:为促进实体ID和解析点的完全解耦及基于决策要求,转发标签是临时的,并因此可以是节点/域/全局范围。

快速路径表:为了避免慢速路径解析,FPT表允许节点快速切换,只有流量的第一请求数据包需要解析。如果资源对象是移动的或业务被扩展或迁移,则可能需要重新解析。

实体ID:实体ID的含义与ICN识别对象的含义相同,也可使用任何通用的格式,如PID。但其对内容路由的实施方式有影响,本公开不受其影响。

移动性业务:向网络注册移动性业务的实体,从而创建名称:家庭网络的绑定。此外,ICN层通过设置移动性标记,主动对内容响应做出标记,使命名实体重新被解析。此外,请求也可以具有为网络设置的移动性业务标记,以通过FTP和局部控制解析来处理该请求。

本公开提供了解决方案,以处理包括NDN域间/域内移动性在内的移动性。所述方案通过标识和ICN允许的名称解析空间的完全解耦来实现,使得能够在NDN中进行,其通过请求/内容响应中的“转发标签”实现。请求中的转发标签可鉴于基于多种决策的路由,如利用SDN原理,以及基于决策的全局解析而设定。可选地,可设置响应中的转发标签,以允许应用程序获取位置符信息,该位置符信息可在随后的请求中设置,也可免除此项开销。

一实施例中,通过在NDN报头中引入可具有节点/域/全局范围的转发标签字段来实现名称从位置的解耦。由于考虑到细粒度路由/转发,解析可能发生在每一跳或发生在段的结尾,因此转发标签字段可具有节点/段范围。转发标签字段的范围由通过业务路由器在每个域,特别是在入口点和出口点进行的解析产生。多个域可对全局范围转发标签达成一致,这类似于确定端到端或路径段的IP位置符或MPLS标签。这使得内容路由/移动性的处理具有高度的灵活性。在一般的情况下,转发标签也可将显式路径或子路径编码为命名网络/路由器元件的级联;在这些子路径的出口点,解析可重复,以执行更多路由决策。

图1显示为根据本公开的支持无缝移动性的NDN网络100。系统100可包括多个移动节点(MN)110、多个提供对移动节点110的网络访问的连接点(PoA)120、多个内容路由器(R)130、以及多个互连的域控制器(AS)140。在网络100中,各个实体(例如,内容部分、数据块、移动实体或网络元件)可由标识符进行唯一识别。

本公开实现了NDN的域间/域内移动性,从而使各个NDN报头170均具有转发位置符字段180,本文中也称为转发标签,如图2所示。假定每个NDN报头170均具有独特的ID。有利的是,该转发位置符字段180使得可在网络100中的每一跳和每个域中进行决策。

远程内容ID的本地解析在AS 140这一级别通过解析控制器进行。每个AS 140均具有解析业务控制器。一方案中,每个AS 140的解析业务控制器通过分布式协议(BGP)或在全局控制器获得根权限(rooted)来彼此同步,使AS间具有连接性;或者当设备/用户/业务注册时,该解析业务控制器将其名称与用于查询名称解析的家庭域绑定,在这种情况下不需要同步。域业务控制器在多个域中逻辑叠加,是或不是(域内及域间)拓扑感知型都可以,并基于该方案管理业务目录绑定。

假定具有全局同步性时,实体如下所述:

本地/远程_名称_对象_id→网络地址/位置符

如果网络绑定是名称的一部分,则条目只是本地的,但是名称本身标识出家庭控制器业务,这种情况下这些条目只用于本地实体:

本地_名称_对象_id->网络地址/位置符

该解析也可通过解析服务器的逻辑叠加上的洪泛,或通过解析服务器之间的结构路由,例如,具有根目录的树解析所有的资源对象ID,或通过将实体ID与解析控制器业务绑定来进行动态确定;此处假定解析控制器具有全局可达性。

如果解析控制器为拓扑感知型,则该映射可以存在,否则假定该转发网络具有如何基于转发标签对请求数据包进行路由的信息。

对于本地内容:

本地_内容_id→本地_路由器_ID;以及

对于远程内容:

远程_内容_id->网络-ID

网络-ID->流量工程决策(例如,边界_路由器_ID)

此外,如果拓扑路由为分布式的,路由器本身应该能够基于通过分布式控制面添加的路由信息对转发进行处理。

有利的是,只有第一请求会通过慢速路径,一旦被解析,则创建快速路径表(FPT)条目。假定使用软态对FPT条目进行主动管理。为了保证效率,可只在边缘业务路由器处,即在网络中面向使用流量的入口点对FPT进行管理。其余的路由器可以基于名称进行转发,但该转发基于拓扑ID而非基于内容ID进行。

在远程域中,快速路径表(FPT)携带本地内容流条目,并可根据本地内容解析的结果添加数据。远程内容条目按需完成。

FPT具有两个转发数据结构,一个用于短期流量以支持内容/业务/主机级别的解析,另一个用于长期流量以支持网络/路由器级别的解析,NDN中,后者也可与FIB合并。对第二数据结构的需要取决于核心路由器是否具有对远程网络/路由器ID进行路由的能力。如果域路由是本地的,则转发标签只设置为本地域路由环境。

转发标签可以在解析后或通过FPT查找,在(基于之前定义的范围的)中间目标点进行交换。每次解析后,用新的流条目更新FPT。

内容提供者的无缝移动性本身可以至少两种可能的方式进行处理。首先,当内容提供者移动时,内容提供者可通过使用移动性标记位元标记内容对象的方式来通知任何此类移动。当业务路由器接收具有该移动性位元集的内容时,业务路由器可以尝试重新解析该资源对象。此时解析基础架构可重新解析资源-对象-id并应用新的路径决策,例如,如果内容提供者从一个域移动至另一个域,则可能需要应用全新的路由决策。

当数据包进入没有转发标签的域控制器(AS)140或达到方向点(in-direction point)时,域控制器(AS)140充当解析的慢速路径。例如,参照图1,只要Alice_dev_id在与业务路由器R7相关的PoAs 120周围移动,只需要进行本地更新。

只要实体是移动的,内容响应包括将被设置的移动性标记,否则其被取消设置。这使得业务节点可重新解析实体ID。

如果Alice_dev_id的业务路由器R改变,则需要域级别的更新。由于家庭域与实体ID绑定,外部控制器可对家庭控制器中的实体位置进行更新,而不需要控制器对任何信息进行同步。

如果Alice_dev_id移出域,则需要域间更新。

该方案对静态和移动内容均适用。

缓存/发布

BGP或MH-DHT之类的相似协议纯粹用于内容解析,不同于其在BGP中对FIB的管理作用。这减弱了BGP来自转发面的稳定性问题。

到达网络100的动态内容可使用内容名称而非内容储存进行本地缓存,以用于组播。

可对AS 140处明确发布的内容进行解析,以访问保存该内容的路由器R。

基于状态的反向路径转发,或源ID的明确解析,可用于在FPT中设置双向条目。

基于域的方法使本地决策可施加于本地以及远程内容,而集中的GNRS方法则不具有此能力。

说明性示例

鉴于图1并参照图3,下列示例阐明了本发明的优选方面。

标签为Alice的MN 110是内容提供者,而标签为Bob的MN 110是内容消费者。

步骤200中,Alice的设备(Alice_dev_id)保存有内容X。Alice向网络100请求该内容的业务移动性。Alice将/Alice_dev_id/X注册到为其提供服务的PoA 120中,此处为PoA-3(假定每个POA中都有委托代理(PA))。该网络将家庭网络id与该名称绑定,以支持移动性。/Alice_dev_id/X:AS-3/RS,其中RS代表解析业务(即控制器解析业务)。

步骤210中,PoA-3将该注册转发至其业务路由器130,即路由器R7。业务路由器R7在其FPT中创建本地条目:

/Alice_dev_id/X:AS-3/PoA-3

然后,路由器R7告知PoA-3,PoA-3也在其FPT中创建本地条目:

/Alice_dev_id/X:AS-3→Alice_dev_id。

步骤220中,业务路由器R7接着将(为可扩展性而聚合的)名称/Alice_dev_id/:AS-3注册到域控制器140,即AS-3中,AS-3在其业务路由表中创建映射:

/Alice_dev_id/:AS-3→AS-3

具有名称的网络关联可基于任何逻辑ID,但其需要映射到AS级别的可路由的网络名称,此处假设两者是相同的。

控制器根据需要解析与其他控制器的这些绑定。

如果控制器是拓扑感知型的,其基于某个路由决策从AS_ID→边界-位置符进一步映射。

路由器R7假定容器和内容之间逻辑分离。

域控制器140与其他域控制器140同步这些绑定。控制器140为拓扑感知型的,因此,其可从AS_ID→边界-位置符进一步映射。

步骤240中,Bob向Alice内容表达请求Alice_dev_id/X:AS-3/RS。

Bob的MN在其FIB中配置有默认的‘/’前缀,为/PoA-1(可进一步解析为另一位置符ID),用于下一跳,并将此设置为其转发标签。

接着请求被转发至服务于Bob的MN的PoA 120,即PoA-1。用于上行链路的PoA-1可避免任何解析,并将其直接转发至提供服务的路由器R1。

步骤250中,在路由器R1处如果不存在/Alice_dev_id/X:AS-3/RS的流条目,则步骤260中,路由器R1通过提供服务的域控制器AS-1进行解析。

步骤270中,只有当控制器为拓扑感知型时,域控制器AS-1将返回/Alice_dev_id/:AS-3到AS-3的映射,以及AS-3到多个路由器ID的映射。

由于这些条目是持续的且长期存在的,因此假定路由器ID通过FIB的可达性。路由器R1处的请求可基于控制器AS-3的响应进行组播。转发标签此时与边界节点标签交换并被组播进入网络100。在到达AS-3的边缘路由器R之前,所述步骤在每个域中进行迭代重复。

步骤280中,在AS-3的边缘路由器处,本地域解析的结果应定位到服务于Alice的MN的业务路由器R7。

转发标签设置为路由器R7,当路由器R7对其进行接收,并且具有PoA-3的FPT条目时,其中PoA-3具有/Alice_dev_id/X条目,则在/PoA-3进行相似的转发。然后在步骤290及300中可以得到Alice MN处的内容Alice_dev_id/X。

当Alice_dev_id在其家庭域中移动时,当前的连接点(路由器)关于该位置对本地控制器进行更新。所以任何新的会话可以解析至新的位置。

当Alice_dev_id在其家庭域外移动且Alice注册时,外部域可在其名称中(用其网络绑定)识别Alice的家庭域,并更新家庭控制器。

下面参考图4,图中显示处理无缝移动性的网络100。当Bob是移动的并移动至另一PoA时,该PoA显示为PoA-1,则应用程序(被通知后)或ICN层使用图2所示的移动性标记对内容响应进行标记。

由于移动性为一种业务,且内容流的集合需要所述支持,ICN层标记更为适合。

接收具有该移动性标记的内容响应的边缘路由器将FPT条目重新解析至其新的位置。

图4描述了Bob/x通过PoA-1、AS-2域控制器140的边缘路由器R4注册到网络100。AS-2域控制器140创建条目:Bob/x:AS-2→AS-2/PoA-2。接收具有移动性标记集的内容对象的边缘节点R1通过支持Alice的域控制器AS-1进行解析,其中Alice持有请求/Bob/x:AS2;AS2/PoA-1。就在Bob切换至PoA-2之前,Bob开始通过设置移动性标记对内容响应做出响应。

作为业务的移动性

由于产生代价(转发/控制开销等),只有需要时才在网络中请求移动性。移动性包括主动注册/注销,并可在内容、设备或业务级别启动。

移动性业务作为实体ID的一部分:

移动性_业务_标记作为名称的一部分而被包括。这包括标记移动的部件,例如,/ravi_device/content/x..:M_FLAG:N(意味着只有名称的1-N部件是移动的)。其允许网络用特别的方式处理这些请求。

分散的名称解析:

各个组织对名称空间进行管理。移动性业务请求(I:D)过程中,组织ID与名称进行绑定。D是业务解析点。/ravi_device/pics/x..:M_FLAG:2:att/nrs。

外部名称解析器更新家庭域以更新位置。在名称解析业务示例之间没有同步性,只有通知。

路径内重新解析:

在路径内通过名称解析业务修改转发标签。内容响应可具有移动性标记集,其导致所有业务路由器对移动实体重新解析。

名称空间上的移动性

参照图5,其示出了名称空间上的移动性。用户主动注册其要求移动性的名称空间。接着移动性基础架构保证快速名称解析业务,以处理会话内/会话间两种情况。

如下所述,网络知悉移动性前缀:

在注册或发布期望的移动实体期间,网络添加自己的移动性业务标签。所以对于/ravi_device/pics/..:M_FLAG:2,其表示业务路由器需要监视/ravi_device/pics前缀的任何流量,以保证移动性。

通过将名称前缀,例如/ravi_device,与家庭域名称解析业务绑定,得到/ravi_device/pics/x..:M_FLAG:1:att/nrs,此处att/nrs解析/ravi_device/pics,避免了名称解析服务器的同步性。这用于业务路由器处来自内容消费者的新流量。

考虑到多个域中具有不止一个内容消费者,对会话内的移动性进行处理。

如图2所示,将移动性标记引入内容响应,由于内容响应遍历所有业务路由器,且这些业务路由器具有家庭域信息,它们可对其FPT进行快速更新。

图6显示为网络单元1000的一实施例,网络单元1000可以是通过网络100传输和处理数据的任何设备。例如,网络单元1000可与上述的任何系统节点相对应或位于其中,例如MN、PoA、内容路由器R以及AS。网络单元1000也可配置用于执行或支持上述方案和方法。网络单元1000可包括一个或多个与接收器(Rx)1012耦合以从其他网络部件接收信号和帧/数据的入端口或单元1010。网络单元1000可包括内容感知单元1020,以确定将内容发送至哪个(些)网络部件。内容感知单元1020可使用硬件、软件或两者来实现。网络单元1000还可包括一个或多个与发射器(Tx)1032耦合以将信号和帧/数据传输给其他网络部件的出端口或单元1030。接收器1012、内容感知单元1020以及发射器1032还可配置用于执行至少部分以上公开的方案和方法,其可基于硬件、软件或两者。网络单元1000的部件可如图6设置。

内容感知单元1020还可包括可编程内容转发面区块1028和一个或多个可与可编程内容转发面区块1028耦合的存储区块1022。可编程内容转发面区块1028可配置用于执行内容转发和处理功能,如在应用层或L3,其中可基于内容名称或前缀以及将内容映射至网络流量的其他可能的内容相关信息而转发内容。该映射信息可维持在内容感知单元1020或网络单元1000的一个或多个内容表(例如,CS、PIT及FIB)中。可编程内容转发面区块1028可翻译用户的内容请求并相应地提取内容,例如,基于来自网络或其他内容路由器的元数据和/或内容名称(前缀),并存储内容,例如,在存储区块1022中暂时存储。可编程内容转发面区块1028之后可将缓存内容转发至用户。可编程内容转发面区块1028可使用硬件、软件或两者实现,并可在IP层或L2上操作。

存储区块1022可包括缓存1024,其用于暂时存储内容,如用户请求的内容。另外,存储区块1022可包括长期存储器1026,其用于存储相对长期的内容,如内容提供者提交的内容。例如,缓存1024及长期存储器1026可包括动态随机存取存储器(DRAM)、固态驱动器(SSD)、硬盘或其组合。

上述网络部件可以在任何通用的网络部件上实现,例如计算机或具有足够的处理能力、内存资源、网络吞吐能力以处理置于其上的必要工作负荷的网络部件。图7显示为典型的、通用网络部件1100,其适于实施本文公开的部件的一个或多个实施例。网络部件1100包括与存储设备通信的处理器1102(可称之为中央处理器单元或CPU),该存储设备包括第二级存储器1104、只读存储器(ROM)1106、随机存取存储器(RAM)1108、输入/输出(I/O)设备1110、和网络连接设备1112。处理器1102可以实现为一个或多个CPU芯片,也可以是一个或多个专用集成电路(ASIC)的一部分。

典型地,第二级存储器1104由一个或多个磁盘驱动器或磁带驱动器组成,用于数据的非易失性存储,如果RAM 1108不足以容纳所有的工作数据,则第二级存储器1104作为溢流数据存储设备。当选择执行加载到RAM 1108的程序时,第二级存储器1104可以用来对此类程序进行存储。ROM 1106用于存储指令,或可用于存储程序执行时读出的数据。ROM 1106为非易失性存储设备,相对于第二级存储器1104的较大存储容量,其存储容量通常较小。RAM 1108用于存储易失性数据,或可用于存储指令。对ROM 1106及RAM 1108的访问通常比对第二级存储器1104的访问速度更快。

一种有利的做法是,对整篇专利文件中使用的某些词语和短语的定义做出说明。术语“包含”、“包括”及其衍生表述的意思是包括而非限制。术语“或”是包容的,意思是和/或。短语“与……相关”、“与之相关”及其衍生表述的意思是包括、被包含于、与……互连、包含、包含于、连接至或与……连接、耦接至或与……耦接、可与……通信、与……配合、交织、并列、接近于、绑定于……或与……绑定、具有、有……的性质等。

虽然本发明描述了某些实施例以及一般相关的方法,但对所述实施例和方法的改变和置换对本领域技术人员来说将是显而易见的。因此,上述对示例实施例的描述并不对本发明产生限定或约束。同时可在不背离本公开的精神和范围的情况下,做出其他变化、替换和改变。

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