Interestingly enough, when we wrote RFC 1958 "Architectural principles
of the Internet", nobody suggested "layer violation is evil" as a
principle. The arguments against layer violation tend to be pragmatic -
certain types of layer violation (such as "content based routing")
could lead to complex failure modes - others (such as diffserv peeking) 
are probably safe. It certainly shouldn't be a religious principle.

   Brian

Mahadevan Iyer wrote:
> 
> Jon Crowcroft wrote:
> 
> > In message <v04220802b77bde136984@[10.83.97.216]>, Steve Deering typed:
> >
> >  >>We used to use "gateway" instead of "router" (and a few still do), and
> >
> > i lik the fact that if you type getaway by mistake you get what people
> > are trying to do when they are routed ...
> >
> > i also like the fact that MOST fancy things we do in traffic treatment
> > (firewall, diff/int serv, header compression, checksum) ignore this
> > layering rubbish idea and look at the whole packet and the whole state
> > of the systems where you need to......
> 
> I always thought peeking into other layer headers to make better decisions
> doesn't always destroy layering. It's when the implementation gets tied to a
> specific other-layer technology,  or it *writes* into other layer headers, or
> performs 'designated' other-layer functions, that layering is destroyed.
> 
> Say, a diff serv implementation that tries to figure out what kind of lower
> layer protocol is present and if it succeeds in doing so, uses the lower layer
> information to make forwarding decisions, is not really destroying layering,
> is it.
> I can still deploy this diff serv implementation readily over all kinds of
> lower layer 'technologies' or standards, because it is not tied to any
> specific such technology. If it can recognise the lower layer technology, it
> uses that extra lower layer information to try improve performance, otherwise
> it just performs default operations. So for example, I can still easily
> transfer such an implementation from a wired-ethernet to some wireless
> standard without any rework. Now, isn't *that* kind of layering good? Or am I
> missing something.

Reply via email to