Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content...
Transcript of Introduction to Computer NetworksProfessor of Computer Science & Engineering ... CDNs (Content...
DavidWetherall([email protected])ProfessorofComputerScience&Engineering
IntroductiontoComputerNetworks
CDNs(ContentDeliveryNetworks)(§7.5.3)
CSE461UniversityofWashington 2
Topic• CDNs(ContentDeliveryNetworks)– Efficientdistributionofpopularcontent;fasterdeliveryforclients
ContentReplica
Consumers
CSE461UniversityofWashington 3
Context• Asthewebtookoffinthe90s,traffic
volumesgrewandgrew.This:1. Concentratedloadonpopularservers2. Ledtocongestednetworksandneed
toprovisionmorebandwidth3. Gaveapooruserexperience
• Idea:– Placepopularcontentnearclients– Helpswithallthreeissuesabove
CSE461UniversityofWashington 4
BeforeCDNs• Sendingcontentfromthesourceto4userstakes4x3=12“networkhops”intheexample
Source
User
User
...
CSE461UniversityofWashington 5
AfterCDNs• Sendingcontentviareplicastakesonly4+2=6“networkhops”
Source
User
User
...Replica
CSE461UniversityofWashington 6
AfterCDNs(2)• Benefitsassumingpopularcontent:– Reducesserver,networkload– Improvesuserexperience(PLT)
Source
User
User
...Replica
CSE461UniversityofWashington 7
PopularityofContent• Zipf’sLaw:fewpopularitems,manyunpopularones;bothmatter
Zipfpopularity(kthitemis1/k)
Rank Source:Wikipedia
GeorgeZipf(1902-1950)
CSE461UniversityofWashington 8
Howtoplacecontentnearclients?• Usebrowserandproxycaches– Helps,butlimitedtooneclientorclientsinoneorganization
• WanttoplacereplicasacrosstheInternetforusebyallnearbyclients– DonebycleveruseofDNS
ContentDeliveryNetwork
CSE461UniversityofWashington 9
ContentDeliveryNetwork(2)• DNSresolutionofsitegivesdifferentanswerstoclients– Telleachclientthesiteisthenearestreplica(mapclientIP)
CSE461UniversityofWashington 10
Consumersite
CSE461UniversityofWashington 11
BusinessModel• ClevermodelpioneeredbyAkamai– PlacingsitereplicaatanISPiswin-win– ImprovessiteexperienceandreducesbandwidthusageofISP
ISP
User
User
...Replica
Whatarecompaniesdoingwithnetworking?
QUIC• Why?
• Whatdoesitdo?
QUIC:Why?• ChangingTCPisapainandunlikelytohappen
• Ifyoucancontroltheclient/serverthenimplementyourownreliabilityoverUDP
QUIC:What?• GooglecontrolstheChromebrowser,Search/Youtubeserver
• QUICisatransportlayerprotocolimplementedoverUDP
QUIC:Whatdoesitdo?• lower-latencyconnectionestablishment
• improvedcongestioncontrolandbetterlossrecovery
Zero-latencyconnectionestablishment
Improvedcongestioncontrolandbetterlossrecovery
• PacketsequencenumbersareneverreusedàNoconfusion
• UseNACKtoexplicitlytellthesenderwhichpacketsareloss
• Retransmitlostpacketsfasteratthesender
Improvedcongestioncontrolandbetterlossrecovery
• QUICoutshinesTCPunderpoornetworkconditions,shavingafullsecondofftheGoogleSearchpageloadtimefortheslowest1%ofconnections
• Usersreport30%fewerrebufferswhenwatchingvideosoverQUIC.
• In2015,roughlyhalfofallrequestsfromChrometoGoogleserversareservedoverQUIC