计算机工程与应用 ›› 2007, Vol. 43 ›› Issue (12): 112-115.

• 网络、通信与安全 • 上一篇    下一篇

基于通用以太网卡的高性能通信库设计和实现

胡长军 李景祥 常晓东 李建江   

  1. 清华大学计算机科学与技术系 北京科技大学
  • 收稿日期:2006-09-06 修回日期:1900-01-01 出版日期:2007-04-20 发布日期:2007-04-20
  • 通讯作者: 李景祥

Design and implementation a high performance communication library based on commodity Ethernet NICs

  • Received:2006-09-06 Revised:1900-01-01 Online:2007-04-20 Published:2007-04-20

摘要: 采用硬件无关的设计方法,在Linux下实现了一个基于通用以太网卡的高性能集群通信库HPCL/Ethernet。该库利用Linux操作系统的网络设备接口实现了对各种以太网NIC(Network Interface Card) 的支持,在软件层实现一个轻量级通信协议支持消息的可靠传输。采用通道简化缓冲区管理,固定缓冲区策略来减少消息拷贝,采用中断回收技术、链路层直接处理消息来优化通信。测试结果表明,该通信库在传输小消息时具有很低延迟,在传输大消息时具有高带宽的特点。传输消息长度为1196字节时带宽高达1.18E+08 bytes/s,是千兆以太网卡硬件带宽的94.4%。

关键词: 集群, 通信库, 通用以太网, 中断回收技术, 固定缓冲区策略

Abstract: A high performance communication library independent of hardware called HPCL/Ethernet is implemented based on commodity Ethernet NICs on the Linux. HPCL/Ethernet supports commodity Ethernet NICs by using the network device interface on the Linux kernel. Message reliable delivery is guaranteed in the software layer. Channel abstract simplify buffer management and fixed-buffer policy adopted for avoiding message copy. Both interrupt reaping technology and the policy of message processing in link layer are also used to optimize communication. The experimental results show that the HPCL/Ethernet is characteristic of low latency with short payload message and high bandwidth with long payload message. It provides 1.18E+08 bytes/s of bandwidth which is 94.4% of hardware-level bandwidth for 1196 bytes message.

Key words: cluster, communication library, commodity Etherne, Interrupt reaping, fixed-buffer policy