rwth-netprg/project
Steffen Vogel b0d23d852c added missing return values 2015-07-20 00:22:15 +02:00
..
libnl@d21790bf96 added submodule for projet phase 2015-07-12 18:04:47 +02:00
.gitignore first session work on project phase 2015-06-14 22:24:56 +02:00
Makefile fixed some dependicies in the Makefile 2015-07-20 00:21:51 +02:00
README.md added read 2015-07-19 16:19:36 +02:00
config.h huge commit of work.. 2015-07-19 16:18:40 +02:00
dist.c imported some code to handle netem delay distributions 2015-07-19 16:16:31 +02:00
dump.sh added little helper to show current status of Linux' traffic control system 2015-07-19 16:17:09 +02:00
emulate.c huge commit of work.. 2015-07-19 16:18:40 +02:00
hist.c added some existing source code for various smaller tasks 2015-07-19 16:17:50 +02:00
hist.h added some existing source code for various smaller tasks 2015-07-19 16:17:50 +02:00
main.c huge commit of work.. 2015-07-19 16:18:40 +02:00
mark.c added little utility to mark all outgoing packets of a program with a FW mark 2015-07-19 16:19:25 +02:00
probe.c huge commit of work.. 2015-07-19 16:18:40 +02:00
tc.c added missing return values 2015-07-20 00:22:15 +02:00
tc.h huge commit of work.. 2015-07-19 16:18:40 +02:00
tcp.c huge commit of work.. 2015-07-19 16:18:40 +02:00
tcp.h huge commit of work.. 2015-07-19 16:18:40 +02:00
timing.c added some existing source code for various smaller tasks 2015-07-19 16:17:50 +02:00
timing.h added some existing source code for various smaller tasks 2015-07-19 16:17:50 +02:00
ts.c huge commit of work.. 2015-07-19 16:18:40 +02:00
ts.h huge commit of work.. 2015-07-19 16:18:40 +02:00
utils.c added some existing source code for various smaller tasks 2015-07-19 16:17:50 +02:00
utils.h added some existing source code for various smaller tasks 2015-07-19 16:17:50 +02:00

README.md

Netem Tool

This tool uses the 3-way TCP handshake to measure the real RTT of a TCP connection.

Usage

Run TCP SYN/ACK probes to measure round-trip-time (RTT):

./netem probe 8.8.8.8 > probing.dat

The output of this command and be stored in a file or directly passed to the emulate subcommand:

./netem probe 8.8.8.8 | ./netem emulate
./netem emulate < probing.dat

Building

Install libnl

git submodule init git submodule update

cd libnl/ autreconf -i ./configure make make install

Install netem

Just run make.

Dependencies

  • libnl3 (3.2.26)
  • recent Linux Kernel version

For building libnl (make libnl)

  • libtool
  • bison
  • flex
  • autotools

See also

Author

Steffen Vogel post@steffenvogel.de

This tool was developed as a project for the Network Programming Laboratory of the Institute for Networked Systems, RWTH Aachen University, in summer 2015.

License

Copyright (C) 2015 Steffen Vogel

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.