mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-01-18 12:52:44 +01:00
gnrc/tcp : Update documentation
Add compile time parameters to doxygen group 'net_gnrc_conf'
This commit is contained in:
parent
bdeec688f5
commit
b5e95f6c49
@ -26,6 +26,31 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @defgroup net_gnrc_tcp_conf GNRC TCP compile configurations
|
||||
* @ingroup net_gnrc_conf
|
||||
*
|
||||
* ## Calculating RTO
|
||||
* To calculate retransmission timeout (RTO), Round Trip Time (RTT) needs to be
|
||||
* taken into account. SRTT (smoothed round-trip time) and RTTVAR (round-trip
|
||||
* time variation) are hence calculated as follows:
|
||||
*
|
||||
* RTTVAR <- (1 - beta) * RTTVAR + beta * |SRTT - R'|
|
||||
* SRTT <- (1 - alpha) * SRTT + alpha * R'
|
||||
*
|
||||
* where alpha ( 1 / @ref CONFIG_GNRC_TCP_RTO_A_DIV ) and beta
|
||||
* ( 1 / @ref CONFIG_GNRC_TCP_RTO_B_DIV) are constants, and R' is the
|
||||
* instantaneous RTT value.
|
||||
*
|
||||
* RTO is then calculated as :
|
||||
*
|
||||
* RTO <- SRTT + max (G, K*RTTVAR)
|
||||
*
|
||||
* where K is a constant, and G is clock granularity in seconds
|
||||
* ( @ref CONFIG_GNRC_TCP_RTO_GRANULARITY).
|
||||
* For more information refer to https://tools.ietf.org/html/rfc6298
|
||||
* @{
|
||||
*/
|
||||
/**
|
||||
* @brief Timeout duration for user calls. Default is 2 minutes.
|
||||
*/
|
||||
@ -66,7 +91,10 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Number of preallocated receive buffers
|
||||
* @brief Number of preallocated receive buffers.
|
||||
*
|
||||
* This value determines how many parallel TCP connections can be active at the
|
||||
* same time.
|
||||
*/
|
||||
#ifndef GNRC_TCP_RCV_BUFFERS
|
||||
#define GNRC_TCP_RCV_BUFFERS (1U)
|
||||
@ -81,6 +109,10 @@ extern "C" {
|
||||
|
||||
/**
|
||||
* @brief Lower bound for RTO = 1 sec (see RFC 6298)
|
||||
*
|
||||
* @note Retransmission Timeout (RTO) determines how long TCP waits for
|
||||
* acknowledgment (ACK) of transmitted segment. If the acknowledgment
|
||||
* isn't received within this time it is considered lost.
|
||||
*/
|
||||
#ifndef GNRC_TCP_RTO_LOWER_BOUND
|
||||
#define GNRC_TCP_RTO_LOWER_BOUND (1U * US_PER_SEC)
|
||||
@ -134,6 +166,7 @@ extern "C" {
|
||||
#ifndef GNRC_TCP_PROBE_UPPER_BOUND
|
||||
#define GNRC_TCP_PROBE_UPPER_BOUND (60U * US_PER_SEC)
|
||||
#endif
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user