FD.io VPP  v20.01-48-g3e0dafb74
Vector Packet Processing
ip4_main_t Struct Reference

IPv4 main type. More...

+ Collaboration diagram for ip4_main_t:

Data Fields

ip_lookup_main_t lookup_main
 
struct fib_table_t_fibs
 Vector of FIBs. More...
 
struct ip4_fib_t_v4_fibs
 Vector of MTries. More...
 
struct mfib_table_t_mfibs
 Vector of MFIBs. More...
 
u32 fib_masks [33]
 
u32fib_index_by_sw_if_index
 Table index indexed by software interface. More...
 
u32mfib_index_by_sw_if_index
 Table index indexed by software interface. More...
 
u8ip_enabled_by_sw_if_index
 
uwordfib_index_by_table_id
 Hash table mapping table id to fib index. More...
 
uwordmfib_index_by_table_id
 Hash table mapping table id to multicast fib index. More...
 
ip4_add_del_interface_address_callback_tadd_del_interface_address_callbacks
 Functions to call when interface address changes. More...
 
ip4_enable_disable_interface_callback_tenable_disable_interface_callbacks
 Functions to call when interface becomes IPv4 enabled/disable. More...
 
ip4_table_bind_callback_ttable_bind_callbacks
 Functions to call when interface to table biding changes. More...
 
vlib_packet_template_t ip4_arp_request_packet_template
 Template used to generate IP4 ARP packets. More...
 
u32 flow_hash_seed
 Seed for Jenkins hash used to compute ip4 flow hash. More...
 
struct {
   u8   ttl
 TTL to use for host generated packets. More...
 
   u8   tos
 TOS byte to use for host generated packets. More...
 
   u8   pad [2]
 
host_config
 Template information for VPP generated packets. More...
 
uword mtrie_heap_size
 Heapsize for the Mtries. More...
 
void * mtrie_mheap
 The memory heap for the mtries. More...
 
throttle_t arp_throttle
 ARP throttling. More...
 

Detailed Description

IPv4 main type.

State of IPv4 VPP processing including:

  • FIBs
  • Feature indices used in feature topological sort
  • Feature node run time references

Definition at line 105 of file ip4.h.

Field Documentation

◆ add_del_interface_address_callbacks

ip4_add_del_interface_address_callback_t* ip4_main_t::add_del_interface_address_callbacks

Functions to call when interface address changes.

Definition at line 139 of file ip4.h.

◆ arp_throttle

throttle_t ip4_main_t::arp_throttle

ARP throttling.

Definition at line 173 of file ip4.h.

◆ enable_disable_interface_callbacks

ip4_enable_disable_interface_callback_t* ip4_main_t::enable_disable_interface_callbacks

Functions to call when interface becomes IPv4 enabled/disable.

Definition at line 143 of file ip4.h.

◆ fib_index_by_sw_if_index

u32* ip4_main_t::fib_index_by_sw_if_index

Table index indexed by software interface.

Definition at line 121 of file ip4.h.

◆ fib_index_by_table_id

uword* ip4_main_t::fib_index_by_table_id

Hash table mapping table id to fib index.

ID space is not necessarily dense; index space is dense.

Definition at line 131 of file ip4.h.

◆ fib_masks

u32 ip4_main_t::fib_masks[33]

Definition at line 118 of file ip4.h.

◆ fibs

struct fib_table_t_* ip4_main_t::fibs

Vector of FIBs.

Definition at line 110 of file ip4.h.

◆ flow_hash_seed

u32 ip4_main_t::flow_hash_seed

Seed for Jenkins hash used to compute ip4 flow hash.

Definition at line 152 of file ip4.h.

◆ host_config

struct { ... } ip4_main_t::host_config

Template information for VPP generated packets.

◆ ip4_arp_request_packet_template

vlib_packet_template_t ip4_main_t::ip4_arp_request_packet_template

Template used to generate IP4 ARP packets.

Definition at line 149 of file ip4.h.

◆ ip_enabled_by_sw_if_index

u8* ip4_main_t::ip_enabled_by_sw_if_index

Definition at line 127 of file ip4.h.

◆ lookup_main

ip_lookup_main_t ip4_main_t::lookup_main

Definition at line 107 of file ip4.h.

◆ mfib_index_by_sw_if_index

u32* ip4_main_t::mfib_index_by_sw_if_index

Table index indexed by software interface.

Definition at line 124 of file ip4.h.

◆ mfib_index_by_table_id

uword* ip4_main_t::mfib_index_by_table_id

Hash table mapping table id to multicast fib index.

ID space is not necessarily dense; index space is dense.

Definition at line 135 of file ip4.h.

◆ mfibs

struct mfib_table_t_* ip4_main_t::mfibs

Vector of MFIBs.

Definition at line 116 of file ip4.h.

◆ mtrie_heap_size

uword ip4_main_t::mtrie_heap_size

Heapsize for the Mtries.

Definition at line 167 of file ip4.h.

◆ mtrie_mheap

void* ip4_main_t::mtrie_mheap

The memory heap for the mtries.

Definition at line 170 of file ip4.h.

◆ pad

u8 ip4_main_t::pad[2]

Definition at line 163 of file ip4.h.

◆ table_bind_callbacks

ip4_table_bind_callback_t* ip4_main_t::table_bind_callbacks

Functions to call when interface to table biding changes.

Definition at line 146 of file ip4.h.

◆ tos

u8 ip4_main_t::tos

TOS byte to use for host generated packets.

Definition at line 161 of file ip4.h.

◆ ttl

u8 ip4_main_t::ttl

TTL to use for host generated packets.

Definition at line 158 of file ip4.h.

◆ v4_fibs

struct ip4_fib_t_* ip4_main_t::v4_fibs

Vector of MTries.

Definition at line 113 of file ip4.h.


The documentation for this struct was generated from the following file: