config.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015-2017 Simon Brummer
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
20 #ifndef NET_GNRC_TCP_CONFIG_H
21 #define NET_GNRC_TCP_CONFIG_H
22 
23 #include "timex.h"
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
58 #ifndef CONFIG_GNRC_TCP_CONNECTION_TIMEOUT_DURATION_MS
59 #define CONFIG_GNRC_TCP_CONNECTION_TIMEOUT_DURATION_MS (120U * MS_PER_SEC)
60 #endif
61 
65 #ifndef CONFIG_GNRC_TCP_MSL_MS
66 #define CONFIG_GNRC_TCP_MSL_MS (30U * MS_PER_SEC)
67 #endif
68 
72 #ifndef CONFIG_GNRC_TCP_MSS
73 #ifdef MODULE_GNRC_IPV6
74 #define CONFIG_GNRC_TCP_MSS (1220U)
75 #else
76 #define CONFIG_GNRC_TCP_MSS (576U)
77 #endif
78 #endif
79 
83 #ifndef CONFIG_GNRC_TCP_MSS_MULTIPLICATOR
84 #define CONFIG_GNRC_TCP_MSS_MULTIPLICATOR (1U)
85 #endif
86 
90 #ifndef CONFIG_GNRC_TCP_DEFAULT_WINDOW
91 #define CONFIG_GNRC_TCP_DEFAULT_WINDOW (CONFIG_GNRC_TCP_MSS * CONFIG_GNRC_TCP_MSS_MULTIPLICATOR)
92 #endif
93 
100 #ifndef CONFIG_GNRC_TCP_RCV_BUFFERS
101 #define CONFIG_GNRC_TCP_RCV_BUFFERS (1U)
102 #endif
103 
107 #ifndef GNRC_TCP_RCV_BUF_SIZE
108 #define GNRC_TCP_RCV_BUF_SIZE (CONFIG_GNRC_TCP_DEFAULT_WINDOW)
109 #endif
110 
118 #ifndef CONFIG_GNRC_TCP_RTO_LOWER_BOUND_MS
119 #define CONFIG_GNRC_TCP_RTO_LOWER_BOUND_MS (1U * MS_PER_SEC)
120 #endif
121 
125 #ifndef CONFIG_GNRC_TCP_RTO_UPPER_BOUND_MS
126 #define CONFIG_GNRC_TCP_RTO_UPPER_BOUND_MS (60U * MS_PER_SEC)
127 #endif
128 
132 #ifndef CONFIG_GNRC_TCP_RTO_GRANULARITY_MS
133 #define CONFIG_GNRC_TCP_RTO_GRANULARITY_MS (10U)
134 #endif
135 
139 #ifndef CONFIG_GNRC_TCP_RTO_A_DIV
140 #define CONFIG_GNRC_TCP_RTO_A_DIV (8U)
141 #endif
142 
146 #ifndef CONFIG_GNRC_TCP_RTO_B_DIV
147 #define CONFIG_GNRC_TCP_RTO_B_DIV (4U)
148 #endif
149 
153 #ifndef CONFIG_GNRC_TCP_RTO_K
154 #define CONFIG_GNRC_TCP_RTO_K (4U)
155 #endif
156 
160 #ifndef CONFIG_GNRC_TCP_PROBE_LOWER_BOUND_MS
161 #define CONFIG_GNRC_TCP_PROBE_LOWER_BOUND_MS (1U * MS_PER_SEC)
162 #endif
163 
167 #ifndef CONFIG_GNRC_TCP_PROBE_UPPER_BOUND_MS
168 #define CONFIG_GNRC_TCP_PROBE_UPPER_BOUND_MS (60U * MS_PER_SEC)
169 #endif
170 
176 #ifndef CONFIG_GNRC_TCP_MSG_QUEUE_SIZE_EXP
177 #define CONFIG_GNRC_TCP_MSG_QUEUE_SIZE_EXP (2U)
178 #endif
179 
185 #ifndef CONFIG_GNRC_TCP_EVENTLOOP_MSG_QUEUE_SIZE_EXP
186 #define CONFIG_GNRC_TCP_EVENTLOOP_MSG_QUEUE_SIZE_EXP (3U)
187 #endif
188 
190 #ifdef __cplusplus
191 }
192 #endif
193 
194 #endif /* NET_GNRC_TCP_CONFIG_H */
195 
timex.h
Utility library for comparing and computing timestamps.