internet history cs 4244: internet programming dr. eli tilevich

16
Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Upload: stefan-hingston

Post on 28-Mar-2015

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Internet History

CS 4244: Internet Programming

Dr. Eli Tilevich

Page 2: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

US Science and Technology Policy in the Second Half of the 20th Century

• Five decades of history:– The lessons of the “Manhattan Project.”– The 50’s: Complacency.– October 4, 1957.

• NASA 1958• (D)ARPA 1958

Page 3: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Major Themes of Technological Progress

• The 60’s: Networking (packet switching)

• The 70’s: UNIX (Berkeley and AT&T)

• The 80’s PC (IBM, Apple, Microsoft)– 1979 3Com– 1979 Novel– 1981 SUN– 1984 CISCO

Page 4: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Chapter 1Introduction

Computer Networking: A Top Down

Approach Featuring the Internet, 3rd edition.

Jim Kurose, Keith Ross

Addison-Wesley, July 2004.

A note on the use of these ppt slides:We’re making these slides freely available to all (faculty, students, readers). They’re in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we’d like people to use our book!) If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material.

Thanks and enjoy! JFK/KWR

All material copyright 1996-2005J.F Kurose and K.W. Ross, All Rights Reserved

Page 5: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Internet History

• 1961: Kleinrock - queueing theory shows effectiveness of packet-switching

• 1964: Baran - packet-switching in military nets

• 1967: ARPAnet conceived by Advanced Research Projects Agency

• 1969: first ARPAnet node operational

• 1972: – ARPAnet public demonstration– NCP (Network Control Protocol)

first host-host protocol – first e-mail program– ARPAnet has 15 nodes

1961-1972: Early packet-switching principles

Page 6: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Internet History

• 1970: ALOHAnet satellite network in Hawaii

• 1974: Cerf and Kahn - architecture for interconnecting networks

• 1976: Ethernet at Xerox PARC• late70’s: proprietary

architectures: DECnet, SNA, XNA

• late 70’s: switching fixed length packets (ATM precursor)

• 1979: ARPAnet has 200 nodes

Cerf and Kahn’s internetworking principles:– minimalism, autonomy - no

internal changes required to interconnect networks

– best effort service model– stateless routers– decentralized control

define today’s Internet architecture

1972-1980: Internetworking, new and proprietary nets

Page 7: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Internet History

• 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

1980-1990: new protocols, a proliferation of networks

Page 8: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Internet History

• Early 1990’s: ARPAnet decommissioned

• 1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995)

• early 1990s: Web– hypertext [Bush 1945, Nelson

1960’s]– HTML, HTTP: Berners-Lee– 1994: Mosaic, later Netscape– late 1990’s: commercialization

of the Web

Late 1990’s – 2000’s:• more killer apps: instant

messaging, P2P file sharing• network security to forefront• est. 50 million host, 100

million+ users• backbone links running at

Gbps

1990, 2000’s: commercialization, the Web, new apps

Page 9: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Internet From the Networking Perspective

Overview

Page 10: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

What’s the Internet: “nuts and bolts” view

• millions of connected computing devices: hosts = end systems

• running network apps• communication links

– fiber, copper, radio, satellite– transmission rate = bandwidth

• routers: forward packets (chunks of data)

local ISP

companynetwork

regional ISP

router workstation

servermobile

Page 11: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

“Cool” internet appliances

World’s smallest web serverhttp://www-ccs.cs.umass.edu/~shri/iPic.html

IP picture framehttp://www.ceiva.com/

Web-enabled toaster +weather forecaster

Internet phones

Page 12: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

What’s the Internet: “nuts and bolts” view

• protocols control sending, receiving of msgs– e.g., TCP, IP, HTTP, FTP,

PPP

• Internet: “network of networks”– loosely hierarchical– public Internet versus private

intranet

• Internet standards– RFC: Request for comments– IETF: Internet Engineering

Task Force

local ISP

companynetwork

regional ISP

router workstation

servermobile

Page 13: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

What’s the Internet: a service view• communication

infrastructure enables distributed applications:– Web, email, games, e-

commerce, file sharing

• communication services provided to apps:– Connectionless unreliable

– connection-oriented reliable

Page 14: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

A closer look at network structure:

• network edge: applications and hosts

• network core: – routers

– network of networks

• access networks, physical media: communication links

Page 15: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

The network edge:• end systems (hosts):

– run application programs– e.g. Web, email– at “edge of network”

• client/server model– client host requests, receives

service from always-on server– e.g. Web browser/server; email

client/server

• peer-peer model:– minimal (or no) use of dedicated

servers– e.g. Gnutella, KaZaA, Skype

Page 16: Internet History CS 4244: Internet Programming Dr. Eli Tilevich

Network edge: connection-oriented service

Goal: data transfer between end systems

• handshaking: setup (prepare for) data transfer ahead of time– Hello, hello back human

protocol

– set up “state” in two communicating hosts

• TCP - Transmission Control Protocol – Internet’s connection-

oriented service

TCP service [RFC 793]

• reliable, in-order byte-stream data transfer– loss: acknowledgements

and retransmissions

• flow control: – sender won’t overwhelm

receiver

• congestion control: – senders “slow down sending

rate” when network congested