FD.io VPP
v19.01.2-3-gf61a1a8
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 596 of file sr_localsid.c.
#define foreach_sr_localsid_next |
Definition at line 618 of file sr_localsid.c.
enum sr_localsid_error_t |
Enumerator | |
---|---|
SR_LOCALSID_N_ERROR |
Definition at line 604 of file sr_localsid.c.
enum sr_localsid_next_t |
Enumerator | |
---|---|
SR_LOCALSID_N_NEXT |
Definition at line 626 of file sr_localsid.c.
|
static |
Function to 'clear' ALL SR localsid counters.
Definition at line 563 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 798 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 701 of file sr_localsid.c.
SR LocalSID graph node trace function.
Definition at line 640 of file sr_localsid.c.
|
static |
CLI function to 'show' all available SR LocalSID behaviors.
Definition at line 1573 of file sr_localsid.c.
|
static |
CLI function to 'show' all SR LocalSIDs on console.
Definition at line 441 of file sr_localsid.c.
int sr_cli_localsid | ( | char | is_del, |
ip6_address_t * | localsid_addr, | ||
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 263 of file sr_localsid.c.
|
static |
SR LocalSID graph node.
Supports all default SR Endpoint variants with decaps
Definition at line 882 of file sr_localsid.c.
|
static |
SR LocalSID graph node.
Supports all default SR Endpoint without decaps
Definition at line 1185 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, | ||
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 1525 of file sr_localsid.c.
clib_error_t* sr_localsids_init | ( | vlib_main_t * | vm | ) |
SR LocalSID initialization.
Definition at line 1630 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (clear_sr_localsid_counters_command)
Definition at line 576 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_sr_localsid_behaviors_command)
Definition at line 1619 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_sr_localsid_command)
Definition at line 552 of file sr_localsid.c.
|
static |
Definition at line 1510 of file sr_localsid.c.
|
static |
Definition at line 1515 of file sr_localsid.c.
|
static |
Definition at line 1501 of file sr_localsid.c.
|
static |
Definition at line 1506 of file sr_localsid.c.
|
static |
Definition at line 1495 of file sr_localsid.c.
|
static |
(constructor) VLIB_CLI_COMMAND (sr_localsid_command)
Definition at line 409 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 1164 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 612 of file sr_localsid.c.
vlib_node_registration_t sr_localsid_node |
(constructor) VLIB_REGISTER_NODE (sr_localsid_node)
Definition at line 1469 of file sr_localsid.c.