![]() |
FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
|
Include dependency graph for interface.h:Go to the source code of this file.
Data Structures | |
| struct | vnet_hw_if_rx_queue_t |
| struct | vnet_hw_if_tx_queue_t |
| struct | vnet_hw_if_tx_frame_t |
| struct | vnet_hw_if_output_node_runtime_t |
| struct | vnet_hw_interface_t |
| struct | vnet_hw_if_rxq_poll_vector_t |
| struct | vnet_hw_if_rx_node_runtime_t |
| struct | vnet_sub_interface_t |
| struct | vnet_p2p_sub_interface_t |
| struct | vnet_sw_interface_t |
| struct | vnet_hw_interface_nodes_t |
| struct | vnet_interface_per_thread_data_t |
| struct | vnet_interface_main_t |
| struct | vnet_pcap_dispatch_trace_args_t |
Variables | |
| vnet_device_class_t | vnet_local_interface_device_class |
| int | collect_detailed_interface_stats_flag |
| vlib_node_registration_t | vnet_interface_output_node |
| (constructor) VLIB_REGISTER_NODE (vnet_interface_output_node) More... | |
| vlib_node_registration_t | vnet_interface_output_arc_end_node |
| (constructor) VLIB_REGISTER_NODE (vnet_interface_output_arc_end_node) More... | |
| #define FOR_EACH_VNET_IP_LINK | ( | _link | ) |
Definition at line 369 of file interface.h.
| #define FOR_EACH_VNET_LINK | ( | _link | ) |
Definition at line 364 of file interface.h.
| #define foreach_combined_interface_counter_name |
Definition at line 947 of file interface.h.
| #define foreach_rx_combined_interface_counter | ( | _x | ) |
Definition at line 926 of file interface.h.
| #define foreach_simple_interface_counter_name |
| #define foreach_tx_combined_interface_counter | ( | _x | ) |
Definition at line 931 of file interface.h.
| #define VNET_DEVICE_CLASS | ( | x, | |
| ... | |||
| ) |
Definition at line 291 of file interface.h.
| #define VNET_DEVICE_CLASS_TX_FN | ( | devclass | ) |
Definition at line 317 of file interface.h.
| #define VNET_HW_IF_RXQ_NO_RX_INTERRUPT ~0 |
Definition at line 599 of file interface.h.
| #define VNET_HW_IF_RXQ_THREAD_ANY ~0 |
Definition at line 598 of file interface.h.
| #define VNET_HW_INTERFACE_ADD_DEL_FUNCTION | ( | f | ) | _VNET_INTERFACE_FUNCTION_DECL(f,hw_interface_add_del) |
Definition at line 172 of file interface.h.
| #define VNET_HW_INTERFACE_BOND_INFO_NONE ((uword *) 0) |
Definition at line 714 of file interface.h.
| #define VNET_HW_INTERFACE_BOND_INFO_SLAVE ((uword *) ~0) |
Definition at line 715 of file interface.h.
| #define VNET_HW_INTERFACE_CAP_SUPPORTS_L4_RX_CKSUM |
Definition at line 564 of file interface.h.
| #define VNET_HW_INTERFACE_CAP_SUPPORTS_L4_TX_CKSUM |
Definition at line 555 of file interface.h.
| #define VNET_HW_INTERFACE_CAP_SUPPORTS_RX_CKSUM |
Definition at line 568 of file interface.h.
| #define VNET_HW_INTERFACE_CAP_SUPPORTS_TX_CKSUM |
Definition at line 559 of file interface.h.
| #define VNET_HW_INTERFACE_CLASS | ( | x, | |
| ... | |||
| ) |
Definition at line 485 of file interface.h.
| #define VNET_HW_INTERFACE_FLAG_DUPLEX_MASK |
Definition at line 575 of file interface.h.
| #define VNET_HW_INTERFACE_FLAG_DUPLEX_SHIFT 1 |
Definition at line 573 of file interface.h.
| #define VNET_HW_INTERFACE_FLAG_SPEED_SHIFT 3 |
Definition at line 574 of file interface.h.
| #define VNET_HW_INTERFACE_LINK_UP_DOWN_FUNCTION | ( | f | ) | _VNET_INTERFACE_FUNCTION_DECL(f,hw_interface_link_up_down) |
Definition at line 174 of file interface.h.
| #define VNET_HW_INTERFACE_LINK_UP_DOWN_FUNCTION_PRIO | ( | f, | |
| p | |||
| ) | _VNET_INTERFACE_FUNCTION_DECL_PRIO(f,hw_interface_link_up_down,p) |
Definition at line 176 of file interface.h.
| #define VNET_ITF_FUNC_N_PRIO ((vnet_interface_function_priority_t)VNET_ITF_FUNC_PRIORITY_HIGH+1) |
Definition at line 115 of file interface.h.
| #define VNET_LINK_NUM (VNET_LINK_NSH+1) |
Number of link types.
Not part of the enum so it does not have to be included in switch statements
Definition at line 378 of file interface.h.
| #define VNET_LINKS |
Definition at line 355 of file interface.h.
| #define VNET_N_LINKS VNET_LINK_NUM |
Definition at line 379 of file interface.h.
| #define VNET_SW_INTERFACE_ADD_DEL_FUNCTION | ( | f | ) | _VNET_INTERFACE_FUNCTION_DECL(f,sw_interface_add_del) |
Definition at line 180 of file interface.h.
| #define VNET_SW_INTERFACE_ADD_DEL_FUNCTION_PRIO | ( | f, | |
| p | |||
| ) | _VNET_INTERFACE_FUNCTION_DECL_PRIO(f,sw_interface_add_del,p) |
Definition at line 182 of file interface.h.
| #define VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION | ( | f | ) | _VNET_INTERFACE_FUNCTION_DECL(f,sw_interface_admin_up_down) |
Definition at line 184 of file interface.h.
| #define VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION_PRIO | ( | f, | |
| p | |||
| ) | _VNET_INTERFACE_FUNCTION_DECL_PRIO(f,sw_interface_admin_up_down, p) |
Definition at line 186 of file interface.h.
| #define VNET_SW_INTERFACE_MTU_CHANGE_FUNCTION | ( | f | ) | _VNET_INTERFACE_FUNCTION_DECL(f,sw_interface_mtu_change) |
Definition at line 178 of file interface.h.
| typedef u8*(* vnet_buffer_opquae_formatter_t) (const vlib_buffer_t *b, u8 *s) |
Definition at line 987 of file interface.h.
| typedef int(* vnet_dev_class_ip_tunnel_desc_t) (u32 sw_if_index, union ip46_address_t_ *src, union ip46_address_t_ *dst, u8 *is_l2) |
Tunnel description parameters.
Definition at line 192 of file interface.h.
| typedef struct _vnet_device_class vnet_device_class_t |
| typedef int() vnet_flow_dev_ops_function_t(struct vnet_main_t *vnm, vnet_flow_dev_op_t op, u32 hw_if_index, u32 index, uword *private_data) |
Definition at line 105 of file interface.h.
Attributes assignable to a HW interface Class.
| typedef struct _vnet_hw_interface_class vnet_hw_interface_class_t |
| typedef enum vnet_hw_interface_flags_t_ vnet_hw_interface_flags_t |
| typedef struct vnet_hw_interface_t vnet_hw_interface_t |
| typedef clib_error_t*() vnet_interface_add_del_mac_address_function_t(struct vnet_hw_interface_t *hi, const u8 *address, u8 is_add) |
Definition at line 79 of file interface.h.
| typedef clib_error_t*() vnet_interface_function_t(struct vnet_main_t *vnm, u32 if_index, u32 flags) |
Definition at line 65 of file interface.h.
| typedef clib_error_t*() vnet_interface_rss_queues_set_t(struct vnet_main_t *vnm, struct vnet_hw_interface_t *hi, clib_bitmap_t *bitmap) |
Definition at line 93 of file interface.h.
| typedef clib_error_t*() vnet_interface_set_l2_mode_function_t(struct vnet_main_t *vnm, struct vnet_hw_interface_t *hi, i32 l2_if_adjust) |
Definition at line 88 of file interface.h.
| typedef clib_error_t*() vnet_interface_set_mac_address_function_t(struct vnet_hw_interface_t *hi, const u8 *old_address, const u8 *new_address) |
Definition at line 74 of file interface.h.
| typedef clib_error_t*() vnet_interface_set_rx_mode_function_t(struct vnet_main_t *vnm, u32 if_index, u32 queue_id, vnet_hw_if_rx_mode mode) |
Definition at line 83 of file interface.h.
| typedef enum vnet_link_t_ vnet_link_t |
Link Type: A description of the protocol of packets on the link.
On an ethernet link this maps directly into the ethertype. On a GRE tunnel it maps to the GRE-proto, etc for other lnk types.
| typedef clib_error_t*() vnet_subif_add_del_function_t(struct vnet_main_t *vnm, u32 if_index, struct vnet_sw_interface_t *template, int is_add) |
Definition at line 69 of file interface.h.
| typedef enum vnet_sw_interface_flags_t_ vnet_sw_interface_flags_t |
| enum vnet_flood_class_t |
| Enumerator | |
|---|---|
| VNET_FLOOD_CLASS_BVI | |
| VNET_FLOOD_CLASS_NORMAL | |
| VNET_FLOOD_CLASS_TUNNEL_MASTER | |
| VNET_FLOOD_CLASS_TUNNEL_NORMAL | |
| VNET_FLOOD_CLASS_NO_FLOOD | |
Definition at line 814 of file interface.h.
| enum vnet_flow_dev_op_t |
| Enumerator | |
|---|---|
| VNET_FLOW_DEV_OP_ADD_FLOW | |
| VNET_FLOW_DEV_OP_DEL_FLOW | |
| VNET_FLOW_DEV_OP_GET_COUNTER | |
| VNET_FLOW_DEV_OP_RESET_COUNTER | |
Definition at line 96 of file interface.h.
| enum vnet_hw_if_rx_mode |
| Enumerator | |
|---|---|
| VNET_HW_IF_RX_MODE_UNKNOWN | |
| VNET_HW_IF_RX_MODE_POLLING | |
| VNET_HW_IF_RX_MODE_INTERRUPT | |
| VNET_HW_IF_RX_MODE_ADAPTIVE | |
| VNET_HW_IF_RX_MODE_DEFAULT | |
| VNET_HW_IF_NUM_RX_MODES | |
Definition at line 53 of file interface.h.
| Enumerator | |
|---|---|
| VNET_HW_IF_TX_FRAME_HINT_NOT_CHAINED | |
| VNET_HW_IF_TX_FRAME_HINT_NO_GSO | |
| VNET_HW_IF_TX_FRAME_HINT_NO_CKSUM_OFFLOAD | |
Definition at line 615 of file interface.h.
Definition at line 518 of file interface.h.
Attributes assignable to a HW interface Class.
| Enumerator | |
|---|---|
| VNET_HW_INTERFACE_CLASS_FLAG_P2P | a point 2 point interface |
| VNET_HW_INTERFACE_CLASS_FLAG_NBMA | a non-broadcast multiple access interface |
Definition at line 389 of file interface.h.
| Enumerator | |
|---|---|
| VNET_HW_INTERFACE_FLAG_NONE | |
| VNET_HW_INTERFACE_FLAG_LINK_UP | |
| VNET_HW_INTERFACE_FLAG_HALF_DUPLEX | |
| VNET_HW_INTERFACE_FLAG_FULL_DUPLEX | |
| VNET_HW_INTERFACE_FLAG_NBMA | |
Definition at line 505 of file interface.h.
Definition at line 901 of file interface.h.
| Enumerator | |
|---|---|
| VNET_ITF_FUNC_PRIORITY_LOW | |
| VNET_ITF_FUNC_PRIORITY_HIGH | |
Definition at line 110 of file interface.h.
| Enumerator | |
|---|---|
| COLLECT_SIMPLE_STATS | |
| COLLECT_DETAILED_STATS | |
Definition at line 957 of file interface.h.
| enum vnet_link_t_ |
Link Type: A description of the protocol of packets on the link.
On an ethernet link this maps directly into the ethertype. On a GRE tunnel it maps to the GRE-proto, etc for other lnk types.
| Enumerator | |
|---|---|
| VNET_LINK_IP4 | |
| VNET_LINK_IP6 | |
| VNET_LINK_MPLS | |
| VNET_LINK_ETHERNET | |
| VNET_LINK_ARP | |
| VNET_LINK_NSH | |
Definition at line 341 of file interface.h.
| enum vnet_mtu_t |
| Enumerator | |
|---|---|
| VNET_MTU_L3 | |
| VNET_MTU_IP4 | |
| VNET_MTU_IP6 | |
| VNET_MTU_MPLS | |
| VNET_N_MTU | |
Definition at line 828 of file interface.h.
Definition at line 839 of file interface.h.
| Enumerator | |
|---|---|
| VNET_SW_INTERFACE_TYPE_HARDWARE | |
| VNET_SW_INTERFACE_TYPE_SUB | |
| VNET_SW_INTERFACE_TYPE_P2P | |
| VNET_SW_INTERFACE_TYPE_PIPE | |
Definition at line 761 of file interface.h.
|
inlinestatic |
Definition at line 966 of file interface.h.
| void collect_detailed_interface_stats_flag_clear | ( | void | ) |
| void collect_detailed_interface_stats_flag_set | ( | void | ) |
| u8* default_build_rewrite | ( | struct vnet_main_t * | vnm, |
| u32 | sw_if_index, | ||
| vnet_link_t | link_type, | ||
| const void * | dst_hw_address | ||
| ) |
Return a complete, zero-length (aka placeholder) rewrite.
Definition at line 1757 of file interface.c.
Here is the caller graph for this function:| void default_update_adjacency | ( | struct vnet_main_t * | vnm, |
| u32 | sw_if_index, | ||
| u32 | adj_index | ||
| ) |
Default adjacency update function.
Definition at line 1765 of file interface.c.
Here is the call graph for this function:
Here is the caller graph for this function:| STATIC_ASSERT_OFFSET_OF | ( | vnet_hw_interface_t | , |
| cacheline1 | , | ||
| CLIB_CACHE_LINE_BYTES | |||
| ) |
|
inlinestatic |
Definition at line 1051 of file interface.h.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
Definition at line 1058 of file interface.h.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 1474 of file interface.c.
Here is the call graph for this function:
Here is the caller graph for this function:| vnet_l3_packet_type_t vnet_link_to_l3_proto | ( | vnet_link_t | link | ) |
Convert a link to to an Ethertype.
Definition at line 1719 of file interface.c.
Here is the caller graph for this function:| vnet_mtu_t vnet_link_to_mtu | ( | vnet_link_t | link | ) |
| int vnet_pcap_dispatch_trace_configure | ( | vnet_pcap_dispatch_trace_args_t * | ) |
Definition at line 2056 of file interface_cli.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void vnet_pcap_drop_trace_filter_add_del | ( | u32 | error_index, |
| int | is_add | ||
| ) |
| void vnet_register_format_buffer_opaque2_helper | ( | vnet_buffer_opquae_formatter_t | fn | ) |
| void vnet_register_format_buffer_opaque_helper | ( | vnet_buffer_opquae_formatter_t | fn | ) |
| int collect_detailed_interface_stats_flag |
Definition at line 1851 of file interface.c.
| vlib_node_registration_t vnet_interface_output_arc_end_node |
(constructor) VLIB_REGISTER_NODE (vnet_interface_output_arc_end_node)
Definition at line 1220 of file interface_output.c.
| vlib_node_registration_t vnet_interface_output_node |
(constructor) VLIB_REGISTER_NODE (vnet_interface_output_node)
Definition at line 510 of file interface_output.c.
| vnet_device_class_t vnet_local_interface_device_class |