FD.io VPP  v17.04-9-g99c0734
Vector Packet Processing
adj_mcast.h File Reference
+ Include dependency graph for adj_mcast.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

adj_index_t adj_mcast_add_or_lock (fib_protocol_t proto, vnet_link_t link_type, u32 sw_if_index)
 Mcast Adjacency. More...
 
void adj_mcast_update_rewrite (adj_index_t adj_index, u8 *rewrite)
 Update the rewrite string for an existing adjacecny. More...
 
u8format_adj_mcast (u8 *s, va_list *ap)
 Format/display a mcast adjacency. More...
 
u32 adj_mcast_db_size (void)
 Get the sze of the mcast adj DB. More...
 
void adj_mcast_module_init (void)
 Module initialisation. More...
 

Function Documentation

adj_index_t adj_mcast_add_or_lock ( fib_protocol_t  proto,
vnet_link_t  link_type,
u32  sw_if_index 
)

Mcast Adjacency.

The multicast adjacency forwards IP traffic on an interface toward a multicast group address. This is a different type of adjacency to a unicast adjacency since the application of the MAC header is different, and so the VLIB node visited is also different. DPO types have different VLIB nodes.

Add (and lock) a new or lock an existing mcast adjacency

Parameters
protoThe protocol for the neighbours that we wish to mcast
link_typeA description of the protocol of the packets that will forward through this adj. On an ethernet interface this is the MAC header's ether-type
sw_if_indexThe interface on which to mcast

Definition at line 51 of file adj_mcast.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 adj_mcast_db_size ( void  )

Get the sze of the mcast adj DB.

Test purposes only.

Get the sze of the mcast adj DB.

This is only for testing purposes so an efficient implementation is not needed

Definition at line 318 of file adj_mcast.c.

void adj_mcast_module_init ( void  )

Module initialisation.

Definition at line 341 of file adj_mcast.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void adj_mcast_update_rewrite ( adj_index_t  adj_index,
u8 rewrite 
)

Update the rewrite string for an existing adjacecny.

Parameters
Theindex of the adj to update
Thenew rewrite

Update the rewrite string for an existing adjacecny.

Update the adjacency's rewrite string. A NULL string implies the rewirte is reset (i.e. when ARP/ND etnry is gone). NB: the adj being updated may be handling traffic in the DP.

Definition at line 102 of file adj_mcast.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_adj_mcast ( u8 s,
va_list *  ap 
)

Format/display a mcast adjacency.

Definition at line 255 of file adj_mcast.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: