cgrfetch(1) Visualize CGR simulations




cgrfetch uses CGR to simulate sending a bundle from the local node to DEST-NODE. It traces the execution of CGR to generate graphs of the routes that were considered and the routes that were ultimately chosen to forward along. No bundle is sent during the simulation.

A JSON representation of the simulation is output to OUTPUT-FILE. The representation includes parameters of the simulation and a structure for each considered route, which in turn includes calculated parameters for the route and an image of the contact graph.

The dot(1) tool from the Graphviz package is used to generate the contact graph images and is required for cgrfetch(1). The base64(1) tool from coreutils is used to embed the images in the JSON and is also required.


The final destination to route to. To be useful, it should be a node that exists in the contact plan.
Disable trace message output.
Disable JSON output.
Use a minimum-latency extended COS for the bundle. This ends up sending the bundle to all proximate nodes.
Request a dispatch time of DISPATCH-OFFSET seconds from the time the command is run (default: 0).
Set the bundle expiration time to EXPIRATION-OFFSET seconds from the time the command is run (default: 3600).
Set the bundle payload size to BUNDLE-SIZE bytes (default: 0).
Send JSON to OUTPUT-FILE (default: stdout).
Use OUTDUCT-PROTO as the outduct protocol (default: udp).
Use OUTDUCT-NAME as the outduct name (default: *).


cgrfetch 8
Simulate CGR with destination node 8 and dispatch time equal to the current time.
cgrfetch 8 -t 60
Do the same with a dispatch time 60 seconds in the future.