aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/session/transport_interface.h
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2018-10-31 23:09:22 -0700
committerDave Barach <openvpp@barachs.net>2018-11-01 20:43:29 +0000
commite55a6d7a97044c2f4fd0231242e062924d75c7b6 (patch)
treeae58b4562748db8397604029261008b94aaecd8c /src/vnet/session/transport_interface.h
parentf6c68d74eca9038516986254846de60a4f7c02ae (diff)
tcp: fast retransmit pacing
Force pacing for fast retransmit to avoid bursts of retransmitted packets. Change-Id: I2ff42c328899b36322c4de557b1f7d853dba8fe2 Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet/session/transport_interface.h')
-rw-r--r--src/vnet/session/transport_interface.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/vnet/session/transport_interface.h b/src/vnet/session/transport_interface.h
index ce3bb7fab7c..b7aa4b7fa3c 100644
--- a/src/vnet/session/transport_interface.h
+++ b/src/vnet/session/transport_interface.h
@@ -111,7 +111,7 @@ void transport_enable_disable (vlib_main_t * vm, u8 is_en);
*/
void transport_connection_tx_pacer_init (transport_connection_t * tc,
u32 rate_bytes_per_sec,
- u32 burst_bytes);
+ u32 initial_bucket);
/**
* Update tx pacer pacing rate
@@ -127,9 +127,13 @@ void transport_connection_tx_pacer_update (transport_connection_t * tc,
*
* @param tc transport connection
* @param time_now current cpu time as returned by @ref clib_cpu_time_now
+ * @param mss transport's mss
*/
-u32 transport_connection_max_tx_burst (transport_connection_t * tc,
- u64 time_now);
+u32 transport_connection_snd_space (transport_connection_t * tc,
+ u64 time_now, u16 mss);
+
+u32 transport_connection_tx_pacer_burst (transport_connection_t * tc,
+ u64 time_now);
/**
* Initialize period for tx pacers
@@ -163,6 +167,10 @@ u8 *format_transport_pacer (u8 * s, va_list * args);
void transport_connection_update_tx_stats (transport_connection_t * tc,
u32 bytes);
+void
+transport_connection_tx_pacer_update_bytes (transport_connection_t * tc,
+ u32 bytes);
+
#endif /* SRC_VNET_SESSION_TRANSPORT_INTERFACE_H_ */
/*