Provided by: scamper_20181219-1_amd64 bug


     sc_tbitpmtud — scamper driver to test systems for responsiveness to ICMP packet too big


     sc_tbitpmtud [-r] [-a address-file] [-c completed-file] [-l limit-per-file]
                  [-m maximum-transmission-unit] [-o output-file] [-p scamper-port] [-t log-file]
                  [-w window]

     sc_tbitpmtud [-d dump-id] [-A ip2as-file] [-m maximum-transmission-unit] [file ...]


     The sc_tbitpmtud utility provides the ability to connect to a running scamper(1) instance
     and use that instance to test end systems for their ability to perform Path MTU Discovery,
     with the output written to a file in warts format.  sc_tbitpmtud first tests a given system
     for responsiveness to ICMP echo packets, and then tests the given system's TCP stack
     response to ICMP packet too big messages.

     The options are as follows:

     -?      prints a list of command line options and a synopsis of each.

     -a address-file
             specifies the name of the input file which consists of a sequence of systems to
             test, one system per line.

     -A ip2as-file
             specifies the name of a file which consists of a mapping of prefixes to ASes, one
             prefix per line.

     -c completed-file
             specifies the name of a file to record IP addresses that have been tested.

     -d dump-id
             specifies the dump ID to use to analyze the collected data.  Currently, ID values 1
             (mssresults) and 2 (asnresults) are valid, which report PMTUD behaviour according to
             the server's MSS or the server's origin ASN.

     -l limit-per-file
             specifies the number of tbit objects to record per warts file, before opening a new
             file and placing new objects.

     -m maximum transmission unit
             specifies the pseudo maximum transmission unit to use.  The available choices are 0,
             256, 576, 1280, 1480.  If 0 is chosen, sc_tbitpmtud will test each website with all
             available MTU choices in decreasing size.  The default MTU value tested is 1280.

     -o output-file
             specifies the name of the file to be written.  The output file will use the warts

     -p scamper-port
             specifies the port on the local host where scamper(1) is accepting control socket

     -r      shuffle the order in which websites are tested.

     -t log-file
             specifies the name of a file to log progress output from sc_tbitpmtud generated at
             run time.

     -w window-size
             specifies the maximum number of tests to conduct in parallel.  The window size value
             depends on the value of the -F parameter passed to the scamper(1) instance.


     Use of this driver requires a scamper(1) instance listening on a port for commands with a
     configured firewall.  The following invocation uses ipfw(8) firewall rules 1 to 100, with a
     corresponding window size of 100, and an unrestricted packets per second rate, as follows:

           scamper -P 31337 -F ipfw:1-100 -w 100 -p 0

     To test a set of web servers specified in a file named webservers.txt and formatted as

        1, 5063
        1, 5063 2001:DB8::1
        1, 5063 2001:DB8::2

     the following command will test all servers for responsiveness to ICMP packet too big
     messages and record raw data into webservers_00.warts, webservers_01.warts, etc:

           sc_tbitpmtud -a webservers.txt -p 31337 -o webservers

     The webservers.txt file is required to be formatted as above.  The format is: numeric ID to
     pass to tbit, a label for the webserver, the size of the object to be fetched, the IP
     address to contact, and the URL to use.

     To characterize PMTUD behaviour according to the server's advertised MSS value:

           sc_tbitpmtud -d mssresults webservers_*.warts

     Given files with IPv4 prefixes in prefix2as4.txt and IPv6 prefixes in prefix2as6.txt
     formatted as follows:

        2001:DB8::     48     64496
        2001:DB8:1::   48     64497      24     64498

     the following command will characterize PMTUD behaviour according to the origin ASN of the

           sc_tbitpmtud -d asnresults -A prefix2as4.txt -A prefix2as6.txt webservers_*.warts


     scamper(1), sc_wartsdump(1), sc_warts2json(1), warts(5),

     M. Luckie and B. Stasiewicz, Measuring Path MTU Discovery Behaviour, Proc. ACM/SIGCOMM
     Internet Measurement Conference 2010.

     A. Medina, M. Allman, and S. Floyd, Measuring Interactions between Transport Protocols and
     Middleboxes, Proc. ACM/SIGCOMM Internet Measurement Conference 2004.


     sc_tbitpmtud was written by Matthew Luckie <>.  Ben Stasiewicz contributed
     an initial implementation of the Path MTU Discovery TBIT test to scamper, building on the
     work of Medina et al.