diff mbox series

[net-next] tcp: probe timer MUST not less than 5 minuter for tcp PMTU

Message ID 1527851039-6626-1-git-send-email-lirongqing@baidu.com
State Changes Requested, archived
Delegated to: David Miller
Headers show
Series [net-next] tcp: probe timer MUST not less than 5 minuter for tcp PMTU | expand

Commit Message

Li RongQing June 1, 2018, 11:03 a.m. UTC
RFC4821 say: The value for this timer MUST NOT be less than
5 minutes and is recommended to be 10 minutes, per RFC 1981.

Signed-off-by: Li RongQing <lirongqing@baidu.com>
---
 net/ipv4/sysctl_net_ipv4.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Eric Dumazet June 2, 2018, 10:19 a.m. UTC | #1
On 06/01/2018 07:03 AM, Li RongQing wrote:
> RFC4821 say: The value for this timer MUST NOT be less than
> 5 minutes and is recommended to be 10 minutes, per RFC 1981.
> 
> Signed-off-by: Li RongQing <lirongqing@baidu.com>
> ---
>  net/ipv4/sysctl_net_ipv4.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
> index d2eed3ddcb0a..ed8952bb6874 100644
> --- a/net/ipv4/sysctl_net_ipv4.c
> +++ b/net/ipv4/sysctl_net_ipv4.c
> @@ -47,6 +47,7 @@ static int tcp_syn_retries_max = MAX_TCP_SYNCNT;
>  static int ip_ping_group_range_min[] = { 0, 0 };
>  static int ip_ping_group_range_max[] = { GID_T_MAX, GID_T_MAX };
>  static int comp_sack_nr_max = 255;
> +static int tcp_probe_interval_min = 300;
>  
>  /* obsolete */
>  static int sysctl_tcp_low_latency __read_mostly;
> @@ -711,7 +712,8 @@ static struct ctl_table ipv4_net_table[] = {
>  		.data		= &init_net.ipv4.sysctl_tcp_probe_interval,
>  		.maxlen		= sizeof(int),
>  		.mode		= 0644,
> -		.proc_handler	= proc_dointvec,
> +		.proc_handler	= proc_dointvec_minmax,
> +		.extra1		= &tcp_probe_interval_min,
>  	},
>  	{
>  		.procname	= "igmp_link_local_mcast_reports",
> 

Note that this change would stop people from being able to have packetdrill
tests which would run in a reasonable amount of time.

I do not believe linux kernel must enforce such a limit.

It is up to the admin to set a value here really, depending on the environment
the host is running in.
David Miller June 4, 2018, 2:59 p.m. UTC | #2
From: Li RongQing <lirongqing@baidu.com>
Date: Fri,  1 Jun 2018 19:03:59 +0800

> RFC4821 say: The value for this timer MUST NOT be less than
> 5 minutes and is recommended to be 10 minutes, per RFC 1981.
> 
> Signed-off-by: Li RongQing <lirongqing@baidu.com>

As Eric stated, admins should be allowed to set this however they
wish (f.e. for specialized tests).
diff mbox series

Patch

diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
index d2eed3ddcb0a..ed8952bb6874 100644
--- a/net/ipv4/sysctl_net_ipv4.c
+++ b/net/ipv4/sysctl_net_ipv4.c
@@ -47,6 +47,7 @@  static int tcp_syn_retries_max = MAX_TCP_SYNCNT;
 static int ip_ping_group_range_min[] = { 0, 0 };
 static int ip_ping_group_range_max[] = { GID_T_MAX, GID_T_MAX };
 static int comp_sack_nr_max = 255;
+static int tcp_probe_interval_min = 300;
 
 /* obsolete */
 static int sysctl_tcp_low_latency __read_mostly;
@@ -711,7 +712,8 @@  static struct ctl_table ipv4_net_table[] = {
 		.data		= &init_net.ipv4.sysctl_tcp_probe_interval,
 		.maxlen		= sizeof(int),
 		.mode		= 0644,
-		.proc_handler	= proc_dointvec,
+		.proc_handler	= proc_dointvec_minmax,
+		.extra1		= &tcp_probe_interval_min,
 	},
 	{
 		.procname	= "igmp_link_local_mcast_reports",