dccpmon Home Page
Tool to Measure Hardware and Network Performace using DCCP
dccpmon uses Datagram Congesion Control Protocol, DCCP, to test the network performace between two end systems. The end host IP addresses are used. dccpmon_bw_mon and dccpmon_resp send and receive Request-Response messages and data flows between the two hosts. These programs are used in pairs to make the following measurements:
- Latency as a function of packet size - using Request-Response packets.
- Histograms of the Request-Response Latency.
- Estimation of the "on-the-wire" Bandwidth, packet loss, and out of order packets as a function of packet size and packet spacing using DCCP frames.
- Histograms (and analysis) of the packet jitter between the two nodes.
- Measurement of arrival times of received packets
- Estimation of the relative 1-way delay between the two nodes on a packet by packet basis.
- Measurement of the user mode and kernel mode load on all CPUs for both sending and receiving hosts.
- Measurement of the number of interrupts given by the NICs
- A time series of the round trip latency for each Request-Response.
Installation of dccpmon
The distribution of dccpmon is split into two tarballs: the dccpmon tool and the supporting library libhj. The dccpmon-a.b.c tarball creates directory dccpmon-a.b.c and libhj-l.m.n creates directory libhj-l.m.n. For installation and compilation in your home directory having downloaded the corresponding dccpmon and library files, start by cd to the library directory then:
./configure --prefix=$HOME
make install
$HOME/include and $HOME/lib are created. Then cd to the directory containing dccpmon and do:
./configure --prefix=$HOME --with-hj-location=$HOME
make install
$HOME/sbin is created with the dccpmon programs.
Versions of dccpmon
Version |
Download
dccpmon |
Download
libhj library |
Write-up |
Excel plots example |
Notes |
|
|
|
|
|
|
dccpmon-1.0.0 |
tar file-1.0.0 |
libhj-4.1.3 |
|
|
For testing ONLY |
Brief help
dccpmon_bw_mon
Usage: ethmon_bw_mon -option<parameter> [...]
options:
-B = <bin width of remote histo in us>
-G = <number of packets on which to return information>
-H = get remote histograms
-M = <min (low limit) of remote histo in us>
-S = <size of send and receive socket buffers in bytes>
-V = print version number
-d = <the destination IP address >
-e = <end value of wait time in us>
-g = <gap time to wait between bursts in us>
-h = print this help
-i = <increment for wait time in us>
-l = <no. of frames to send>
-n = <no. of bursts to send in Burst Mode>
-p = <length in bytes of mock data packet>
-q = quiet - only print result
-t = <no. of seconds to run the test - calculates no. of frames to send >
-u = DCCP service code
-v = turn on debug printout
-w = <wait time in us>
dccpmon_resp
Usage: ethmon_resp -option<parameter> [...]
options:
-S = <size of send and receive socket buffers in bytes>
-V = print version number
-h = print this help
-q = quiet - only print results
-u = DCCP service code
-v = turn on debug printout
Example