単独のASNをAS_SEQUENCE、波括弧をAS_SET、丸括弧をAS_CONFED_SEQUENCE、角括弧をAS_CONFED_SETとして解析します。RFC 9774はAS_SETとAS_CONFED_SETをdeprecatedとしています。移行目的で明示的に別設定した場合を除き、BGP speakerはこれらを含むUPDATEを広告してはならず、AS_PATHまたはAS4_PATHで受信した場合はtreat-as-withdrawを適用する必要があります。このoffline parserは古いdumpを確認できるようset形式の解析を残してdeprecated表示しますが、解析可能であることは現代のBGP運用で推奨または通常許容されるという意味ではありません。
decision processの長さではAS_SEQUENCEの各memberを1、AS_SET全体を1として数え、confederation segmentはconfederation外では数えません。末尾がAS_SETの場合はorigin ASN候補が複数あるため、1つを正解として選びません。
1つのAS_SEQUENCEまたはAS_CONFED_SEQUENCE内で連続する同一ASNはAS prependの候補として示します。RFC 4271とRFC 5065は自AS番号を複数回prependすることを認めているためです。それ以外の重複(離れた位置、AS_SET member、segmentをまたぐもの)は別に示します。segmentをまたぐ同一ASNの重複は、prepend候補として自動分類しません。ただし、AS_SEQUENCEまたはAS_CONFED_SEQUENCEが255 ASNを超える場合は新しいsegmentが作られるため(RFC 4271 §5.1.2、RFC 5065 §4.1)、実際にprependされた可能性は否定しません。
ASNの重複だけではAS loopと判定できず、prepend形式でも受信ルーター自身のASNを含んでいればAS loopになり得ます。AS loop detectionは受信ルーター自身のASNとの照合が必要なため、local ASNを入力した場合だけ判定します。番号だけでは受信側でどの役割かを決められないため、役割ごとに条件付きの結果を示します。confederationに属さないspeakerのAS番号としては、AS_SEQUENCEまたはAS_SETに一致すればloopです(RFC 4271 §9.1.2)。このspeakerはconfederation segmentをmalformed AS_PATHとして扱う必要があるため(RFC 5065 §5)、confederation segmentがある場合はこの判定をしません。AS Confederation IdentifierとしてはAS_PATH全体のどこかに一致すればloop、Member-AS NumberとしてはAS_CONFED_SEQUENCEまたはAS_CONFED_SETに一致すればloopです(RFC 5065 §4)。
これはofflineの構造解析であり、実際のルーターが経路を受理・破棄することを保証しません。allowas-inなど自ASNを受け入れる実装固有の設定はモデル化していません。AS_TRANS(AS23456)は元の4バイトASNを表す代替値の場合があります(RFC 6793 §4.2.2)。このツールはAS4_PATHによる経路再構成(RFC 6793 §4.2.3)を行わないため、AS_TRANSがある場合のloop判定は入力されたAS_PATHだけの照合で、一致しなくてもloopがないとは確定しません。