End to End Arguments

From: Daniel Lowd (lowd@cs.washington.edu)
Date: Wed Oct 13 2004 - 01:19:46 PDT

  • Next message: Jenny Liu: "review of "End-to-End Arguments in System Design""

    This paper discussed arguments for end-to-end system design, the
    philosophy that applications should implement most of the functionality of
    the network, since no implementation will be appropriate for all
    applications. I liked how readable this paper was, and the examples
    provided good perspective on why end-to-end design makes sense. I also
    liked that it showed some of the limitations: certain commonly used
    functions, such as some measure of reliability, may still be best placed
    in the network. Instead of claiming that the network should do nothing,
    it simply provided perspective by way of examples.

    These strengths are also a weakness -- it provides no easy answers. In
    fact, at times it's not even clear what point it's trying to make. Of
    course system designers should think carefully about the systems they
    design! A more powerful paper might have looked at specific failures and
    how they might have been avoided, or controversial decisions that proved
    successful in the long run, and tried to come up with some vague
    generalizations. While some of this was done, it was via circuitous
    exposition. If the authors truly wanted to impact and influence system
    design, they might have done better to make strong claims and support them
    well. The contents of this paper were good, but the structure and tone
    were more along the lines of motherly advice than rebellious manifesto. I
    also would have liked more discussion of layering, since that seems like a
    sensible way to make some of these tradeoffs.

    This paper continues to be relevant as the issues remain, not just for
    networking but for system design in general. The RISC vs. CISC example
    was particularly good. It also described how I feel using Windows vs.
    Linux... Windows feels like it has more built-in support (e.g., it finds
    my mouse without me typing "modprobe psmouse"). On the other hand, when I
    want to do more customization or scripting, it's usually much easier in
    Linux. Simply having the UNIX shell utilities available can make a world
    of difference in simple tasks. This feels analogous to wrapping more
    functionality into the network vs. leaving it at the end-points. Of
    course, Windows and Linux both have APIs with a fair bit of power... but
    the Linux user interface is more readily extended at the comand line,
    given sufficient know-how and initiative.

    -- Daniel


  • Next message: Jenny Liu: "review of "End-to-End Arguments in System Design""

    This archive was generated by hypermail 2.1.6 : Wed Oct 13 2004 - 01:19:47 PDT