论文部分内容阅读
随着Internet应用的蓬勃发展和宽带的普及,以及多媒体、视频图像处理技术的大量应用,传统的UNIX文件系统已无法满足大规模或超大规模文件安全存储、高速传输的需要,无法适应大规模实时并发访问的要求,并且在安全性、可扩展性和可用性等方面部存在问题。高性能、高可扩展性、高可用性、安全文件系统日益成为网络时代最重要的关键技术之一。 针对上述问题,本课题研究并实现了基于SAN(Storage Area Network)的高性能、单映象、安全Cluster文件系统——CFS。 本文对比SAN存储架构同传统存储架构DAS(Direct Attached Storage)、NAS(Network Aaached Storage)的不同,分析了不同存储架构的优缺点;同时介绍单映像Cluster文件系统的基本概念,及其研究设计所涉及的关键技术。 本文对系统可用性进行了分析,给出了可用性的度量定义和数学分析;在此基础上,分析、设计了系统NIC(Network Interface Card)级的高可用性,实现了Linux操作系统中提供NIC级高可用性的软件;最后提出了RAIN(Redundant Array of Inexpensive NIC)的概念,详细讨论了其技术实现方案,并给出了Linux下的参考实现。 本文详细讨论了Cluster系统中成员(membership)的管理问题,在分析集中式管理方法和分布式管理方法特点的基础上,提出了基于SAN的成员管理算法,并对其特点和性能进行了分析。 本文深入研究了单映像文件系统中锁的结构,提出并设计了分布式环境下动态锁结构,同时提出了可变粒度锁的概念,提出并设计、实现了可变粒度锁的分裂、融合算法。 本文对分布式环境下锁的管理方法展开研究,分析了集中式锁管理算法,提出并实现了可迁移的共用锁服务器算法,并对其特点进行了讨论。提出了基于SAN的分布式锁管理算法.该算法协议简洁,可扩展性好。 本文设计了32位安全处理器,针对Cluster文件系统应用特点提出了相应的体系结构。在确定安全处理器体系结构的基础上,设计并实现3DES加密协处理器和高性能的真随机数发生器:同时针对新的指令集结构完成了Linux环境下编译开发环境的设计与实现,将GNU的GCC编译环境成功移植到32位安全处理器上。 本文最后讨论、总结CFS各个层面的实现方法、特点,并对该文件系统的性能进行了多方面的测试,对测试结果进行分析。 CFS文件系统已经通过权威测试机构的测试,测试结果表明CFS文件系统性能优异,目前CFS文件系统已经在一些行业和领域取得了实际应用,具有很好的市场价值和前景。