论文部分内容阅读
FCoE协议将光纤通道帧封装到以太网数据包内,具有可靠、高吞吐量、无损传输等特性,让存储网络FC-SAN的数据可以通过以太网无损的传输,实现了网络的融合。本文介绍了基于自主研发的FCoE适配器驱动程序的研究与设计,FCoE适配器使用Xilinx公司提供的Virtex6开发板实现,通过PCIE接口和服务器相连,因此本文的驱动包括PCIE驱动和以太网驱动。 介绍在Linux操作系统下驱动程序的设计与实现,在深入分析了FCoE协议栈和Linux下驱动编程关键技术的基础上,提出了FCoE适配器驱动程序的设计方案,主要包括了驱动程序的注册模块、初始化模块、中断处理模块以及数据包接收发送模块。Linux2.6内核建立了统一的设备模型,根据PCI驱动以及网络驱动相关的抽象模型,完成了FCoE适配器驱动程序关键模块的实现。为了提高在高速传输网络中网络驱动的数据包接收效率,设计了一种基于套接字缓冲区(sk_buff)预分配的数据包接收方法,该方法能够根据网络流量的高低,动态调整预分配套接字缓冲区的数量,防止在网络流量较低时耗费过多内存。 在完成驱动程序的设计之后,通过FCoE适配器和实验室网络互联,进一步对驱动程序进行功能测试、性能分析,结果表明驱动程序工作良好,改进后的数据包接收方法具有良好的性能,达到了预期目标。