Provided by: scamper_20181219-1_amd64 bug


     sc_ally — scamper driver to run Ally on a list of candidate aliases.


     sc_ally [-?D] [-a infile] [-o outfile] [-p port] [-U unix-socket] [-f fudge] [-i probe-wait]
             [-O options] [-q attempts] [-t logfile] [-w waittime]

     sc_ally [-d dump-id] [-O options] [file ...]


     The sc_ally utility provides the ability to connect to a running scamper(1) instance and
     have a set of IPv4 address-pairs tested for aliases using the Ally technique.  For each
     address pair in the file, sc_ally establishes which probe methods (UDP, TCP-ack, ICMP-echo)
     solicit an incrementing IP-ID value, and then uses the Ally technique on pairs where a probe
     method is able to obtain an incrementing IP-ID for both addresses.  sc_ally can also infer
     which IP addresses are aliases using the Mercator common source address technique as a
     byproduct of the UDP probing that sc_ally does.  The output of sc_ally is written to a
     warts(5) file, which can then be processed to extract aliases.  The options are as follows:

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

     -D      causes sc_ally to detach and become a daemon.

     -a infile
             specifies the name of the input file which consists of a sequence of IPv4 address-
             pairs, one pair per line.

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

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

     -U unix-socket
             specifies the name of a unix domain socket where scamper(1) is accepting control
             socket connections.

     -d dump-id
             specifies the number identifying an analysis to conduct.  The current choices for
             are 1-3, and are:
               -  1: dump aliases inferred using the Ally (IPID-based) technique.
               -  2: dump aliases inferred using the Mercator (common source address based)
               -  3: dump aliases inferred using both Ally and Mercator techniques.

     -f fudge
             specifies the fudge factor to use when (1) inferring if IPIDs are assigned from a
             counter, and (2) inferring if two addresses share the same counter.

     -i probe-wait
             specifies the inter-probe gap for both ping and Ally measurements, in milliseconds.
             The default is 1000ms (1 second); the minimum is 200ms, and the maximum is 2000ms.

     -O options
             allows the behavior of sc_ally to be further tailored.  The current choices for this
             option are:
               -  nobs: do not consider byte swapped IPID values when inferring if IPID values
                  are assigned from a counter.
               -  tc: dump transitive closure when reporting aliases.

     -q attempts
             specifies the number of times to try Ally when one of the addresses is unresponsive.

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

     -w waittime
             specifies the minimum length of time, in seconds, to wait between completing a
             measurement to a particular IP address and issuing the next.


     Given a set of IPv4-address pairs in a file named infile.txt:

     and a scamper(1) daemon listening on port 31337, then these address-pairs can be tested for
     aliases using

     sc_ally -a infile.txt -o outfile.warts -p 31337

     To obtain a list of inferred alias pairs using the Ally technique from a warts(5) file:

     sc_ally -d 1 outfile.warts

     To obtain a list of inferred routers using a transitive closure of alias pairs inferred
     using the Ally and Mercator techniques:

     sc_ally -d 3 -O tc outfile.warts


     scamper(1), sc_radargun(1), sc_wartsdump(1), sc_warts2text(1),

     N. Spring, R. Mahajan, and D. Wetherall, Measuring ISP topologies with Rocketfuel, Proc. ACM
     SIGCOMM 2002.

     R. Govindan and H. Tangmunarunkit, Heuristics for Internet Map Discovery, Proc. IEEE INFOCOM

     A. Bender, R. Sherwood, and N. Spring, Fixing Ally's growing pains with velocity modeling,
     Proc. ACM/SIGCOMM Internet Measurement Conference 2008.


     sc_ally was written by Matthew Luckie <>.