Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content...

19
David Wetherall ([email protected]) Professor of Computer Science & Engineering Introduction to Computer Networks CDNs (Content Delivery Networks) (§7.5.3)

Transcript of Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content...

Page 1: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

DavidWetherall([email protected])ProfessorofComputerScience&Engineering

IntroductiontoComputerNetworks

CDNs(ContentDeliveryNetworks)(§7.5.3)

Page 2: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 2

Topic•  CDNs(ContentDeliveryNetworks)–  Efficientdistributionofpopularcontent;fasterdeliveryforclients

ContentReplica

Consumers

Page 3: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 3

Context•  Asthewebtookoffinthe90s,traffic

volumesgrewandgrew.This:1.  Concentratedloadonpopularservers2.  Ledtocongestednetworksandneed

toprovisionmorebandwidth3.  Gaveapooruserexperience

•  Idea:–  Placepopularcontentnearclients–  Helpswithallthreeissuesabove

Page 4: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 4

BeforeCDNs•  Sendingcontentfromthesourceto4userstakes4x3=12“networkhops”intheexample

Source

User

User

...

Page 5: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 5

AfterCDNs•  Sendingcontentviareplicastakesonly4+2=6“networkhops”

Source

User

User

...Replica

Page 6: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 6

AfterCDNs(2)•  Benefitsassumingpopularcontent:–  Reducesserver,networkload–  Improvesuserexperience(PLT)

Source

User

User

...Replica

Page 7: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 7

PopularityofContent•  Zipf’sLaw:fewpopularitems,manyunpopularones;bothmatter

Zipfpopularity(kthitemis1/k)

Rank Source:Wikipedia

GeorgeZipf(1902-1950)

Page 8: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

CSE461UniversityofWashington 8

Howtoplacecontentnearclients?•  Usebrowserandproxycaches–  Helps,butlimitedtooneclientorclientsinoneorganization

•  WanttoplacereplicasacrosstheInternetforusebyallnearbyclients–  DonebycleveruseofDNS

Page 9: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

ContentDeliveryNetwork

CSE461UniversityofWashington 9

Page 10: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

ContentDeliveryNetwork(2)•  DNSresolutionofsitegivesdifferentanswerstoclients–  Telleachclientthesiteisthenearestreplica(mapclientIP)

CSE461UniversityofWashington 10

Page 11: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

Consumersite

CSE461UniversityofWashington 11

BusinessModel•  ClevermodelpioneeredbyAkamai–  PlacingsitereplicaatanISPiswin-win–  ImprovessiteexperienceandreducesbandwidthusageofISP

ISP

User

User

...Replica

Page 12: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

Whatarecompaniesdoingwithnetworking?

Page 13: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

QUIC•  Why?

•  Whatdoesitdo?

Page 14: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

QUIC:Why?•  ChangingTCPisapainandunlikelytohappen

•  Ifyoucancontroltheclient/serverthenimplementyourownreliabilityoverUDP

Page 15: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

QUIC:What?•  GooglecontrolstheChromebrowser,Search/Youtubeserver

•  QUICisatransportlayerprotocolimplementedoverUDP

Page 16: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

QUIC:Whatdoesitdo?•  lower-latencyconnectionestablishment

•  improvedcongestioncontrolandbetterlossrecovery

Page 17: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

Zero-latencyconnectionestablishment

Page 18: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

Improvedcongestioncontrolandbetterlossrecovery

•  PacketsequencenumbersareneverreusedàNoconfusion

•  UseNACKtoexplicitlytellthesenderwhichpacketsareloss

•  Retransmitlostpacketsfasteratthesender

Page 19: Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content Delivery Networks) (§7.5.3) CSE 461 University of Washington 2 ... Context • As the

Improvedcongestioncontrolandbetterlossrecovery

•  QUICoutshinesTCPunderpoornetworkconditions,shavingafullsecondofftheGoogleSearchpageloadtimefortheslowest1%ofconnections

•  Usersreport30%fewerrebufferswhenwatchingvideosoverQUIC.

•  In2015,roughlyhalfofallrequestsfromChrometoGoogleserversareservedoverQUIC