论文部分内容阅读
当前,互联网的应用模式已经从发送者驱动的点对点通信为主转向接收者驱动的大规模信息获取为主。内容中心网络(Content Centric Network,CCN)顺应这一应用模式的转变,实现了内容接收者与内容发送者的解耦、内容名字与内容存储位置的解耦。CCN中泛在的内置缓存和天然的多播能力有效提高了网络资源利用率。但是,CCN在支持发布/订阅(Publish/Subscribe,Pub/Sub)应用时存在着以下局限性:首先,CCN中基于Pull模式的内容获取方式不能支持内容的主动推送;其次,CCN中可变长的层次化命名结构难以实现报文的线速转发;最后,CCN目前还只是网络实验室产品,难以在真实的网络环境中大规模部署。为应对CCN网络支持Pub/Sub应用时所面临的上述挑战,首先,本论文提出了基于Pub/Sub的CCN网络——Pub/Sub-CCN,实现了内容由发送者向接收者的主动推送;其次,本论文基于计数布隆过滤器构建路由节点转发引擎中的订阅表结构,实现报文的线速转发;最后,本论文将Pub/Sub-CCN网络部署在IPv6网络边缘,实现IP网络向CCN网络的渐进过渡。本论文完成的主要工作包括:1)设计Pub/Sub-CCN网络模型,包括:使用面向内容语义的分层描述符,建立发布消息与订阅消息间一对多的映射关系,提供基于主题的订阅能力;引入多个汇聚节点,使用最高随机权重算法建立汇聚节点与内容描述符间的映射关系,汇聚节点接收发布者的发布消息,并根据订阅者订阅消息建立的订阅关系,将数据消息主动推送给订阅者;引入订阅表,维护面向语义的订阅关系,订阅表中的订阅关系不会被返回的数据消息擦除,数据消息基于订阅表中维护的计数布隆过滤器实现线速转发;2)设计Pub/Sub-CCN网络与IPv6网络的融合框架,包括:引入边缘节点,边缘节点工作在IPv6和Pub/Sub-CCN双栈协议下,利用报文封装和解封装技术实现部署在IPv6网络边缘的Pub/Sub-CCN网络间的通信;使用MD5算法建立IPv6组播地址和内容描述符之间的映射关系,将Pub/Sub-CCN网络中的数据消息封装到IPv6组播报文中转发,实现面向语义内容接口与面向IPv6组播地址接口间转换,提高IPv6网络中的资源利用率;3)实现Pub/Sub-CCN仿真模型和系统原型,包括:拓展ccnSim网络模型实现Pub/Sub-CCN仿真模型;基于多个性能指标对比Pub/Sub-CCN和ccnSim;在IPv6网络上以OverLay的方式实现Pub/Sub-CCN系统原型;在不同的计算机节点上运行相应的程序代码,模拟订阅者节点、发布者节点、汇聚节点、边缘节点和内容路由节点。本论文的研究结果发现Pub/Sub-CCN网络能够提供基于主题的发布/订阅能力,实现内容由发布者向订阅者的主动推送。仿真结果表明Pub/Sub-CCN在典型的应用场景下相比CCN表现出更优的性能。系统原型验证了 Pub/Sub-CCN网络与IPv6网络融合部署的可行性以及系统功能的正确性。