Geoff Huston wrote a highly optimised C implementation of the atoms scripts, available for download below. Note that this implementation uses a slightly altered definition of a BGP atom. In the scripts only global prefixes (carried by all full size RouteViews peers) are considered, and two prefixes are part of the same atom if they have the same AS path at each such peer. In the C code, all prefixes are considered, and two prefixes are part of the same atom if at each peer they either (a) have the same AS path or (b) are both absent.
version 1.0 (Apr 7, 2003)