Question about BGP NLRI structure
I'm trying to implement https://datatracker.ietf.org/doc/draft-ietf-idr-sdwan-edge-discovery/ into frr/bgpd. Looking through the code I have some questions for which I hope someone can help me RFC 4760 defines the mp_reach_nlri attributes as this +---------------------------------------------------------+ | Address Family Identifier (2 octets) | +---------------------------------------------------------+ | Subsequent Address Family Identifier (1 octet) | +---------------------------------------------------------+ | Length of Next Hop Network Address (1 octet) | +---------------------------------------------------------+ | Network Address of Next Hop (variable) | +---------------------------------------------------------+ | Reserved (1 octet) | +---------------------------------------------------------+ | Network Layer Reachability Information (variable) | +---------------------------------------------------------+ Is the following structure in /bgpd/bgpd.h representing the table above? struct bgp_nlri { /* AFI. */ uint16_t afi; /* iana_afi_t */ /* SAFI. */ uint8_t safi; /* iana_safi_t */ /* Pointer to NLRI byte stream. */ uint8_t *nlri; /* Length of whole NLRI. */ bgp_size_t length; }; If yes, does uint8_t *nlri map to [Network Layer Reachability Information (variable)]? does bgp_size_t length map to [Length of Next Hop Network Address (1 octet)]? If not, can someone please tell me what this structure maps to? I appreciate anyone who has insights to help me out. Thank you, John
participants (1)
-
johnjdunbarï¼ disroot.org