[e2e] end of interest

Jon Crowcroft Jon.Crowcroft at cl.cam.ac.uk
Tue May 13 00:31:29 PDT 2008


w.r.t non-layered architecture, 
I'd commend a large body of work 
(my list) starting with
the x-kernel (protocol graph) work at Arizona 
(larry peterson, o'malley et al)
http://www.cs.arizona.edu/projects/xkernel/docs.html
then work by Diot, Torsten Braun and others at INRIA 10-15 years ago on
protocol compilers and composition (published in sigcomm 95), 
(icorporating many of tennenhouse/clark ideas on ILP and ALF)
through the work on protocol heaps by Braden/Handley et al, (ccr jan 2003)
and a nice paper on the Haggle architecture by James Scott 
(ex intel, now microsoft research) at Ubicomp 07
Seamless Networking for Mobile Applications

all of these (and much other work) 
do not dispense with modularisaton, 
but diverge from the classical layering - often by making use of 
programming language, compiler, type system and flxibility,
and hardware advances (e.g. support for smarter buffer ownerhip - 
also useful for virtualusation)  
not available to earlier communicastions (or OS) researchers 
(at least not in any level of efficiency one would consider useable) - 

more dynamic composition of protocol systems does not imply 
throwing all discipline out the window but does lead to
more subtle discussion of the modes of interaction between
components 

when one restricts the components to being in an ordered stack
and  the API to being a customer/service 
(a.k.a request/indication response/confirmation) 
through a Service Access Point, one is inevitably restricted to
thinking about Procedure Call as an implementation (despite the fact
that most early stacks and most stuff below transport
has always been implemented with an integrated sequece of
encapsulate and downcall for output, 
and nested processing within interrupt/upcall for input
(to get somewhere close to zero copy in each direction)
plus some sort of timer and exception scheme for 
asynch events that aren't in the data plane...)

it is the non-dataplane things that are where all the grot pops out
and is generally swept under some sort of pretend procedural wrapper
in many stacks (especially higher level) On the usual basis that 
programmers who inhabit the higher levels can't cope with 
events and threads or other abstractions 

of course, since web 1.9, most application programmers laugh at this
patronising attitude from sys$hackers...oh well


In missive <48285A27.9020205 at reed.com>, "David P. Reed" typed:

 >>Jon Crowcroft wrote:
 >>> In missive <4827081A.1090305 at reed.com>, "David P. Reed" typed:
 >>>
 >>>  >>I'd suggest that first-principles thinking is harder than Jon thinks.   
 >>>
 >>> gosh - i thought I just wrote something - i didnt realize andy lipmann's 
 >>> medialab goal of telepathy had already  been reached and you could figure out
 >>> how hard I thought first principles thinking is....thats neat - 
 >>> if you can teach the rest of us that trick, we
 >>> could save a lot of bandwidth and carpal pain
 >>>   
 >>Of course, you are right.   I achieved no telepathic insight into your 
 >>self-perception of difficulty. Another inapt metaphor from inept writer 
 >>committed, admitted, convicted, and sentenced to embarrassment.   If I 
 >>can save anyone carpal pain I'll license the invention for free.
 >>
 >>Nonetheless, I agree with John Day who pointed out much better than I 
 >>that perhaps the problem is not to legitimize layer "violations" as good 
 >>things, but to recognize that maybe the idea of ordered layering was 
 >>injected way beyond its usefulness into the rhetorical framing of 
 >>network protocol design, and now threatens clear thinking about a whole 
 >>range of important issues.
 >>
 >>The end-to-end argument paper attempted to discuss a rationale for 
 >>placement of functions in a modular architecture.
 >>That serves (imho) as a far better example of discussion of 
 >>architectural principles than the ISO OSI attempt at a 
 >>canon/scripture.   The ISO OSI model was introduced without a discussion 
 >>of tradeoffs (very much the content of the end-to-end argument paper), 
 >>as a fait accompli.
 >>
 >>Rather than talk about "breaking with a religion" - perhaps it might be 
 >>better to talk about the elements of thoughtful design principles again.
 >>
 >>The idea of a "connection" or "session" is very useful in some contexts, 
 >>but highly distorts the conversation on DTNs which leads to odd 
 >>circumlocutions like "connection *less*" networking.   Well, if we 
 >>hadn't canonized them, we wouldn't have them.  Books are a form of 
 >>communications, as are TV broadcasts.   Neither form of communications 
 >>ever called for connections as a concept.   So to call them 
 >>connectionless implies that they are somehow "exceptional" or 
 >>"troublesome".   But they are really only troublesome to people so 
 >>steeped in the canon that they assume "connections" are first-order 
 >>axioms of any theory of communications.
 >>
 >>Algebra exists without unique multiplicative inverses.  Geometry exists 
 >>without the parallel postulate.  Communications exists without layers - 
 >>especially without "session layers" that presuppose an artificial invention.
 >>
 >>

 cheers

   jon



More information about the end2end-interest mailing list