cs 204: advanced computer networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines...

46
CS 204: Advanced Computer Networks Jiasi Chen Lectures: MWF 12:10-1pm Humanities and Social Sciences 1403 http://www.cs.ucr.edu/~jiasi/teaching/cs204_spring17/ 1

Upload: others

Post on 05-Sep-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

CS204:AdvancedComputerNetworks

Jiasi ChenLectures:MWF12:10-1pm

HumanitiesandSocialSciences1403

http://www.cs.ucr.edu/~jiasi/teaching/cs204_spring17/

1

Page 2: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

WhyNetworks?

2

Videostreaming

NumberofInternetusers• 97%ofAmericansbetween18-29• 40%oftheworldpopulationà

scopeformoreusers

http://www.pewinternet.org/data-trend/internet-use/latest-stats/https://en.wikipedia.org/wiki/List_of_countries_by_number_of_internet_users

Supportstheapplicationsthatweusetoday…

Socialmedia

Page 3: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

WhyNetworks?

3

Butalsoasourceofconflict.

NetworkneutralityCybersecurity

http://www.huffingtonpost.com/eric-dezenhall/a-look-back-at-the-target_b_7000816.htmlhttp://www.nytimes.com/2015/11/12/technology/t-mobile-video-plan-could-test-fccs-new-net-neutrality-rules.html

Page 4: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Whatisnetworking?

• Bunchofacronyms?

4

TCP

OSPF

IP

BGP

DNS

ABR

UMTS

DDoS

HTTP

REST

SPDY

MCS

MACRED

NAT

VLAN

DHCP

Page 5: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Whatisnetworking?

• Bunchofheaders?

5Source:https://nmap.org/book/tcpip-ref.html

Page 6: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Networkingis…

Thesearchforgeneralprinciplestoguidecommunication

6

Page 7: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

SomeResearchTopicsinNetworking

• Layering• Whatfunctionalitytoplacewithineachlayer?• Howmanylayersshouldtherebe?

• Protocols• Howtocommunicatewithineachlayer,andtalktootherlayers?

• Resourceallocation• Howtosharelimitedresourcesbetweencompetingusers?

• Wireless• Howtoprovideaone-to-onecommunicationinaninherentlybroadcastenvironment

7

Application(e.g.videostreaming)

Transport(e.g.TCP,UDP)

Network(e.g.routing)

Link(e.g.scheduling)

Physical(e.g.OFDM)

Page 8: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

WhatYouWillLearninthisCourse

• Knowledge• 1/3:Linklayerthroughapplicationlayer• 2/3:currenttopicsinnetworking(wireless,multimedia,datacenters,etc.)

• Skills• Howtoread• Howtopresent• Howtodiscuss• Howtousecommonnetworkingtools

8

Page 9: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

CourseStructure

• Paperreading• 2-3papersperweek

• Classroomtime• Lecture• Paperdiscussion

• Programmingassignments• Multipath-TCP• Mininet +OpenFlow

• Project• Proposal,presentation,andfinalreport• Canworkindividuallyinoringroups• Canbeanextensionofexistingworkorresearch(subjecttoapproval)

9

Page 10: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

CalendarWeek Topic Assignment1 Introduction +MAClayer2 Networklayer3 Transport layer MPTCPassignment4 Applicationlayer5 Contentdistribution Projectproposal6 Datacenters7 Wireless8 Security SDNassignment9 FutureInternet(SDN,IoT)10 Project presentations

Finals week Finalreportdue

10

Page 11: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Grading

• Papersummaries(20%)• Writeaone-paragraphreviewforeachpaper

• Classparticipation(20%)• Speakupduringdiscussion!

• Assignments(20%)• 2programmingassignments

• Project(40%)

11

Page 12: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Review1.1whatis theInternet?1.2 networkedge

§ end systems, access networks, links1.3networkcore

§ packet switching, circuit switching, network structure1.4 protocollayers,servicemodels

AdaptedfromComputerNetworking:ATop-DownApproach,Kurose&Ross

Page 13: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

What’stheInternet:“nutsandbolts” view

• millionsofconnectedcomputingdevices:

• hosts= endsystems• runningnetworkapps

vcommunication links§ fiber, copper, radio,

satellite§ transmission rate:

bandwidth

vPacket switches: forward packets (chunks of data)§ routers and switches

wiredlinks

wirelesslinks

router

mobile network

global ISP

regional ISP

home network

institutionalnetwork

smartphone

PC

server

wirelesslaptop

Page 14: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

• Internet:“networkofnetworks”• InterconnectedISPs

• protocols controlsending,receivingofmsgs

• e.g.,TCP,IP,HTTP,Skype,802.11

• Internetstandards• IETF:InternetEngineeringTaskForce

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

mobile network

global ISP

regional ISP

home network

institutionalnetwork

Page 15: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

What’stheInternet:aserviceview

• Infrastructurethatprovidesservicestoapplications:

• Web,VoIP,email,games,e-commerce,socialnets,…

• providesprogramminginterfacetoapps

• hooksthatallowsendingandreceivingappprogramsto“connect” toInternet

• providesserviceoptions,analogoustopostalservice

mobile network

global ISP

regional ISP

home network

institutionalnetwork

Page 16: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

What’saprotocol?

humanprotocols:• “what’sthetime?”• “Ihaveaquestion”• introductions

…specificmsgssent…specificactionstakenwhenmsgsreceived,orotherevents

networkprotocols:• machinesratherthanhumans

• allcommunicationactivityinInternetgovernedbyprotocols

protocols define format, orderof msgs sent and receivedamong network entities,

and actions taken on msg transmission, receipt

Page 17: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

ahumanprotocolandacomputernetworkprotocol:

Hi

Hi

Got thetime?2:00

TCP connectionresponse

Get http://www.awl.com/kurose-ross

<file>time

TCP connectionrequest

What’s a protocol?

Page 18: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Roadmap1.1whatis theInternet?1.2networkedge

§ end systems, access networks, links1.3networkcore

§ packet switching, circuit switching, network structure1.4 protocollayers,servicemodels

Page 19: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Acloserlookatnetworkstructure:

• networkedge:• hosts:clientsandservers• serversoftenindatacenters

v access networks, physical media: wired, wireless communication links

v network core: § interconnected routers§network of networks

mobile network

global ISP

regional ISP

home network

institutionalnetwork

Page 20: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Accessnetworksandphysicalmedia

Q:Howtoconnectendsystemstoedgerouter?

• residentialaccessnets• institutionalaccessnetworks(school,company)

• mobileaccessnetworks

keepinmind:• bandwidth(bitspersecond)ofaccessnetwork?

• sharedordedicated?

Page 21: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Access net: home network

to/from headend or central office

cable or DSL modem

router, firewall, NAT

wired Ethernet (100 Mbps)

wireless access point (54 Mbps)

wirelessdevices

often combined in single box

Page 22: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Enterpriseaccessnetworks(Ethernet)

• typicallyusedincompanies,universities,etcv 10Mbps,100Mbps,1Gbps,10Gbpstransmissionratesv today,endsystemstypicallyconnectintoEthernetswitch

Ethernet switch

institutional mail,web servers

institutional router

institutional link to ISP (Internet)

Page 23: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Wirelessaccessnetworks

• sharedwireless accessnetworkconnectsendsystemtorouter• viabasestationaka“accesspoint”

wireless LANs:§ within building (100 ft)§ 802.11b/g (WiFi): 11, 54 Mbps

transmission rate

wide-area wireless access§ provided by telco (cellular)

operator, 10’s km§ between 1 and 10 Mbps § 3G, 4G: LTE

to Internet

to Internet

Page 24: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Host:sendspackets ofdata

hostsendingfunction:vtakesapplicationmessagevbreaksintosmallerchunks,knownaspackets,oflengthLbits

vtransmitspacketintoaccessnetworkattransmissionrateR§ linktransmissionrate,akalinkcapacity,akalinkbandwidth

R: link transmission ratehost

12

two packets, L bits each

packettransmission

delay

time needed totransmit L-bit

packet into linkL (bits)R (bits/sec)= =

Page 25: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Review1.1whatis theInternet?1.2 networkedge

§ end systems, access networks, links

1.3networkcore§ packet switching, circuit switching, network structure

1.4 protocollayers,servicemodels

Page 26: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

• meshofinterconnectedrouters

• packet-switching:hostsbreakapplication-layermessagesintopackets

• forwardpackets fromoneroutertothenext,acrosslinksonpathfromsourcetodestination

• eachpackettransmittedatfulllinkcapacity

Thenetworkcore

Page 27: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Packet-switching:store-and-forward

• takesL/R secondstotransmit(pushout)L-bitpacketintolinkatR bps

• storeandforward: entirepacketmustarriveatrouterbeforeitcanbetransmittedonnextlink

one-hopnumericalexample:

§ L =7.5Mbits§ R =1.5Mbps§ one-hoptransmissiondelay=5sec

sourceR bps destination

123

L bitsperpacket

R bps

v end-end delay = 2L/R (assuming zero propagation delay)

Page 28: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

PacketSwitching:queueingdelay,loss

A

B

CR = 100 Mb/s

R = 1.5 Mb/s D

Equeue of packetswaiting for output link

queuing and loss: v If arrival rate (in bits) to link exceeds transmission rate of

link for a period of time:§ packets will queue, wait to be transmitted on link § packets can be dropped (lost) if memory (buffer) fills up

Page 29: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Twokeynetwork-corefunctionsforwarding:movepacketsfromrouter’sinputtoappropriaterouteroutput

routing: determines source-destination route taken by packets

§ routing algorithms

routing algorithm

local forwarding tableheader value output link

0100010101111001

3221

123

dest address in arrivingpacket’s header

Page 30: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

Question:givenmillions ofaccessISPs,howtoconnectthemtogether?

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnetaccess

net

accessnet

Page 31: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

Option:connecteachaccessISPtoeveryotheraccessISP?

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnetaccess

net

accessnet

connecting each access ISP to each other directly doesn’t

scale: O(N2) connections.

Page 32: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnetaccess

net

accessnet

Option: connect each access ISP to a global transit ISP? Customerand provider ISPs have economic agreement.

globalISP

Page 33: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnetaccess

net

accessnet

But if one global ISP is viable business, there will be competitors ….

ISP B

ISP A

ISP C

Page 34: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnetaccess

net

accessnet

But if one global ISP is viable business, there will be competitors …. which must be interconnected

ISP B

ISP A

ISP C

IXP

IXP

peering link

Internet exchange point

Page 35: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnet

accessnetaccess

net

accessnet

… and regional networks may arise to connect access nets to ISPS

ISP B

ISP A

ISP C

IXP

IXP

regional net

Page 36: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetstructure:networkofnetworks

• atcenter:small#ofwell-connectedlargenetworks• “tier-1” commercialISPs (e.g.,Level3,Sprint,AT&T,NTT),national&internationalcoverage

• contentprovidernetwork(e.g,Google):privatenetworkthatconnectsitdatacenterstoInternet,oftenbypassingtier-1,regionalISPs

accessISP

accessISP

accessISP

accessISP

accessISP

accessISP

accessISP

accessISP

Regional ISP Regional ISP

IXP IXP

Tier 1 ISP Tier 1 ISP Google

IXP

Page 37: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Tier-1ISP:e.g.,Sprint

to/from customers

peering

to/from backbone

………

POP: point-of-presence

Page 38: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Roadmap1.1whatis theInternet?1.2 networkedge

§ end systems, access networks, links1.3networkcore

§ packet switching, circuit switching, network structure1.4protocollayers,servicemodels

Page 39: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Protocol“layers”Networksarecomplex,withmany“pieces”:

• hosts• routers• linksofvariousmedia

• applications• protocols• hardware,software

Question:isthereanyhopeoforganizing structureof

network?

….oratleastourdiscussionofnetworks?

Page 40: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Internetprotocolstack• application: supportingnetworkapplications

• FTP,SMTP,HTTP• transport: process-processdatatransfer

• TCP,UDP• network: routingofdatagramsfromsourcetodestination

• IP,routingprotocols• link: datatransferbetweenneighboringnetworkelements

• Ethernet,802.111(WiFi),PPP• physical: bits“onthewire”

application

transport

network

link

physical

Page 41: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Whylayering?dealingwithcomplexsystems:• explicitstructureallowsidentification,relationshipofcomplexsystem’spieces

• layeredreferencemodel fordiscussion• modularizationeasesmaintenance,updatingofsystem

• changeofimplementationoflayer’sservicetransparenttorestofsystem

• e.g.,changeinletterlanguagedoesn’taffectrestofsystem

• layeringconsideredharmful?

Page 42: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Sender writes letter

Sender drops off letter at post office

Post office X sends mail to city Y

Sender city X Recipient city Yintermediate air-trafficcontrol centers

airplane routing

Recipient reads letter

Mailman delivers from post office to sender’s home

Post office Y receives mail from city X

Layeringofpostofficefunctionality

layers: eachlayerimplementsaservice• viaitsowninternal-layeractions• relyingonservicesprovidedbylayerbelow

Page 43: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Sender writes letter

Sender drops off letter at post office

Post office X sends mail to city Y

Sender city X Recipient city Yintermediate air-trafficcontrol centers

airplane routing

Recipient reads letter

Mailman delivers from post office to sender’s home

Post office Y receives mail from city X

Layeringofpostofficefunctionality

layers: eachlayerimplementsaservice• viaitsowninternal-layeractions• relyingonservicesprovidedbylayerbelow

PhysicalLink

Network

PhysicalLinkNetwork

Transport:DeliveryviaUPS(signaturerequired)orUSPS(nosignaturerequired)Application:thecontentsoftheletter,e.g.photo,video,novel

Page 44: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

sourceapplicationtransportnetwork

linkphysical

HtHn M

segment Ht

datagram

destinationapplicationtransportnetwork

linkphysical

HtHnHl M

HtHn M

Ht M

M

networklink

physical

linkphysical

HtHnHl M

HtHn M

HtHn M

HtHnHl M

router

switch

Encapsulationmessage M

Ht M

Hn

frame

Page 45: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

Roadmap1.1whatis theInternet?1.2 networkedge

§ end systems, access networks, links1.3networkcore

§ packet switching, circuit switching, network structure1.4 protocollayers,servicemodels

Page 46: CS 204: Advanced Computer Networksjiasi/teaching/cs204_spring17/slides/lec...routing:determines source-destination route taken by packets routing algorithms routing algorithm local

ForNextTime

• Reading• TheDesignPhilosophyoftheDARPAInternetProtocols• HowtoReadaPaper

46