Go to the source code of this file.
|
enum | transport_dequeue_type_ {
TRANSPORT_TX_PEEK,
TRANSPORT_TX_DEQUEUE,
TRANSPORT_TX_INTERNAL,
TRANSPORT_TX_DGRAM,
TRANSPORT_TX_N_FNS
} |
|
enum | transport_service_type_ { TRANSPORT_SERVICE_VC,
TRANSPORT_SERVICE_CL,
TRANSPORT_SERVICE_APP,
TRANSPORT_N_SERVICES
} |
|
enum | transport_connection_flags_ { TRANSPORT_CONNECTION_F_IS_TX_PACED = 1 << 0,
TRANSPORT_CONNECTION_F_NO_LOOKUP = 1 << 1,
TRANSPORT_CONNECTION_F_DESCHED = 1 << 2,
TRANSPORT_CONNECTION_F_CLESS = 1 << 3
} |
|
enum | transport_endpt_cfg_flags_ { TRANSPORT_CFG_F_CONNECTED = 1 << 0,
TRANSPORT_CFG_F_UNIDIRECTIONAL = 1 << 1
} |
|
enum | transport_endpt_attr_flag_bit_ { foreach_transport_endpt_cfg_flags
} |
|
enum | transport_endpt_attr_flag_ { foreach_transport_endpt_cfg_flags
} |
|
enum | transport_endpt_attr_type_ { foreach_transport_attr_fields
} |
|
enum | transport_endpt_ext_cfg_type_ { TRANSPORT_ENDPT_EXT_CFG_NONE,
TRANSPORT_ENDPT_EXT_CFG_CRYPTO
} |
|
◆ c_c_index
#define c_c_index connection.c_index |
◆ c_cc_stat_tstamp
#define c_cc_stat_tstamp connection.cc_stat_tstamp |
◆ c_elog_track
◆ c_fib_index
#define c_fib_index connection.fib_index |
◆ c_flags
◆ c_is_ip4
#define c_is_ip4 connection.is_ip4 |
◆ c_lcl_ip
#define c_lcl_ip connection.lcl_ip |
Macros for 'derived classes' where base is named "connection".
Definition at line 127 of file transport_types.h.
◆ c_lcl_ip4
◆ c_lcl_ip6
◆ c_lcl_port
#define c_lcl_port connection.lcl_port |
◆ c_opaque_id
#define c_opaque_id connection.opaque_conn_id |
◆ c_pacer
#define c_pacer connection.pacer |
◆ c_proto
◆ c_rmt_dpo
#define c_rmt_dpo connection.rmt_dpo |
◆ c_rmt_fei
#define c_rmt_fei connection.rmt_fei |
◆ c_rmt_ip
#define c_rmt_ip connection.rmt_ip |
◆ c_rmt_ip4
◆ c_rmt_ip6
◆ c_rmt_port
#define c_rmt_port connection.rmt_port |
◆ c_s_index
#define c_s_index connection.s_index |
◆ c_stats
◆ c_thread_index
◆ ENDPOINT_INVALID_INDEX
#define ENDPOINT_INVALID_INDEX ((u32)~0) |
◆ foreach_transport_attr_fields
#define foreach_transport_attr_fields |
◆ foreach_transport_endpoint_cfg_fields
#define foreach_transport_endpoint_cfg_fields |
Value: foreach_transport_endpoint_fields \
_ (
u32, next_node_index) \
_ (
u32, next_node_opaque) \
_ (
u8, transport_flags) \
Definition at line 207 of file transport_types.h.
◆ foreach_transport_endpoint_fields
#define foreach_transport_endpoint_fields |
◆ foreach_transport_endpt_cfg_flags
foreach_transport_endpt_cfg_flags |
Value: _ (CSUM_OFFLOAD) \
_ (GSO) \
_ (RATE_SAMPLING)
Definition at line 223 of file transport_types.h.
◆ foreach_transport_proto
#define foreach_transport_proto |
Value:
_ (UDP, "udp", "U") \
_ (NONE, "ct", "C") \
_ (TLS, "tls", "J") \
_ (QUIC, "quic", "Q") \
_ (DTLS, "dtls", "D") \
_ (SRTP, "srtp", "R")
Definition at line 160 of file transport_types.h.
◆ s_ho_handle
#define s_ho_handle pacer.bytes_per_sec |
◆ TRANSPORT_CONN_ID_LEN
#define TRANSPORT_CONN_ID_LEN 44 |
◆ TRANSPORT_MAX_HDRS_LEN
#define TRANSPORT_MAX_HDRS_LEN 140 /* Max number of bytes for headers */ |
◆ spacer_t
◆ transport_connection_flags_t
◆ transport_connection_t
◆ transport_endpoint_cfg_t
◆ transport_endpoint_t
◆ transport_endpoint_table_t
◆ transport_endpt_attr_flag_bit_t
◆ transport_endpt_attr_flag_t
◆ transport_endpt_attr_t
◆ transport_endpt_attr_type_t
◆ transport_endpt_cfg_flags_t
◆ transport_endpt_crypto_cfg_t
◆ transport_endpt_ext_cfg_t
◆ transport_endpt_ext_cfg_type_t
◆ transport_proto_t
◆ transport_service_type_t
◆ transport_tx_fn_type_t
◆ transport_connection_flags_
Enumerator |
---|
TRANSPORT_CONNECTION_F_IS_TX_PACED | |
TRANSPORT_CONNECTION_F_NO_LOOKUP | Don't register connection in lookup.
Does not apply to local apps and transports using the network layer (udp/tcp)
|
TRANSPORT_CONNECTION_F_DESCHED | Connection descheduled by the session layer.
|
TRANSPORT_CONNECTION_F_CLESS | Connection is "connection less".
Some important implications of that are that connections are not pinned to workers and listeners will have fifos associated to them
|
Definition at line 45 of file transport_types.h.
◆ transport_dequeue_type_
Enumerator |
---|
TRANSPORT_TX_PEEK | reliable transport protos
|
TRANSPORT_TX_DEQUEUE | unreliable transport protos
|
TRANSPORT_TX_INTERNAL | apps acting as transports
|
TRANSPORT_TX_DGRAM | datagram mode
|
TRANSPORT_TX_N_FNS | |
Definition at line 28 of file transport_types.h.
◆ transport_endpt_attr_flag_
◆ transport_endpt_attr_flag_bit_
◆ transport_endpt_attr_type_
◆ transport_endpt_cfg_flags_
Enumerator |
---|
TRANSPORT_CFG_F_CONNECTED | |
TRANSPORT_CFG_F_UNIDIRECTIONAL | |
Definition at line 200 of file transport_types.h.
◆ transport_endpt_ext_cfg_type_
Enumerator |
---|
TRANSPORT_ENDPT_EXT_CFG_NONE | |
TRANSPORT_ENDPT_EXT_CFG_CRYPTO | |
Definition at line 267 of file transport_types.h.
◆ transport_service_type_
Enumerator |
---|
TRANSPORT_SERVICE_VC | virtual circuit service
|
TRANSPORT_SERVICE_CL | connectionless service
|
TRANSPORT_SERVICE_APP | app transport service
|
TRANSPORT_N_SERVICES | |
Definition at line 37 of file transport_types.h.
◆ format_transport_connection()
u8* format_transport_connection |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ format_transport_half_open_connection()
u8* format_transport_half_open_connection |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ format_transport_listen_connection()
u8* format_transport_listen_connection |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ format_transport_proto()
u8* format_transport_proto |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ format_transport_proto_short()
u8* format_transport_proto_short |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ format_transport_protos()
u8* format_transport_protos |
( |
u8 * |
s, |
|
|
va_list * |
args |
|
) |
| |
◆ STATIC_ASSERT()
◆ transport_connection_fib_proto()
◆ transport_endpoint_fib_proto()
◆ transport_protocol_is_cl()
◆ transport_protocol_service_type()
◆ transport_protocol_tx_fn_type()
◆ unformat_transport_proto()
◆ len