Concepedia

Publication | Closed Access

Dummynet

894

Citations

10

References

1997

Year

TLDR

Network protocols are typically tested in operational networks or simulations, but operational testing makes it hard to control parameters such as bandwidth, delays, and queue sizes, while simulations are easier to control yet often approximate real traffic generators and protocol interactions. The paper demonstrates how to build a simple, flexible, accurate network simulator—dummynet—by minimally modifying an existing protocol stack to enable experiments on a standalone system. dummynet intercepts protocol-layer communications to simulate finite queues, bandwidth limits, and delays, runs in a fully operational system to use real traffic generators and protocols, and enables simple protocol experiments on a workstation; a FreeBSD TCP implementation is available from the author. The implementation is highly portable to other BSD-derived systems and requires fewer than 300 lines of kernel code.

Abstract

Network protocols are usually tested in operational networks or in simulated environments. With the former approach it is not easy to set and control the various operational parameters such as bandwidth, delays, queue sizes. Simulators are easier to control, but they are often only an approximate model of the desired setting, especially for what regards the various traffic generators (both producers and consumers) and their interaction with the protocol itself.In this paper we show how a simple, yet flexible and accurate network simulator - dummynet - can be built with minimal modifications to an existing protocol stack, allowing experiments to be run on a standalone system. dummynet works by intercepting communications of the protocol layer under test and simulating the effects of finite queues, bandwidth limitations and communication delays. It runs in a fully operational system, hence allowing the use of real traffic generators and protocol implementations, while solving the problem of simulating unusual environments. With our tool, doing experiments with network protocols is as simple as running the desired set of applications on a workstation.A FreeBSD implementation of dummynet , targeted to TCP, is available from the author. This implementation is highly portable and compatible with other BSD-derived systems, and takes less than 300 lines of kernel code.

References

YearCitations

Page 1