Design and Evaluation of a NIC-Driven Host-Independent Network System

네트워크 인터페이스 카드에 기반한 호스트 독립적인 네트워크 시스템의 설계 및 성능평가

  • 임근수 (서울대학교 컴퓨터공학부) ;
  • 차호정 (연세대학교 컴퓨터산업공학부) ;
  • 고건 (서울대학교 컴퓨터공학부)
  • Published : 2004.12.01

Abstract

In a client-server model, network server systems suffer from both heavy communication and computational loads. While communication channels become increasingly speedy, the existing protocol stack architectures still include mainly three performance bottlenecks of protocol stack processing, system call, and network interrupt overheads. To address these obstacles, in this paper we present a host-independent network system where a network interface card (NIC) is utilized in an efficient manner. First, by offloading network-related portion to the NIC, the host can fully utilize its processing power for other useful purposes. Second, it eliminates the system call overhead, such as context-switching and memory copy operations, since the host communicates with the NIC through its user-level libraries. Third, it a] so reduces the network interrupt operation count as the host handles the interrupt in a segment instead of a packet. The experimental results show that the proposed network system reduces the host CPU overhead for communication system by 68-71%. It also shows that the proposed system improves the communication speed by 11-83% under heavy computational and communication load conditions.

전형적인 클라이언트-서버 컴퓨팅 모델에서 네트워크 서버 시스템들은 과중한 양의 계산과 통신 작업을 수행해야 한다 하지만 현재 네트워크 서버 시스템에서 사용되는 통신규약 스택의 구조는 크게 세가지 성능상의 병목을 가지고 있다. 호스트 시스템의 통신규약 스택의 처리, 시스템 호출 처리, 그리고 네트워크 인터럽트 처리에 따른 성능상의 병목을 개선하기 위해서 본 논문에서는 네트워크 인터페이스 카드에 기반한 호스트 독립적인 네트워크 시스템을 설계하고 성능을 평가한다. 첫째, 통신규약 스택 처리를 호스트에서 네트워크 인터페이스 카드로 분산시킴으로써 호스트 시스템의 통신규약 스택 처리에 따른 계산량을 줄인다 둘째, 이렇게 분산된 통신규약 스택과 사용자 수준의 라이브러리를 사용해 통신함으로써 통신규약 스택에 접근하기 위한 시스템 호출 비용을 제거한다. 셋째, 네트워크 인터페이스 카드에서 패킷이 아닌 세그먼트 단위로 인터럽트를 생성함으로써 호스트의 네트워크 인터럽트 처리 비용을 줄인다 실험결과 제안하는 네트워크 시스템을 사용할 경우 호스트의 통신규약 스택을 위한 계산량을 68-71% 감소시킴을 보인다. 이러한 특성으로 인해서 제안하는 시스템을 활용하면 호스트에 계산 및 통신 요구가 높은 경우에 통신 응답시간을 11-83% 가량 단축시킬 수 있음을 보인다.

Keywords

References

  1. U. Vahalia, UNIX Internals: The New Frontiers, pp.31-33, 1996
  2. T. von Eicken, A. Basu, V. Buch, and W. Vogels, 'U-Net: A User-Level Network Interface for Parallel and Distributed Computing,' In Proceedings of the 15th ACM Symposium on Operating Systems Principles, pp. 40-53, 1995 https://doi.org/10.1145/224057.224061
  3. J. Mogul and K. K. Ramakrishnan, 'Eliminating Receive Livelock in an Interrupt-driven Kernel,' In Proceedings of the 1996 USENIX Annual Technical Conference, 1996
  4. D. D. Clark, V. Jacobson, J. Romkey, and H. Salwen, 'An Analysis of TCP Processing Overhead,' IEEE Communication Magazine, Vol. 27, No. 6, pp. 23-29, 1989 https://doi.org/10.1109/35.29545
  5. G. R. Ganger, D. R. Engler, M. F. Kaashoek, H. M. Briceno, R. Hunt, and T. Pinckney, 'Fast and Flexible Application-Level Networking on Exokernel Systems,' ACM Transactions on Computer Systems, Vol. 20, No. 1, pp. 49-83, 2002 https://doi.org/10.1145/505452.505455
  6. M. Boosten, R. W. Dobinson, and P. D. V. Stok, 'MESH: MEssaging and ScHeduling for FineGrain Parallel Processing on Commodity Platforms,' In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications, 1999
  7. C. Csanady and P. Wyckoff, 'Bobnet: High-Performance Message Passing for Commodity Networking Components,' In Proceedings of tne International Conference on Parallel and Distributed Computing and Networks, December 1998
  8. G. Chiola and G. Ciaccio, 'Operating System Support for Fast Communications in a Network of Workstations,' Technical Report DISI-TR-96-22, 1996 (http://www.disi.unige.it/project/gamma)
  9. D. Dunning, G. Regnier, G. McAlpine, D. Cameron, B. Shubert, F. Berry, A. Merritt, E. Gronke, and C. Dodd. 'The Virtual Interface Architecture,' IEEE Micro, Vol. 18, No. 2, pp. 66-76, 1998 https://doi.org/10.1109/40.671404
  10. N. J. Boden, D. Cohen, R. E. Felderman, A. E. Kulawik, C. L. Seitz, J. N. Seizovic, and W.-K. Su, 'Myrinet: A Gigabit-per-Second Local Area Network,' IEEE Micro, Vol. 15, No. 1, pp. 29-36, 2002 https://doi.org/10.1109/40.342015
  11. S. Pakin, M. Lauria, and A. Chien, 'High Performance Messaging on Workstations: Illinois Fast Messages (FM) for Myrinet,' In Proceedings of the 1995 ACM International Conference on Supercomputing (SC), No. 55, 1995
  12. B. N. Chun, A. M. Mainwaring, and D. E. Culler, 'Virtual Network Transport Protocols for Myrinet,' IEEE Micro, Vol. 18, No. 1, pp. 53-63, 1998 https://doi.org/10.1109/40.653035
  13. P. Shivam, P. Wyckoff, and D. Panda, 'EMP: Zero-copy OS-bypass NIC-driven Gigabit Ethernet Message Passing.' In Proceedings of the 15th ACM International Conference on Supercomuting (SC), No. 57, 2001 https://doi.org/10.1109/SC.2001.10008
  14. D. E. Comer et al., Internetworking with TCP/IP, Vol. 1-2, 4th Ed., Prentice-Hall, 2000
  15. Myricom Inc., http://www.myrinet.com/
  16. J. C. Mogul, 'TCP Offload is a Dumb Idea Whose Time Has Come,' In Proceedings of the 9th Workshop on Hot Topics in Operating Systems, pp. 25-30, May 2003
  17. D. P. Bovet and M. Cesati, Understanding the Linux Kernel, 2nd Ed., O'Reilly & Associates, 2002