论文部分内容阅读
传统的Internet是以客户.服务器模式来组织的。这种方式中随着用户及其需求的增多,服务器会负担过重,成为系统瓶颈。近些年来出现的一种新型的对等计算模式,可以有效的解决这一问题。在这种模式下,没有明确的服务器或者客户端,它们之间直接进行通讯以完成任务分配、信息交换或资源贡献。由于没有中心服务器,对等网络可以更广泛利用系统中的资源,具有更好的可扩展性。
一个对等网络是建筑在应用层的覆盖网络之上的。覆盖网络中的结点通过逻辑的连接彼此通讯。一个逻辑连接会包含多个物理上的连接。覆盖网络的使用有效地简化了系统的构建和维护,特别是针对拓扑结构的有效控制。然而,这样的逻辑简化使得目前很多针对对等网络的研究走入了纯理论化的误区,而偏离了实用化的要求。
首先,研究者们为了缩短查询开销(对应覆盖网络中的跳数)和结点状态维护开销(对应结点度数),设计了一系列特殊结构的覆盖网络。虽然这些结构在理论上有很好的效果,但是它们通常都忽略了覆盖网络和物理网络的不一致的问题:一条跳数很少的路径,可能消耗时延很长。我们提出了一组结点交换路由优化协议(PROP)来解决P2P系统的失配问题。它包括两个相关的策略:PROP-G(generic)和PROP-O(optimized)。这两种方法都能够自适应的调整覆盖网络的连接情况,从而有效地减少整个系统的逻辑连接平均时延。将它们和其他一些方法联合使用可以进一步提高系统性能。PROP-G,据我们所知,是第一个能够同时在无结构和结构化系统中使用的方式。同时,它还能够保持原有拓扑结构。另一方面,PROP-O在结点具有不同处理能力的异构环境中更为高效。和以往那些希望发现更好拓扑结构的研究不同,我们在接受已有各种结构共存的前提下,试图寻找一些优化的措施。
其次,在最初对于对等网络的研究中,往往把所有结点同等看待。但实际上,不同的结点具有不同的能力,包括计算能力、存储能力、可用带宽大小等等。忽略了这些异构信息,必然不能很好反映一个对等网络的特性。我们提出了一个两阶段的方法来发掘系统的异构性。第一阶段,在考虑多种异构因素的基础上,我们动态地调整系统结构。实验表明,查询时延显著地减少。如果有更多的查询指向强势的结点,系统的性能更好。第二阶段,我们提出了一种基于彩票调度的新型的负载均衡算法。结点的异构性可以被自然地量化为彩票调度中的tickets数。这样的负载均衡算法不仅能够平衡负载,而且能够平衡负载的移动。此外,第一阶段的优化可以帮助减少第二阶段负载移动的开销。
再次,起初人们认为对等网络没有中心控制,所以容错性会很好。但实际上,覆盖网络也经常面临不可预料的故障。这是由于系统中的结点作为独立的实体来去自由。同时,底层的物理网络也不总是可靠的。会遇到数据包丢失,网络链接错误甚至遭遇恶意攻击。一个实用的对等网络必然要保证保覆盖网络良好的鲁棒性。我们分析了一种严重的故障,即覆盖网络的分割情况,提出了相应的检测和恢复方法。首先,据我们所知,我们的工作是首次同时对于覆盖网络分割进行理论分析和实验评测,解释了half—life并提出了判断分割的条件half—success。其次,我们使用一种迭代的方法来检测潜在的网络分割。这种方法是分布式的、轻量的,比目前类似的方法更为迅速有效。最后,我们提出了一种抢先式的恢复方式。它比目前其他方式恢复更为迅速。
总之,我们在拓扑相关性,异构性和容错性三个方面做了一些工作,进一步缩短了对等网络理论基础和实用性之间的距离。