论文部分内容阅读
作为分布式系统的一个应用,对等网络正以其高扩展性获得越来越多的关注。对等网络又称为P2P(peer-to-peer)网络,P2P网络不采用传统的C/S架构,在P2P中单个节点既充当服务器又充当客户,因此可以充分利用闲职在网络边缘的客户节点资源,提高了资源利用率,增强了系统扩展性。但是由于P2P系统的分布式特点,单个节点可能选择提供服务,也可能选择不提供服务,或者选择提供低质量的服务,甚至提供虚假或者恶意的服务(攻击),由此引入了更多的公平性问题和安全问题。我们因此需要一种有效的机制激励用户提供高质可靠的服务。在传统网络中,服务总是由服务器节点提供,这个问题并不突出。
为了更好的激励用户提供服务,我们引入了信誉度维护机制。通过对每个用户计算和维护一个信誉度,表征用户以往对系统的贡献,以此提供区分服务,激励用户提供服务。通俗的说,信誉度高的节点获得更高质量的服务,信誉度低的节点获得低质量的服务。在这个框架下,我们面对如下几个问题:1)如何进行区分服务:即,在得知某些节点的信誉度和其它系统参数下,向哪些节点提供怎样的服务;2)如何计算和更新信誉度:在一个节点提供服务后,如何根据本次服务的好坏以及该节点的历史信誉度,计算得到新的信誉度;3)如何维护信誉度:由于P2P系统的分布式特性,信誉度应当被安全的分布式维护,分布式特性引入很多安全问题,我们需要保证信誉度不被恶意节点窜改。
本文第1章介绍了P2P系统出现的背景,分类及其应用,重点针对文件共享系统和流媒体系统进行介绍。
第2章引出我们需要解决的问题:如何激励用户提供可靠高质的服务。介绍已有研究,给出了博弈论和应用密码学两个理论基础,以及它们在信誉度维护中各自扮演的角色。
第3章利用博弈论的思想,提出一种针对Receiver-driyen P2P流媒体的计费算法。该算法主要目的是在博弈论的框架下降低流媒体系统的服务开销。通过更好的选择服务节点来降低开销;通过博弈论设计的计费算法来保证服务节点正确汇报自己的开销,防止服务节点的错误报价,以此真正降低服务开销,激励节点提供服务。该计费算法对博弈论中的VCG算法进行改进。本章实际上讨论了如何利用信誉度进行区分服务的问题:给定一些潜在的服务节点,如何选取服务节点和如何进行计费。
第4章提出一种利用双重信誉度抵制whitewashing攻击的算法。所谓whitewashing攻击,是指现有的P2P系统大多鼓励新节点加入网络,因此赋予新节点较高的信誉度,但是恶意节点可以在信誉度降低之后重新更换身份进入网络,危害系统性能。双重信誉度算法可以用于文件共享或者流媒体系统中,基本思想是通过对新加入节点维护两个信誉度,一个信誉度表征其获取服务的能力,另一个信誉度表征其提供服务的能力,一方面激励它提供服务,一方面对它采取不完全信任的策略,以此过滤掉新加入节点中的不良节点,防止whitewashing现象。本章实际上针对新加入节点讨论了如何更新计算信誉度的问题。第5章提出一种基于hash-chain的链式信誉度存储方案。在P2P系统中,单个节点的信誉度必须维护在其它节点上,信誉度维护节点存在窜改自己维护的信誉度的可能。链式存储方案基本思想是通过hash算法让信誉度维护节点维护的交易信息彼此相关,防止维护节点丢弃任何信誉信息。这种方案可以更好的保证信誉度维护节点不能破坏自己维护的信誉度,防止节点之间的勾结和恶意诋毁。本章实际上讨论了P2P系统如何安全维护信誉度的问题。
第6章进行总结,并提出下一步工作计划。