时间:2015-12-26 15:22 文章来源:http://www.lunwenbuluo.com 作者:吴超,张尧学,周悦芝 点击次数:
(1)在What模型中,应用程序的中间组件可以令程序模型能够与互联网中传递的信息数据直接匹配,移除其他所有中间组件及其相关配置,大大提高了数据通信效率.
(2)What模型减少了单个会话持续时间,数据内容不再需要被嵌入到端到端的数据包.这样能够对数据来源安全性可以直接进行判断,相对IP网络中所采用的One-size-fits-all策略而言能够更好的保护信息安全性.
(3)What模型中由于每一个数据块都是唯一命名标识的,通过在沿路路由器中增加缓存模块,能够彻底解决路由回路问题.同时,On-demand驱动策略能够利用所有相连的节点进行数据转发,移除了异步转发,这样能够极大地减少网络中数据生产者与消费者之间的不协调通信.
3.2内容文件命名
What模型所具有的特点能够令网络中消息内容分发具有更强的灵活性.与Where模型不同,What模型中数据报文不再需要指定源地址与目标地址,取而代之的是直接采用内容对消息进行命名.因此,What模型修改了对内容文件命名的方法.尽管What模型提供了多种多样的文件命名方法,在ICN网络中则主要采用了其中3种:层次命名(hierarchicalnaming)、平面命名(flatnaming)以及属性命名(attribute-basednaming).
3.2.1层次命名
TRIAD与CCN共同提出了一种具有层次性的文件内容命名方法.层次命名法规定每个内容文件通常拥有一个类似webURL的标识名,而这个标识名通常可以由类似/lab/thu/icn.jpg的字符串构成.在标识名字符串中,符号/表示各个子域之间的分隔定界符.同时,层次结构文件名可以与web中基于URL的应用或者服务相兼容.进一步而言,这些应用或服务能够直接使用互联网中基于What模型转发的内容文件而不需要进行数据报编码解码,因此,网络中数据的易读性得到了进一步提升.层次命名法的优势还体现在信息名称具有可聚合性.可聚合性指信息名称可实现聚合,这样就能够增强路由表的可拓展性,进而对路由条目进行聚合归类.例如,对于任何以/thu/作为起始路径名的内容文件都可以被存储在同一条路由表记录中.例如查找数据/thu/cs/icn.jpg只需要找到起始路径为/thu/cs/的路由表记录,就可以找到这条路由表记录下聚集的所有数据.在大数据时代环境中,若信息名称不能够聚合,路由表大小将急剧膨胀,制约网络路由的可扩展性.
3.2.2平面命名
尽管层次命名增强了网络的可扩展性,使信息名称可聚合,减小了路由表大小.然而,层次名称却具有语义性,这在一定程度上限制了文件名称的生命周期.例如,当文件名称为/lab/thu/icn.jpg对应的文件失效时,采用层次命名的路由将无法找到数据源文件.另一方面,相同文件名称所对应的文件可能被多级网络缓存保存,此时文件名称无法聚合,路由表需要若干条记录分别保存文件位置信息,反而降低了路由表记录的聚合度.为了避免上述问题,DONA与PSIRP提出采用平面与自我认证(FlatandSelfcertifying)的方法对内容文件进行命名.通过计算文件位置与文件内容的Hash值,直接将获得的结果作为文件名.因此,平面名称通常由一系列不规则的数值或字符组成.平面文件名称直接由位置与内容决定,不再具有语义性并且文件名称具有全局唯一标识.尽管如此,由于平面名称不具有语义性,无法实现信息名称的可聚合.因此,平面命名方法并不能够较好地支持网络路由的可扩展性.
3.2.3属性命名
CBCB则认为根据内容文件的一系列属性值对(Attribute-ValuePairs,AVPs)能够对文件内容、文件位置进行判定识别.这种方法通常需要进一步抽象用户的兴趣内容,将信息内容本身压缩为若干对属性值对AVPs.用户通过对感兴趣的AVPs匹配进而找到信息文件.属性命名在文件名称的语义性与自我认证能力之间找到了一个平衡点,兼顾了网络路由的可扩展性与信息冗余.然而,属性命名方法却依旧带来了新的问题.首先,单个AVP可能拥有不同的语义,需要用户提供大量的AVPs保证信息匹配的精准性.其次,AVPs的语义性将影响搜索用户判断结果.一个错误的AVP可能导致整个匹配结果出现极大的误差.最后,路由缓存需要保存内容文件本身以及大量内容文件对应的AVPs,对路由缓存能力提出了苛刻的要求.
3.3信息数据路由
ICN直接以通过信息名称路由的特点令信息路数据路由也发生了巨大的变化.根据先驱研究,ICN中路由种类可以依据是否具有维护ICN路由表的系统分为无层次路由与层次化路由.
3.3.1无层次路由
在CCN,TRIAD以及NDN等采用层次命名方法的ICN体系结构中,由于文件内容名称具有可聚合能力以及IP兼容性,它们对路由性能要求较低,因而通常采用无层次路由.无层次路由与IP路由类似,不具有维护路由表的系统.同时,这类路由通告往往采用基于洪泛的方式.另一方面,由于ICN体系结构具有向前兼容能力.无层次路由能够继承IP路由部分功能,在某些方面能够与IP网络兼容.因此,采用无层次路由ICN网络体系结构能够在现有TCP/IP网络基础设施基础上通过路由策略实现增量部署.并且,层次名称在替代IP数据报文网络前缀的过程中原本的路由协议并没有发生明显的变化.
综上所述,在ICN中采用层次文件名能够实现IP网络中网络前缀聚合的功能,因此并不需要具有层次性的路由.采用无层次路由的ICN体系结构能够在现有的网络基础设施上增量部署.尽管如此,随着内容文件被替代或转移失效,依靠内容文件名称实现聚合程度会逐渐减小.除此之外,当内容文件发生更新时,洪泛转发带来的交通控制开销在一些情况下可能会是巨大的.
3.3.2层次化路由
ICN中层次化路由结构大致可以分为基于树形或分布式Hash表(DHTs)的层次结构.DONA采用了经典的树形层次化路由,通过路由器组成具有层次的逻辑树,每一个路由器维护各自下降子树发布的消息.无论何时,一旦有新消息发布、覆盖或移除,路由通告都能够沿着树形结构逐级传播,直到所有路由表都被更新.CBCB则通过建立基于源码的多播树来传递发布者与订阅者之间的内容.然而,这种树形结构路由增加了路由器的开销负担,制约了网络路由的可扩展性.同时,路由表大小将随着路由等级上升而变大,每个路由器需要缓存的信息内容将越来越多,根路由器甚至需要保存整个网络的信息.另外,网络路由可扩展性问题还表现在层次化路由采用平面命名方法,文件名本身并不具有数据聚合能力.为了避免树形层次化路由存在的问题,PSIRP提倡利用DHTs的平面性权衡路由器可拓展性与开销负担.在PSIRP中,对于数量为c的内容文件,每个路由器保存相同数量log(c)条路由条目.然而,由于DHTs由随机和统一放置的路由共同构造,DHTs路由结构探索数据的拓扑路径通常会是树形路由结构长度的几倍.
值得一提的是,尽管路由本身具有层次性,却依旧能够在兼容现有TCP/IP基础设施.类似的,内容文件被替代或转移失效时依靠内容文件名称实现的路由依然需要费时费力地更新数据信息.
3.4数据转发策略
ICN中对路由器数据结构做出了修改,ICN的每个路由器都需要维护三个数据结构:待定请求表(PendingInterestTable,PIT)、前向转发表(ForwardingInformationBase,FIB)以及内容存储器(ContentStore,CS).PIT用于记录经过的请求信息,依此实现所请求的内容顺利地传回请求节点.内容数据包按照PIT的提示,逐级向内容请求者转发.PIT记录中包含了每条兴趣包被转发到对应FIB的接口(s),当等待的内容传回后,该条目将从PIT中删除.FIB将请求数据包发往目的端.与IP路由器的FIB相比,ICN路由器的FIB除了包含信息名称前缀而不是IP地址前缀的特点外,还可以显示多个接口对于一个给定的名称前缀,同时向多个方向转发请求.CS类似于IP路由器的缓存,但是在每次通信结束后不会清空CS的内容,可以将该内容用于下次通信.CS是ICN中非常关键的理念,它可以帮助减少内容下载时延和网络带宽占用.此外,每个ICN路由器都有一个策略模块,通过它决定每个兴趣包转发方向.
与IP网络中严格按照IP地址分配进行数据转发的方式不同,ICN中数据转发过程主要分为3个步骤:
(1)接收到请求数据包后,首先匹配内容缓存,如果有相关内容,直接发送.否则在PIT中查询.(2)如果PIT中有相应的条目,添加请求端口到列表中.在这一过程中,将请求数据包截留是为了防止同样数据的重复请求.当有内容数据包回应时,将此内容发送给所有请求数据的端口.(3)若PIT中没有相关内容条目,则查询FIB.按照FIB的指示将该数据包转发到下一ICN节点.
3.5信息数据缓存
尽管数据路由可以分为层次性与无层次性,然而路由器都是通过以存储开销为代价的方式保证数据传输效率.随着硬件技术的不断发展,以CDN为代表的新型网络结构证明了这种以空间资源换取运行效率的均衡策略在经济方面与应用方面都能够得到认可与支持.在这个基础上,ICN的路由缓存策略根据信息数据缓存位置可以分为路径存储(Onpath)与非路径存储(Off-path).
3.5.1路径存储
On-path存储方式将数据信息沿途存储在通过名称解析系统获得的请求路径中.由于后续数据请求的信息已经存储在这条路径的中间节点缓存中,数据请求将不需要再到服务器端获取数据信息,取而代之的是采用就近原则,从最近的中间节点处获取信息.当有全新数据信息在经过路由器的同时将被完整备份.On-path存储方式具有实现部署简单、获取信息快速等优点.尽管On-path将数据沿着数据请求路径缓存能够达到减少网络传输延时,提高网络传输效率的目的.然而,由于路径中所有路由器在信息存储方面不具有协作能力,因此每一个中间路由器都需要对所有经过的信息进行存储备份.这就导致了在整个路径中多台路由器存储了冗余信息.在大部分情况下,由于只有拓扑最近的缓存源信息才会被访问,因此浪费了大量的存储空间并且存储的数据信息较少,缓存利用率低下.随着时间的推移需要缓存的数据信息将无限制增长,有限的存储空间无法满足无限的信息容量存储需求.另一方面,当名称解析路径与数据传输路径不同时,方式具有较低的传输效率.
3.5.2非路径存储
Off-path存储方式将数据信息存储在这条路径以外的缓存中,并且多个中间路由器间能够共同协商存储完整的数据信息,数据信息因此能够被分块存储,以此来解决缓存空间受限的问题.Off-path存储方式中名称解析路径与数据传输路径可以异步或者同步.当名称解析路径与数据传输路径异步时,各个路由器缓存都被当作消息发布者.而当名称解析与数据传输同步时,数据请求通过路由系统转发到各个缓存中.另一方面,根据缓存位置选择不同,Offpath存储方式又可以具体分为核心缓存与边缘缓存.核心缓存指数据信息缓存位置以核心路由为主,边缘路由尽可能减少缓存信息.然而,核心分布式存储增加了核心路由的存储负担,容易造成核心路由的整体性能下降.边缘缓存将信息存储在用户接入的边缘路由器中.当下一次其他用户请求数据信息时,若边缘路由器缓存中已经保存对应的数据信息,用户就可以直接从边缘路由器获得数据,从而保证整个过程具有较高的传输效率.Amble等人证明了在缓存信息过程中下一级路由器缓存时间往往是上一级路由器缓存时间的两倍,信息数据将逐渐缓存到网络边缘处,同时也证明了边缘缓存方式的性能高于核心缓存方式.由于核心路由往往承担整个网络的数据路由转发任务,核心分布式存储方式容易导致整个网络性能的下降.因此,在现有ICN体系结构中边缘缓存具有更大的优势,得到广泛的应用与支持.
4、ICN关键技术
大部分的ICN方案可以分为欧、美两个分支,现有ICN方案中具有里程碑式向导性工作成果包括加州大学伯克利分校提出的图3ICN体系结构研究里程碑尽管ICN的相关研究已经经过了十年时间,全球各个国家在过去五年中加大投入了ICN研究所需的财力物力,并取得了丰富的研究成果.通过对这些具有重大影响的里程碑成果进行比较,本节试图从现有方案中梳理并划分出ICN的关键技术,讨论可能存在的不足,从而明确未来ICN关键技术的研究要点.由于现有的ICN方案大都支持采用全新的网络体系结构来替代现有的Host-Centric网络模型的思想,并认为全新的体系结构能够直接解决现有TCP/IP网络中存在的关键问题.为了验证这些方法的可行性与经济适用性,本节依据前一节中ICN模型归类标准,从解析技术、路由技术、数据技术以及试验技术四个方面对这些方法做出梳理比较.NDN层次名称可聚合同步数据路由基于同步数据路由的On-path存储方式CONVERGENCE层次名称、平面名称部分名称可聚合异步数据路由基于异步数据路由的Off-path存储方式MobilityFirst平面名称不可聚合同步数据路由基于同步数据路由的Off-path存储方式。
4.1解析技术
ICN解析技术涉及信息命名与名称解析系统两个方面.其中,信息命名是ICN体系结构设计过程中的一个关键点.不恰当的信息命名会因为自身的语义性而对ICN体系结构中其他部分产生恶劣的影响.相对于其他信息命名策略而言,层次命名与平面命名被认为是最具有代表性的两种信息命名方法.尽管如此,对每种ICN信息命名方法优缺点的讨论却从未停止过,至今也没有达到统一认知.层次命名方法存在的争议主要是它允许系统规模通过层次信息名称实现聚合而带来的优势与缺点.当信息命名对象数量级达到1013~1016时,采用层次命名的网络系统相对于传统的DNS或BGP等系统具有更高的执行效率,往往能够处理这些系统所不能处理的任务.同时,由于在ICN体系结构中所有信息名称都将被保存在路由器缓存中,通过层次文件命名所有的路由决策都具有层次性,这就允许通过聚合文件名实现缩减路由表大小,极大地优化了骨干网的核心路由性能.然而,这也要求路由转发表中的信息名称必须根据网络拓扑分配.例如,NDN数据路由转发策略中.根据信息转发表FIB,所有名称前缀为/thu/cs的路由条目都能够通过接口C访问.当新的名称前缀/thu/ee,根据信息名称的可聚合性,新的前缀被聚合到前缀/thu/下,实现路由条目聚合并且用户能够通过接口F访问.然而,当访问路径仅仅只能够通过接口C时,FIB表中就需要创建一个新的路由条目而不能够直接进行聚合.因此,除非所有具有相同名称前缀的信息名处在同一区域,否则对应的路由条目不能直接聚合,需要将信息名称与信息存在的位置进行绑定匹配.遗憾的是,将信息名称与信息位置绑定的方法已经被证明在动态性等方面具有难以解决的根本性问题.因此,通过层次命名而实现的系统可聚合的优点并不是绝对的.平面命名方法的优势主要是能够避免位置身份绑定问题,因此使得信息数据具有更强的动态性.然而,平面文件名却难以聚合,这就导致路由表的大小难以控制.同时,采用平面命名方法的系统需要根据数据到来时刻不断更新数据结构.除此之外,人们对于信息命名的争论还表现在信息名称的人类可读性与自我认证能力无法兼顾.遗憾的是,目前并没有任何文件命名方法能够在这两方面找到一个完美的平衡点.现有的ICN方案主要通过外部辅助机制实现这个目的.例如,NDN依靠外部信任机制将签署信息绑定到人类可读的名称上,而MobilityFirst则依靠外部命名系统将人类可读名称绑定到GUIDs上.名称解析系统的工作性能很大程度上受到ICN解析技术影响.在采用层次命名的ICN体系结构中,名称解析系统存在的主要问题是如何避免信息名称与信息位置绑定.最初,NDN项目试图通过使用ISP服务商的信息名称作为名称前缀从而实现信息名称可聚合.然而,这个思想却因不能清晰完整地实现在避免信息与位置绑定的前提下令信息名称具有可聚合性的缺点而没有被进一步细化实现.CONVERGENCE试图通过在路由缓存部分信息名称前缀的方法绕过名称解析与信息位置绑定冲突的问题.然而,这就需要通过引进外部名称解析系统,并没有从根本上解决这个问题.另一方面,在采用平面命名的ICN体系结构中,名称解析系统存在的主要问题则是平面名称无法聚合而导致需要极大的信息名称存储空间.DONA与COMET通过积累所有信息名称,层层传递至顶级ISP进行解析.其中,DONA更直接地将所有信息都存储在顶层服务器,这将导致顶层解析服务器需要存储巨大的信息名称数据.COMET则试图通过限制传播信息名称解析范围来部分缓解这个问题.同时,COMET还提出创建一种清晰的可聚合名从而减少信息名称对语义表达需求.尽管如此,COMET提出这种可聚合名仍旧不能实现自我认证功能.PURSUIT依靠层次化的分布式Hash表(DHTs)分摊信息名称存储、膨胀名称路径解析、路由验证以及外部名称信息解析等过程中的开销负担.为了总能够在本地解决全局的信息请求,SAIL在本地与全局两个方面分别建立分布式Hash表(DHT),代价却是需要将信息名称与特定的自治域(AS)绑定.MobilityFirst采用一种基于Hash的策略来确定每一个GUID所对应名称解析服务的地址,进而这个普通地址路由获取名称解析服务.然而,MobilityFirst的部署前提是世界上所有的AS都具有相同实现机制.
联系方式
随机阅读
热门排行