• Title/Summary/Keyword: TCP/IP 오프로드 엔진

Search Result 3, Processing Time 0.016 seconds

Implementation of a TCP/IP Offload Engine Using High Performance Lightweight TCP/IP (고성능 경량 TCP/IP를 이용한 소프트웨어 기반 TCP/IP 오프로드 엔진 구현)

  • Jun, Yong-Tae;Chung, Sang-Hwa;Yoon, In-Su
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.14 no.4
    • /
    • pp.369-377
    • /
    • 2008
  • Today, Ethernet technology is rapidly developing to have a bandwidth of 10Gbps beyond 1Gbps. In such high-speed networks, the existing method that host CPU processes TCP/IP in the operating system causes numerous overheads. As a result of the overheads, user applications cannot get the enough computing power from the host CPU. To solve this problem, the TCP/IP Offload Engine(TOE) technology was emerged. TOE is a specialized NIC which processes the TCP/IP instead of the host CPU. In this paper, we implemented a high-performance, lightweight TCP/IP(HL-TCP) for the TOE and applied it to an embedded system. The HL-TCP supports existing fundamental TCP/IP functions; flow control, congestion control, retransmission, delayed ACK, processing out-of-order packets. And it was implemented to utilize Ethernet MAC's hardware features such as TCP segmentation offload(TSO), checksum offload(CSO) and interrupt coalescing. Also we eliminated the copy overhead from the host memory to the NIC memory when sending data and we implemented an efficient DMA mechanism for the TCP retransmission. The TOE using the HL-TCP has the CPU utilization of less than 6% and the bandwidth of 453Mbps.

An Implementation of Socket Interface for TOEs (TOE를 위한 소켓 인터페이스의 구현)

  • Son, Sung-Hoon
    • Journal of Korea Multimedia Society
    • /
    • v.8 no.11
    • /
    • pp.1472-1482
    • /
    • 2005
  • In this paper, we propose a socket interface layer for large-scale multimedia servers that adopt TCP/IP Offload Engines (TOE). In order to provide legacy network applications with binary level compatibility, the socket interface layer intercepts all socket-related system calls to forward to either TOE or legacy TCP/IP Protocol stack. The layer is designed and implemented as a kernel module in Linux. The layer is located between BSD socket layer and INET socket layer, and passes the application's socket requests to INET socket layer or TOE. The layer provides multimedia servers and web servers with the following features: (1) All standard socket APIs and file I/O APIs that are supported (2) Support for binary level compatibility of existing socket programs (3) Support for TOE and legacy Ethernet NICs at the same time.

  • PDF

Design and Implementation of TOE Module Supporting Binary Compatibility for Standard Socket Interfaces (표준 소켓 인터페이스에 대한 바이너리 호환성을 제공하는 TOE 지원 모듈의 설계 및 구현)

  • Kang Dong-Jae;Kim Chei-Yeol;Kim Kang-Ho;Jung Sung-In
    • Journal of Korea Multimedia Society
    • /
    • v.8 no.11
    • /
    • pp.1483-1495
    • /
    • 2005
  • TCP/IP is the most commonly used protocol to communicate among servers, and is used in a wide range of applications. Unfortunately, Data transmission through TCP/IP places a very heavy burden on host CPUs. And it hardly makes another job to be processed. So, TOE(TCP/IP Offload Engine) is considered in many servers. But, most of TOE modules tends to not support binary compatibility for standard socket interfaces. So, it has problems that existing applications should be modified and recompiled to get advantage of TOE device. In this paper, to resolve upper problems, we suppose design and implementation of TOE module supporting binary compatibility for standard socket interfaces. Also, it can make a usage of multiple TOEs and NICs simultaneously.

  • PDF