From: Neil Spring <nspring@zarathustra.saavie.org>
To: linux-kernel@vger.kernel.org
Subject: Re: [PATCH] TCP ECN bits and TCP_RESERVED_BITS macro
Date: Wed, 31 Oct 2001 15:43:08 -0800 [thread overview]
Message-ID: <20011031154305.A11081@cs.washington.edu> (raw)
In-Reply-To: <20011031152717.A25584@morinfr.org>
In-Reply-To: <20011031152717.A25584@morinfr.org>
The line in your patch:
> -#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))
is, I believe, a very bad idea. This preprocessor constant
is used so that exceptional ECN processing (to handle ECE
or CWR) can be done on the slow path. This change would
almost certainly break Linux's ECN implementation.
> 2) netfilter:
I see no "2" patch to netfilter code.
-neil
On Wed, Oct 31, 2001 at 03:27:17PM +0100, Guillaume Morin wrote:
> 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)
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2001-10-31 23:42 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-10-31 14:27 [PATCH] TCP ECN bits and TCP_RESERVED_BITS macro Guillaume Morin
2001-10-31 23:43 ` Neil Spring [this message]
2001-11-01 2:32 ` Guillaume Morin
2001-11-01 2:53 ` Neil Spring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20011031154305.A11081@cs.washington.edu \
--to=nspring@zarathustra.saavie.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox