![]() |
FD.io VPP
v19.01.3-6-g70449b9b9
Vector Packet Processing
|
Include dependency graph for transport_interface.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Macros | |
| #define | transport_proto_foreach(VAR, BODY) |
Typedefs | |
| typedef enum transport_dequeue_type_ | transport_tx_fn_type_t |
| typedef enum transport_service_type_ | transport_service_type_t |
| typedef struct _transport_proto_vft | transport_proto_vft_t |
Variables | |
| transport_proto_vft_t * | tp_vfts |
| Per-type vector of transport protocol virtual function tables. More... | |
| #define transport_proto_foreach | ( | VAR, | |
| BODY | |||
| ) |
Definition at line 90 of file transport_interface.h.
| typedef struct _transport_proto_vft transport_proto_vft_t |
| typedef enum transport_service_type_ transport_service_type_t |
| typedef enum transport_dequeue_type_ transport_tx_fn_type_t |
Definition at line 22 of file transport_interface.h.
| Enumerator | |
|---|---|
| TRANSPORT_SERVICE_VC | virtual circuit service |
| TRANSPORT_SERVICE_CL | connectionless service |
| TRANSPORT_SERVICE_APP | app transport service |
| TRANSPORT_N_SERVICES | |
Definition at line 31 of file transport_interface.h.
Definition at line 491 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
Check if transport connection is paced.
Definition at line 164 of file transport_interface.h.
Here is the call graph for this function:
Here is the caller graph for this function:| u32 transport_connection_snd_space | ( | transport_connection_t * | tc, |
| u64 | time_now, | ||
| u16 | mss | ||
| ) |
Get maximum tx burst allowed for transport connection.
| tc | transport connection |
| time_now | current cpu time as returned by clib_cpu_time_now |
| mss | transport's mss |
Definition at line 585 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| u32 transport_connection_tx_pacer_burst | ( | transport_connection_t * | tc, |
| u64 | time_now | ||
| ) |
Definition at line 577 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void transport_connection_tx_pacer_init | ( | transport_connection_t * | tc, |
| u32 | rate_bytes_per_sec, | ||
| u32 | initial_bucket | ||
| ) |
Initialize tx pacer for connection.
| tc | transport connection |
| rate_bytes_per_second | initial byte rate |
| burst_bytes | initial burst size in bytes |
Definition at line 555 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void transport_connection_tx_pacer_reset | ( | transport_connection_t * | tc, |
| u32 | rate_bytes_per_sec, | ||
| u32 | initial_bucket, | ||
| u64 | time_now | ||
| ) |
Definition at line 538 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void transport_connection_tx_pacer_update | ( | transport_connection_t * | tc, |
| u64 | bytes_per_sec | ||
| ) |
Update tx pacer pacing rate.
| tc | transport connection |
| bytes_per_sec | new pacing rate |
Definition at line 567 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void transport_connection_tx_pacer_update_bytes | ( | transport_connection_t * | tc, |
| u32 | bytes | ||
| ) |
Definition at line 611 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| void transport_connection_update_tx_stats | ( | transport_connection_t * | tc, |
| u32 | bytes | ||
| ) |
Update tx byte stats for transport connection.
If tx pacing is enabled, this also updates pacer bucket to account for the amount of bytes that have been sent.
| tc | transport connection |
| pkts | packets recently sent |
| bytes | bytes recently sent |
Definition at line 603 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
Definition at line 107 of file transport_interface.h.
Here is the call graph for this function:
Here is the caller graph for this function:| void transport_enable_disable | ( | vlib_main_t * | vm, |
| u8 | is_en | ||
| ) |
Definition at line 636 of file transport.c.
| void transport_init_tx_pacers_period | ( | void | ) |
Initialize period for tx pacers.
Defines a unit of time with respect to number of cpu cycles that is to be used by all tx pacers.
Definition at line 618 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| transport_proto_vft_t* transport_protocol_get_vft | ( | transport_proto_t | transport_proto | ) |
Get transport virtual function table.
| type | - session type (not protocol type) |
Definition at line 256 of file transport.c.
Here is the caller graph for this function:| transport_service_type_t transport_protocol_service_type | ( | transport_proto_t | ) |
| transport_tx_fn_type_t transport_protocol_tx_fn_type | ( | transport_proto_t | tp | ) |
| void transport_register_protocol | ( | transport_proto_t | transport_proto, |
| const transport_proto_vft_t * | vft, | ||
| fib_protocol_t | fib_proto, | ||
| u32 | output_node | ||
| ) |
Register transport virtual function table.
| transport_proto | - transport protocol type (i.e., TCP, UDP ..) |
| vft | - virtual function table for transport proto |
| fib_proto | - network layer protocol |
| output_node | - output node index that session layer will hand off buffers to, for requested fib proto |
Definition at line 238 of file transport.c.
Here is the call graph for this function:
Here is the caller graph for this function:| transport_proto_vft_t* tp_vfts |
Per-type vector of transport protocol virtual function tables.
Generate typed init functions for multiple hash table styles...
Definition at line 23 of file transport.c.