FD.io VPP  v17.01.1-3-gc6833f8
Vector Packet Processing
dslite_defs.h File Reference
+ Include dependency graph for dslite_defs.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  dslite_timeout_info_t
 
struct  dslite_table_entry_t
 
struct  dslite_global_counters_t
 
struct  dslite_tap_rg_t
 
struct  dslite_v6_to_v4_tcp_counter_t
 
struct  dslite_v4_to_v6_tcp_counter_t
 
struct  dslite_v6_to_v4_udp_counter_t
 
struct  dslite_v4_to_v6_udp_counter_t
 
struct  dslite_v6_to_v4_icmp_qry_counter_t
 
struct  dslite_v4_to_v6_icmp_qry_counter_t
 
struct  dslite_v6_to_v4_icmp_error_counter_t
 
struct  dslite_v4_to_v6_icmp_error_counter_t
 
struct  dslite_v6_icmp_error_counter_t
 
struct  dslite_icmp_gen_counter_t
 
struct  dslite_common_counter_t
 
struct  dslite_counters_t
 
struct  dslite_common_stats_t
 
struct  dslite_show_statistics_summary_resp
 
struct  dslite_feature_data_t
 

Macros

#define SWAP_IPV6_ADDR(ipv6_hdr, dslite_entry_ptr)
 
#define DSLITE_SET_TX_PKT_TYPE(type)
 
#define DSLITE_INC_STATS_V4(PTR, COUNTER, IPV4_SRC_ADDR)
 
#define DSLITE_INC_STATS_V6(PTR, COUNTER, IPV6_DEST_ADDR)
 
#define DSLITE_INVALID_UIDX   0xffff /*invalid svi app uidb index */
 
#define DSLITE_INVALID_VRFID   0xffffffff /*invalid vrf id */
 
#define DSLITE_VRF_MASK   0x3fff
 
#define DSLITE_MAX_VRFMAP_ENTRIES   (DSLITE_VRF_MASK + 1)
 
#define DSLITE_VRFMAP_ENTRY_INVALID   0xffff
 
#define DSLITE_V6_PREFIX_MASK_MIN   16
 
#define DSLITE_V6_PREFIX_MASK_MAX   96
 
#define DSLITE_V6_PREFIX_MASK_MULTIPLE   8
 
#define DSLITE_TUNNEL_MTU_MIN   1280
 
#define DSLITE_TUNNEL_MTU_MAX   9216
 
#define DSLITE_TUNNEL_TTL_MIN   0
 
#define DSLITE_TUNNEL_TTL_MAX   255
 
#define DSLITE_TUNNEL_TOS_MIN   0
 
#define DSLITE_TUNNEL_TOS_MAX   255
 
#define DSLITE_V4_MASK_MAX   32
 
#define DSLITE_AFTR_IPV4_ADDR   0xC0000001
 
#define DSLITE_MAX_TAP_RG_ENTRIES   2
 
#define DSLITE_MAX_DSLITE_ENTRIES   (256)
 
#define DSLITE_MAX_DSLITE_ID   (DSLITE_MAX_DSLITE_ENTRIES-1)
 
#define DSLITE_INDEX_OFFSET   1
 
#define DSLITE_INVALID_DSLITE_ID   (0)
 
#define DSLITE_TABLE_ENTRY_DELETED   0
 
#define DSLITE_TABLE_ENTRY_ACTIVE   1
 
#define DSLITE_TABLE_ENTRY_DORMANT   2
 
#define DSLITE_TABLE_ENTRY_INVALID_UIDB   3
 
#define DSLITE_IPV4_TOS_OVERRIDE_FLAG   0x00000001
 
#define DSLITE_IPV6_TOS_OVERRIDE_FLAG   0x00000002
 
#define DSLITE_IPV4_TTL_OVERRIDE_FLAG   0x00000004
 
#define DSLITE_IPV6_TTL_OVERRIDE_FLAG   0x00000008
 
#define DSLITE_IPV6_FRAG_REASSEMB_ENG   0x00000010
 
#define DSLITE_FTP_ALG_ENABLE   0x00000020
 
#define DSLITE_RTSP_ALG_ENABLE   0x00000040
 
#define DSLITE_NETFLOW_ENABLE   0x00000080
 
#define DSLITE_SYSLOG_ENABLE   0x00000100
 
#define DSLITE_BIDIR_REFRESH   1
 
#define DSLITE_ADD_UIDB_INDEX_DSLITE_ID_MAPPING(uidb_index, dslite_id)   *(cgse_uidb_index_cgse_id_mapping_ptr + uidb_index) = dslite_id;
 
#define CMD_GENERATE_PTB   0x1
 
#define CMD_GENERATE_TTL   0x2
 
#define STAT_PORT_RANGE_FROM_INST_PTR(inst)   ((inst)->cnat_static_port_range)
 

Functions

void dslite_clear_counters (u16 dslite_id)
 
void dslite_clear_per_RG_counters ()
 
void dslite_show_config (void)
 

Variables

u32 ds_lite_config_debug_level
 
dslite_table_entry_tdslite_table_db_ptr
 
u8 my_instance_number
 
dslite_global_counters_t dslite_global_counters
 
u32 dslite_config_debug_level
 
u32 dslite_data_path_debug_level
 
u32 dslite_defrag_debug_level
 
u32 dslite_debug_level
 
dslite_counters_t dslite_all_counters [DSLITE_MAX_DSLITE_ENTRIES]
 

Macro Definition Documentation

#define CMD_GENERATE_PTB   0x1

Definition at line 314 of file dslite_defs.h.

#define CMD_GENERATE_TTL   0x2

Definition at line 315 of file dslite_defs.h.

#define DSLITE_ADD_UIDB_INDEX_DSLITE_ID_MAPPING (   uidb_index,
  dslite_id 
)    *(cgse_uidb_index_cgse_id_mapping_ptr + uidb_index) = dslite_id;

Definition at line 185 of file dslite_defs.h.

#define DSLITE_AFTR_IPV4_ADDR   0xC0000001

Definition at line 81 of file dslite_defs.h.

#define DSLITE_BIDIR_REFRESH   1

Definition at line 159 of file dslite_defs.h.

#define DSLITE_FTP_ALG_ENABLE   0x00000020

Definition at line 130 of file dslite_defs.h.

#define DSLITE_INC_STATS_V4 (   PTR,
  COUNTER,
  IPV4_SRC_ADDR 
)
Value:
{ \
PTR->COUNTER++; \
}

Definition at line 48 of file dslite_defs.h.

#define DSLITE_INC_STATS_V6 (   PTR,
  COUNTER,
  IPV6_DEST_ADDR 
)
Value:
{ \
PTR->COUNTER++; \
}

Definition at line 52 of file dslite_defs.h.

#define DSLITE_INDEX_OFFSET   1

Definition at line 87 of file dslite_defs.h.

#define DSLITE_INVALID_DSLITE_ID   (0)

Definition at line 89 of file dslite_defs.h.

#define DSLITE_INVALID_UIDX   0xffff /*invalid svi app uidb index */

Definition at line 57 of file dslite_defs.h.

#define DSLITE_INVALID_VRFID   0xffffffff /*invalid vrf id */

Definition at line 58 of file dslite_defs.h.

#define DSLITE_IPV4_TOS_OVERRIDE_FLAG   0x00000001

Definition at line 125 of file dslite_defs.h.

#define DSLITE_IPV4_TTL_OVERRIDE_FLAG   0x00000004

Definition at line 127 of file dslite_defs.h.

#define DSLITE_IPV6_FRAG_REASSEMB_ENG   0x00000010

Definition at line 129 of file dslite_defs.h.

#define DSLITE_IPV6_TOS_OVERRIDE_FLAG   0x00000002

Definition at line 126 of file dslite_defs.h.

#define DSLITE_IPV6_TTL_OVERRIDE_FLAG   0x00000008

Definition at line 128 of file dslite_defs.h.

#define DSLITE_MAX_DSLITE_ENTRIES   (256)

Definition at line 84 of file dslite_defs.h.

#define DSLITE_MAX_DSLITE_ID   (DSLITE_MAX_DSLITE_ENTRIES-1)

Definition at line 85 of file dslite_defs.h.

#define DSLITE_MAX_TAP_RG_ENTRIES   2

Definition at line 83 of file dslite_defs.h.

#define DSLITE_MAX_VRFMAP_ENTRIES   (DSLITE_VRF_MASK + 1)

Definition at line 61 of file dslite_defs.h.

#define DSLITE_NETFLOW_ENABLE   0x00000080

Definition at line 132 of file dslite_defs.h.

#define DSLITE_RTSP_ALG_ENABLE   0x00000040

Definition at line 131 of file dslite_defs.h.

#define DSLITE_SET_TX_PKT_TYPE (   type)
Value:
{ \
ctx->ru.tx.packet_type = type; \
}
bad routing header type(not 4)") sr_error (NO_MORE_SEGMENTS

Definition at line 44 of file dslite_defs.h.

#define DSLITE_SYSLOG_ENABLE   0x00000100

Definition at line 133 of file dslite_defs.h.

#define DSLITE_TABLE_ENTRY_ACTIVE   1

Definition at line 92 of file dslite_defs.h.

#define DSLITE_TABLE_ENTRY_DELETED   0

Definition at line 91 of file dslite_defs.h.

#define DSLITE_TABLE_ENTRY_DORMANT   2

Definition at line 93 of file dslite_defs.h.

#define DSLITE_TABLE_ENTRY_INVALID_UIDB   3

Definition at line 94 of file dslite_defs.h.

#define DSLITE_TUNNEL_MTU_MAX   9216

Definition at line 70 of file dslite_defs.h.

#define DSLITE_TUNNEL_MTU_MIN   1280

Definition at line 69 of file dslite_defs.h.

#define DSLITE_TUNNEL_TOS_MAX   255

Definition at line 76 of file dslite_defs.h.

#define DSLITE_TUNNEL_TOS_MIN   0

Definition at line 75 of file dslite_defs.h.

#define DSLITE_TUNNEL_TTL_MAX   255

Definition at line 73 of file dslite_defs.h.

#define DSLITE_TUNNEL_TTL_MIN   0

Definition at line 72 of file dslite_defs.h.

#define DSLITE_V4_MASK_MAX   32

Definition at line 78 of file dslite_defs.h.

#define DSLITE_V6_PREFIX_MASK_MAX   96

Definition at line 66 of file dslite_defs.h.

#define DSLITE_V6_PREFIX_MASK_MIN   16

Definition at line 65 of file dslite_defs.h.

#define DSLITE_V6_PREFIX_MASK_MULTIPLE   8

Definition at line 67 of file dslite_defs.h.

#define DSLITE_VRF_MASK   0x3fff

Definition at line 60 of file dslite_defs.h.

#define DSLITE_VRFMAP_ENTRY_INVALID   0xffff

Definition at line 63 of file dslite_defs.h.

#define STAT_PORT_RANGE_FROM_INST_PTR (   inst)    ((inst)->cnat_static_port_range)

Definition at line 333 of file dslite_defs.h.

#define SWAP_IPV6_ADDR (   ipv6_hdr,
  dslite_entry_ptr 
)
Value:
ipv6_hdr->dst_addr[0] = ipv6_hdr->src_addr[0]; \
ipv6_hdr->dst_addr[1] = ipv6_hdr->src_addr[1]; \
ipv6_hdr->dst_addr[2] = ipv6_hdr->src_addr[2]; \
ipv6_hdr->dst_addr[3] = ipv6_hdr->src_addr[3]; \
ipv6_hdr->src_addr[0] = spp_host_to_net_byte_order_32(dslite_entry_ptr->AFTR_v6_address[0]); \
ipv6_hdr->src_addr[1] = spp_host_to_net_byte_order_32(dslite_entry_ptr->AFTR_v6_address[1]); \
ipv6_hdr->src_addr[2] = spp_host_to_net_byte_order_32(dslite_entry_ptr->AFTR_v6_address[2]); \
ipv6_hdr->src_addr[3] = spp_host_to_net_byte_order_32(dslite_entry_ptr->AFTR_v6_address[3]);

Definition at line 34 of file dslite_defs.h.

Function Documentation

void dslite_clear_counters ( u16  dslite_id)
void dslite_clear_per_RG_counters ( )
void dslite_show_config ( void  )

Variable Documentation

u32 ds_lite_config_debug_level
u32 dslite_config_debug_level

Definition at line 47 of file cnat_global.c.

u32 dslite_data_path_debug_level

Definition at line 48 of file cnat_global.c.

u32 dslite_debug_level

Definition at line 50 of file cnat_global.c.

u32 dslite_defrag_debug_level

Definition at line 49 of file cnat_global.c.

dslite_global_counters_t dslite_global_counters
dslite_table_entry_t* dslite_table_db_ptr

Definition at line 52 of file cnat_global.c.

u8 my_instance_number

Definition at line 51 of file cnat_ports.c.