[e2e] purpose of pseudo header in TCP checksum

Vadim Antonov avg at kotovnik.com
Wed Feb 16 04:01:12 PST 2005

On Wed, 16 Feb 2005, Joe Touch wrote:

> Security at each layer is designed for a different purpose.
> The only way to secure the network layer information (used at the 
> network layer (e.g., for forwarding) and transport - for connection 
> demuxing) is to secure the network layer header. No amount of 
> application layer protection works there, unless you terminate the app 
> layer at each hop and forward there (e.g., P2P). Are you proposing that?

I propose doing security at the appropriate layer.  Data encryption is 
appropriate at the application-to-application layer, not at the 
network-to-network (or even host-to-host) layer.

Of course, some paranoid people encrypt data at both network and 
application layers, but this does not increase security much.

> Sure, you can require only security at the app layer, which means that 
> layer is going to get a lot of junk misforwarded and mis-demuxed that it 
> has to invest effort - at the routers and the endstations - processing. 
> Security at other layers helps winnow that junk before it consumes that 
> effort inappropriately.

Misrouted or mis-demuxed junk means only that the routing
equipment/software is broken.  Working equipment doesn't do that,
generally, and it never was a problem, if the routers or switches
themselves aren't compromised (and when an end-host OS is compromised
you've got problems way more serious than some additional junk in the
network traffic).

> Security at any ONE layer is doomed. Security is a multilayer issue; 
> always has been. We can always talk, in the context of multilayer 
> security, at what layer to address a given vulnerability.

Of course, but what you need at the network layer is integrity and 
security of routing information and router OSes, not the 
integrity/security of user data.

This is because data encryption in the network (not at end-points) leaves 
traffic vulnerable to the snooping or modification by network 
administrators, who (in most cases) aren't in the same group as service 
users, and, therefore, have different trustworthiness profile.  On the 
other hand, they are in control of network routing, so protection of 
routing infrastructure is appropriately done at the network layer.

What network layer can do for e2e security is to provide some support for
resistance to flooding attacks.  Unfortunately, encryption is exactly the
wrong way to achieve that, because it takes more resources to handle an
encrypted packet, and the whole point of flooding DoS attack is to exhaust
resources of a target system.

VPNs don't do anything to protect routing information, and don't do 
anything to handle flooding attacks. They mostly create an illusion of 
network security, distracting people from addressing the real security 


More information about the end2end-interest mailing list