一种基于NDN网络架构的P2P文件传输方法技术

技术编号:9465322 阅读:224 留言:0更新日期:2013-12-19 02:56
本申请公开了一种基于NDN网络架构的P2P文件传输方法,当前用户上线后即可准确地维护其在线用户列表,并通过向NDN网络中发送搜索请求包来获取目的用户返回的搜索结果数据包,从而获取目标文件的详细信息,当前用户通过向NDN网络中发送下载请求包来获取目的用户返回的下载数据包,从而获取目标文件的分块,之后当前用户将目标文件的分块拼接得到完整的目标文件,从而实现在NDN网络中P2P文件的稳定传输。

【技术实现步骤摘要】
【专利摘要】本申请公开了一种基于NDN网络架构的P2P文件传输方法,当前用户上线后即可准确地维护其在线用户列表,并通过向NDN网络中发送搜索请求包来获取目的用户返回的搜索结果数据包,从而获取目标文件的详细信息,当前用户通过向NDN网络中发送下载请求包来获取目的用户返回的下载数据包,从而获取目标文件的分块,之后当前用户将目标文件的分块拼接得到完整的目标文件,从而实现在NDN网络中P2P文件的稳定传输。【专利说明】一种基于NDN网络架构的P2P文件传输方法
本申请涉及网络通信领域,具体涉及一种基于NDN网络的P2P文件传输方法。
技术介绍
P2P (Peer-to-Peer)网络是构建在IP网络之上的覆盖网,在P2P网络中,每一台主机既是客户端,也是服务器,每一台主机都贡献出自己的一部分系统资源,比如文件、带宽、外设等来为同一P2P网络中的其他主机服务。P2P网络的最主要用途之一是进行文件共享,它允许任意终端用户对等体(Peer)间直接通过因特网完成文件交换,不需要修改已存在的软件协议和网络的底层结构就能快速地添加新的网络功能。但是,目前TCP/IP网络架构下的P2P应用普遍存在以下几个问题:(I)现有P2P文件共享系统并不是完全去中心化的。实际上,P2P模式中也并不一定是完全无中心的,它可分为纯粹的P2P和混合P2P两类。纯粹的P2P模式是指所有参与的计算机都是对等点,各对等点之间直接通讯,自始至终完全没有中心服务器对对等点间的信息交换进行控制、协调或处理。而混合P2P模式则依赖于中心服务器去执行部分功能。目前P2P文件交换系统有以下几种不同的形式。一种是“中心文件目录/分布式文件系统”,其交换数据时是通过中央服务器来进行目录管理的。由于采用集中式目录管理,所以不可避免地存在单点瓶颈的问题。另外一类属于完全的P2P,这类系统没有中间服务器,更接近于绝对的自由,因为没有中间服务器,这样形成的P2P网络很难进行诸如安全管理、身份认证、流量管理、计费等控制。第三类系统是上两类系统的折衷——有中间服务器,但文件目录是分布的。(2)网络地址转换(NAT, Network Address Translation)的穿透问题是 P2P 技术发展所必须解决的主要问题之一。通过NAT上网时,只能由NAT内的主机主动向外部的主机发起连接请求,禁止外部主机主动与NAT内部主机建立连接。对于采用P2P方式的下载程序而言,由于NAT内的主机不能接收NAT外部的连接,从而导致连接数目过少,下载速度慢。因此P2P软件必须解决NAT的内部主机不能被外部连接的问题。(3)现有P2P文件共享系统仍然面临着中央服务器负载过大的问题。由于目前TCP/IP网络架构下的P2P文件共享系统中的某些功能仍需要中央服务器的支持,比如BT (Bit Torrent)中的tracker (中央目录服务器)、天网Maze中的用户服务器和心跳服务器等。当系统中出现大量结点动态的加入或离开时,会给这些中央服务器带来很大的负载。此外,利用中央服务器负责目录管理的服务因为受到服务器的限制,存在服务质量无法提高和单点崩溃的问题。(4)在现有P2P文件共享系统中,就近下载功能的实现方法并不是很精确。在P2P网络中,节点间距离是经常被研究的问题。从字面上,距离表示了节点间在空间上的相对关系,距离相对较近的节点可以互相称为“邻居”。TCP/IP协议以位置为基本要素,IP地址表示节点的位置信息,所以对于“距离”的定义十分直观。在现有的P2P文件共享系统中,距离计算的基本原理是根据用户IP的前X位(例如前16位)作为前缀进行分组。这一方法虽然操作简单,但其准确度不高。(5)现有P2P文件共享应用的最大优点是充分利用网络资源,但是下载效率并不是很理想,对网络带宽的利用率也不高。现有P2P文件共享应用虽然充分利用了用户个人的电脑及其上传、下载的速度,分摊了服务器的压力,但同时对网络设施提出了更高的要求,对网络带宽占用量极大且利用率不高,有时甚至会导致网络拥塞现象,而且不便于搜索,下载也不稳定。NDN网络介绍:当前广泛使用的计算机网络传输协议(TCP/IP协议)的核心思想是在上世纪六七十年代提出来的,当时计算机网络主要被设计用来解决资源共享问题,比如远程使用巨型计算机等,因而设计出来的是一种点对点(Point-to-Point)的通信模型,通常是一方提出使用资源,另一方则提供授权。但在经过半个世纪的发展后,计算机硬件设备已经变得非常廉价,同时整个互联网的发展速度超乎人们的想象,网络中的数据内容不断呈爆炸趋势增长。人们也逐渐将重点转移到想要获取的数据内容上,而不再是共享使用远程硬件资源。然而,网络通信模型却仍在沿用上个世纪六七十年代的设计理念,如果要获取数据,首先必须获知数据所在主机的IP地址信息,并通过建立端到端的连接来传输所需要的数据。这种设计给数据的传输带来了很多问题,比如数据信道的安全问题,网络拥塞问题,WIFI传输中的断开与重连问题等等。在这种背景下,以数据内容为核心的命名数据网络传输机制(Named Data Networking, NDN)应运而生。NDN 亦称为 Content-Centric Networking (CCN),是由美国著名的 PARC 研究所于2006年发起的关于未来互联网体系结构,即FIA (Future Internet Architecture)研究的项目,参与者包括美国十余所大学与研究所。该项目在2010年获得了美国国家自然基金(NSF)的资助。NDN项目的领导人主要有UCLA的张丽霞教授和PARC研究所的Van Jacobson,其中Jacobson以专利技术了 TCP/IP的拥塞算法而闻名,他提出NDN协议的目的正是为了解决TCP/IP架构下存在的诸多问题。Van Jacobson指出,在互联网数据爆炸的今天,人们使用互联网时关注于网络中包含的内容(What),而通信方式仍然是基于位置(Where)的,这种不一致带来了有效性和安全性等问题,解决的办法就是引入命名数据(Named Data),用“是什么”取代“在哪里”。NDN协议就是构建于这种命名数据的基础上的。NDN项目旨在开发一个新的互联网架构,来充分利用当前基于主机的点对点通讯的互联网架构的优势,并解决当前网络架构的不足,以自然地适应新兴的互联网通信模式。通过数据命名,而不是位置命名,NDN将数据变成最主要的实体。NDN协议框架以传播的数据为核心元素,依靠数据本身的信息通过构建合理有效的命名来完成数据传输,而不再需要关注数据的物理位置,这一特点更加符合当前互联网中大部分数据驱动应用的工作模式。目前的互联网保证数据容器(主机)的安全,而NDN保证内容的安全,这样的设计将数据可信和主机可信分离开来,使一些高度可扩展的通信机制变得可能,例如通过自动缓存来优化带宽。NDN为了兼容当前已有的网络协议,采用了一种“universal overlay”的设计。也就是说NDN理论上可以运行在任何网络之上,当然也包括传统的TCP/IP网络。CCNx工程是PARC的CSL实验室对NDN理论进行的一种开源工程实现,整个工程构建于传统TCP/IP网络之上,实现了 NDN中的Interes本文档来自技高网...

【技术保护点】
一种基于NDN网络架构的P2P文件传输方法,其特征在于,包括:当前用户创建一个空的在线用户列表,根据该空在线用户列表计算得到摘要值,并向NDN网络中发送同步请求包,所述同步请求包包括空在线用户列表的摘要值;若当前用户在预设时间内没有获取到其它在线用户根据所述同步请求包返回的同步数据包时,当前用户将自身加入到在线用户列表中,并更新当前在线用户列表的摘要值;若当前用户在预设时间内获取到其它用户根据所述同步请求包返回的同步数据包时,当前用户根据该同步数据包更新当前用户的在线用户列表及其摘要值,之后,当前用户再将自身加入到在线用户列表中,并更新当前在线用户列表的摘要值;当前用户向NDN网络中发送搜索请求包,所述搜索请求包包括目的用户信息,之后当前用户获取目的用户根据所述搜索请求包返回的搜索结果数据包,所述搜索结果数据包包括当前用户搜索的目标文件的信息;当前用户根据所述目标文件的信息向NDN网络中发送用于下载目标文件的下载请求包,并获取具有目标文件的在线用户根据所述下载请求包返回的下载数据包,所述下载数据包包括目标文件的分块,之后,当前用户将目标文件的分块拼接得到完整的目标文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:雷凯李立华于倩
申请(专利权)人:北京大学深圳研究生院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1