1 Minseok Kwon Department of Computer Science Rochester Institute of Technology [email protected] jmk...

35
1 Minseok Kwon Department of Computer Science Rochester Institute of Technology [email protected] http://www.cs.rit.edu/~jmk Week 1: Internet Week 1: Internet Architecture Architecture

Transcript of 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology [email protected] jmk...

Page 1: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

1

Minseok Kwon

Department of Computer ScienceRochester Institute of Technology

[email protected]

http://www.cs.rit.edu/~jmk

Week 1: Internet Week 1: Internet ArchitectureArchitecture

Page 2: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

2

Internet Architecture• What made the Internet THE WINNER?

• Packet switching• Hourglass design• End-to-end argument• Layered structure• Distributed control• Superior organizational process

Page 3: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

3

The Network Core• What is the networks?

• Mesh of interconnected routers

• How is data transferred through net?• Circuit switching:

dedicated circuit per call, e.g., telephone net

• Packet-switching: data sent thru net in discrete “chunks”, e.g., data net

Page 4: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

4

Circuit Switching

• End-to-end resources are reserved for call.• Link bandwidth,

switch capacity• Dedicated

resources: no sharing

• Circuit-like performance (guaranteed)

• Call setup required

Page 5: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

5

Packet Switching

Each end-end data stream divided into packets

• User A, B packets share network resources

• Each packet uses full link bandwidth

• Resources used as needed

Resource contention: • Aggregate resource

demand can exceed amount available

• Congestion: packets queue, wait for link use

• Store and forward: packets move one hop at a timeBandwidth division into

“pieces”Dedicated allocationResource reservation

Page 6: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

6

Packet Switching

A

B

C10 Mb/sEthernet

1.5 Mb/s

D E

statistical multiplexing

queue of packetswaiting for output

link

Page 7: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

7

Circuit or Packet?• Which one you like between circuit-

switching and packet-switching?

• Which one is simpler?

• Which one is good for bursty traffic?

• Which one is good for real-time traffic?

Page 8: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

8

Routing and Forwarding

• Goal: move packets through routers from source to destination

• Datagram network: • Destination address in packet determines

next hop• Routes may change during session

• Virtual circuit network: • Each packet carries tag (virtual circuit ID),

tag determines next hop• Fixed path determined at call setup time,

remains fixed thru call• Routers maintain per-call state

Page 9: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

9

Hourglass Design

Page 10: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

10

Hourglass Design

Intelligence

IP (Internet Protocol)

Unreliable datagram serviceAddressing and connectionlessFragmentation and Reassembly

• Phone network: dumb edge device, intelligent network

Page 11: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

11

Hourglass Design• Why is the hourglass design good?

• How about with multi-vendor, multi-provider public network?

• Is this independent of hardware?

• Which layer in fact provides reliable data transfer?

Page 12: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

12

Hourglass Design• Which application protocols use TCP?

• HTTP, FTP, Telnet, SMTP, NNTP, BGP, IMAP, POP

• Which uses (mainly) UDP?• SNMP, NTP, NFS, RTP, DNS

• Streaming media, IP telephony, teleconferencing

• More questions• Are these enough?

• How can we provide more sophisticated services such as security, quality-of-service, controlling greedy sources, accounting and pricing?

• We have IPSec, DiffServ, SCTP, etc.

Page 13: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

13

The End-to-End Argument

• Adding checks during transit may make the system complex, error-prone, or uneconomical.

• In contrast, what about end-to-end checks and retry?• Use checksums at the application level.

• Suppose that node A sends a file to node B. • One concern is the file may be corrupted during this file

transfer.• Where should we check errors, in the network or at the

edge?A B

Page 14: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

14

The End-to-End Argument• Application knows best!• The communication subsystems need to be

reliable within reason, but should not provide these “application” features.

• Example: delivery guarantees, data encryption, duplicate suppression

• Reliability versus performance?

Page 15: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

15

The End-to-End Argument

Page 16: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

16

Layered Structure• Networks are complex!• Is there any hope of organizing structure of

network?

• The answer is layering!• Why layering?

• Effective to deal with complex systems.• Explicit structure allows identification, relationship of

complex system’s pieces.• Modularization eases maintenance, updating of

system.

• Each layer relies on services from layer below and exports services to layer above.

Page 17: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

17

Example: Air Travel Organization

ticket (purchase)

baggage (check)

gates (load)

runway takeoff

airplane routing

ticket (complain)

baggage (claim)

gates (unload)

runway landing

airplane routing

airplane routing

Is there a way to organize structure of network?

Page 18: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

18

Internet Protocol Stack

• Application: supporting network applications

• Transport: host-host data transfer

• Network: routing of datagrams from source to destination

• Link: data transfer between neighboring network elements

• Physical: bits “on the wire”

application

transport

network

link

physical

Page 19: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

19

Data Communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

Page 20: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

20

Protocol Layering and Data

Each layer takes data from above• Adds header information to create new data unit• Passes new data unit to layer below

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

source destination

M

M

M

M

Ht

HtHn

HtHnHl

M

M

M

M

Ht

HtHn

HtHnHl

message

segment

frame

Page 21: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

21

Distributed Control• Requirements from DARPA

• Must survive a nuclear attack

• Reliability• Intelligent aggregation of unreliable components• Alternate paths, adaptivity• Distributed management & control of networks

• Exceptions• DNS: Top Level Domain (TLD) server• IP address assignment (ICANN)

Page 22: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

22

Superior Organizational Process• IAB/IETF process allowed for quick

specification, implementation, and deployment of new standards• Rough consensus and removing features• Free and easy download of standards• 2 interoperable implementations• Bake-offs• http://www.ietf.org/

• How about ISO/OSI compared to IAB/IETF?

Page 23: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

23

Internet History: Starring

Vint Cerf

Robert Kahn

Leonard Kleinrock

Lawrence Roberts

“Where Wizards Stay Up Late: The Origins of the Internet ,”K. Hafner, M. Lyon, Simon & Schuster.

Page 24: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

24

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 (UCLA, UCSB, Utah, SRI)

• 1972: • ARPAnet

demonstrated publicly• NCP (Network Control

Protocol) first host-host protocol

• First e-mail program• ARPAnet has 15 nodes

1961-1972: Early packet-switching principles

Page 25: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

25

ARPANET• ARPANET -- L. Roberts (1966)

• Galactic computer network + packet switching• DARPA program manager

• Structure and specification (August 1968)• Kahn at BBN updates ARPANET design

• Run over any fabric (separation of hardware and network addresses)

• Support for multiple independent networks

• First node UCLA (Sept. 1969)• 4 node ARPANET (Dec. 1969) SRI, UCSB, Utah • Initial hostname/address database (flat file: hosts.txt)

Page 26: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

26

RFCs• 1969: Crocker establishes RFC series of notes

• Official protocol documentation• Printed on paper and snail mailed at first• Then available via ftp and now http• Open and free access to RFCs mandated• Effective, positive feedback loop• Key to quick development process (“time-to-market”)• Has changed considerably as of late...

• Jon Postel: RFC editor and protocol number assignment

Page 27: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

27

E-mail• BBN’s Tomlinson (Mar. 1972)

• Time-shared systems at the time allow users to leave messages for each other

• Extended to remote systems• Writes first e-mail application to send and read• Infamous “@” used

Page 28: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

28

Internet History

• 1970: ALOHAnet satellite network in Hawaii

• 1973: Metcalfe’s PhD thesis proposes Ethernet

• 1974: Cerf and Kahn - architecture for interconnecting networks

• 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 29: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

29

Meanwhile …• Other non-interoperable networks from jealous

government agencies and companies• DOE: MFENet (Magnetic Fusion Energy scientists)• DOE: HEPNet (High Energy Physicists)• NASA: SPAN (Space physicists)• NSF: CSNET (CS community)• NSF: NSFNet (Academic community) 1985• AT&T: USENET with Unix, UUCP protocols• Academic networks: BITNET (Mainframe connectivity)• Xerox: XNS (Xerox Network System)• IBM: SNA (System Network Architecture)• Digital: DECNet• UK: JANET (Academic community in UK) 1984

Page 30: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

30

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 31: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

31

TCP/IP software proliferation• Widespread dispersal leads to critical mass• Case study: Berkeley Unix

• Unix TCP/IP available at no cost (DoD)• Incorporates BBN TCP/IP implementation• Large-scale dissemination of code base• Eventual economies of scale

Page 32: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

32

WWW• CERN (European Organization for Nuclear Research)

• Berners-Lee, Caillau work on WWW (1989)

• First WWW client (browser-editor running under NeXTStep)

• Defines URLs, HTTP, and HTML

• Berners-Lee goes to MIT and LCS to start W3C• Responsible for evolving protocols and standards for the web

• NCSA (National Center for Supercomputing Applications)• Federally funded research center at UIUC• Andreessen: Mosaic and eventually Netscape (1994)

Page 33: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

33

Internet Growth

Page 34: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

34

Growing Pains• Explosion of networks

• Routing initially flat, each node runs the same distributed routing algorithm

• Moved to hierarchical model to match commercial reality (IGP, EGP)

• Address depletion, Classless addressing (CIDR)

• Congestion• Network “brown-outs”, congestion collapse• Add congestion control to TCP protocol, not IP

• Security• Viruses, worms, denial-of-service attacks• Privacy, authentication, and many more.

Page 35: 1 Minseok Kwon Department of Computer Science Rochester Institute of Technology jmk@cs.rit.edu jmk Week 1: Internet Architecture.

35

Acknowledgements• Many parts of this lecture are taken from course slides

by Kurose/Ross and course slides by Wu-chang Feng.