NS-2 TCP-Linux: an NS-2 TCP implementation with congestion control algorithms from Linux

  • Authors:
  • David X. Wei;Pei Cao

  • Affiliations:
  • California Institute of Technology;Stanford University

  • Venue:
  • WNS2 '06 Proceeding from the 2006 workshop on ns-2: the IP network simulator
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper introduces NS-2 TCP-Linux, a new NS-2 TCP implementation that embeds the source code of TCP congestion control modules from Linux kernels. Compared to existing NS-2 TCP implementations, NS-2 TCP-Linux has three improvements: 1) a standard interface for congestion control algorithms similar to that in Linux 2.6, ensuring better extensibility for emerging congestion control algorithms; 2) a redesigned loss detection module (i.e. Scoreboard) that is more accurate; and 3) a new event queue scheduler that increases the simulation speed. As a result, NS-2 TCP-Linux is more extensible, runs faster and produces simulation results that are much closer to the actual TCP behavior of Linux. In addition to helping the network research community, NS-2 TCP-Linux will also help the Linux kernel community to debug and test their new congestion control algorithms.In this paper, we explain the design of NS-2 TCP-Linux. We also present a preliminary evaluation of three aspects of NS-2 TCP-Linux: extensibility to new congestion control algorithms, accuracy of the simulation results and simulation performance in terms of simulation speed and memory usage.Based on these results, we strongly believe that NS-2 TCP-Linux is a promising alternative or even a replacement for existing TCP implementations in NS-2. We call for participation to test and improve this new TCP implementation.