Advanced Computer Networks cs538, Spring 2016 @ UIUC

54
Advanced Computer Networks cs538, Spring 2016 @ UIUC Klara Nahrstedt Lecture 2 Based on B. M. Leiner et al, “Brief History of the Internet”, Internet Society 2014 C. ParCdge, “Forty Data CommunicaCons Research QuesCons”, CCR, 2011 Prior 2010-2013, lecture material by Brighten Godfrey and MaN Caesar

Transcript of Advanced Computer Networks cs538, Spring 2016 @ UIUC

Page 1: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Advanced Computer Networks cs538, Spring 2016 @ UIUC

KlaraNahrstedt

Lecture2Basedon

B.M.Leineretal,“BriefHistoryoftheInternet”,InternetSociety2014C.ParCdge,“FortyDataCommunicaConsResearchQuesCons”,CCR,2011Prior2010-2013,lecturematerialbyBrightenGodfreyandMaNCaesar

Page 2: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Announcements

•  SelectreviewsbyJanuary28•  FormgroupsandselectlectureasagroupbyJanuary28• ReadpapersforJanuary28lecture

•  AprotocolforpacketnetworkintercommunicaCon(CerfandKahn,1974)•  TheDesignPhilosophyoftheDARPAInternetProtocols(Clark,1988)

Page 3: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Outline

• HistoryofInternet

• Reviewofbasicconcepts

• Grandchallenges–fewexamples

Page 4: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Visions • VannevarBush,“Aswemaythink”(1945):memex

•  J.C.R.Licklider(1962):“GalacCcNetwork”

•  ConceptofaglobalnetworkofcomputersconnecCngpeoplewithdataandprograms

•  FirstheadofDARPAcomputerresearch,October1962 Bush

Licklider

Page 5: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Circuit switching

1920s

1967

[US Air Force]

InternaConaloperator,NewYorkAT&TSource:hNp://www.corp.aN.com/history/nethistory/switching.html

1935

Page 6: Advanced Computer Networks cs538, Spring 2016 @ UIUC

1961-64: Packet switching

Circuit Switching Packet switching

Physical channel carrying stream of data from source to destination

Message broken into short packets, each handled separately

Three phase: setup, data transfer, tear-down

One operation: send packet

Data transfer involves no routingPackets stored (queued) in each router, forwarded to appropriate neighbor

Page 7: Advanced Computer Networks cs538, Spring 2016 @ UIUC

1961-64: Packet switching

• Keybenefit:StaCsCcalMulCplexing•  (whatelse?)

Circuit switching

Time

Packet switching:multiplexed

Time

Page 8: Advanced Computer Networks cs538, Spring 2016 @ UIUC

1961-64: Packet switching

• Concurrentdevelopmentatthreegroups•  LeonardKleinrock(MIT):queueing-theoreCcanalysisofpacketswitchinginPh.D.thesis(1961-63)demonstratedvalueofstaCsCcalmulCplexing

•  PaulBaran(RAND)•  DonaldDavies(NaConalPhysicalLaboratories,UK)

Kleinrock Baran Davies

Page 9: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Baran’s packet switching

Paul Baran, “On distributed communications networks”, Sept. 1962

Page 10: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Baran’s packet switching

Paul Baran, “On distributed communications networks”, Sept. 1962

Page 11: Advanced Computer Networks cs538, Spring 2016 @ UIUC

There is an increasingly repeated statement made that one day we will require more capacity for data transmission than needed for voice. If this statement is correct, then it would appear prudent to broaden our planning consideration to include new concepts for future data network directions. ... New digital computer techniques using redundancy make cheap unreliable links potentially usable. ... Such a system should economically permit switching of very short blocks of data from a large number of users simultaneously with intermittent large volumes among a smaller set of points.

Baran’s packet switching

Paul Baran, “On distributed communications networks”, Sept. 1962

Page 12: Advanced Computer Networks cs538, Spring 2016 @ UIUC

1965: First computer network

•  LawrenceRobertsandThomasMerrillconnectaTX-2atMITtoaQ-32inSantaMonica,CA

• ARPA-fundedproject• Connectedwithtelephoneline

•  works,butit’sinefficientandexpensive•  confirmedonemoCvaConforpacketswitching

• RobertsuClizedDavies’packetswitchingtheorylate1960’sandbuiltintoARPANET

Roberts

Page 13: Advanced Computer Networks cs538, Spring 2016 @ UIUC

The ARPANET begins

• RobertsjoinsDARPA(1966),publishesplanfortheARPANETcomputernetwork(1967)

• December1968:Bolt,Beranek,andNewman(BBN)winbidtobuildpacketswitch,theInterfaceMessageProcessor(IMP)

•  FirstgeneraConofgateways•  September1969:BBNdeliversfirstIMPtoKleinrock’slabatUCLA An older Kleinrock

with the first IMP

Page 14: Advanced Computer Networks cs538, Spring 2016 @ UIUC

ARPANET comes alive

Stanford Research Institute (SRI)

“LO”Oct 29, 1969

UCLA

Page 15: Advanced Computer Networks cs538, Spring 2016 @ UIUC

ARPANET grows

•  Dec1970:ARPANETNetworkControlProtocol(NCP)

•  1971:Telnet,FTP•  1972:Email(RayTomlinson,BBN)

•  1979:USENET

ARPANET, April 1971

Page 16: Advanced Computer Networks cs538, Spring 2016 @ UIUC

ARPANET grows

Page 17: Advanced Computer Networks cs538, Spring 2016 @ UIUC

ARPANET to Internet

•  Meanwhile,othernetworkssuchasPRnet,SATNETdeveloped

•  May1973:VintonG.CerfandRobertE.KahnpresentfirstpaperoninterconnecCngnetworks

•  ConceptofconnecCngdiversenetworks,unreliabledatagrams,globaladdressing,...

•  BecameTCP/IP

Kahn

Cerf

Page 18: Advanced Computer Networks cs538, Spring 2016 @ UIUC

TCP/IP deployment •  TCP/IPimplementedonmainframesbygroupsatStanford,BBN,UCL

•  DavidClarkguidesarchitecture,implementsitonXeroxAltoandIBMPC

•  1982:InternaConalOrganizaConforStandards(ISO)releasesOpenSystemsInterconnecCon(OSI)referencemodel

•  DesignbycommiNeedidn’twin•  January1,1983:“FlagDay”NCPtoTCP/IPtransiCononARPANET

Application

Presentation

Session

Transport

Network

Data Link

Physical

OSI ReferenceModel’s layers

Page 19: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Growth from Ethernet

•  Ethernet:R.MetcalfeandD.Boggs,July1976

•  SpanningTreeprotocol:RadiaPerlman,1985

•  Madelocalareanetworkingeasy

Metcalfe

Perlman

Page 20: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Growth spurs organic change •  Early1980s:Manynewnetworks:CSNET,BITNET,MFENet,SPAN(NASA),...

•  Nov1983:DNSdevelopedbyJonPostel,PaulMockapetris(USC/ISI),CraigPartridge(BBN)

•  1984:HierarchicalrouCng:EGPandIGP(latertobecomeeBGPandiBGP)

Postel

Partridge

Mockapetris

Page 21: Advanced Computer Networks cs538, Spring 2016 @ UIUC

NSFNET •  1984:NSFNETforUShighereducaCon

•  Servemanyusers,notjustonefield

•  Encouragedevelopmentofprivateinfrastructure(e.g.,backbonerequiredtobeusedforResearchandEducaCon)

•  SCmulatedinvestmentincommerciallong-haulnetworks

•  1990:ARPANETends•  1995:NSFNETdecommissioned

NSFNET backbone, 1992

Page 22: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Explosive growth! In hosts

Page 23: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Explosive growth!

Inte

rnet

forw

ardi

ng t

able

siz

e

[Huston ’12]Year

(Colors correspondto measurements

from different vantage points)

In networks

Page 24: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Explosive growth! In applications

Morris Internet Worm (1988)World wide web (1989)

MOSAIC browser (1992)Search engines

VoiceRadio

Botnets

Streaming videoSocial networking

Peer-to-peer

The results of your class projects!

In devices & technologies

NATs, firewalls, DPI, ...Wireless everywhereMobile everywhere

Tiny devices (smart phones)

...Giant devices (data centers)

Link speeds 200,000x fasterO(100 million) times as many devices

Cloud computingMobile apps

Page 25: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Huge societal relevance

FridayJune 122009

SaturdayJune 13

SundayJune 14

Routing instabilities and outages in Iranian prefixesfollowing 2009 presidential election

Affe

cted

pre

fixes

[James Cowie,Renesys Corporation]

Page 26: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Huge societal relevance

Rea

chab

le p

refix

es

July - August 2011 [James Cowie,Renesys Corporation]

Reachability to Lybia

Page 27: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Top 30 invenZons of the last 30 years

16.MediaFileCompression17.Microfinance18.PhotovoltaicSolarEnergy19.LargeScaleWindTurbines20.SocialNetworkingviaInternet21.GraphicUserInterface(GUI)22.DigitalPhotography/Videography23.RFID24.GeneCcallyModifiedPlants25.Biofuels26.BarCodesandScanners27.ATMs28.Stents29.SRAM/FlashMemory30.AnC-RetroviralTreatmentforAIDS

1.  Internet/Broadband/WorldWideWeb

2.  PC/LaptopComputers

3. MobilePhones

4.  E-Mail

5.  DNATesCngandSequencing/HumanGenomeMapping

6. MagneCcResonanceImaging(MRI)

7. Microprocessors

8.  FiberOpCcs9.  OfficeSopware

10. Non-InvasiveLaser/RoboCcSurgery11. OpenSourceSopwareandServices12. LightEmiqngDiodes(LEDs)

13. LiquidCrystalDisplays(LCDs)14. GPS15. OnlineShopping/E-Commerce/AucCons

Compiled by the Wharton School @ U Penn, 2009

Page 28: Advanced Computer Networks cs538, Spring 2016 @ UIUC

So we’re done! ... right?

•  CoreprotocolschangedliNle,butthecontexthas...•  CriminalsandmaliciousparCes•  Everyonetryingtogamethesystem•  Incrediblegrowth•  Constantmobility•  Extremecomplexity

•  ...andfixingthenetinvolvesfundamentalchallenges•  It’sdistributed•  Componentsfail•  Highlyheterogeneousenvironments•  HighlycomplexsystemscomponentsandinteracCons•  MustgetcompeCngparCestoworktogether

Page 29: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Review of Basics before Grand Challenges

Page 30: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Layering

• Akindofmodularity•  FuncConalityseparatedintolayers

•  Layernimplementshigher-levelfuncConalitybyinterfacingonlywithlayern-1

•  Hidescomplexityofsurroundinglayers:enablesgreaterdiversityandevoluConofmodules

Application

Transport

Network

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Network

Data Link

Physical

Network

Data Link

Physical

Page 31: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Layering

• Akindofmodularity•  FuncConalityseparatedintolayers

•  Layernimplementshigher-levelfuncConalitybyinterfacingonlywithlayern-1

•  Hidescomplexityofsurroundinglayers:enablesgreaterdiversityandevoluConofmodules

Application

Transport

Network

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Network

Data Link

Physical

Network

Data Link

Physical

Page 32: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Layering

• Akindofmodularity•  FuncConalityseparatedintolayers

•  Layernimplementshigher-levelfuncConalitybyinterfacingonlywithlayern-1

•  Hidescomplexityofsurroundinglayers:enablesgreaterdiversityandevoluConofmodules

Application

Transport

Network

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Network

Data Link

Physical

Network

Data Link

Physical

Page 33: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Layering

• Akindofmodularity•  FuncConalityseparatedintolayers

•  Layernimplementshigher-levelfuncConalitybyinterfacingonlywithlayern-1

•  Hidescomplexityofsurroundinglayers:enablesgreaterdiversityandevoluConofmodules

Application

Transport

Network

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Network

Data Link

Physical

Network

Data Link

Physical

Page 34: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Layering

• Akindofmodularity•  FuncConalityseparatedintolayers

•  Layernimplementshigher-levelfuncConalitybyinterfacingonlywithlayern-1

•  Hidescomplexityofsurroundinglayers:enablesgreaterdiversityandevoluConofmodules

Application

Transport

Network

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Network

Data Link

Physical

Network

Data Link

Physical

Page 35: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Layering Application

Transport

Network

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Network

Data Link

Physical

Network

Data Link

PhysicalTransport

Network

Data Link

Physical

Transport

Network

Data Link

Physical

Tunnel

Page 36: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Common funcZonality & problems

Framing, errors, addressing

Reliability, flow control, ordering, congestion, ...

Application

Transport

Network

Data Link

Physical Encoding of bits Physics

Packets on a ‘wire’

Packets across networksPackets across domains

Process-level communication

Anything you want...

Independent parties, scale, routing

Life, the universe, and everything

Addressing, heterogeneity, routing

Page 37: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Grand Challenges

Page 38: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Grand Challenges

• Widelyrecognizedasamongthemostimportantunsolvedproblemsinafield

•  Pvs.NP•  naturallanguageunderstanding•  bug-freeprograms•  movingsocietytocarbon-neutralenergy•  prevenCngcancer•  ...

Page 39: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Grand Challenges in networking?

• GeqnganAinthisclass?

Page 40: Advanced Computer Networks cs538, Spring 2016 @ UIUC

GC’s in networking

•  “WhatI’mworkingon!”•  HighlevelobjecCves

•  Security&privacy•  Reliability•  Usability

•  DifferentthanPvs.NP:hardtoevendefine“security”;objecCvesinvolvetradeoffs

An Informal Survey

Page 41: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Unreliability: One Example

Page 42: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Internet RouZng

AS 7018AT&T

AS 36561YouTube

AS 698UIUC

eBGP

iBGP

AS11537Internet2

Page 43: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Border Gateway Protocol

BD

A

BD

C

routeselection

ACBD

CAD

Page 44: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Instability causes outages

BD X

C

•  Link state changes•  Router failures•  Config. changes•  ...

•  Loops•  Detection delay•  Black holes

AForwarding loop

FAIL

CACBDEventually, control message: Loop detected!

Page 45: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Instability causes outages

Internet

Destinationsite

Source sites

X

[F. Wang, Z. M. Mao, J. Wang, L. Gao, R. Bush SIGCOMM’06]

Page 46: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Instability causes outages

More outages Longer outages[F. Wang, Z. M. Mao, J. Wang, L. Gao, R. Bush SIGCOMM’06]

(...and higher latency, packet reordering,router CPU load during instability)

Failureinjected Outage length (sec)

Page 47: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Many sources of unreliability

• CongesCon•  noend-to-endbandwidthreservaConsintheInternet

• ConfiguraConorsopwarebugs•  Failuresordelays

•  innetwork,DNSservers,caches,applicaConservers,...

Page 48: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Insecurity: one example

Page 49: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Prefix hijacking

• AnyonecanadverCseroutesforanyIPprefix!• HowcanhijackergettheadverCsedroutestoactuallybeusedbyotherASes?

•  Announcemorespecific(longer)prefixthanrealowner•  Noweveryone’strafficis“blackholed”

• Canprotectagainstthis(SecureBGP),but...•  it’snotdeployedtoday•  andeventhen,cansCllcleverly(oraccidentally)aNracttrafficandeavesdrop

Page 50: Advanced Computer Networks cs538, Spring 2016 @ UIUC

From hijacking to MITM • August’08,KapelaandPilosov• ManintheMiddle(MITM)aNack

•  TraffictoadesCnaConredirected(notblackholed)throughanaNacker

•  ANackercanwatcheverythingyoudowithoutyounoCcing

• What’sthekeyproblemhere?

How can attacker forward traffic to destination,if attacker is pretending to be the destination?

Page 51: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Hijacking + eavesdropping •  AfindslegiCmatepath

ABDfor128.2.0.0/16

D

CD

BD

CD

ECD

ECD

FCD

D

C

BA

F

E

BGP Announcements

128.2.0.0/16

Selected routes &flow of data

Page 52: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Hijacking + eavesdropping •  AfindslegiCmatepath

ABDfor128.2.0.0/16•  Asendssemi-bogus

announcementofpathABDfor128.2.0.0/17

•  Result:• ASes(hereB)onrealpathkeepusingrealpathbecauseofloopeliminaCon

• AllotherASesuseroutethroughA(/17beats/16)

•  AforwardstraffictoB

D

BCEA

BD

BD

EABD

ABD

EABD

D

C

BA

F

E

BGP Announcements

Selected routes &flow of data

128.2.0.0/16

Page 53: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Grand Challenges in networking

•  “WhatI’mworkingon!”•  NebuloushighlevelobjecCves

•  Security&privacy•  Reliability•  Usability

•  WhydoesnetworkinglackacrispGrandChallenge?•  Infrastructureneedstosupporthighlydiverseanddynamicgoals,applicaCons,andenvironments

An Informal Survey

•  Complexity

Page 54: Advanced Computer Networks cs538, Spring 2016 @ UIUC

Grand Challenges in networking

Meta-challenge:

How do we make the Internetevolvable?