论文部分内容阅读
随着P2P计算模式的兴起、网络带宽的大幅增加和Internet端系统计算力的迅速增强,原先被忽视的终端系统成为了一种宝贵的资源。如何充分利用这端系统资源,在高动态的P2P网络环境中构建大规模、高可扩展、高可靠、高的分布式存储系统,成为近年来研究的热点之一。在本篇论文中,首先讨论和总结了分布式存储的发展历史和现状,并在对P2P技术的研究现状进行了系统、全面的分析和总结的基础上,设计了一种基于P2P的分层次存储系统SmartHSS(Smart Hierarchical Store System Based-P2P)。SmartHSS既吸取了结构化网络的优点,同时利用了混合非集中式的优点来避免结构化网络的缺点。SmartHSS采用两层网络结构,第一层是目录服务器DSP(Directory Service Provider)组成的DHT覆盖网络,其作用是记录用户节点的信息和行为以进行集中管理与控制;第二层是用户节点组成的客户端层,用来存储用户的数据。采用这种结构的好处是:引入服务器易于管理与控制用户节点,同时采用DHT网络来组织服务器,可以避免单点失效等缺点。具体关键技术如下:首先,本文在研究了现有DHT路由算法的基础上,设计了一个分布式哈希表(Distributed Hash Table,简称DHT)服务,为SmartHSS提供了分布式可靠存储和快速查询平台。然后,本文考察了当前的数据持久存储方案,根据SmartHSS的特点,提出了一个适合SmartHSS的数据持久存储方案SmartDDS(Smart Data Durable Storage)。接着,在总结了常见内容存储可靠性保证机制的优缺点后,考虑到SmartHSS的实际需求,实现了一套内容失效恢复机制SmartCRM(Smart Content Recovery Mechanism)。SmartCRM在SmartDHT上维护系统全局状态,采用“软状态”探测内容丢失,并运用peer to peer(简称P2P)技术互传恢复内容。最后,为了能够高效地实现SmartHSS的各个服务器模块,本文在Linux2.6 epoll高性能IO事件通知机制的基础上,采用面向对象的思想,建立了一个在复杂业务逻辑中能处理与多种通信实体交互的高性能服务器架构SmartESF(Smart Efficient Server Framework)。