论文部分内容阅读
随着网络技术的发展,千兆以太网的大规模应用是Internet发展的必然趋势,网络传输速率已经不再是数据传输的瓶颈,服务器的性能将是网络应用的关键问题。和文件服务器类似,流媒体服务器主要的工作是将本地的文件通过网络传送给客户。这类服务器在运行过程中必然产生大量I/O操作,而磁盘I/O的速率会很大程度上影响服务器性能,因此在服务器操作系统中就引入缓存(cache)机制提高系统I/O性能,如linux内核中的page cache机制,该机制就是将刚刚读过的数据缓存在内存中以至于下一次读相同数据时直接从内存读取而不用调用磁盘驱动,由于内存数据传输率远大于磁盘数据传输率,所以提高了系统性能。由于内存容量的限制,同时为了提高服务器I/O性能,在linux-2.6.21内核中,提出了一种基于IXP425 PCI插卡扩展缓存层次结构来提高系统的读I/O性能的系统,称之为PCI CACHE。通过IXP425 PCI插卡增加了一级系统磁盘数据缓存,从而扩充了整个系统缓存的容量,减少访问磁盘的频率,提高磁盘寿命和系统I/O性能。本文首先介绍了cache和分布式系统一些理论以及几个分布式系统和cache系统。然后介绍了linux-2.6.21内核中文件读页流程以及page cache机制。接着介绍了基于PCI插卡的分布式cache的设计和实现,其中包括对基于IXP425 PCI插卡的介绍和其驱动程序的实现,以及详细介绍了cache的管理,包括分布式的实现,cache块的读写以及cache的一致性。最后介绍了该分布式cache系统的一个应用——廉价流媒体服务器以及对该cache系统的测试。