[e2e] Protocols breaking the end-to-end argument
jnc at mercury.lcs.mit.edu
Mon Oct 26 18:13:10 PDT 2009
> From: Richard Bennett <richard at bennett.com>
>> It seems to me that the 'end-end design ideas' have gotten mixed up in
>> what is, at the bottom, a fight over how to divide up the economic pie
>> of communication networks.
> You mean the end-to-end design ideas have gotten mixed up in a fight
> over not changing how the economic pie is currently divided.
Err, 'the current division pattern' is one of the possible answers to the
question 'how should the economic pie of communication networks be divided
up', I would have thought. But this is not important, let me move on...
> End-to-End Args proposes applying the notion of smart, reliable
> endpoints communicating over unreliable comms system to all sorts of
> other things as a rhetorical trick.
'Distributed systems' is a long-standing area of interest in computing
'science' (but that's a different rathole), and it covers a far larger field
than simply communication networks (which is the subject area in which the
end-end analysis originated).
The design philosophy framework discussed in "End-to-End Arguments", while
originating in an analysis of communication networks, can viably be applied
to a wide variety of distributed systems (say, for instance, a distributed
file system which uses replication for robustness and performance). Calling
the application to such a system, in the larger problem domain, "a rhetorical
trick" seems considerably 'over the top' to me.
Moreover, your phraseology above ("End-to-End Args proposes applying the
notion ... to all sorts of other things as a rhetorical trick") seems to
imply that a principal feature of the paper are attempts to apply the
end-to-end argument to places outside the computerized information systems
domain. In fact, there is only paragraph, in the section entitled "History,
and application to other system areas" which deals with such examples. That
hardly qualifies as what your wording implies - which is that such
expansionary applications are a major thrust of the paper.
You're also incorrect to characterize even that paragraph as "applying the
notion of smart, reliable endpoints communicating over unreliable comms
system". The banking example certainly doesn't fit that rubric. It would be
more apt to describe the examples in that paragraph as examples of "functions
placed at low levels of a system [which] may be redundant or of little value
when compared with the cost of providing them at that low level" - that
phrase, of course, being from the paper's own abstract.
> Moors points out that E2E Args never did describe the Internet.
I think this is again a misreprentation of what the Moors paper says - but
we've been down that rabbit hole before.
> 10. Google's MCI vets worry that telcos will put them out of business
> like they did MCI unless end-to-end is law.
> 11. Public interest groups push for end-to-end law.
> 12. FCC asks: "What's wrong with descending into dogma? That's what we do."
Policy and engineering are two very different problem domains, and the former
is free to ignore the latter, if other external (i.e. non-engineering) factors
make that the preferable choice. (Within limits, of course; I treat that point
Just because an engineering discipline says 'X is the way to go', that
doesn't mean policy has to follow. As a made-up example, country Y might
decide that for non-engineering reasons, they prefer to ban gas turbines as
aircraft engines, in favour of piston engines (perhaps because they don't
like the high-pitched whine of turbines, say). However, clearly, if country Y
communally makes the decision to ban gas turbines, that's their call - even
at the same time that it remains a non-optimal decision from an _engineering_
The interesting question, of course, is whether it's good public policy to
make policy choices that are a non-optimal decision from an engineering
perspective. Clearly in cases where that is done there will be a price to pay
(e.g. in the example above, slower planes, and higher fuel consumption), but
only the community in question can decide if those costs are worth the
benefits (e.g. getting rid of turbine whine). There is no general principle
one can apply in such cases, to decide whether or not to follow the optimal
engineering path; each will have to be decided on the overall merits.
So if some factions are calling for an 'end-to-end law' (whatever that might
be - my opinion would be that that is a poor name, although I can see where
it came from), that's a legitimate policy position, on a legitimate policy
decision. Engineering can only provide data to that debate, as to whether
it's the most efficient choice, or not - as in the gas turbine example.
The one place policy _cannot_ go is to _ignore hard constraints_. As Feynman
so elegantly put it (in his appendix to the 'Challenger' crash report'):
"For a successful technology, reality must take precedence over public
relations, for nature cannot be fooled."
> 13. Angry old hippies go "Right on, FCC, your daddy's Internet is good
> enough for you!"
The implication here seems to be that people who advocate a certain position
on how to divide up the network pie are also associated with a certain place
on the political spectrum - at least, in terms of their views on economics?
(Those who know me will no doubt be as amused as I am by the seeming
supposition that I might fall into this imaginary category - but I digress.)
I haven't actually stated here anything about my views on how to divide up the
network money pie. Actually, I don't really care about that issue: although I
do have views on what kind of service model the network should offer, they are
driven by other factors, such as engineering.
All of which should serve to make several points that everyone should retain -
that discussing whether or not the End-to-End princple is a good/valid
engineering point is separate from the question of what service model the
network should offer to its customers - and that people can have positions on
that latter question which are utterly not a result of their views (if any) on
the issue of how to divide up the network pie.
Some consequences in the latter will obviously be a _result_ of their position
on the service model, of course, but it should be noted that the effects on
the pie division are a _result_ of their position on the service model issue,
not the _cause_ of the latter - seemingly unlike that for some other people.
More information about the end2end-interest