论文部分内容阅读
随着网络技术的发展,网络存储技术越来越受到人们的重视。网络存储技术遇到的一个问题是如何把网络中闲置存储资源组织起来形成一个巨大的虚拟存储空间。P2P技术给网络存储技术的发展带来了新的契机。在动态P2P网络环境下构建大规模、高可靠、高性能的分布式存储系统,是近年来研究的热点之一。虽然P2P系统有与生俱来的高容错潜力,但P2P系统中每个节点具有很强的动态性同时系统易于遭到恶意用户的破坏,这使得构建P2P存储系统极富挑战。这是由于系统中的节点均负责存储数据,一旦某节点暂时离开或者恶意用户将存储在节点上的数据丢弃,那么就会造成系统中数据的不可靠性。因此,如何提供数据的持久存储,屏蔽这些系统错误成为近年来P2P存储领域的研究热点。本文致力于构建一个安全且可靠的P2P分布式存储系统,分析并研究了P2P存储的相关技术,最终在改进后的Kademlia覆盖网络上建立一个分布式的存储系统—KFS。文中首先分析了P2P网络的特点并着重介绍了当前知名的P2P覆盖网以及它们的路由机制,同时对现有的P2P存储系统及其相关技术进行深入研究。接着采用分层结构提出了一个基于结构化P2P覆盖网的分布式存储系统。在设计过程中,通过对用户的认证与数据加密机制来确保系统的安全性与数据的完整性。同时采用了文件分数据块的存储方案来实现系统的负载平衡与数据缓存。为了提高系统的可靠性,文中利用了纠删码与副本相结合的冗余策略来增强系统中数据的可用性与系统的容错能力。通过研究与分析,证明该系统具有了很强的安全性与较好的可靠性。本文的主要贡献在于以下三点:1.针对P2P存储系统的安全机制,提出了一种基于CA认证与数据加密的安全P2P存储技术。这对进一步研究P2P安全存储具有一定的参考价值。2.结合传统的Kademlia覆盖网路由机制,对其进行研究改进并提出了一种更为有效的路由算法,使得底层覆盖网更适合上层应用。3.对P2P存储系统进行建模并量化比较了纠删码与副本两种冗余策略对系统可靠性的影响。主要考查这两种方案在确保数据满足一定可靠率的情况下系统所使用的副本数与节点存储资源的使用。