FD.io VPP
v20.01-48-g3e0dafb74
Vector Packet Processing
|
Processing of packets with a SRH. More...
Go to the source code of this file.
Data Structures | |
struct | sr_localsid_trace_t |
SR localsid node trace. More... | |
Macros | |
#define | foreach_sr_localsid_error |
#define | foreach_sr_localsid_next |
Enumerations | |
enum | sr_localsid_error_t { SR_LOCALSID_N_ERROR } |
enum | sr_localsid_next_t { SR_LOCALSID_N_NEXT } |
Variables | |
static dpo_type_t | sr_localsid_dpo_type |
Dynamically added SR localsid DPO type. More... | |
static dpo_type_t | sr_localsid_d_dpo_type |
static vlib_cli_command_t | sr_localsid_command |
(constructor) VLIB_CLI_COMMAND (sr_localsid_command) More... | |
static vlib_cli_command_t | show_sr_localsid_command |
(constructor) VLIB_CLI_COMMAND (show_sr_localsid_command) More... | |
static vlib_cli_command_t | clear_sr_localsid_counters_command |
(constructor) VLIB_CLI_COMMAND (clear_sr_localsid_counters_command) More... | |
static char * | sr_localsid_error_strings [] |
vlib_node_registration_t | sr_localsid_d_node |
(constructor) VLIB_REGISTER_NODE (sr_localsid_d_node) More... | |
vlib_node_registration_t | sr_localsid_node |
(constructor) VLIB_REGISTER_NODE (sr_localsid_node) More... | |
static const dpo_vft_t | sr_loc_vft |
static const char *const | sr_loc_ip6_nodes [] |
static const char *const *const | sr_loc_nodes [DPO_PROTO_NUM] |
static const char *const | sr_loc_d_ip6_nodes [] |
static const char *const *const | sr_loc_d_nodes [DPO_PROTO_NUM] |
static vlib_cli_command_t | show_sr_localsid_behaviors_command |
(constructor) VLIB_CLI_COMMAND (show_sr_localsid_behaviors_command) More... | |
Processing of packets with a SRH.
CLI to define new Segment Routing End processing functions. Graph node to support such functions.
Each function associates an SRv6 segment (IPv6 address) with an specific Segment Routing function.
Definition in file sr_localsid.c.
#define foreach_sr_localsid_error |
Definition at line 627 of file sr_localsid.c.
#define foreach_sr_localsid_next |
Definition at line 649 of file sr_localsid.c.
enum sr_localsid_error_t |
Enumerator | |
---|---|
SR_LOCALSID_N_ERROR |
Definition at line 635 of file sr_localsid.c.
enum sr_localsid_next_t |
Enumerator | |
---|---|
SR_LOCALSID_N_NEXT |
Definition at line 657 of file sr_localsid.c.
|
static |
Function to 'clear' ALL SR localsid counters.
Definition at line 594 of file sr_localsid.c.
static_always_inline void end_decaps_srh_processing | ( | vlib_node_runtime_t * | node, |
vlib_buffer_t * | b0, | ||
ip6_header_t * | ip0, | ||
ip6_sr_header_t * | sr0, | ||
ip6_sr_localsid_t * | ls0, | ||
u32 * | next0 | ||
) |
Definition at line 829 of file sr_localsid.c.
static_always_inline void end_srh_processing | ( | vlib_node_runtime_t * | node, |
vlib_buffer_t * | b0, | ||
ip6_header_t * | ip0, | ||
ip6_sr_header_t * | sr0, | ||
ip6_sr_localsid_t * | ls0, | ||
u32 * | next0, | ||
u8 | psp, | ||
ip6_ext_header_t * | prev0 | ||
) |
Function doing End processing.
Definition at line 732 of file sr_localsid.c.
SR LocalSID graph node trace function.
Definition at line 671 of file sr_localsid.c.
|
static |
CLI function to 'show' all available SR LocalSID behaviors.
Definition at line 1614 of file sr_localsid.c.
|
static |
CLI function to 'show' all SR LocalSIDs on console.
Definition at line 472 of file sr_localsid.c.
int sr_cli_localsid | ( | char | is_del, |
ip6_address_t * | localsid_addr, | ||
u16 | prefixlen, | ||
char | end_psp, | ||
u8 | behavior, | ||
u32 | sw_if_index, | ||
u32 | vlan_index, | ||
u32 | fib_table, | ||
ip46_address_t * | nh_addr, | ||
void * | ls_plugin_mem | ||
) |
SR localsid add/del.
Function to add or delete SR LocalSIDs.
is_del | Boolean of whether its a delete instruction |
localsid_addr | IPv6 address of the localsid |
is_decap | Boolean of whether decapsulation is allowed in this function |
behavior | Type of behavior (function) for this localsid |
sw_if_index | Only for L2/L3 xconnect. OIF. In VRF variant the fib_table. |
vlan_index | Only for L2 xconnect. Outgoing VLAN tag. |
fib_table | FIB table in which we should install the localsid entry |
nh_addr | Next Hop IPv4/IPv6 address. Only for L2/L3 xconnect. |
Definition at line 66 of file sr_localsid.c.
|
static |
SR LocalSID CLI function.
Definition at line 288 of file sr_localsid.c.
|
static |
SR LocalSID graph node.
Supports all default SR Endpoint variants with decaps
Definition at line 913 of file sr_localsid.c.
|
static |
SR LocalSID graph node.
Supports all default SR Endpoint without decaps
Definition at line 1219 of file sr_localsid.c.
int sr_localsid_register_function | ( | vlib_main_t * | vm, |
u8 * | fn_name, | ||
u8 * | keyword_str, | ||
u8 * | def_str, | ||
u8 * | params_str, | ||
u8 | prefix_length, | ||
dpo_type_t * | dpo, | ||
format_function_t * | ls_format, | ||
unformat_function_t * | ls_unformat, | ||
sr_plugin_callback_t * | creation_fn, | ||
sr_plugin_callback_t * | removal_fn | ||
) |
SR LocalSID plugin registry.
Definition at line 1564 of file sr_localsid.c.
clib_error_t* sr_localsids_init | ( | vlib_main_t * | vm | ) |
SR LocalSID initialization.
Definition at line 1671 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (clear_sr_localsid_counters_command)
Definition at line 607 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_sr_localsid_behaviors_command)
Definition at line 1660 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_sr_localsid_command)
Definition at line 583 of file sr_localsid.c.
|
static |
Definition at line 1549 of file sr_localsid.c.
|
static |
Definition at line 1554 of file sr_localsid.c.
|
static |
Definition at line 1540 of file sr_localsid.c.
|
static |
Definition at line 1545 of file sr_localsid.c.
|
static |
Definition at line 1534 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (sr_localsid_command)
Definition at line 440 of file sr_localsid.c.
|
static |
Definition at line 47 of file sr_localsid.c.
vlib_node_registration_t sr_localsid_d_node |
(constructor) VLIB_REGISTER_NODE (sr_localsid_d_node)
Definition at line 1198 of file sr_localsid.c.
|
static |
Dynamically added SR localsid DPO type.
Definition at line 46 of file sr_localsid.c.
|
static |
Definition at line 643 of file sr_localsid.c.
vlib_node_registration_t sr_localsid_node |
(constructor) VLIB_REGISTER_NODE (sr_localsid_node)
Definition at line 1508 of file sr_localsid.c.