Types of packet modifications allowed for networks
Steven M. Bellovin
smb at cs.columbia.edu
Mon Jun 2 14:12:20 UTC 2008
On Sat, 31 May 2008 17:59:40 -0400
Jean-François Mezei <jfmezei at vaxination.ca> wrote:
> I would like any pointers to good documents that outline what sort of
> packet modifications are allowed (in terms of Internet
> culture/policies) by networks.
>
> Notably:
>
> For a transit network (neither sending or destination IPs belong to
> the network)
>
> For the sending network (originating IP belongs to that network)
>
> For the destination network (destination IP belongs to that network).
>
>
> Obviously, every router will change/decrement the TTL (and recalculate
> the header checksum) in the IP header. Are there other fields that are
> routinely changed at every hop ?
Assorted IP options carry network state: Record Route, Loose and Strict
Source Route, Timestamp -- see RFC 791. I wouldn't say "routinely",
but it is in the spec. I forget the status of the flow label for IPv6.
>
> Would it also be correct to state that any network along the way would
> have the right to fragment a packet in two or more pieces ? Or would
> that only be the destination network needing to fragment a packet to
> fit the last mile (PPP dialup or PPPoE ) in cases where MTU
> negotiations failed ?
Note that in-flight fragmentation is only permitted for certain
packets: one without DF set for IPv4; ones with a fragmentation header
for IPv6.
>
> Are there sacred rules documented anywhere about not modifying
> anything else in the packets during transit ? Or has there never
> been any formal documentation on this because it was so obvious
> nobody was allowed to modify packets in transit ?
>
Only the end-to-end principle...
I sometimes see suggestions that routers should be able to add IP
options or v6 extension headers. These are known as bad ideas.
--Steve Bellovin, http://www.cs.columbia.edu/~smb
More information about the NANOG
mailing list