[e2e] Routers accessing TCP header
David P. Reed
dpreed at reed.com
Mon Feb 21 07:31:00 PST 2005
Arjuna - it's worth noting the earlier discussion about fields shared
between TCP and the IP layer (and the cost imposed on the end-to-end
protocol's properties, such as security, etc.)
You can put anything in the IP layer you want, including a copy of the
TCP sequence number. [or living dangerously, "share" the sequence number
between layers as you propose].
However, I'd question why you are not solving the more general problem -
for example supporting RTP, which also has "sequence number like"
fields, and which ought to be doing congestion control.
Why not just extend IP to include a non-decreasing number that indicates
progress to the router? Lazy TCP implementers can just use the TCP
Sequence number for that field, RTP can use the frame number of the
video or audio, etc.
Encrypted protocols could use a non-decreasing sequence number of their
own devising, perhaps structured to avoid unnecessary exposure of
application progress (for example each retransmitted packet could have a
higher sequence number, so that the man-in-the-middle isn't able to use
forcing of retransmit to determine if the encrypted protocol is
retransmission-oriented, thereby distinguishing TCP from RTP by using
responses to stimuli).
That would be a forward-looking contribution to protocol-independent
networking, rather than yet another kludge that presumes the IP layer
should be able to read all traffic.
More information about the end2end-interest