Skip to content

v0.22.0

Choose a tag to compare

@pforemski pforemski released this 24 Jul 17:05
· 1 commit to main since this release
bc0fa7a

MRT TABLE_DUMP support

Stream MRT RIB snapshots (RouteViews rib.*, RIPE RIS bview.*) as BGP UPDATE messages:

  • mrt.Table: parse TABLE_DUMP_V2 (PEER_INDEX_TABLE, RIB_IPV4/IPV6_UNICAST) and legacy TABLE_DUMP v1 records
  • mrt.Reader: convert RIB entries to synthetic UPDATEs - every peer's routes, tagged PEER_AS/PEER_IP, with consecutive same-attribute prefixes bundled into one UPDATE per peer; Reader.Flush(cb) emits pending bundles at end of stream
  • handles both RIB-entry MP_REACH encodings found in the wild: truncated (RFC 6396/4.3.4) and full RFC 4760 (RouteViews)
  • validated against bgpkit-parser on real RouteViews v1/v2/v6 RIBs and RIPE RIS bviews: exact row-level match

Other changes

  • meta package: per-message parser metadata (replaces the dir package); AS4/AddPath overrides for MRT/BMP parsers
  • allocation reductions: reuse of attribute objects and scratch buffers across UPDATE parse/marshal cycles, MP value reuse
  • NoCtx renamed back to NoTags in mrt/bmp readers
  • package documentation for all packages

What's Changed

Full Changelog: v0.21.0...v0.22.0