diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2005-06-23 23:37:36 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-06-23 23:37:36 -0400 |
commit | 5f8ef48d240963093451bcf83df89f1a1364f51d (patch) | |
tree | cecb30c2f59778f7f509a84b3aa7ea097c3f2b27 /include | |
parent | 51b0bdedb8e784d0d969a6b77151911130812400 (diff) |
[TCP]: Allow choosing TCP congestion control via sockopt.
Allow using setsockopt to set TCP congestion control to use on a per
socket basis.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/tcp.h | 1 | ||||
-rw-r--r-- | include/net/tcp.h | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/tcp.h b/include/linux/tcp.h index 3ea75dd6640a..dfd93d03f5d2 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h | |||
@@ -127,6 +127,7 @@ enum { | |||
127 | #define TCP_WINDOW_CLAMP 10 /* Bound advertised window */ | 127 | #define TCP_WINDOW_CLAMP 10 /* Bound advertised window */ |
128 | #define TCP_INFO 11 /* Information about this connection. */ | 128 | #define TCP_INFO 11 /* Information about this connection. */ |
129 | #define TCP_QUICKACK 12 /* Block/reenable quick acks */ | 129 | #define TCP_QUICKACK 12 /* Block/reenable quick acks */ |
130 | #define TCP_CONGESTION 13 /* Congestion control algorithm */ | ||
130 | 131 | ||
131 | #define TCPI_OPT_TIMESTAMPS 1 | 132 | #define TCPI_OPT_TIMESTAMPS 1 |
132 | #define TCPI_OPT_SACK 2 | 133 | #define TCPI_OPT_SACK 2 |
diff --git a/include/net/tcp.h b/include/net/tcp.h index e427cf35915c..d04b21188ccb 100644 --- a/include/net/tcp.h +++ b/include/net/tcp.h | |||
@@ -1162,8 +1162,9 @@ extern void tcp_init_congestion_control(struct tcp_sock *tp); | |||
1162 | extern void tcp_cleanup_congestion_control(struct tcp_sock *tp); | 1162 | extern void tcp_cleanup_congestion_control(struct tcp_sock *tp); |
1163 | extern int tcp_set_default_congestion_control(const char *name); | 1163 | extern int tcp_set_default_congestion_control(const char *name); |
1164 | extern void tcp_get_default_congestion_control(char *name); | 1164 | extern void tcp_get_default_congestion_control(char *name); |
1165 | extern int tcp_set_congestion_control(struct tcp_sock *tp, const char *name); | ||
1165 | 1166 | ||
1166 | extern struct tcp_congestion_ops tcp_reno; | 1167 | extern struct tcp_congestion_ops tcp_init_congestion_ops; |
1167 | extern u32 tcp_reno_ssthresh(struct tcp_sock *tp); | 1168 | extern u32 tcp_reno_ssthresh(struct tcp_sock *tp); |
1168 | extern void tcp_reno_cong_avoid(struct tcp_sock *tp, u32 ack, | 1169 | extern void tcp_reno_cong_avoid(struct tcp_sock *tp, u32 ack, |
1169 | u32 rtt, u32 in_flight, int flag); | 1170 | u32 rtt, u32 in_flight, int flag); |