Interesting People mailing list archives

on the "the "end-to-end argument""


From: Dave Farber <dave () farber net>
Date: Sat, 26 Apr 2003 11:12:22 -0400


------ Forwarded Message
From: "David P. Reed" <dpreed () reed com>
Date: Sat, 26 Apr 2003 10:53:51 -0400
To: Brett Glass <brett () lariat org>, dave () farber net, ip <ip () v2 listbox com>
Subject: Re: [IP] Like a Swerving Commuter, a Selfish Router Slows Traffic
-- Is this another case of PR science?

At 05:35 PM 4/25/2003 -0600, Brett Glass wrote:
Dave (Reed), I know that your personal ideology states that the
infrastructure of the Internet must be "dumb," but so far you've
done nothing to back that up with any sort of solid proof. Your
end-to-endian religion is just that: hand-waving and religion.

Brett Glass - I'm not sure where this came from.   I'm not sure I should
even bother responding to an out-of-the-blue nasty comment like yours.  You
clearly do not understand what the end-to-end argument is about from the
above comments - I suspect you haven't read any of the numerous papers by
myself and dozens of others who have talked about in papers, or applied
it.  (I'll give you the benefit of the doubt, rather than just presuming
that since you have not ever been a member of the protocol design
community, you have no standing whatever).   So I'll respond in two parts -
a tutorial that includes no religion, no value judgement, just the outline
of the technical argument about systems design, followed separately by what
is, indeed, the tiny bit of religion that I fully admit to.

<technical argument>

One cannot "prove" a design principle as a mathematical theorem.   The
value of a design principle is weighed by its utility in the context of
whether it achieves its stated benefits better than others. A large number
of Internet designers understand and apply the end-to-end argument on a
regular basis.   There is a well-grounded literature explaining the value
of the end-to-end argument, which essentially says that one should not
build into the network any function that can be fully realized outside a
simpler network.   The "proof" of a design principle is that it achieves
its goals.   Those goals in the case of the end-to-end argument involve
coping with evolution in the face of unpredictable applications and
unpredictable technology change.   The end-to-end aspects of the Internet
have (in most people's opinions) shown their stuff in exactly this
way.   [In some ways this is hardly radical - it's quite similar to the
"design principle" of most scientific theories, which says that the basic
set of rules should be as simple as possible - we prefer Newton's gravity
to epicycles, even though the latter were for many decades more precise and
accurate than Newton for predicting the position of planets].

So there's lots of proof lying around: acceptance among senior people in an
academic community, experience with at least one massive example where
evolvability mattered.  In fact the whole "overlay network" community is
following the end-to-end principle again, for exactly the same benefits.

But underlying it all, the point of the "end-to-end argument" is to force
designers to recognize that the goal of a network architecture is to enable
the value at the ends - and that often is best done by the end users
themselves, or by functionality directly purchased, controlled, or
contracted by the ends.   Network owners, in particular, tend to lose sight
of that.   The result is that network owners optimize what they think users
want, arrogating to themselves the decision-making power, and in the case
of issues like spam or national security, decide that what means they can
implement "entirely within the network" is what the users actually want.

<religion>
Since you clearly are opposed to the end-to-end argument for some reason, I
suspect it's because you have a crypto-totalitarian streak in you (despite
your avowed libertarian side, which I suspect is only concerned with
government control - as a right-wing libertarian, you apparently have no
concerns about private - corporate - control of the same sort).   You
*like* networks that control what their users can do, and think that the
network designers and protocol designers know better than the users what
the users want.   You are entitled to that opinion.   I happen to think you
are wrong for two reasons:
1) you can't know, and 2) you can't predict what applications or
technologies you will have to work with.   You are welcome to play god in
your own religion, or in "your network" (as when you made the statement
that "your" net in Laramie ought to be granted by the government
"ownership" the right to connect up your community on unlicensed bands
because you were "there first").   I don't choose to own the words or
thoughts or speech of those I create networks for, even when I can.   If
someone can compete and take away my customers by providing better service,
that would be great.

I'm sure you also feel you know exactly what email services should be
provided, and that you (as a network provider) should decide what is spam
and what is legitimate.   It's a nice simple totalitarian idea.   It's your
religion.   It's not mine.

Please note that although they line up, the end-to-end argument is not
about personal freedom.   It's about creating future choices so that the
network design can adapt to new technologies and new applications that are
unanticipated.

I happen to believe in personal freedom.   But even a totalitarian might
choose to buy the end-to-end argument, if only to serve the needs of
flexibility against future unanticipatable needs.
</religion>

In your response, you clearly don't understand that the end-to-end argument
is a design principle, that it focuses largely on the design problem of
unanticipatable future system requirements, and that there is enormous
support for that design principle's utility.

At the same time, you can't separate the issue of the political role of the
network designer from the political role of users.   As a network designer,
you show a totalitarian streak.   I realize questioning your political
beliefs is dangerous, so I am suggesting you ask yourself honestly why you
think you are smarter than your users, and why you think you need to build
instruments of control into your networks?   Is it fundamentally needed, in
the sense that you can "prove" that external controls and protocols cannot
do the job?  [which in our original paper about the end-to-end argument
says is the rare case when one should put it in the network]  Or do you
lack faith that your users will be able to find a way to cooperate for
mutual benefit without your "help"?


------ End of Forwarded Message

-------------------------------------
You are subscribed as interesting-people () lists elistx com
To manage your subscription, go to
  http://v2.listbox.com/member/?listname=ip

Archives at: http://www.interesting-people.org/archives/interesting-people/


Current thread: