Papers
Sigcomm 2008 paper DisCarte: A Disjunctive Internet Cartographer
Code
Discarte is part of the sidecar package as of version 0.02: sidecar-0.2.tar.gz
Topologies in "adj" format
Adj file format desription
There are two types of lines, "LINK" lines and node lines. Link lines
look like:
Link S907_N_U:130.245.145.153 -- R1785_M_C:130.245.128.9 : RR
Saying there is a link from node "S907_N_U" on its 130.245.145.153
interface to node R1785_M_C on its 130.245.128.9 interface, and it was
inferred by RR.
The node identifiers have meaning. They are of the form
< nodetype>< unique id>< annotations> where annotations indidicate all
sorts of information including RR implementation type. The "nodetype"
is one of:
- E: End-host (destination)
- H: Hidden (probably via MPLS)
- N: NAT
- R: Router
- S: Source (nodes that are both sources and end-hosts are non-deterministically assigned either source or endhost)
The "unique id" is just a number to assign to that node type.
And there are many possible annotations, here is a partial key:
- A: Cisco/Departing RR type
- B: Juniper/Arriving RR type
- C: Linux/Mixed RR type
- M: inferred indirectly; direct probe missing, e.g., could be an anonymous router
- N: Not implemented RR type
- U: unknown type (but might be identified later)
The last line of the Link statement (where it says "RR" in the
example above) is what technique was used to infer that link, and can be any of:
- "RR": This link was infered from record route and traceroute together; outgoing and incoming IPs are specificed
- "TR": From TTL-limited probes (traceroute); lower confidence link; the IP addresses are the incoming interfaces of each router
- "STR": From record route alone (no traceroute information): the outgoing or loopback interface of each router is listed
- "UNKNOWN": Links that are listed as "UNKNOWN" do not actually exist and should be ignored. They are used for debugging purposes when a trace does not actually reach the intended destination, i.e., on a trace from S to D we learn r1,r2, r3, but after that we hit a firewall and don't know the path from r3 to D, we add a "UNKNOWN" link between r3 and D. All unknown links should be removed from published topologies (only listed here if we made a mistake).
There are also node statements for each "nodetype" that look like this:
Router R1540_A_U_NOTOFFBY1L_LAYER2 nAlly=2 202.112.54.254 202.112.1.195
This indicates node "R1540" has two aliases 202.112.54.254
202.112.1.195, and that it is of RR type Cisco ("A") and has
the NOTOFFBY1L and LAYER2 annotations.
Web Accessibility