public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] TCP ECN bits and TCP_RESERVED_BITS macro
@ 2001-10-31 14:27 Guillaume Morin
  2001-10-31 23:43 ` Neil Spring
  0 siblings, 1 reply; 4+ messages in thread
From: Guillaume Morin @ 2001-10-31 14:27 UTC (permalink / raw)
  To: linux-kernel

Hi folks,

As most people here know, RFC3168 adds two new bits to the TCP header
(ECE and CWR). Those were reserved in RFC793 (standard for TCP).

Since RFC3168 is an proposed standard and ECN is now used widely on
Linux systems, I'd like to suggest the modification of the
TCP_RESERVED_BITS. This change seems logical wrt

include/linux/tcp.h the tcphdr struct :
    __u16   doff:4,
	        res1:4,
	        cwr:1,  
	        ece:1,

This change is pretty harmless, since, this macro is used in

1) include/net/tcp_ecn.h. I've patched the related part even if it would
have work without. It is just cleaner.

2) netfilter: 
 - in the LOG target, it won't break them. I'll submit patches
   to netfilter-devel to display TCP ECN bits just like any other TCP flags
   (which will ease the LOG readings)
 - In the unclean target where the current value breaks the module.

Patch against 2.4.14-pre6


diff -uNr linux/include/linux/tcp.h linux-new-tcprb/include/linux/tcp.h
--- linux/include/linux/tcp.h	Sat Apr 28 00:48:20 2001
+++ linux-new-tcprb/include/linux/tcp.h	Wed Oct 31 14:51:40 2001
@@ -110,7 +110,7 @@
 	TCP_FLAG_RST = __constant_htonl(0x00040000), 
 	TCP_FLAG_SYN = __constant_htonl(0x00020000), 
 	TCP_FLAG_FIN = __constant_htonl(0x00010000),
-	TCP_RESERVED_BITS = __constant_htonl(0x0FC00000),
+	TCP_RESERVED_BITS = __constant_htonl(0x0F000000),
 	TCP_DATA_OFFSET = __constant_htonl(0xF0000000)
 }; 
 
diff -uNr linux/include/net/tcp_ecn.h linux-new-tcprb/include/net/tcp_ecn.h
--- linux/include/net/tcp_ecn.h	Wed Oct 31 14:57:53 2001
+++ linux-new-tcprb/include/net/tcp_ecn.h	Wed Oct 31 14:50:46 2001
@@ -3,7 +3,7 @@
 
 #include <net/inet_ecn.h>
 
-#define TCP_HP_BITS (~(TCP_RESERVED_BITS|TCP_FLAG_PSH)|TCP_FLAG_ECE|TCP_FLAG_CWR)
+#define TCP_HP_BITS (~(TCP_RESERVED_BITS|TCP_FLAG_PSH))
 
 #define	TCP_ECN_OK		1
 #define TCP_ECN_QUEUE_CWR	2


All comments welcome.

-- 
Guillaume Morin <guillaume@morinfr.org>

         Do you worry that you're not liked ? How long till you break
                                (Our Lady Peace)

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2001-11-01  2:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-10-31 14:27 [PATCH] TCP ECN bits and TCP_RESERVED_BITS macro Guillaume Morin
2001-10-31 23:43 ` Neil Spring
2001-11-01  2:32   ` Guillaume Morin
2001-11-01  2:53     ` Neil Spring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox