P2P技术的下一个路口
- 来源:互联网周刊 smarty:if $article.tag?>
- 关键字:P2P,技术,路口 smarty:/if?>
- 发布时间:2011-04-26 14:50
目前的P2P技术还远未成熟,需要更多相关技术的发展来促进它。
本刊记者 丁曰卿
P2P技术的发展,经过了很多个阶段。从最初的集中目录式结构,到采用分布式网络的纯P2P网络模型,再到基于超级节点的混合式网络模型,最后到采用分布式哈希表(DHT)技术的结构化网络模型。其中的每一步,都跟技术的发展息息相关。目前的P2P技术还远未成熟,需要更多的相关技术的发展来促进它。
什么是P2P技术?
P2P是互联网整体架构的基础。在TCP/IP协议层,网络内的每个节点都是平等的,没有客户端和服务器的区分。P2P技术实际上是在应用层面展现了这种平等的关系,通过在节点之间直接交换来共享资源和服务。在P2P网络结构中,每个节点都具有客户端和服务器的双重功能,可以同时作为服务使用者和服务提供者。P2P技术的核心就是分布式对象的定位机制,这也是提高网络可扩展性,充分利用网络闲置资源的关键所在。迄今为止,P2P网络已经经历了4种不同的网络模型,各有优缺点。
集中目录式结构,1999年开站的音乐分享网站Napster是其典型代表。其特点是只在服务器端存放用户所拥有的文件信息,而实际的文件则存放在各个节点中。下载过程是直接在各个节点之间进行的,不需要通过服务器进行。这种网络结构非常简单,但是它显示了P2P技术巨大的优势和吸引力。不足之处在于,仍然具有中心化的特点,需要依赖服务器来对文件信息进行搜集和检索。
纯P2P模式的分布式网络模型也被称作广播式的P2P模型。它取消了集中的中央服务器,每个用户随机接入网络,并与自己相邻的一组邻居节点通过端到端连接构成一个逻辑覆盖的网络。对等节点之间的内容查询和内容共享都是直接通过相邻节点广播接力传递,同时每个节点还会记录搜索轨迹,以防止搜索环路的产生。2000年3月出现的Gnutella网络就属于这种模型。它解决了网络结构中心化的问题,扩展性和容错性较好,但是Gnutella网络中的搜索算法是以泛洪的方式进行,控制信息的泛滥消耗了大量带宽并很快造成网络拥塞甚至网络的不稳定。同时,局部性能较差的节点可能会导致Gnutella网络被分片,从而导致整个网络的可用性较差。
混合式网络模型的典型代表是Kazaa模型,它在纯P2P分布式模型基础上引入了超级节点的概念,综合了集中式P2P快速查找和纯P2P去中心化的优势。Kazaa模型将节点按能力不同(计算能力、内存大小、连接带宽、网络滞留时间等)区分为普通节点和搜索节点两类(也有的进一步分为三类节点,其思想本质相同)。其中搜索节点与其临近的若干普通节点之间构成一个自治的簇,簇内采用基于集中目录式的P2P模式,而整个P2P网络中各个不同的簇之间再通过纯P2P的模式将搜索节点相连起来,甚至也可以在各个搜索节点之间再次选取性能最优的节点,或者另外引入一新的性能最优的节点作为索引节点来保存整个网络中可以利用的搜索节点信息,并且负责维护整个网络的结构。由于普通节点的文件搜索先在本地所属的簇内进行,只有查询结果不充分的时候,再通过搜索节点之间进行有限的泛洪。这样就极为有效地消除纯P2P结构中使用泛洪算法带来的网络拥塞、搜索迟缓等不利影响。同时,由于每个簇中的搜索节点监控着所有普通节点的行为,这也能确保一些恶意的攻击行为能在网络局部得到控制,并且超级节点的存在也能在一定程度上提高整个网络的负载平衡。
结构化网络模型,其与非结构化模型的根本区别在于每个节点所维护的邻居是否能够按照某种全局方式组织起来以利于快速查找。结构化P2P模式是一种采用纯分布式的消息传递机制和根据关键字进行查找的定位服务,目前的主流方法是采用分布式哈希表(DHT)技术,这也是目前扩展性最好的P2P路由方式之一。由于DHT各节点并不需要维护整个网络的信息,只在节点中存储其临近的后继节点信息,因此较少的路由信息就可以有效地实现到达目标节点,同时又取消了泛洪算法。该模型有效地减少了节点信息的发送数量,从而增强了P2P网络的扩展性。同时,出于冗余度以及延时的考虑,大部分DHT总是在节点的虚拟标识与关键字最接近的节点上复制备份冗余信息,这样也避免了单一节点失效的问题。
新技术促进P2P的应用发展
P2P网络因为其去中心化的特性以及泛洪广播的技术机制,使得在实际的应用中存在一定的问题。随着新技术的出现和新的网络架构的实施,P2P应用所遇到的种种问题也在逐渐的得到改善和解决。
IPv6的应用将促进P2P的发展。IPv6把IP地址由32位增加到128位,从而能够支持更大的地址空间,增加了P2P网络可用的节点数。IPv6 地址的编码采用类似于CIDR的分层分级结构,如同电话号码。简化了路由,加快了路由处理速度。自然也就加快了P2P网络中每个节点之间的查询和传输速度。使用IPv6的节点之间,不再需要NAT技术。在IPV4阶段,为了解决IP地址资源不够的问题,产生了NAT技术。借助于NAT技术,私有(保留)地址的“内部”网络通过路由器发送数据包时,私有地址被转换成合法的IP地址。这种IP地址转换技术,使得很多的P2P网络无法大规模应用。因为对于一个内网的节点来说,其他节点根本无法直接连接到它。随着IPv6的应用普及,NAT技术将会逐渐被取代。此外,在 IPv6 中还加入了关于身份验证、数据一致性和保密性的内容。这对解决P2P的安全问题有很大的帮助。
由于许多P2P应用程序同时运行客户端和服务器端的应用程序,所以它对上行带宽和下行带宽都要占用,而且很多P2P应用使用了泛洪式的查询技术,这就会导致大量的广播消息充斥整个网络,增加网络流量。因此,P2P的应用都面临着严重的带宽占用问题。2月16日,中国电信在北京宣布全面启动“宽带中国·光网城市”工程,计划在3-5年内使宽带用户的接入带宽在目前2-4M的基础上,跃升10倍以上。电信运营商的全面网络升级,给需要大量带宽的P2P应用带来了无限的可能。
移动DSN架构的实施也将推进P2P的进程。移动互联网让人们生活变得更加便利的同时,也带来了流量快速增长的难题。移动互联网数据流量增速远远超过无线带宽的增长速度,给移动网络带来了巨大的压力。因此有必要引入基于P2P技术的分布式体系的新的移动互联网架构。中国移动的DSN架构就是这样一个体系架构。自2008年11月DSN技术白皮书发布以来,中国移动研究院将于今年4月再次发布DSN2.0技术白皮书,而在DSN2.0中,将进一步明晰分布式业务网络的技术架构和具体实施规范。随着DSN2.0技术白皮书的发布,分布式P2P技术构建移动互联网架构的研究将进入一个新的阶段。
……
本刊记者 丁曰卿
P2P技术的发展,经过了很多个阶段。从最初的集中目录式结构,到采用分布式网络的纯P2P网络模型,再到基于超级节点的混合式网络模型,最后到采用分布式哈希表(DHT)技术的结构化网络模型。其中的每一步,都跟技术的发展息息相关。目前的P2P技术还远未成熟,需要更多的相关技术的发展来促进它。
什么是P2P技术?
P2P是互联网整体架构的基础。在TCP/IP协议层,网络内的每个节点都是平等的,没有客户端和服务器的区分。P2P技术实际上是在应用层面展现了这种平等的关系,通过在节点之间直接交换来共享资源和服务。在P2P网络结构中,每个节点都具有客户端和服务器的双重功能,可以同时作为服务使用者和服务提供者。P2P技术的核心就是分布式对象的定位机制,这也是提高网络可扩展性,充分利用网络闲置资源的关键所在。迄今为止,P2P网络已经经历了4种不同的网络模型,各有优缺点。
集中目录式结构,1999年开站的音乐分享网站Napster是其典型代表。其特点是只在服务器端存放用户所拥有的文件信息,而实际的文件则存放在各个节点中。下载过程是直接在各个节点之间进行的,不需要通过服务器进行。这种网络结构非常简单,但是它显示了P2P技术巨大的优势和吸引力。不足之处在于,仍然具有中心化的特点,需要依赖服务器来对文件信息进行搜集和检索。
纯P2P模式的分布式网络模型也被称作广播式的P2P模型。它取消了集中的中央服务器,每个用户随机接入网络,并与自己相邻的一组邻居节点通过端到端连接构成一个逻辑覆盖的网络。对等节点之间的内容查询和内容共享都是直接通过相邻节点广播接力传递,同时每个节点还会记录搜索轨迹,以防止搜索环路的产生。2000年3月出现的Gnutella网络就属于这种模型。它解决了网络结构中心化的问题,扩展性和容错性较好,但是Gnutella网络中的搜索算法是以泛洪的方式进行,控制信息的泛滥消耗了大量带宽并很快造成网络拥塞甚至网络的不稳定。同时,局部性能较差的节点可能会导致Gnutella网络被分片,从而导致整个网络的可用性较差。
混合式网络模型的典型代表是Kazaa模型,它在纯P2P分布式模型基础上引入了超级节点的概念,综合了集中式P2P快速查找和纯P2P去中心化的优势。Kazaa模型将节点按能力不同(计算能力、内存大小、连接带宽、网络滞留时间等)区分为普通节点和搜索节点两类(也有的进一步分为三类节点,其思想本质相同)。其中搜索节点与其临近的若干普通节点之间构成一个自治的簇,簇内采用基于集中目录式的P2P模式,而整个P2P网络中各个不同的簇之间再通过纯P2P的模式将搜索节点相连起来,甚至也可以在各个搜索节点之间再次选取性能最优的节点,或者另外引入一新的性能最优的节点作为索引节点来保存整个网络中可以利用的搜索节点信息,并且负责维护整个网络的结构。由于普通节点的文件搜索先在本地所属的簇内进行,只有查询结果不充分的时候,再通过搜索节点之间进行有限的泛洪。这样就极为有效地消除纯P2P结构中使用泛洪算法带来的网络拥塞、搜索迟缓等不利影响。同时,由于每个簇中的搜索节点监控着所有普通节点的行为,这也能确保一些恶意的攻击行为能在网络局部得到控制,并且超级节点的存在也能在一定程度上提高整个网络的负载平衡。
结构化网络模型,其与非结构化模型的根本区别在于每个节点所维护的邻居是否能够按照某种全局方式组织起来以利于快速查找。结构化P2P模式是一种采用纯分布式的消息传递机制和根据关键字进行查找的定位服务,目前的主流方法是采用分布式哈希表(DHT)技术,这也是目前扩展性最好的P2P路由方式之一。由于DHT各节点并不需要维护整个网络的信息,只在节点中存储其临近的后继节点信息,因此较少的路由信息就可以有效地实现到达目标节点,同时又取消了泛洪算法。该模型有效地减少了节点信息的发送数量,从而增强了P2P网络的扩展性。同时,出于冗余度以及延时的考虑,大部分DHT总是在节点的虚拟标识与关键字最接近的节点上复制备份冗余信息,这样也避免了单一节点失效的问题。
新技术促进P2P的应用发展
P2P网络因为其去中心化的特性以及泛洪广播的技术机制,使得在实际的应用中存在一定的问题。随着新技术的出现和新的网络架构的实施,P2P应用所遇到的种种问题也在逐渐的得到改善和解决。
IPv6的应用将促进P2P的发展。IPv6把IP地址由32位增加到128位,从而能够支持更大的地址空间,增加了P2P网络可用的节点数。IPv6 地址的编码采用类似于CIDR的分层分级结构,如同电话号码。简化了路由,加快了路由处理速度。自然也就加快了P2P网络中每个节点之间的查询和传输速度。使用IPv6的节点之间,不再需要NAT技术。在IPV4阶段,为了解决IP地址资源不够的问题,产生了NAT技术。借助于NAT技术,私有(保留)地址的“内部”网络通过路由器发送数据包时,私有地址被转换成合法的IP地址。这种IP地址转换技术,使得很多的P2P网络无法大规模应用。因为对于一个内网的节点来说,其他节点根本无法直接连接到它。随着IPv6的应用普及,NAT技术将会逐渐被取代。此外,在 IPv6 中还加入了关于身份验证、数据一致性和保密性的内容。这对解决P2P的安全问题有很大的帮助。
由于许多P2P应用程序同时运行客户端和服务器端的应用程序,所以它对上行带宽和下行带宽都要占用,而且很多P2P应用使用了泛洪式的查询技术,这就会导致大量的广播消息充斥整个网络,增加网络流量。因此,P2P的应用都面临着严重的带宽占用问题。2月16日,中国电信在北京宣布全面启动“宽带中国·光网城市”工程,计划在3-5年内使宽带用户的接入带宽在目前2-4M的基础上,跃升10倍以上。电信运营商的全面网络升级,给需要大量带宽的P2P应用带来了无限的可能。
移动DSN架构的实施也将推进P2P的进程。移动互联网让人们生活变得更加便利的同时,也带来了流量快速增长的难题。移动互联网数据流量增速远远超过无线带宽的增长速度,给移动网络带来了巨大的压力。因此有必要引入基于P2P技术的分布式体系的新的移动互联网架构。中国移动的DSN架构就是这样一个体系架构。自2008年11月DSN技术白皮书发布以来,中国移动研究院将于今年4月再次发布DSN2.0技术白皮书,而在DSN2.0中,将进一步明晰分布式业务网络的技术架构和具体实施规范。随着DSN2.0技术白皮书的发布,分布式P2P技术构建移动互联网架构的研究将进入一个新的阶段。
关注读览天下微信,
100万篇深度好文,
等你来看……