一种基于SDN的ICN路由方法与流程

文档序号:15864723发布日期:2018-11-07 20:20阅读:612来源:国知局
一种基于SDN的ICN路由方法与流程

本发明属于互联网技术领域。



背景技术:

据思科(Cisco)公司统计,全球网络流量在过去5年中增长了4倍。2012年~2017年期间,全球网络流量仍将以23%的年均复合增长率高速增长。并且随着新型应用(如物联网模式、云计算模式)的不断涌现,流量产生和传输方式也将发生根本变革。其中,大部分流量都将源自用户驱动的内容获取类应用。为了适应互联网应用由发送者驱动的端对端通信模式向接收者驱动的海量内容获取模式的转变,研究者们近年来提出了一类以信息为中心的新型网络体系架构,统称为信息中心网络(Information-Centric Networking,简称ICN)。目前对ICN的研究主要集中于ICN缓存机制的研究,在ICN路由方面,现有的ICN路由算法在路径选择上局限于考虑带宽或缓存等性能指标的某一特性,并根据这些特性的量化值选择较好的路径,然而,对网络动态变化的适应性较弱,并且这些方法不易于在现在网络中实现。

软件定义网络(Software-Defined Networking,简称SDN)将控制面与数据面相分离,两个面存在着双向交互的过程,在控制面,通过感知网络状态和网络资源,中央控制器对网络的逻辑控制功能和高层策略灵活地进行动态、优化地配置;而在数据面,可在不影响网络正常流量的情况下执行这一配置,进而实现网络资源的优化配置。对于ICN架构来说,数据在用户最需要的时机出现。那么,在ICN中融入SDN,就可利用SDN的高层集中控制、底层分散执行的思想,使得网络的上述这一本质功能能够更好地得以实现,SDN也为解决ICN架构下的核心设备路由器的设计和部署,实现从TCP/IP渐进式地过渡到ICN提供了新的思路。因此,最近,SDN和ICN融合的研究引起了研究者们的广泛关注。为此,本发明专利在SDN和ICN的融合架构下,感知网络资源和网络状态,利用复杂网络节点局部重要度的思想,提出了一种基于SDN的ICN路由方法,该方法不仅易于实现,而且在感知网络资源和网络状态基础上,更进一步的提高了ICN架构的网络性能。



技术实现要素:

本发明的目的是在SDN和ICN融合框架下,提出了一种全新的ICN路由机制,较好地解决了ICN的路由效率不高和控制不灵活等问题。

下面分别从社团、节点社团重要度、社团重要度和内容流行度等方面来说明本发明提出的缓存策略。

一、子域:对于大型网络,每个控制器管理多个交换机或路由器节点,实时感知该区域节点的状态,拓扑、缓存资源和ICN兴趣包转发路径等信息,本发明定义一个控制器下所管理的区域为一个子域。在一个子域内的节点接收到一个用户请求数据的兴趣包。首先对该节点的内容存储器(Content Store,CS)进行查询,如果在该CS中含有该兴趣包对应的内容,则该节点直接将该内容以数据包(Data packet)的形式发送给请求用户,完成该次内容请求。若在CS中未查询到该兴趣包对应的相关内容,则在待定请求表(Pending Information Table,PIT)中继续查询。若PIT含有与之匹配的信息,则将该请求端口添加于PIT列表中,否则,查询转发信息库(Forwarding Information Table),若在FIB中有与之匹配的内容,则根据FIB中的转发规则将兴趣包转发到下一跳节点。若在以上三个库内都没有查询到与之匹配的信息,则把该兴趣包转发给控制器,根据控制器所感知的网络状态和网络资源,生成查询该内容的路由机制。

二、子域社团:Internet网络结构的实证研究显示,Internet网络结构具有明显的社团特性,即在同一社团内部,节点之间连接相对紧密,而在社团之间的节点之间的连接相对稀疏。并且在同一社团内的大部分用户所关心的内容(兴趣)也是相似的。为此,在每个控制器所管理的子域下,根据复杂网络社团划分标准,将子域划分为不同的子域社团。在控制器的ICN兴趣包(Interest Packet)路由机制生成过程中,对于同一子域社团内的节点,采用最短路径机制进行路由,而对于不同子域社团的节点,采用通过社团数量最少的最短路径进行路由。

三、子域缓存容量重要度:定义子域内所有节点缓存容量和为该子域缓存容量重要度,如表示子域m的缓存容量和,其中Nm表示子域m内的节点数,Ci表示节点j的缓存容量。子域缓存容量重要度越大,在该子域内所缓存的内容就越多,因而在该子域内查询到所需内容的可能性就越大。子域i的邻接缓存容量重要度的集合为ICCi={CC1,CC2,...,CCm,CCn,...},ICC集合按其各子域缓存重要度进行标号,如对任意m<n,则有CCm<CCn,这些信息实时保存于各子域控制内。如在ICN兴趣包查询对应内容过程中,在本子域控制器内没有查询到该兴趣包对应的内容,此时,控制器将按照该子域的邻接缓存容量重要度集合,依次按照最短路径路由机制将兴趣包转发至与邻接子域相邻的边界节点,进行内容查询。

四、子域连接重要度:定义与子域有直接连接关系的子域的个数为该子域的连接重要度。子域的连接重要度越大,通过该子域达到其它子域的可能性就越大,查询到所需内容的可能性就越大。子域i连接重要度的集合为AILi={IL1,IL2,...,ILm,ILn,...},其中ILm表示子域m连接重要度,AIL集合按其子域连接重要大小进行标号,如对任意m<n,则有ILm<ILn,这些信息实时保存于各子域控制内。如在ICN兴趣包查询对应内容过程中,在本子域控制器内和与之直接邻接的控制器内也没有查询到该兴趣包对应的内容,此时,此时,则将邻居连接重要度最大的控制器设置为本控制器,进行下一轮的查询,直到达到查询最大次数为止。

附图说明

图1为基于SDN的ICN路由机制的实施示意图;

图2为控制器内兴趣包路由机制生成流程图。

具体的实施方法

本发明的实施框架的示意图如图1所示。

Step1:用户发送兴趣包至路由器1,如路由器1内的CS中缓存有与兴趣包对应的内容,则将内容以数据包形式返回至用户,如CS中没有与之对应的内容,然后查询PIT,如该列表内含有与之匹配的内容,则将该请求端口添加于PIT列表中,否则,查询转发信息库(Forwarding Information Table),若在FIB中有与之匹配的内容,则根据FIB中的转发规则将兴趣包转发到下一跳路由器。若在以上三个库内都没有查询到与之匹配的信息,则把该兴趣包转发给控制器。

Step2:在控制器内完成兴趣包路由机制的生成,其机制生成流程图如图2所示。

首先,查询本地控制器所管理节点内的缓存资源索引,如果本地控制器内缓存了该兴趣包对应的内容,并且缓存该内容的节点与请求兴趣包的节点在同一社团内,则按最短路径方式转发兴趣包;如缓存该内容的节点与请求兴趣包的节点不在同一社团内,则选择经过最少社团的最短路径方式转发兴趣包。

然后,如果本地控制器内的节点没有缓存该兴趣包所对应的内容,查询本控制器内邻接缓存容量重要度集合列表,依列表依次将兴趣包按照经过社团数最少的最短路径路由至边界节点,查询邻接控制器内的缓存信息索引,如含有该兴趣包所对应的内容,则将内容沿路返回至请求用户。

最后,如果轮询完控制器的邻接控制器,都没有查询到兴趣包所对应的内容,此时,将邻接控制器的最大连接重要度列为本地控制器,如果还没有达到查询最大次数,对该兴趣包进行进一步的路由。

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