Network Emulation with NetEm

Many protocols and applications perform poorly when exposed to real life networks with delay and packet loss. Often, it is costly and difficult to reproduce Internet behavior in a controlled environment. There are tools available for testing, but they are either expensive hardware solutions, proprietary software, or limited research projects. NetEm is a recent enhancement of the traffic control facilities of Linux that allows adding delay, packet loss and other scenario’s. Documentation and discussion of NetEm is maintained at http://developer.osdl.org/ shemminger/netem. NetEm is built using the existing Quality Of Service (QOS) and Differentiated Services (diffserv) facilities in the Linux kernel.