High Performance Networking for TCP-based Applications

Overview

The Transmission Control Protocol (TCP) is one of the universally accepted transport layer protocols in today's networking world. The introduction of gigabit speed networks a few years back had challenged the traditional TCP/IP implementation in two aspects, namely performance and CPU requirements. In order to allow TCP/IP based applications achieve the performance provided by these networks while demanding lesser CPU resources, researchers came up with solutions in two broad directions: user-level sockets and TCP Offload Engines. Both these approaches concentrate on optimizing the protocol stack either by replacing the TCP stack with zero-copy, OS-bypass protocols such as VIA, EMP or by offloading the entire or part of the TCP stack on to hardware. However, these offloading techniques have not been completely successful in avoiding the multiple copies and kernel context switches, mainly due to certain fundamental bottlenecks in the traditional TCP implementation including the memory traffic associated with the data streaming semantics, buffering for out-of-order packets, and several others.

Objectives

  • Design and Implementation of DDP and MPA over 10-GigE
  • Analysis of High Performance User-Level Sockets over InfiniBand
  • Efficient Protocol Offload Engines on Programmable NIC

Description

As a part of this research, we have taken up the challenge of identifying these bottlenecks and implementing rectifying algorithms. Our approach to this problem involves the development of the Direct Data Placement (DDP) and the Marker PDU Aligned (MPA) protocols, where the data is directly placed into the user buffer, thus avoiding the intermediate copy and buffering of data. The challenges in this project include the message segmentation algorithm and the data re-assembly queue. To support the applications which are designed to take advantage of the data-streaming capabilities of TCP, we have retained the current sockets implementation, giving the user an option to choose either of them.

Journals (1)

1 H. Jin, P. Balaji, C. Yoo, J. -Y. Choi, and DK Panda, Exploiting NIC Architectural Support for Enhancing IP based Protocols on High Performance Networks OSU-CISRC-5/04-TR37, Nov 2005.

Conferences & Workshops (9)

1
2
3
4
5
6
7
8
9

Technical Reports (2)

1 P. Balaji, W. Feng, and DK Panda, The Convergence of Ethernet and Ethernot: A 10-Gigabit Ethernet Perspective, OSU-CISRC-1/06-TR10
2 H. Jin, S. Narravula, G. Brown, K. Vaidyanathan, P. Balaji, and DK Panda, Performance Evaluation of RDMA over IP: A Case Study with Ammasso Gigabit Ethernet NIC, OSU-CISRC-6/05-TR40