Title: Internet History
1Internet History
1961-1972 Early packet-switching principles
- 1961 Kleinrock - queueing theory shows
effectiveness of packet-switching - 1964 Baran - packet-switching in military nets
- 1967 ARPAnet conceived by Advanced Reearch
Projects Agency - 1969 first ARPAnet node operational
- 1972
- ARPAnet demonstrated publicly
- NCP (Network Control Protocol) first host-host
protocol - first e-mail program
- ARPAnet has 15 nodes
2Internet History
1972-1980 Internetworking, new and proprietary
nets
- 1970 ALOHAnet satellite network in Hawaii
- 1973 Metcalfes PhD thesis proposes Ethernet
- 1974 Cerf and Kahn - architecture for
interconnecting networks - late70s proprietary architectures DECnet, SNA,
XNA - late 70s switching fixed length packets (ATM
precursor) - 1979 ARPAnet has 200 nodes
- Cerf and Kahns internetworking principles
- minimalism, autonomy - no internal changes
required to interconnect networks - best effort service model
- stateless routers
- decentralized control
- define todays Internet architecture
3Internet History
1980-1990 new protocols, a proliferation of
networks
- 1983 deployment of TCP/IP
- 1982 smtp e-mail protocol defined
- 1983 DNS defined for name-to-IP-address
translation - 1985 ftp protocol defined
- 1988 TCP congestion control
- new national networks Csnet, BITnet, NSFnet,
Minitel - 100,000 hosts connected to confederation of
networks
4Internet History
1990s commercialization, the WWW
- Early 1990s ARPAnet decomissioned
- 1991 NSF lifts restrictions on commercial use of
NSFnet (decommissioned, 1995) - early 1990s WWW
- hypertext Bush 1945, Nelson 1960s
- HTML, http Berners-Lee
- 1994 Mosaic, later Netscape
- late 1990s commercialization of the WWW
- Late 1990s
- est. 50 million computers on Internet
- est. 100 million users
- backbone links runnning at 1 Gbps
5ATM Asynchronous Transfer Mode nets
- Internet
- todays de facto standard for global data
networking - 1980s
- telcos develop ATM competing network standard
for carrying high-speed voice/data - standards bodies
- ATM Forum
- ITU
- ATM principles
- small (48 byte payload, 5 byte header) fixed
length cells (like packets) - fast switching
- small size good for voice
- virtual-circuit network switches maintain state
for each call - well-defined interface between network and
user (think of telephone company)
6ATM layers
- ATM Adaptation Layer (AAL) interface to upper
layers - end-system
- segmentation/reassembly
- ATM Layer cell switching
- Physical
7Summary on Introduction
- Covered a ton of material!
- Internet overview
- whats a protocol?
- network edge, core, access network
- performance loss, delay
- layering and service models
- backbones, NAPs, ISPs
- history
- ATM network
- You now hopefully have
- context, overview, feel of networking
- more depth, detail later in course
8Application Layer
- Goals
- conceptual implementation aspects of network
application protocols - client server paradigm
- service models
- learn about protocols by examining popular
application-level protocols
- More goals
- specific protocols
- http
- ftp
- smtp
- pop
- dns
- programming network applications
- socket programming
9Applications and application-layer protocols
- Application communicating, distributed processes
- running in network hosts in user space
- exchange messages to implement app
- e.g., email, file transfer, the Web
- Application-layer protocols
- one piece of an app
- define messages exchanged by apps and actions
taken - user services provided by lower layer protocols
10Client-server paradigm
- Typical network app has two pieces client and
server
- Client
- initiates contact with server (speaks first)
- typically requests service from server,
- e.g. request WWW page, send email
- Server
- provides requested service to client
- e.g., sends requested WWW page, receives/stores
received email
11Application-layer protocols (cont).
- API application programming interface
- defines interface between application and
transport layer - socket Internet API
- two processes communicate by sending data into
socket, reading data out of socket
- Q how does a process identify the other
process with which it wants to communicate? - IP address of host running other process
- port number - allows receiving host to
determine to which local process the message
should be delivered
lots more on this later.
12What transport service does an app need?
- Data loss
- some apps (e.g., audio) can tolerate some loss
- other apps (e.g., file transfer, telnet) require
100 reliable data transfer
- Timing
- some apps (e.g., Internet telephony, interactive
games) require low delay to be effective
- Bandwidth
- some apps (e.g., multimedia) require minimum
amount of bandwidth to be effective - other apps (elastic apps) make use of whatever
bandwidth they get
13Transport service requirements of common apps
Time Sensitive no no no yes, 100s msec yes,
few secs yes, 100s msec yes and no
Application file transfer e-mail Web
documents real-time audio/video stored
audio/video interactive games financial apps
Data loss no loss no loss no loss loss-tolerant
loss-tolerant loss-tolerant no loss
Bandwidth elastic elastic elastic audio
5Kb-1Mb video10Kb-5Mb same as above few Kbps
up elastic
14Internet apps their protocols and transport
protocols
Application layer protocol smtp RFC 821 telnet
RFC 854 http RFC 2068 ftp RFC
959 proprietary (e.g. RealNetworks) NSF proprieta
ry (e.g., Vocaltec)
Underlying transport protocol TCP TCP TCP TCP TCP
or UDP TCP or UDP typically UDP
Application e-mail remote terminal access Web
file transfer streaming multimedia remote file
server Internet telephony