一种基于历史记录的信息中心网络的多径转发方法及系统的制作方法

文档序号:9814097阅读:302来源:国知局
一种基于历史记录的信息中心网络的多径转发方法及系统的制作方法
【技术领域】
[0001]本发明涉及一种基于历史记录的信息中心网络的多径转发方法及系统。
【背景技术】
[0002]基于TCIP/IP架构的互联网经历了几十年的发展,在不断适应上、下层出现的新技术的同时显得比较稳定。然而,各种新型应用的出现反过来又驱动着互联网朝着以信息为中心的方向发展,并暗示着一个基于信息交付、缓存和实时处理的新的通信模型,比如区分网络服务、云计算、社交网络等。现有的内容交付解决方案大多是在IP协议之上进行覆盖,比如现有的CDNs结构,然而它由于在服务保证、资源利用上的低效性而饱受争论。然而,和现有的点到点通信不同,学术界提出了了一系列的信息中心网络(Informat1n CentricNetWOrk,ICN)架构,尽管它们在命名的方式、数据块大小的分配等方面不尽相同,但是他们都支持基于名字的网络层协议。ICN架构提倡基于名字的通信,由用户端驱动、基于名字的路由实现,以单径或者多径的方式进行转发。当然它也支持泛在的网络缓存。
[0003]多径转发技术可以调整对各个链路的负载情况,提高缓存的利用率,同时还可以有效的减小链路失效、网络拥堵带来的影响。ICN架构中的多径技术比TCP/IP的多径更具挑战性。首先,TCP/IP是一个面向连接的拥塞控制方法,在预先计算好的静态路径上由源端执行拥塞控制算法;然而,在ICN中,除了客户端,中间节点也可以实时的对转发进行决策。其次,由于ICN中每个节点都有缓存,客户端发出的兴趣包既可以在源端得到满足,也可以在中间的缓存节点得到满足,这样在客户端来看网络的往返时延就具有比较大的波动区间,会导致窗口的频繁变动以及不必要的数据重传。最后,由于网络的节点有缓存功能,对于转发的数据包会进行相应的存储策略,在ICN中,请求的多径转发会影响网络缓存的效率,比如同一个请求,沿着某一路径可能在中间节点就得到了满足,而沿着另外的路径可能得到远端获取,相比之下,后者的缓存替换的更为频繁,导致网络的冗余度也更高。
[0004]传统的多径转发方案中比较典型的是随机转发方法,我们称之为Random。具体来说,如图1所示,假设一个ICN节点Rl有三个可选的下一跳节点{R2,R3,R4},并且都能到达服务器,对应的出口为{fl,f 2,f 3}。当Rl收到一个名字前缀为“/a”的请求,按照random策略,Rl会从三个可达内容7a”服务器的出口中随机的选出一个出口,如果选出的是出口 f 3,则将请求从f 3 口转发出去。
[0005]Carof igl1等提出了一个结合ICN特点的拥塞控制算法,我们称之为f ib-weight方法。在此方法中,ICN节点给FIB的每个前缀出口添加一个权重W,当需要转发一个兴趣包时,ICN节点根据FIB中可选出口的权重进行带权重的随机选择,然后将兴趣包转发出去。
[0006]出口的权重w与ICN节点平均每个端口的待定兴趣包数目有关(待定兴趣包为由该节点转发,但还未收到与所述兴趣包对应的数据包的兴趣包),假设ICN节点每个端口的平均待定兴趣包数目为avg_PI,当收到一个数据包或者一个兴趣包时,平均待定兴趣包数目进行更行,相应的权重也进行更新,
[0007]avg_PI(face,prefix)=α.avg_PI+(l-a).!(face,prefix),
[0008]w(face,prefix) = I/avg_PI(face,prefix),
[0009]其中,α是一个系数,I(face ,prefix)是一段时间内ICN节点的接口 face收到的前缀为Pr ef i X的兴趣包的数目,avg_P I是ICN节点各个接口平均的待定请求兴趣包的数目,总的待定兴趣包的数目,也就是对每个前缀的入口记录中接口数目的总和可以从ICN节点的PIT中获得,avg_PI (face ,prefix)是ICN节点更新后的接口 face的前缀为prefix的兴趣包数目,w(face,prefix)是ICN节点的接口face对于前缀为prefix的权重值。
[0010]如此,某个出口平均请求数目越大,意味着在未来一段时间内,从该出口返回的数据包的数目也越多,简单来讲,该出口将会比较繁忙,发生拥堵的可能性也较大,而出口的权重与平均待定请求的数目成反比,那么该出口的权重就会比较小。
[0011 ]参照图2,假设一个ICN节点的前缀为“/a”可选的三个出口 {fl,f2,f3}的权重分别为{wl,w2,w3},则转发前缀“/a”的兴趣包请求时,就会根据各个出口的权重进行带权重的随机选择算法,权重大的选中的概率也大,权重小的选中的概率也比较小。因此就避免了选择未来一段时间内将会比较繁忙的的出口,也就做到了负载的均衡,避免了网络可能的拥塞。
[0012]上述Random策略和Fib-weight策略存在如下缺点:
[0013]Random策略比较通用,实现起来也比较简单,能在一定程度上进行负载的均衡,避免网络的拥塞,但是该策略是多条路径上的随即转发,并没有考虑ICN自身的特点,没有对网络将来可能的状态进行预测,容易导致各条链路的负载不均衡而且无法进行改善。
[0014]Fib-weight策略将与每个出口关联的待定兴趣包数目作为一个考虑因素,待定兴趣包数目越大,在未来一段时间内返回的数据包也将越多,这也是结合了ICN中数据包回传路径与兴趣包转发路径相反的特点,然而在多径转发中,该策略也仅仅是进行转发,没有考虑网络的缓存情况,或者无法感知邻居缓存的情况,比如图2中,如果Rl此时要转发一个前缀为7a”的请求,而根据权重选择的出口为f2,但是R2由于之前历史的请求缓存的有前缀为“/a”对应的内容,而R3中没有,如此R3只能再根据自己的转发策略继续向服务器转发,而无法利用R2上的缓存。这样也就降低了网络资源的利用率,也降低了用户体验。

【发明内容】

[0015]本发明提供一种基于历史记录的信息中心网络的多径转发方法及系统,可以通过预判邻居节点缓存的内容来指导后续的转发请求(即兴趣包),使得缓存利用率得到提高,同时均衡链路负载,减小了网络的拥堵。
[0016]第一方面,本发明提供一种基于历史记录的信息中心网络的多径转发方法,ICN架构中包括多个节点,所述方法包括:
[0017]所述ICN架构中的第一ICN节点接收第二 ICN节点发送的兴趣包,所述兴趣包中包括所述兴趣包的名称;
[0018]判断预设的PIT表中是否有所述兴趣包的名称;所述PIT表中包括多条PIT记录,每条PIT记录中包括:待定兴趣包的名称、与所述名称对应的待定兴趣包的接收端口列表和该条PIT记录的生存时间,所述待定兴趣包为所述第一 ICN节点已经转发但还未收到与所述兴趣包对应的数据包的兴趣包;
[0019]若没有,则判断预设的历史记录表中是否有所述兴趣包的名称;所述预设的历史记录表中包括多条历史记录,其中每条历史记录包括:所述第一 ICN节点接收到的数据包的名称、所述数据包的接收端口、所述数据包的接收时间和该条记录的生存时间;
[0020]若有,则将所述兴趣包从目的端口转发给第三ICN节点,并用所述兴趣包的名称和接收到所述兴趣包的接收端口更新所述预设的PIT表;所述目的端口为所述预设的历史记录表中存储的与所述兴趣包的名称对应的接收端口。
[0021]进一步地,判断预设的历史记录表中是否有所述兴趣包的名称之后,所述方法还包括:
[0022]若没有,则判断预设的FIB表中是否有与所述兴趣包的名称匹配的名称前缀;所述FIB表中包括多条FIB记录,其中每条FIB记录中包括:名称前缀、与所述名称前缀对应的端口,以及所述端口的权重值信息;
[0023]若有,则根据所述名称前缀所属的FIB记录中各端口的权重值信息,将所述兴趣包转发给第三ICN节点,并将所述兴趣包的名称和接收到所述兴趣包的接收端口存储到所述PIT表中。
[0024]进一步地,判断预设的PIT表中是否有所述兴趣包的名称之后,所述方法还包括:
[0025]若有,则用所述兴趣包的接收端口更新所述PIT表中所述兴趣包的名称对应的接收端口列表。
[0026]进一步地,所述ICN架构中的第一ICN节点接收第二 ICN节点发送的兴趣包之前,所述方法还包括:
[0027]创建历史记录表,所述历史记录表中包括多条历史记录,其中每条历史记录包括:ICN节点接收到的数据包的名称、所述数据包的接收端口、所述数据包的接收时间和该条记录的生存时间。
[0028]进一步地,将所述兴趣包从目的端口转发给第三ICN节点之后,所述方法还包括:
[0029]接收数据包;所述数据包中包括所述数据包的名称;
[0030]根据所述数据包的名称判断所述预设的PIT
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1