[patch 53/54] TCP: Use default 32768-61000 outgoing port range in all cases.

Chris Wright
2007-06-08T07:45:04Z

[-- Attachment #1: tcp-use-default-32768-61000-outgoing-port-range-in-all-cases.patch --]
[-- Type: text/plain, Size: 1971 bytes --]

-stable review patch. If anyone has any objections, please let us know.
---------------------

From: Mark Glines <mark@glines.org>

This diff changes the default port range used for outgoing connections,
from "use 32768-61000 in most cases, but use N-4999 on small boxes
(where N is a multiple of 1024, depending on just *how* small the box
is)" to just "use 32768-61000 in all cases".

I don't believe there are any drawbacks to this change, and it keeps
outgoing connection ports farther away from the mess of
IANA-registered ports.

Signed-off-by: Mark Glines <mark@glines.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
net/ipv4/inet_connection_sock.c | 4 +---
net/ipv4/tcp.c | 3 ---
2 files changed, 1 insertion(+), 6 deletions(-)

--- linux-2.6.21.4.orig/net/ipv4/inet_connection_sock.c
+++ linux-2.6.21.4/net/ipv4/inet_connection_sock.c
@@ -31,10 +31,8 @@ EXPORT_SYMBOL(inet_csk_timer_bug_msg);

/*
* This array holds the first and last local port number.
- * For high-usage systems, use sysctl to change this to
- * 32768-61000
*/
-int sysctl_local_port_range[2] = { 1024, 4999 };
+int sysctl_local_port_range[2] = { 32768, 61000 };

int inet_csk_bind_conflict(const struct sock *sk,
const struct inet_bind_bucket *tb)
--- linux-2.6.21.4.orig/net/ipv4/tcp.c
+++ linux-2.6.21.4/net/ipv4/tcp.c
@@ -2445,13 +2445,10 @@ void __init tcp_init(void)
order++)
;
if (order >= 4) {
- sysctl_local_port_range[0] = 32768;
- sysctl_local_port_range[1] = 61000;
tcp_death_row.sysctl_max_tw_buckets = 180000;
sysctl_tcp_max_orphans = 4096 << (order - 4);
sysctl_max_syn_backlog = 1024;
} else if (order < 3) {
- sysctl_local_port_range[0] = 1024 * (3 - order);
tcp_death_row.sysctl_max_tw_buckets >>= (3 - order);
sysctl_tcp_max_orphans >>= (3 - order);
sysctl_max_syn_backlog = 128;

--