FD.io VPP
v16.09
Vector Packet Processing
|
Go to the source code of this file.
Macros | |
#define | DSLITE_PRINTF(level, ...) if (dslite_debug_level > level) PLATFORM_DEBUG_PRINT(__VA_ARGS__); |
#define | HASH_ENHANCE 4 |
#define | DSLITE_MAIN_DB_SIZE (20000000 / PLATFORM_CNAT_INSTS) |
#define | DSLITE_MAIN_HASH_SIZE (HASH_ENHANCE * PLATFORM_CNAT_MAIN_PRELIM_HASH_SIZE) |
#define | DSLITE_MAIN_HASH_MASK (DSLITE_MAIN_HASH_SIZE-1) |
#define | DSLITE_USER_HASH_SIZE CNAT_USER_HASH_SIZE |
#define | DSLITE_USER_HASH_MASK (DSLITE_USER_HASH_SIZE-1) |
#define | DSLITE_TIMEOUT_HASH_SIZE 1000 |
#define | DSLITE_TIMEOUT_HASH_MASK (DSLITE_TIMEOUT_HASH_SIZE - 1) |
#define | DSLITE_TIMEOUT_FULL_MASK 0xFFFFFFFFFFFFFFFF |
#define | CNAT_MAX_SESSIONS_PER_BIB 0xFFFF |
#define | FORCE_DEL 1 /* Delete static BIB entries as well */ |
#define | DSLITE_UDP_DEFAULT 300 /* 5 min */ |
#define | DSLITE_UDP_MIN 120 /* 2 min */ |
#define | DSLITE_TCP_TRANS 240 /* 4 min */ |
#define | DSLITE_TCP_EST 7200 /* 2 hrs */ |
#define | DSLITE_TCP_V4_SYN 6 /* 6 sec */ |
#define | DSLITE_FRAG_MIN 2 /* 2 sec */ |
#define | DSLITE_ICMP_DEFAULT 60 /* 1 min */ |
#define | DSLITE_V6_GET_HASH(in_key, hash, mask) |
#define | DSLITE_V6_GET_USER_HASH(ipv6, hash, mask) |
#define | DSLITE_V4_GET_HASH(in_key, hash, mask) |
#define | PRIVATE_V4_ADDR_CHECK(addr, invalid) |
#define | V4_MAPPED_V6_CHECK(v6_addr, invalid) |
#define | DSLITE_CMP_V6_KEY(key1, key2) memcmp(key1, key2, sizeof(dslite_v6_key_t)) |
#define | DSLITE_CMP_V4_KEY(key1, key2) memcmp(key1, key2, sizeof(dslite_v4_key_t)) |
#define | DSLITE_CMP_V6_IP(ip1, ip2) memcmp(ip1, ip2, (sizeof(u32) * 4)) |
#define | DSLITE_CMP_V6_KEY1(key1, key2) |
#define | DSLITE_CMP_V6_IP1(ip1, ip2) |
#define | DSLITE_CMP_V4_KEY1(key1, key2) (key1.key64 == key2.key64) |
Functions | |
cnat_main_db_entry_t * | dslite_get_main_db_entry_v2 (dslite_db_key_bucket_t *ki, port_pair_t port_pair_type, port_type_t port_type, cnat_gen_icmp_info *info, dslite_table_entry_t *dslite_entry_ptr, cnat_key_t *dest_info) |
cnat_main_db_entry_t * | dslite_main_db_lookup_entry (dslite_db_key_bucket_t *ki) |
cnat_user_db_entry_t * | dslite_user_db_lookup_entry (dslite_db_key_bucket_t *uki) |
cnat_user_db_entry_t * | dslite_user_db_create_entry (dslite_db_key_bucket_t *uki, u32 portmap_index) |
cnat_main_db_entry_t * | dslite_create_main_db_entry_and_hash (dslite_db_key_bucket_t *ki, cnat_db_key_bucket_t *ko, cnat_user_db_entry_t *udb) |
#define CNAT_MAX_SESSIONS_PER_BIB 0xFFFF |
Definition at line 55 of file dslite_db.h.
#define DSLITE_CMP_V4_KEY | ( | key1, | |
key2 | |||
) | memcmp(key1, key2, sizeof(dslite_v4_key_t)) |
Definition at line 126 of file dslite_db.h.
#define DSLITE_CMP_V4_KEY1 | ( | key1, | |
key2 | |||
) | (key1.key64 == key2.key64) |
Definition at line 144 of file dslite_db.h.
#define DSLITE_CMP_V6_IP | ( | ip1, | |
ip2 | |||
) | memcmp(ip1, ip2, (sizeof(u32) * 4)) |
Definition at line 130 of file dslite_db.h.
#define DSLITE_CMP_V6_IP1 | ( | ip1, | |
ip2 | |||
) |
Definition at line 140 of file dslite_db.h.
#define DSLITE_CMP_V6_KEY | ( | key1, | |
key2 | |||
) | memcmp(key1, key2, sizeof(dslite_v6_key_t)) |
Definition at line 123 of file dslite_db.h.
#define DSLITE_CMP_V6_KEY1 | ( | key1, | |
key2 | |||
) |
Definition at line 134 of file dslite_db.h.
#define DSLITE_FRAG_MIN 2 /* 2 sec */ |
Definition at line 65 of file dslite_db.h.
#define DSLITE_ICMP_DEFAULT 60 /* 1 min */ |
Definition at line 66 of file dslite_db.h.
#define DSLITE_MAIN_DB_SIZE (20000000 / PLATFORM_CNAT_INSTS) |
Definition at line 39 of file dslite_db.h.
#define DSLITE_MAIN_HASH_MASK (DSLITE_MAIN_HASH_SIZE-1) |
Definition at line 43 of file dslite_db.h.
#define DSLITE_MAIN_HASH_SIZE (HASH_ENHANCE * PLATFORM_CNAT_MAIN_PRELIM_HASH_SIZE) |
Definition at line 40 of file dslite_db.h.
#define DSLITE_PRINTF | ( | level, | |
... | |||
) | if (dslite_debug_level > level) PLATFORM_DEBUG_PRINT(__VA_ARGS__); |
Definition at line 28 of file dslite_db.h.
#define DSLITE_TCP_EST 7200 /* 2 hrs */ |
Definition at line 63 of file dslite_db.h.
#define DSLITE_TCP_TRANS 240 /* 4 min */ |
Definition at line 62 of file dslite_db.h.
#define DSLITE_TCP_V4_SYN 6 /* 6 sec */ |
Definition at line 64 of file dslite_db.h.
#define DSLITE_TIMEOUT_FULL_MASK 0xFFFFFFFFFFFFFFFF |
Definition at line 53 of file dslite_db.h.
#define DSLITE_TIMEOUT_HASH_MASK (DSLITE_TIMEOUT_HASH_SIZE - 1) |
Definition at line 52 of file dslite_db.h.
#define DSLITE_TIMEOUT_HASH_SIZE 1000 |
Definition at line 51 of file dslite_db.h.
#define DSLITE_UDP_DEFAULT 300 /* 5 min */ |
Definition at line 60 of file dslite_db.h.
#define DSLITE_UDP_MIN 120 /* 2 min */ |
Definition at line 61 of file dslite_db.h.
#define DSLITE_USER_HASH_MASK (DSLITE_USER_HASH_SIZE-1) |
Definition at line 48 of file dslite_db.h.
#define DSLITE_USER_HASH_SIZE CNAT_USER_HASH_SIZE |
Definition at line 47 of file dslite_db.h.
#define DSLITE_V4_GET_HASH | ( | in_key, | |
hash, | |||
mask | |||
) |
#define DSLITE_V6_GET_HASH | ( | in_key, | |
hash, | |||
mask | |||
) |
Definition at line 77 of file dslite_db.h.
#define DSLITE_V6_GET_USER_HASH | ( | ipv6, | |
hash, | |||
mask | |||
) |
#define FORCE_DEL 1 /* Delete static BIB entries as well */ |
Definition at line 57 of file dslite_db.h.
#define HASH_ENHANCE 4 |
Definition at line 37 of file dslite_db.h.
#define PRIVATE_V4_ADDR_CHECK | ( | addr, | |
invalid | |||
) |
Definition at line 102 of file dslite_db.h.
#define V4_MAPPED_V6_CHECK | ( | v6_addr, | |
invalid | |||
) |
Definition at line 111 of file dslite_db.h.
cnat_main_db_entry_t* dslite_create_main_db_entry_and_hash | ( | dslite_db_key_bucket_t * | ki, |
cnat_db_key_bucket_t * | ko, | ||
cnat_user_db_entry_t * | udb | ||
) |
Definition at line 2989 of file cnat_db_v2.c.
cnat_main_db_entry_t* dslite_get_main_db_entry_v2 | ( | dslite_db_key_bucket_t * | ki, |
port_pair_t | port_pair_type, | ||
port_type_t | port_type, | ||
cnat_gen_icmp_info * | info, | ||
dslite_table_entry_t * | dslite_entry_ptr, | ||
cnat_key_t * | dest_info | ||
) |
Definition at line 3109 of file cnat_db_v2.c.
cnat_main_db_entry_t* dslite_main_db_lookup_entry | ( | dslite_db_key_bucket_t * | ki | ) |
cnat_user_db_entry_t* dslite_user_db_create_entry | ( | dslite_db_key_bucket_t * | uki, |
u32 | portmap_index | ||
) |
cnat_user_db_entry_t* dslite_user_db_lookup_entry | ( | dslite_db_key_bucket_t * | uki | ) |
u32 dslite_in2out_forwarding_count |
u32 dslite_in2out_forwarding_rate |
u32 dslite_out2in_forwarding_count |
u32 dslite_out2in_forwarding_rate |
dslite_table_entry_t dslite_table_array[DSLITE_MAX_DSLITE_ENTRIES] |
dslite_table_entry_t* dslite_table_ptr |
u32 dslite_translation_create_count |
u32 dslite_translation_create_rate |
u32 dslite_translation_delete_count |
u32 dslite_translation_delete_rate |