NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
psp_gw_config.h File Reference
#include <set>
#include <string>
#include <vector>
#include <map>
#include <rte_ether.h>
#include <rte_hash.h>
#include <doca_types.h>
#include <doca_flow.h>
#include <dpdk_utils.h>
Include dependency graph for psp_gw_config.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ip_pair
 
struct  psp_gw_peer
 Describes a peer which is capable of exchanging traffic flows over a PSP tunnel. More...
 
struct  psp_gw_net_config
 describes a network of peers which participate in a network of PSP tunnel connections. More...
 
struct  entries_status
 user context struct that will be used in entries process callback More...
 
struct  psp_gw_app_config
 describes the configuration of the PSP networking service on the local host. More...
 

Typedefs

typedef uint8_t ipv6_addr_t[IPV6_ADDR_LEN]
 
using session_key = std::pair< std::string, std::string >
 

Enumerations

enum  psp_gw_mode { PSP_GW_MODE_TUNNEL = 0 , PSP_GW_MODE_TRANSPORT = 1 }
 

Variables

const std::set< uint32_t > SUPPORTED_PSP_VERSIONS = {0, 1}
 
static const uint32_t DEFAULT_PSP_VERSION = 1
 
static constexpr uint32_t DEFAULT_CRYPT_OFFSET_IPV4 = 5
 
static constexpr uint32_t DEFAULT_CRYPT_OFFSET_VC_ENABLED_IPV4 = 7
 
static constexpr uint32_t DEFAULT_CRYPT_OFFSET_IPV6 = 10
 
static constexpr uint32_t DEFAULT_CRYPT_OFFSET_VC_ENABLED_IPV6 = 12
 
static constexpr uint16_t PSP_PERF_KEY_GEN_PRINT = 1 << 0
 
static constexpr uint16_t PSP_PERF_INSERTION_PRINT = 1 << 1
 
static constexpr uint16_t PSP_PERF_ALL = PSP_PERF_KEY_GEN_PRINT | PSP_PERF_INSERTION_PRINT
 
static const uint32_t PSP_MAX_PEERS = 1 << 20
 
static const uint32_t PSP_MAX_SESSIONS = 1 << 20
 
static const std::string PSP_PERF_KEY_GEN_PRINT_STR = "key-gen"
 
static const std::string PSP_PERF_INSERTION_PRINT_STR = "insertion"
 
static const std::string PSP_PERF_ALL_STR = "all"
 
static const std::map< std::string, uint16_t > PSP_PERF_MAP
 
static constexpr uint32_t IPV6_ADDR_LEN = 16
 

Typedef Documentation

◆ ipv6_addr_t

typedef uint8_t ipv6_addr_t[IPV6_ADDR_LEN]

Definition at line 78 of file psp_gw_config.h.

◆ session_key

using session_key = std::pair<std::string, std::string>

Definition at line 79 of file psp_gw_config.h.

Enumeration Type Documentation

◆ psp_gw_mode

Enumerator
PSP_GW_MODE_TUNNEL 
PSP_GW_MODE_TRANSPORT 

Definition at line 86 of file psp_gw_config.h.

Variable Documentation

◆ DEFAULT_CRYPT_OFFSET_IPV4

constexpr uint32_t DEFAULT_CRYPT_OFFSET_IPV4 = 5
staticconstexpr

Definition at line 53 of file psp_gw_config.h.

◆ DEFAULT_CRYPT_OFFSET_IPV6

constexpr uint32_t DEFAULT_CRYPT_OFFSET_IPV6 = 10
staticconstexpr

Definition at line 56 of file psp_gw_config.h.

◆ DEFAULT_CRYPT_OFFSET_VC_ENABLED_IPV4

constexpr uint32_t DEFAULT_CRYPT_OFFSET_VC_ENABLED_IPV4 = 7
staticconstexpr

Definition at line 54 of file psp_gw_config.h.

◆ DEFAULT_CRYPT_OFFSET_VC_ENABLED_IPV6

constexpr uint32_t DEFAULT_CRYPT_OFFSET_VC_ENABLED_IPV6 = 12
staticconstexpr

Definition at line 57 of file psp_gw_config.h.

◆ DEFAULT_PSP_VERSION

const uint32_t DEFAULT_PSP_VERSION = 1
static

Definition at line 46 of file psp_gw_config.h.

◆ IPV6_ADDR_LEN

constexpr uint32_t IPV6_ADDR_LEN = 16
staticconstexpr

Definition at line 77 of file psp_gw_config.h.

◆ PSP_MAX_PEERS

const uint32_t PSP_MAX_PEERS = 1 << 20
static

Definition at line 63 of file psp_gw_config.h.

◆ PSP_MAX_SESSIONS

const uint32_t PSP_MAX_SESSIONS = 1 << 20
static

Definition at line 64 of file psp_gw_config.h.

◆ PSP_PERF_ALL

constexpr uint16_t PSP_PERF_ALL = PSP_PERF_KEY_GEN_PRINT | PSP_PERF_INSERTION_PRINT
staticconstexpr

Definition at line 61 of file psp_gw_config.h.

◆ PSP_PERF_ALL_STR

const std::string PSP_PERF_ALL_STR = "all"
static

Definition at line 69 of file psp_gw_config.h.

◆ PSP_PERF_INSERTION_PRINT

constexpr uint16_t PSP_PERF_INSERTION_PRINT = 1 << 1
staticconstexpr

Definition at line 60 of file psp_gw_config.h.

◆ PSP_PERF_INSERTION_PRINT_STR

const std::string PSP_PERF_INSERTION_PRINT_STR = "insertion"
static

Definition at line 68 of file psp_gw_config.h.

◆ PSP_PERF_KEY_GEN_PRINT

constexpr uint16_t PSP_PERF_KEY_GEN_PRINT = 1 << 0
staticconstexpr

Definition at line 59 of file psp_gw_config.h.

◆ PSP_PERF_KEY_GEN_PRINT_STR

const std::string PSP_PERF_KEY_GEN_PRINT_STR = "key-gen"
static

Definition at line 67 of file psp_gw_config.h.

◆ PSP_PERF_MAP

const std::map<std::string, uint16_t> PSP_PERF_MAP
static
Initial value:
= {
}
static constexpr uint16_t PSP_PERF_KEY_GEN_PRINT
Definition: psp_gw_config.h:59
static constexpr uint16_t PSP_PERF_INSERTION_PRINT
Definition: psp_gw_config.h:60
static const std::string PSP_PERF_KEY_GEN_PRINT_STR
Definition: psp_gw_config.h:67
static const std::string PSP_PERF_ALL_STR
Definition: psp_gw_config.h:69
static const std::string PSP_PERF_INSERTION_PRINT_STR
Definition: psp_gw_config.h:68
static constexpr uint16_t PSP_PERF_ALL
Definition: psp_gw_config.h:61

Definition at line 71 of file psp_gw_config.h.

◆ SUPPORTED_PSP_VERSIONS

const std::set<uint32_t> SUPPORTED_PSP_VERSIONS = {0, 1}
inline

Definition at line 45 of file psp_gw_config.h.