论文部分内容阅读
当前,基于P2P技术的各类应用逐渐占据了互联网应用中的重要地位,对人类的生活习惯乃至思维模式都产生了不可忽视的影响。P2P技术的广泛应用也使得因特网的端到端的设计初衷面临了巨大挑战。P2P用户、P2P产业、传统服务提供商、网络运营商和政府部门之间存在巨大的利益博弈。为了尽可能地满足各方的利益,确保P2P技术在可控、安全、优化的前提下继续发展壮大,需要对P2P网络进行深入的测量和安全研究。近年来,随着P2P协议设计、路由算法、搜索优化等技术的日趋成熟, P2P网络测量与P2P网络安全已经成为新的研究热点。P2P网络测量主要关注P2P网络的拓扑结构、流量特征和可用性三个方面,而P2P网络安全主要研究P2P网络共享内容、节点甚至外部用户面临的安全威胁以及对应的防御措施。这两个子领域是相互关联、相互依赖并相互促进的。本文在P2P网络的性能和安全测量、P2P网络漏洞的利用与防御、P2P网络的性能效用模型等方面进行了深入而细致的研究。本文工作的主要贡献和创新总结如下:1. DHT网络中ID重复现象的测量与分析由于DHT(Distrubited Hash Ttable,分布式散列表)网络中节点查询和资源搜索都依赖于ID匹配,因此在基于DHT的P2P系统中ID的唯一性是基本假设和重要保障。但是,在当前部署的许多DHT实现中,例如Kad和Mainline,并没有强制限定ID的唯一性。许多之前针对DHT网络的测量和研究工作都没有考虑到节点之间的ID可能不唯一。不幸的是,本文通过主动DHT快照测量工具观察到有相当数量的DHT节点(Kad网络中19.5%的路由节点,Mainline网络中4.0%的路由节点)都存在重复的ID。这类ID重复现象可能会误导针对这些网络的测量和建模研究。考虑到Kad网络的广泛使用并且它的ID重复更严重,本文进而深入分析研究Kad网络中的ID重复现象。我们观察到有大量的Kad节点频繁改变其UDP端口,并且有部分重复ID所对应的全部节点都没有响应正常的Kad请求(本文称之为沉寂的组)。在简化设置下分析ID重复对Kad网络性能的影响表明,当前的重复程度降低了发布和搜索过程(publishing process and searching process)的性能,但对查询过程(lookup process)性能尚未造成明显影响。本文的测量和分析有助于进一步确定产生ID重复的根源,同时也有助于为没有强制ID唯一性限制的DHT网络选择最优的发布和搜索过程参数。2. DHT网络中查询流量的测量与建模在结构化的P2P网络中,查询过程对于节点定位和资源定位都很重要。本文测量和分析了Kad网络的查询流量特征。Kad是一个获得广泛使用的DHT网络,目前已经有一些工作对其用户行为进行了测量与研究。本文认为深入研究其流量特征也是十分有益的,因为它可以给出细化系统参数的详细反馈,帮助修复网络中的异常或者误用行为,并提供了真实的数据来建立P2P流量模型以模拟和评估将来的DHT设计。为了高效地从更多Kad节点上获取查询请求,本文设计并部署了一个名为Rememj的主动流量监控工具。从其采集到的七天的数据中,本文发现并描述了一些有趣的现象。本文进一步根据采集的数据刻画了查询流量的特征,该特征描述可用于构建典型的流量模型以评估DHT优化或者设计。该模型挖掘了查询流量的异构特征,深入描述了发生在不同日期、不同物理区域(包括欧洲、亚洲和美州)或者一天中不同时刻的流量特征。测量和刻画的各种特征包括节点分布、请求负载分布、目标分布以及目标之间的相似度。3.利用DHT网络实施大规模DDoS攻击的可行性与有效性研究基于Kademlia协议的DHT实现,例如Kad、Mainline和Azureus,已经广泛部署在许多P2P应用中。这些网络中的同时在线用户数目已接近1000万。对于涉及到如此巨量用户的DHT协议,必须仔细分析和评估其鲁棒性与安全性。本文分析了Kademlia协议,并发现其存在若干潜在的脆弱性。利用这些漏洞可以将DHT网络作为放大平台进行DDoS(Distributed Denial of Service,分布式拒绝服务)攻击。我们将可能的攻击分为三种类型:不对称反射攻击、路由表反射攻击和索引反射攻击。本文以Kad网络为例,设计并实现了一个DDoS攻击原型系统。通过在Kad网络上的真实实验表明,这些攻击可以将原始的攻击流量放大接近一千倍。本文还比较了不对称反射攻击与路由表反射攻击的性能和特点,并研究了攻击源的地理分布。本文最后讨论了若干放大上述攻击效果的方法和躲避检测的攻击策略,并列举了部分针对上述DDoS攻击的解决方案,分析了各种方案的利弊。4.应用层DDoS攻击的轻量级防御机制的分析与研究近年来,分布式拒绝服务攻击(DDoS)已经成为因特网上主机和网络的一个主要安全威胁。应用层拒绝服务攻击主要针对Web应用服务器,并且它从网络层报文和协议来看都是合法的,无法使用传统的网络层防御技术进行检测。如何有效检测并防御应用层DDoS攻击已成为当前学术界和工业界的一个研究热点。本文针对应用层DDoS攻击中的会话泛洪攻击,提出了一个基于信任管理的轻量级防御机制TMH。TMH的核心思想是综合考虑客户端的短期信任、长期信任、消极信任和滥用信任,对其历史表现进行评价,建立全局可信度;然后根据全局可信度进行会话连接请求的调度。本文还建立了通用的合法用户模型和由四种攻击策略组成的攻击者模型,并通过基于客户端的License授权机制来确保TMH的轻量级和可移动性。License用于用户识别(包括位于NAT之后的用户)和信息缓存两个功能。本文将TMH实现为一个Java包。模拟结果表明,TMH可以有效地防御会话泛洪攻击。当攻击者数目达到正常用户数目的20倍时,TMH仍然能够确保99%以上的合法会话请求可以正常地获得服务;而无TMH时只有低于18%的合法会话能被接受。文章最后还将TMH扩展到了分布式协作模式。5.利用DHT网络增强Web服务器能力的效用模型的分析与研究当前,Web服务器饱受Flash Crowds和应用层DDoS攻击的困扰,大大降低了其服务的可用性。由于它们是协议一致的,要在实际应用中有效地检测并防御它们非常困难。P2P网络可以被误用于放大DDoS攻击,而本文相信,它们提供的大量可用资源(例如分布式存储和网络带宽)也可用于减小Flash Crowds和DDoS攻击的影响。本文提出了一个服务器端初始化的方法,将已有的P2P网络作为分布式Web缓存,从而大大降低最终到达Web服务器的流量。作为实验,本文以Kad网络作为实现大规模分布式Web缓存的底层网络。我们在实现的原型系统上进行了深入的模拟和实验,以评估本文方法的可行性、有效性和鲁棒性。评估结果表明,本文模型在相同的连接和带宽消耗下,至少可以将待保护的Web服务器性能提高10倍。在节点波动性和特定DoS攻击下,缓存在Kad节点中的Web内容仍然具有很好的可达性;而用户访问延迟与正常情况下直接访问Web服务器相差不大;在Zipf分布的对象流行度下,该模型仍然可以获得较好的负载均衡性能。