[Politech] John Walker on NAT and "lights going out across the Internet"

From: Declan McCullagh (declan@private)
Date: Mon Mar 22 2004 - 10:03:29 PST

  • Next message: Declan McCullagh: "[Politech] News roundup on air travel privacy, CAPPS II [priv]"

    [I missed this the first time around. The topic is Speak Freely, but the 
    implications of John's essay are far broader. It's worth a read. --Declan]
    
    
    
    http://www.fourmilab.ch/speakfree/
    
    Speak Freely
    End of Life Announcement
    by John Walker
    January 15th, 2004
    
    The time has come to lower the curtain on Speak Freely. As of August 1st, 2003, 
    version 7.6a of Speak Freely (Unix and Windows) was declared the final release 
    of the program, and a banner was added to the general Speak Freely page and 
    those specific to the Unix and Windows versions on the www.fourmilab.ch site 
    announcing the end of life. No further development or maintenance will be done, 
    and no subsequent releases will be forthcoming.
    
    On January 15th, 2004 all Speak Freely documentation and program downloads, 
    along with links to them on the site navigation pages, were removed from the 
    www.fourmilab.ch site, and accesses to these files redirected to this document. 
    On that date the speak-freely and speak-freely-digest mailing lists were closed 
    and their archives copied to off-line storage and deleted from the site. In 
    addition, the Speak Freely Forum will cease operation, along with the Echo and 
    Look Who's Listening servers previously running at www.fourmilab.ch. Ports 2074 
    through 2076 will be firewall blocked for the fourmilab.ch domain, with incoming 
    packets silently discarded. As of January 15th, 2004, all queries, in whatever 
    form, regarding Speak Freely will be ignored. An historical retrospective on the 
    program may eventually be published on the site.
    Questions and Answers
    
    Why did you do this?
         The time has come. Speak Freely is the direct descendant of a program I 
    originally developed and posted to Usenet in 1991. The bulk of Speak Freely 
    development was done in 1995 and 1996, with the Windows version designed around 
    the constraints of 16-bit Windows 3.1. Like many programs of comparable age 
    which have migrated from platform to platform and grown to encompass 
    capabilities far beyond anything envisioned in their original design, Speak 
    Freely shows its age. The code is messy, difficult to understand, and very easy 
    to break when making even small modifications. The Windows and Unix versions, 
    although interoperable, have diverged in design purely due to their differing 
    histories, almost doubling the work involved in making any change which affects 
    them both.
    
         To continue development and maintenance of Speak Freely, the program 
    requires a top to bottom rewrite, basing the Unix and Windows version on an 
    identical "engine," and providing an application programming interface (API) 
    which permits other programs to be built upon it. I estimate the work involved 
    in this task, simply to reach the point where a program built with the new 
    architecture is 100% compatible with the existing Speak Freely, would require 
    between 6 and 12 man-months. There is no prospect whatsoever that I will have 
    time of that magnitude to devote to Speak Freely in the foreseeable future, and 
    no indication that any other developer qualified to do the job and sufficiently 
    self-motivated and -disciplined to get it done exists. In fact, the history of 
    Speak Freely constitutes what amounts to a non-existence proof of candidate 
    developers.
    
         Even if I had the time to invest in Speak Freely, or another developer or 
    group of developers volunteered to undertake the task, the prospects for such a 
    program would not justify the investment of time.
    
    What do you mean--isn't the Internet still in its infancy?
         If you say so. The Internet, regardless of its state of development, is in 
    the process of metamorphosing into something very different from the Internet 
    we've known over the lifetime of Speak Freely. The Internet of the near future 
    will be something never contemplated when Speak Freely was designed, inherently 
    hostile to such peer-to-peer applications.
    
         I am not using the phrase "peer to peer" as a euphemism for "file sharing" 
    or other related activities, but in its original architectural sense, where all 
    hosts on the Internet were fundamentally equal. Certainly, Internet connections 
    differed in bandwidth, latency, and reliability, but apart from those physical 
    properties any machine connected to the Internet could act as a client, server, 
    or (in the case of datagram traffic such as Speak Freely audio) neither--simply 
    a peer of those with which it communicated. Any Internet host could provide any 
    service to any other and access services provided by them. New kinds of services 
    could be invented as required, subject only to compatibility with the higher 
    level transport protocols (such as TCP and UDP). Unfortunately, this era is 
    coming to an end.
    
         One need only read discussions on the Speak Freely mailing list and Forum 
    over the last year to see how many users, after switching from slow, unreliable 
    dial-up Internet connections to broadband, persistent access via DSL or cable 
    television modems discover, to their dismay, that they can no longer receive 
    calls from other Speak Freely users. The vast majority of such connections use 
    Network Address Translation (NAT) in the router connected to the broadband link, 
    which allows multiple machines on a local network to share the broadband 
    Internet access. But NAT does a lot more than that.
    
         A user behind a NAT box is no longer a peer to other sites on the Internet. 
    Since the user no longer has an externally visible Internet Protocol (IP) 
    address (fixed or variable), there is no way (in the general case--there may be 
    "workarounds" for specific NAT boxes, but they're basically exploiting bugs 
    which will probably eventually be fixed) for sites to open connections or 
    address packets to his machine. The user is demoted to acting exclusively as a 
    client. While the user can contact and freely exchange packets with sites not 
    behind NAT boxes, he cannot be reached by connections which originate at other 
    sites. In economic terms, the NATted user has become a consumer of services 
    provided by a higher-ranking class of sites, producers or publishers, not 
    subject to NAT.
    
         There are powerful forces, including government, large media organisations, 
    and music publishers who think this situation is just fine. In essence, every 
    time a user--they love the word "consumer"--goes behind a NAT box, a site which 
    was formerly a peer to their own sites goes dark, no longer accessible to others 
    on the Internet, while their privileged sites remain. The lights are going out 
    all over the Internet. My paper, The Digital Imprimatur, discusses the technical 
    background, economic motivations, and social consequences of this in much more 
    (some will say tedious) detail. Suffice it to say that, as the current migration 
    of individual Internet users to broadband connections with NAT proceeds, the 
    population of users who can use a peer to peer telephony product like Speak 
    Freely will shrink apace. It is irresponsible to encourage people to buy into a 
    technology which will soon cease to work.
    
    [...]
    _______________________________________________
    Politech mailing list
    Archived at http://www.politechbot.com/
    Moderated by Declan McCullagh (http://www.mccullagh.org/)
    



    This archive was generated by hypermail 2b30 : Mon Mar 22 2004 - 10:27:57 PST