Challenge: Difficult to schedule Workloads workloads Solution: App-specific Modification Name Node 1 1 1 2 2 Data Node Data Node Data Node Data Node 2 Data Node Data Node Data Node Data Node 3 3 Data Node Data Node Data Node Data Node 3 Data Node Data Node Data Node Data Node Rack A Rack B Rack C Rack D
Challenge: Difficult to schedule Workloads workloads Solution: App-specific Modification Name Node 1 1 1 2 2 Data Node Data Node Data Node Data Node 2 Data Node Data Node Data Node Data Node 3 3 Data Node Data Node Data Node Data Node 3 Data Node Data Node Data Node Data Node Rack A Rack B Rack C Rack D
workloads Name Node 1 1 1 2 2 Data Node Data Node Data Node Data Node 2 Data Node Data Node Data Node Data Node 3 3 Data Node Data Node Data Node Data Node 3 Data Node Data Node Data Node Data Node Rack A Rack B Rack C Rack D A —> B A —> C A —> D B —> C B —> D B —> A RECONFIG RECONFIG RECONFIG Schedule: C —> D C —> A C —> B DELAY DELAY DELAY D —> A D —> B D —> C Config 1 Config 2 Config 3
Name Node 1 1 1 2 2 Data Node Data Node Data Node Data Node 2 Data Node Data Node Data Node Data Node 3 3 Data Node Data Node Data Node Data Node 3 Data Node Data Node Data Node Data Node Rack A Rack B Rack C Rack D A —> B A —> C A —> D B —> C B —> D B —> A RECONFIG RECONFIG RECONFIG Schedule: C —> D C —> A C —> B DELAY DELAY DELAY D —> A D —> B D —> C Config 1 Config 2 Config 3
Challenge: Workloads reHDFS Solution: App-specific 1 Modification Name Node 1 1 2 2 Data Node Data Node Data Node Data Node 3 2 Data Node Data Node Data Node Data Node 3 3 Data Node Data Node Data Node Data Node Data Node Data Node Data Node Data Node Rack A Rack B Rack C Rack D A —> C B —> D Schedule: C —> A D —> B Config 1
Challenge: reHDFS reduces Workloads tail latency Solution: App-specific Modification 9x decrease in write time 100 - CDF (%) 50 - HDFS reHDFS 0 - - - - - 500 0 1000 1500 HDFS write completion time (ms)
Control Coordination Scenario: Scenario: Scenario: Layering Admin Scalability Etalon VDX VDN App TE + ISP TE Co fm ow Reaction Transparency BGP + BGP Internet-scale Routing Priority Hierarchical Ranking Partitioning
Control Coordination Scenario: Scenario: Admin Scalability VDX VDN Etalon Co fm ow App TE + ISP TE Reaction Transparency BGP + BGP Internet-scale Routing Priority Hierarchical Scenario: Layering Ranking Partitioning
Control Coordination Scenario: Scenario: Admin Scalability VDX VDN Etalon Co fm ow App TE + ISP TE Reaction Transparency BGP + BGP Internet-scale Routing Priority Hierarchical Scenario: Layering Ranking Partitioning
Traditional Content Delivery Legend: Content Provider (CP) Content CDN Client
Changing Content Delivery Legend: Content Provider (CP) Content CDN CDN Client Client Client
Brokered Content Delivery Legend: Content Provider (CP) Content Control CDN CDN Broker Client Client Client
Brokered Content Delivery Legend: Content Provider (CP) Content Control CDN CDN Broker Easier for CPs to meet performance and cost goals Client Client Client
Brokered Content Delivery Legend: Content Provider (CP) Content Control Brokers select “best” CDN for clients to minimize cost and meet performance goals CDN CDN Broker Client Client Client B B B
Brokered Content Delivery Legend: How do brokers and CDNs Content Provider (CP) Content impact each other? Control (this talk) CDN CDN Broker Client Client Client B B B
Contributions • Identify challenges that brokers and CDNs create for each other by analyzing data from both • Examine the design space of CDN-broker interfaces • Evaluate the efficacy of different designs
CDN Cost and Pricing Legend: Content Provider (CP) Content CDN Internal Costs: Bandwidth (mostly) Client
CDN Cost and Pricing Legend: Content Provider (CP) Content Do bandwidth costs differ across geographic regions? CDN Internal Costs: Bandwidth (mostly) Client
CDN Cost / Byte Delivered 30x difference in cost per byte between the most expensive and least expensive countries
CDN Internal Cost CDN X CDN Y CDN X CDN X
CDN Internal Cost CDN X $ CDN Y $ CDN X $ CDN X $$$$
CDN External Price CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$ $$ Client CDN Y $ CDN X CDN X CDN Y $ Client Client Client CDN X $$$$
CDN External Price CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$ $$ Client CDN Y $ CDN X CDN X CDN Y $ Client Client Client CDN Y makes money, CDN X loses money CDN X $$$$
CDN External Price CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$ $$ Client CDN Y $ CDN X CDN X CDN Y $ Client Client Client Do we see traffic patterns like this at the country level? CDN X $$$$
Other 0 CDN C CDN B CDN A % Used in Country 100 75 50 25 Country (Anonymized) 1 9 10 11 12 13 14 15 8 7 6 5 4 3 2 Country Level Traffic
Other 0 CDN C CDN B CDN A % Used in Country 100 75 50 25 Country (Anonymized) 1 9 10 11 12 13 14 15 8 7 6 5 4 3 2 Country Level Traffic
1 6 100 75 50 25 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 5 CDN A 4 3 2 1 Other CDN C CDN B CDN A % Used in Country % Used in Country CDN B 75 Country (Anonymized) CDN C CDN B CDN A % Used in Country 100 75 50 25 0 9 10 11 12 13 14 15 CDN C 8 7 6 5 4 3 2 1 Other 100 50 2 50 2 1 Other CDN C CDN B CDN A % Used in Country 100 75 25 4 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 6 5 4 3 3 5 25 2 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 6 5 4 3 1 6 100 75 50 25 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 Other Country Level Traffic
100 6 100 75 50 25 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 5 CDN A 4 3 2 1 Other CDN C CDN B CDN A % Used in Country % Used in Country CDN B 75 Country (Anonymized) CDN C CDN B CDN A % Used in Country 100 75 50 25 0 9 10 11 12 13 14 15 CDN C 8 7 6 5 4 3 2 1 Other 1 50 Other 25 1 Other CDN C CDN B CDN A % Used in Country 100 75 50 0 3 Country (Anonymized) 9 10 11 12 13 14 15 8 7 6 5 4 3 2 2 4 25 2 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 6 5 4 3 1 5 100 75 50 25 0 Country (Anonymized) 9 10 11 12 13 14 15 8 7 6 Country 8 costly —> CDN B loses money! Country Level Traffic Country 7 cheap —> CDN A profits! Flat pricing makes CDN profits unpredictable with brokers
Contributions • Identify challenges that brokers and CDNs create for each other by analyzing data from both • Examine the design space of CDN-broker interfaces • Evaluate the efficacy of different designs
Brokered Delivery Today Legend: Content Provider (CP) Content Control CDN CDN Broker Client Client Client
Brokered Delivery Today Content Provider (CP) CDN CDN Broker Client Client Client
Brokered Delivery Today Content Provider (CP) CDN CDN Broker Client Client Client
Brokered Delivery Today Content Provider (CP) CDN CDN Broker Client Client Client
Brokered Delivery Today Content Provider (CP) CDN Broker CDN Client Client Client
Brokered Delivery Today Content Provider (CP) CDN Broker CDN Client Client Client
Brokered Delivery Today CDN Broker CDN Client Client Client
Brokered Delivery Today CDN Broker CDN Latency & loss Measurements ISP, device type, location, … Client Client Client
Brokered Delivery Today CDN Broker CDN Which cluster Which CDN to receive from to use Client Client Client
Brokered Delivery Today CDN Broker CDN CDN Client Client Client
VDX 3 2 1 CDN Broker CDN CDN Client Client Client
Example CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$ $$ Client CDN Y $ CDN X CDN X CDN Y $ Client Client Client CDN X $$$$
Example CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$$ $$ Client $$ CDN X CDN Y $ CDN X CDN Y CDN X $ Client Client Client CDN X $$$$
Example CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$$ $$ Client $$ CDN X CDN Y $ CDN X CDN Y CDN X $ Client Client Client CDN X $$$$
Example CDN Pricing CDN X Client Client $ Content Provider (CP) Client $$$$ $$ Client $$ CDN X CDN Y $ CDN X CDN Y CDN X $ Client Client Client CDN X can compete with other CDNs across regions CDN X $$$$
Evaluation • Simulator using data from a broker & CDN, as well as public data from 13 other CDNs • CDN data provides cluster locations, cluster-to- client performance, delivery costs, etc. • Broker data provides client locations, request distributions, etc.
Per-CDN Profits Profit Brokered Today VDX VDX 1 2 3 4 5 6 7 8 9 10 11 12 13 14 CDN
Per-CDN Profits Profit Brokered Today VDX VDX 1 2 3 4 5 6 7 8 9 10 11 12 13 14 CDN
Evaluation Takeaways • Today’s world (Brokered) is pretty broken (performance can be better; most CDNs lose money on brokered video delivery) • Marketplace (VDX) fixes this by exposing clusters and cost
Control Coordination Scenario: Scenario: Admin Scalability VDX VDN Etalon Co fm ow App TE + ISP TE Reaction Transparency BGP + BGP Internet-scale Routing Priority Hierarchical Scenario: Layering Ranking Partitioning
Control Coordination Scenario: Scenario: Admin Scalability VDX VDN Etalon Co fm ow App TE + ISP TE Reaction Transparency BGP + BGP Internet-scale Routing Priority Hierarchical Scenario: Layering Ranking Partitioning
Control Coordination Scenario: Scalability VDN VDX Etalon BGP + BGP Co fm ow App TE + ISP TE Reaction Priority Transparency Internet-scale Routing Ranking Hierarchical Scenario: Scenario: Admin Layering Partitioning Some Full Information Sharing
Control Coordination Scenario: Scalability VDN VDX Etalon BGP + BGP Co fm ow App TE + ISP TE Reaction Priority Transparency Internet-scale Routing Ranking Hierarchical Scenario: Scenario: Admin Layering Partitioning Some Full Information Sharing
Live Video is Becoming Wildly Popular • Commercial sports streams • User-generated streams
Live Video is Becoming Wildly Popular • Commercial sports streams • Single World Cup stream = 40% global Internet traffic • User-generated streams (e.g., Twitch) • Users watch 150b min of live video per month • Amazon buys Twitch for ~ $1Billion
CDN Live Video Delivery Background Legend Control ▶︎ ◀ Data Video Requests: A B Sources Video 1 Video 2 HTTP RESPONSE Responses: Video 1 Reflector Video 2 Clusters C D HTTP GET Edge Clusters E F G Video Requests
CDN Live Video Delivery Background Control ▶︎ ◀ Data Video A B Sources 120 100 100 3K 1K 2K Link Cost Reflector Clusters C D Link Capacity 25 15 DNS 200 20 15 300 750 2K Edge Clusters E F G 1 10 1 0 300 750 700 500 Clients H I J
CDN Live Video Delivery Background Control ▶︎ ◀ Data Video A B Sources Objective: Link Cost Reflector Reasonable service quality Clusters C D Link Capacity DNS & Edge Clusters E F G Minimal delivery cost Clients H I J
Problems with CDNs Today Service Quality Delivery Cost (per request) 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) CDN 2.0x 6000 5000 4000 OPTIMAL 3000 1.0x 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Simulation using Conviva traces, Simulation using Conviva traces, modeling user-generated content modeling large sports events
Problems with CDNs Today Service Quality Not Fine-Grained 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) 6000 Videos aggregated 5000 4000 into large groups 3000 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Delivery Cost Slow DNS Updates CDN OPTIMAL Can’t push updates 2.0x 1.0x DNS entries get cached QUANTITATIVE QUALITATIVE
Recommend
More recommend