고성능 Hybrid TCP/IP Offload Engine 구현을 위한 TCP/IP 프로토콜 분석

Analysis of TCP/IP Protocol for Implementing a High-Performance Hybrid TCP/IP Offload Engine

  • 발행 : 2005.06.01

초록

기존의 컴퓨터 시스템에서는 인터넷의 대표적인 프로토콜인 TCP/IP가 호스트 CPU에서 처리되는데, 이는 호스트 CPU에 많은 부하(load)를 발생시켜 전체 시스템의 성능을 저하시키는 문제를 야기한다. 최근 이러한 문제점을 해결하는 방안으로서 네트워크 어댑터에서 TCP/IP를 처리하는 TCP/IP Offload Engine(TOE)에 대한 연구가 활발히 진행되고 있다. 본 논문에서는 Linux 운영체제에 내장된 TCP/IP 프로토콜 스택의 구조를 분석하고, 통신을 수행할 때 프로토콜 스택의 각 함수에서 소모되는 시간을 측정하여 호스트 CPU에 부하를 발생시키는 주 요인을 분석하였다. 이러한 분석을 바탕으로 CPU에 많은 부하를 발생시키는 기능은 하드웨어로 구현하고 나머지 기능들은 소프트웨어로 구현하는 Hybrid TOE 구조를 제안한다.

TCP/IP, the most popular communication protocol, is processed on a host CPU in traditional computer systems and this imposes enormous loads on the host CPU. Recently TCP/IP Offload Engine (TOE) technology, which processes TCP/IP on a network adapter instead of the host CPU, becomes an important way to solve the problem. In this paper we analysed the structure of a TCP/IP protocol stack in the Linux operating system and important factors, which cause a lot of loads on the host CPU, by measuring the time spent on processing each function in the protocol stack. Based on these analyses, we propose a Hybrid TOE architecture, in which functions imposing much loads on the host CPU are implemented using hardware and other functions are implemented using software.

키워드

참고문헌

  1. Bierbaum, N., 'MPI and Embedded TCP/IP Gigabit Ethernet Cluster Computing,' Proceedings of 27th Annual IEEE Conference on Local Computer Networks 2002 (LCN 2002), pp. 733-734, Nov. 2002
  2. Kay, J. and Pasquale, J., 'Profiling and reducing processing overheads in TCP/IP,' IEEE/ACM Transactions on Networking, Vol. 4, No.6, pp. 817-828, Dec. 1996 https://doi.org/10.1109/90.556340
  3. Camarda, P., Pipio, F. and Piscitelli, G., 'Performance evaluation of TCP/IP protocol implementations in end systems,' IEE Proceedings of Computers and Digital Techniques, Vol. 146, No. 1, pp. 32-40, Jan. 1999 https://doi.org/10.1049/ip-cdt:19990246AdditionalInformation
  4. Zec, M., Mikuc, M. and agar, M., 'Estimating the Impact of Interrupt Coalescing Delays on Stedy State TCP Throughput, Interrupt Coalescing,' Proceedings of International Conference on Software, Telecommunications and Computer Networks, Oct. 2002
  5. Intel PRO/1000T IF Storage Adapter,' Data Sheet, http://www.intel.com/networklconnectivity/resources/ doclibrary/data_sheets/pro1000_T_IF_SApdf, Intel, 2003
  6. Satran, JI., Meth, K., Sapuntzakis, C., Chadalapaka, M. and Zeidner, E., 'Internet Small Computer Systems Interface (iSCSI),' IETF RFC 3720, http://www.ietf.org/rfc/rfc3720.txt, April 2004
  7. Aiken, S., Grunwald, D., Pleszkun, A. R. and Willeke, J., 'A Performance Analysis of the iSCSI Protocol,' Proceedings of the 20th IEEE/11th NASA Goddard Conference on Mass Storage Systems and Technologies (MSS '03), 2003 https://doi.org/10.1109/MASS.2003.1194849
  8. 'SLIC Technology Overview,' http://www.alacritech.com/html/tech_review.html, Alacritech, 2002
  9. 'iSCSI Controller,' Data Sheet, http://download.qlogic.com/datasheet/16291/isp4010.pdf, qLogic, 2003
  10. 'Adaptec TOE NAC 7711,' Data Sheet, http://graphics.adaptec.com/pdfs/ana_7711_datasheet.pdf, Adaptec, 2003
  11. 'Alacritech SES1001T: iSCSI HBA Competitive Analysis,' Benchmark Report, http://www.veritest.com/clients/reports/alacritech/alac_ses1001t.pdf, Veri Test, March 2004
  12. 'Unleashing File Server Potential with Adaptec GigE NAC 7711,' Benchmark Report, http://graphics.adaptec.com/pdfs/NAC_appbrief.pdf, Adaptec, 2003
  13. Deering, S. and Hinden, R., 'Internet Protocol, Version 6 (IPv6) Specification,' IETF RFC 2460, http://www.ietf.org/rfc/rfc2460.txt, Dec. 1998
  14. Recio, R., Culley, P., Garcia, D. and Hilland, J., 'An RDMA Protocol Specification (Version 1.0),' http://www.rdmaconsortium.org/home/draft-recio-iwaro-rdrnap-v.l.0.pdf, RDMA Consortium, Oct. 2002
  15. Cox, A., 'Network Buffers and Memory Management,' Linux Journal, Issue 29, Sep. 1996