Struct bgpkit_parser::RibAfiEntries
source · [−]pub struct RibAfiEntries {
pub rib_type: TableDumpV2Type,
pub sequence_number: u32,
pub prefix: NetworkPrefix,
pub rib_entries: Vec<RibEntry, Global>,
}
Expand description
AFI/SAFI-Specific RIB Subtypes.
The AFI/SAFI-specific RIB Subtypes consist of the RIB_IPV4_UNICAST,
RIB_IPV4_MULTICAST, RIB_IPV6_UNICAST, and RIB_IPV6_MULTICAST
Subtypes. These specific RIB table entries are given their own MRT
TABLE_DUMP_V2 subtypes as they are the most common type of RIB table
instances, and providing specific MRT subtypes for them permits more
compact encodings. These subtypes permit a single MRT record to
encode multiple RIB table entries for a single prefix. The Prefix
Length and Prefix fields are encoded in the same manner as the BGP
NLRI encoding for IPv4 and IPv6 prefixes. Namely, the Prefix field
contains address prefixes followed by enough trailing bits to make
the end of the field fall on an octet boundary. The value of
trailing bits is irrelevant.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Prefix Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Prefix (variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Entry Count | RIB Entries (variable)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Fields
rib_type: TableDumpV2Type
sequence_number: u32
prefix: NetworkPrefix
rib_entries: Vec<RibEntry, Global>
Trait Implementations
sourceimpl Clone for RibAfiEntries
impl Clone for RibAfiEntries
sourcefn clone(&self) -> RibAfiEntries
fn clone(&self) -> RibAfiEntries
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for RibAfiEntries
impl Debug for RibAfiEntries
sourceimpl PartialEq<RibAfiEntries> for RibAfiEntries
impl PartialEq<RibAfiEntries> for RibAfiEntries
sourcefn eq(&self, other: &RibAfiEntries) -> bool
fn eq(&self, other: &RibAfiEntries) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &RibAfiEntries) -> bool
fn ne(&self, other: &RibAfiEntries) -> bool
This method tests for !=
.
sourceimpl Serialize for RibAfiEntries
impl Serialize for RibAfiEntries
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Eq for RibAfiEntries
impl StructuralEq for RibAfiEntries
impl StructuralPartialEq for RibAfiEntries
Auto Trait Implementations
impl RefUnwindSafe for RibAfiEntries
impl Send for RibAfiEntries
impl Sync for RibAfiEntries
impl Unpin for RibAfiEntries
impl UnwindSafe for RibAfiEntries
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more