Usage

This package installs 2 programs: - mptcpanalyzer to get details on a loaded pcap.

mptcpanalyzer can run into 3 modes:
  1. Interactive mode (default): an interpreter with some basic completion will accept your commands.
  2. Batch mode if a filename is passed as argument, it will load commands from this file.
  3. One-shot mode, it will consider the unknow arguments as one command, the same that could be used interactively

For example, we can load an mptcp pcap (I made one available on wireshark wiki or in this repository, in the _examples_ folder).

It expects a trace to work with. If the trace has the form XXX.pcap extension, the script will look for its csv counterpart XXX.pcap.csv. The program will tell you what arguments are needed. Then you can open the generated graphs.

Interactive mode

Run $ mptcpanalyzer –load examples/iperf-mptcp-0-0.pcap. The script will try to generate a csv file, it can take a few minutes depending on your computer. Then you have a command line: you can type ? to list available commands. You have for instance:

  • lc (list connections)
  • ls (list subflows)
  • plot
  • ...

help ls will return the syntax of the command, i.e. ls [mptcp.stream] where mptcp.stream is one of the number appearing in lc output.

Some more complex commands can be:

1
2
3
4
load --regen examples/iperf-mptcp-0-0.pcap
plot attr 0 Client dsn 
plot attr 0 Client dsn  --title "custom title" --out test_with_title.png
plot attr 0 Client dsn  --skip 1 --skip 3 --style examples/red_o.mplstyle --title "Test with matplotlib colors" --out test_title_style.png

Batch mode

Commands are the same as in Interactive mode, they are just saved in a file.

mptcpanalyzer --batch tests/batch_commands.txt -dddd

One-shot mode

Just put your command after your arguments, for instance.

mptcpanalyzer --load examples/iperf-mptcp-0-0.pcap`

Tips

mptcpanalyzer is a rather long name so feel free to create an alias for instance alias mp="mptcpanalyzer".

To enable debug informations, run mptcpanalyzer -dddd

If you use zsh, you can enable autocompletion via adding to your .zshrc:

compdef _gnu_generic mptcpanalyzer

Conversion from pcap to csv:

mptcpanalyzer comes bundled with an extra program: mptcpexporter can convert a pcap to csv (exporting to sql should be easy). Run mptcpexporter -h to see how it works.

List of available plots