PARC Universal Packet (original) (raw)
From Wikipedia, the free encyclopedia
Early internetworking protocol
Internet history timeline |
---|
Early research and development: 1960–1962: J. C. R. Licklider networking ideas 1960–1964: RAND networking concepts developed 1962–1964: ARPA networking ideas 1965 (1965): NPL network concepts conceived 1966 (1966): Merit Network founded 1967 (1967): ARPANET planning begins 1967 (1967): Symposium on Operating Systems Principles 1969 (1969): NPL followed by the ARPANET carry their first packets 1970 (1970): Network Information Center (NIC) 1971 (1971): Tymnet switched-circuit network 1972 (1972): Merit Network's packet-switched network operational 1972 (1972): Internet Assigned Numbers Authority (IANA) established 1973 (1973): CYCLADES network demonstrated 1973 (1973): PARC Universal Packet development begins 1974 (1974): Transmission Control Program specification published 1975 (1975): Telenet commercial packet-switched network 1976 (1976): X.25 protocol approved and deployed on public data networks 1978 (1978): Minitel introduced 1979 (1979): Internet Activities Board (IAB) 1980 (1980): USENET news using UUCP 1980 (1980): Ethernet standard introduced 1981 (1981): BITNET established Merging the networks and creating the Internet: 1981 (1981): Computer Science Network (CSNET) 1982 (1982): TCP/IP protocol suite formalized 1982 (1982): Simple Mail Transfer Protocol (SMTP) 1983 (1983): Domain Name System (DNS) 1983 (1983): MILNET split off from ARPANET 1984 (1984): OSI Reference Model released 1985 (1985): First .COM domain name registered 1986 (1986): NSFNET with 56 kbit/s links 1986 (1986): Internet Engineering Task Force (IETF) 1987 (1987): UUNET founded 1988 (1988): NSFNET upgraded to 1.5 Mbit/s (T1) 1988 (1988): Morris worm 1988 (1988): Complete Internet protocol suite 1989 (1989): Border Gateway Protocol (BGP) 1989 (1989): PSINet founded, allows commercial traffic 1989 (1989): Federal Internet Exchanges (FIX East|FIXes) 1990 (1990): GOSIP (without TCP/IP) 1990 (1990): ARPANET decommissioned 1990 (1990): Advanced Network and Services (ANS) 1990 (1990): UUNET/Alternet allows commercial traffic 1990 (1990): Archie search engine 1991 (1991): Wide area information server (WAIS) 1991 (1991): Gopher 1991 (1991): Commercial Internet eXchange (CIX) 1991 (1991): ANS CO+RE allows commercial traffic 1991 (1991): World Wide Web (WWW) 1992 (1992): NSFNET upgraded to 45 Mbit/s (T3) 1992 (1992): Internet Society (ISOC) established 1993 (1993): Classless Inter-Domain Routing (CIDR) 1993 (1993): InterNIC established 1993 (1993): AOL added USENET access 1993 (1993): Mosaic web browser released 1994 (1994): Full text web search engines 1994 (1994): North American Network Operators' Group (NANOG) established Commercialization, privatization, broader access leads to the modern Internet: 1995 (1995): New Internet architecture with commercial ISPs connected at NAPs 1995 (1995): NSFNET decommissioned 1995 (1995): GOSIP updated to allow TCP/IP 1995 (1995): very high-speed Backbone Network Service (vBNS) 1995 (1995): IPv6 proposed 1996 (1996): AOL changes pricing model from hourly to monthly 1998 (1998): Internet Corporation for Assigned Names and Numbers (ICANN) 1999 (1999): IEEE 802.11b wireless networking 1999 (1999): Internet2/Abilene Network 1999 (1999): vBNS+ allows broader access 2000 (2000): Dot-com bubble bursts 2001 (2001): New top-level domain names activated 2001 (2001): Code Red I, Code Red II, and Nimda worms 2003 (2003): UN World Summit on the Information Society (WSIS) phase I 2003 (2003): National LambdaRail founded 2004 (2004): UN Working Group on Internet Governance (WGIG) 2005 (2005): UN WSIS phase II 2006 (2006): First meeting of the Internet Governance Forum 2010 (2010): First internationalized country code top-level domains registered 2012 (2012): ICANN begins accepting applications for new generic top-level domain names 2013 (2013): Montevideo Statement on the Future of Internet Cooperation 2014 (2014): NetMundial international Internet governance proposal 2016 (2016): ICANN contract with U.S. Dept. of Commerce ends, IANA oversight passes to the global Internet community on October 1st Examples of Internet services: 1989 (1989): AOL dial-up service provider, email, instant messaging, and web browser 1990 (1990): IMDb Internet movie database 1994 (1994): Yahoo! web directory 1995 (1995): Amazon online retailer 1995 (1995): eBay online auction and shopping 1995 (1995): Craigslist classified advertisements 1995 (1995): AltaVista search engine 1996 (1996): Outlook (formerly Hotmail) free web-based e-mail 1996 (1996): RankDex search engine 1997 (1997): Google Search 1997 (1997): Babel Fish automatic translation 1998 (1998): Yahoo Groups (formerly Yahoo! Clubs) 1998 (1998): PayPal Internet payment system 1998 (1998): Rotten Tomatoes review aggregator 1999 (1999): 2ch Anonymous textboard 1999 (1999): i-mode mobile internet service 1999 (1999): Napster peer-to-peer file sharing 2000 (2000): Baidu search engine 2001 (2001): 2chan Anonymous imageboard 2001 (2001): BitTorrent peer-to-peer file sharing 2001 (2001): Wikipedia, the free encyclopedia 2003 (2003): LinkedIn business networking 2003 (2003): Myspace social networking site 2003 (2003): Skype Internet voice calls 2003 (2003): iTunes Store 2003 (2003): 4chan Anonymous imageboard 2003 (2003): The Pirate Bay, torrent file host 2004 (2004): Facebook social networking site 2004 (2004): Podcast media file series 2004 (2004): Flickr image hosting 2005 (2005): YouTube video sharing 2005 (2005): Reddit link voting 2005 (2005): Google Earth virtual globe 2006 (2006): Twitter microblogging 2007 (2007): WikiLeaks anonymous news and information leaks 2007 (2007): Google Street View 2007 (2007): Kindle, e-reader and virtual bookshop 2008 (2008): Amazon Elastic Compute Cloud (EC2) 2008 (2008): Dropbox cloud-based file hosting 2008 (2008): Encyclopedia of Life, a collaborative encyclopedia intended to document all living species 2008 (2008): Spotify, a DRM-based music streaming service 2009 (2009): Bing search engine 2009 (2009): Google Docs, Web-based word processor, spreadsheet, presentation, form, and data storage service 2009 (2009): Kickstarter, a threshold pledge system 2009 (2009): Bitcoin, a digital currency 2010 (2010): Instagram, photo sharing and social networking 2011 (2011): Google+, social networking 2011 (2011): Snapchat, photo sharing 2012 (2012): Coursera, massive open online courses 2016 (2016): TikTok, video sharing and social networking |
The PARC Universal Packet (PUP or PuP, although the original documents usually use Pup) was one of the two earliest internetworking protocol suites; it was created by researchers at Xerox PARC in the mid-1970s. (Technically, the name PUP only refers to the internetwork-level protocol, but it is also applied to the whole protocol suite.) The entire suite provided routing and packet delivery, as well as higher-level functions such as a reliable byte stream, along with numerous applications.
The PUP protocol was created in roughly the same time frame as the earliest parts of the development of TCP/IP for the Internet and also the same time period as the early Ethernet local area network at PARC.[1] The fundamental design of the PUP suite was substantially complete by 1974. PUP was designed to connect the Ethernet to the ARPANET, which was a forerunner to TCP/IP and the Internet. PUP was designed by David Boggs, John Shoch, Edward Taft, and Robert Metcalfe.[2]
In the 1980s Xerox used PUP as the base for the Xerox Network Systems (XNS) protocol suite; some of the protocols in the XNS suite (such as the Internetwork Datagram Protocol) were lightly modified versions of the ones in the PUP suite, but others are quite different, reflecting the experience gained with PUP and IP.
Basic internetwork protocol
[edit]
The main internetwork layer protocol is PUP, which roughly corresponds to the Internet Protocol (IP) layer in TCP/IP. A full PUP network address consists of an 8-bit network number, an 8-bit host number, and a 16-bit socket number. The network number has a particular special value which means 'this network', for use by hosts which do not (yet) know their network number.
Unlike TCP/IP, socket fields are part of the full network address in the PUP header, so that upper-layer protocols did not need to implement their own demultiplexing; PUP also supplies packet types (again, unlike IP). Also, an optional 2-byte checksum covers the entire packet.
PUP packets are up to 554 bytes long (including the 20 byte PUP header), and the checksum. This is a smaller packet size than IP, which requires all hosts to support a minimum of 576 bytes (but allows packets of up to 65K bytes, if the hosts support them); individual PUP host pairs on a particular network might use larger packets, but no PUP router is required to handle them. Larger packets can be fragmented.
A protocol named the Gateway Information Protocol (an ancestor of RIP) is used as both the routing protocol, and for hosts to discover routers.
PUP also includes a simple echo protocol at the internetwork layer, similar to IP's ping, but operating at a lower level.
Transport layer protocols
[edit]
To establish a transport connection, two protocols came into play. The first, the Rendezvous and Termination Protocol (RTP), which was used to initiate communication between two entities, as well as manage and terminate the connection. The second was the primary transport layer protocol, Byte Stream Protocol (BSP), which was analogous to TCP.
Once RTP had started the connection, BSP took over and managed the data transfer. Like TCP, BSP's semantics and operation were in terms of bytes; this was discarded in favour of packets for the equivalent protocol in XNS, Sequenced Packet Protocol.
Application protocols
[edit]
PUP supported a large number of applications. Some of them, such as Telnet and File Transfer Protocol, were basically the same protocols as used on the ARPANET (much as occurred with the TCP/IP suite).
Others were novel, including protocols for printer spooling, copying disk packs, page-level remote access to file servers, name lookup, remote management, etc. (although some of these capabilities had been seen before, e.g. the ARPANET already made heavy use of remote management for controlling the Interface Message Processors (IMPs) which made it up).
PUP showed that internetworking ideas were feasible, influenced the design work on TCP/IP, and laid a foundation for the later XNS protocols. In June and July 1973, Vint Cerf and Bob Kahn organized INWG meetings at Stanford, and Xerox researchers Metcalfe and Shoch attended. However, the Xerox attendees were told by a Xerox lawyer that they could not talk about PUP. During design discussions, the Xerox attendees kept pointing out flaws in the ideas that were suggested, until one of the Stanford researchers blurted out, "You guys have already done this, haven’t you?"[3][4] Shoch continued to be involved in the development of TCP/IP, and Taft was involved in early discussions about email.[5]
The biggest impact of PUP was probably as a key component of the office of the future model first demonstrated at Xerox PARC; that demonstration would not have been anywhere near as powerful as it was without all the capabilities that a working internetwork provided.
The Gateway Information Protocol's descendant, RIP (with minor modifications to carry the addresses of any protocol family), remains in use today in other protocol suites, including TCP/IP. One version of RIP served as one of the initial so-called interior gateway protocols for the growing Internet, before the arrival of the more modern OSPF and IS-IS. It is still in use as an interior gateway protocol, in small sites with simple requirements.
In terms of flaws, the PUP protocol family was not device independent, in modern terminology the IP and MAC layers were combined into a single layer, which made wide-scale adoption difficult. PUP's 8-bit network and 8-bit host could scale to at most 64k machines, before an inter-network bridge or gateway would be needed. For this reason, a successor, the Xerox Networking System (XNS), was developed by the Xerox Office Systems Division using many of the ideas of PUP and a globally-unique, 48-bit host identifier (which became the MAC address in DIX v2 and later IEEE 802.3) to solve these problems:[6]
- preventing address collisions and, or, duplicate address allocations (Xerox allocated 24-bit upper MAC address, and manufacturers allocated the lower 24 bits);
- allowing analog repeaters (which were very low cost) to be a more viable network scaling device; and
- allowing each network interface to generate globally unique id's (UIDs).
- EFTP
- ^ Panzaris, Georgios (2008). Machines and romances: the technical and narrative construction of networked computing as a general-purpose platform, 1960-1995. Stanford University. p. 128. Despite the misgivings of Xerox Corporation (which intended to make PUP the basis of a proprietary commercial networking product), researchers at Xerox PARC, including ARPANET pioneers Robert Metcalfe and Yogen Dalal, shared the basic contours of their research with colleagues at TCP and Internet working group meetings in 1976 and 1977
- ^ Hsu, Hansen; McJones, Paul. "Xerox PARC file system archive". xeroxparcarchive.computerhistory.org.
- ^ Taylor, Bob (October 11, 2008), "Oral History of Robert (Bob) W. Taylor" (PDF), Computer History Museum Archive, CHM Reference number: X5059.2009
- ^ Isaacson, Walter (2014). The innovators : how a group of hackers, geniuses, and geeks created the digital revolution. Internet Archive. New York : Simon & Schuster. ISBN 978-1-4767-0869-0.
- ^ RFC 805. doi:10.17487/RFC0805.
- ^ Yogen Dalal; Robert Printis (October 1981). "48-bit absolute internet and ethernet host numbers" (PDF). SIGCOMM '81 Proceedings of the seventh symposium on Data communications. pp. 240–245.
- Edward A. Taft, Robert M. Metcalfe, Pup Specifications (Xerox Parc, Palo Alto, June, 1978 and October, 1975)
- Edward A. Taft, State Machine for Rendezvous/Termination Protocol (Xerox Parc, Palo Alto, July, 1978 and October, 1975)
- Edward A. Taft, Naming and Addressing Conventions for Pup (Xerox Parc, Palo Alto, July, 1978 and October, 1975)
- Edward A. Taft, Pup Error Protocol (Xerox Parc, Palo Alto, July, 1978 and October, 1975)
- Jon A. Hupp, Pup Network Constants (Xerox Parc, Palo Alto, July, 1979)
- David R. Boggs; John F. Shoch; Edward A. Taft; Robert M. Metcalfe (April 1980). "Pup: An Internetwork Architecture". IEEE Transactions on Communications. 28 (4): 612–624. doi:10.1109/TCOM.1980.1094684.
- Michael A. Hiltzik, Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age (HarperBusiness, New York, 1999), pp. 291–293