diff options
author | Fan Du <fan.du@intel.com> | 2015-03-06 11:18:24 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-03-06 14:57:42 -0500 |
commit | 05cbc0db03e82128f2e7e353d4194dd24a1627fe (patch) | |
tree | 33c79cec0d026feb0435042794ca4c4ef9e556ce /net/ipv4/tcp_timer.c | |
parent | 6b58e0a5f32dedb609438bb9c9c82aa6e23381f2 (diff) | |
download | linux-05cbc0db03e82128f2e7e353d4194dd24a1627fe.tar.gz linux-05cbc0db03e82128f2e7e353d4194dd24a1627fe.tar.xz |
ipv4: Create probe timer for tcp PMTU as per RFC4821
As per RFC4821 7.3. Selecting Probe Size, a probe timer should
be armed once probing has converged. Once this timer expired,
probing again to take advantage of any path PMTU change. The
recommended probing interval is 10 minutes per RFC1981. Probing
interval could be sysctled by sysctl_tcp_probe_interval.
Eric Dumazet suggested to implement pseudo timer based on 32bits
jiffies tcp_time_stamp instead of using classic timer for such
rare event.
Signed-off-by: Fan Du <fan.du@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_timer.c')
-rw-r--r-- | net/ipv4/tcp_timer.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c index 0732b787904e..15505936511d 100644 --- a/net/ipv4/tcp_timer.c +++ b/net/ipv4/tcp_timer.c @@ -107,6 +107,7 @@ static void tcp_mtu_probing(struct inet_connection_sock *icsk, struct sock *sk) if (net->ipv4.sysctl_tcp_mtu_probing) { if (!icsk->icsk_mtup.enabled) { icsk->icsk_mtup.enabled = 1; + icsk->icsk_mtup.probe_timestamp = tcp_time_stamp; tcp_sync_mss(sk, icsk->icsk_pmtu_cookie); } else { struct net *net = sock_net(sk); |