Using ¡Video-‑Based ¡Measurements ¡ to ¡Generate ¡a ¡ ¡ Real-‑Time ¡Network ¡Traffic ¡Map ¡ Yi ¡Sun, ¡Junchen ¡Jiang, ¡Vyas ¡Sekar, ¡ ¡ Hui ¡Zhang, ¡Fuyuan ¡Lin, ¡Nanshu ¡Wang ¡
Real ¡world ¡has ¡Google ¡Maps, ¡ ¡ why ¡don’t ¡we! ¡ Low ¡ Med High 2 ¡
Not ¡a ¡new ¡idea, ¡but ¡has ¡been ¡elusive ¡ • Coverage ¡ – Need ¡millions ¡of ¡vantage ¡points ¡ • Overhead ¡ ¡ – B/w ¡ ¡measurement ¡incurs ¡non-‑trivial ¡cost ¡ ¡ • Real-‑Qme ¡views ¡ – ConQnuous ¡updates ¡ 3 ¡
Opportunity ¡of ¡Internet ¡Video! ¡ • Coverage ¡ ✓ ¡ – Need ¡millions ¡of ¡vantage ¡points ¡ ¡ à ¡Video ¡traffic ¡30-‑50%, ¡30M ¡NeXlix ¡streaming ¡subscribers ¡ ¡ • Overhead ¡ ¡ ✓ ¡ – B/w ¡ ¡measurement ¡incurs ¡non-‑trivial ¡cost ¡ à ¡Passive ¡throughput ¡measurements ¡ ¡ • Real-‑Qme ¡views ¡ ✓ ¡ – ConQnuous ¡updates ¡ à ¡Akamai, ¡NeXlix, ¡Conviva, ¡PPLive ¡etc ¡already ¡do ¡this ¡ 4 ¡
Internet ¡Traffic ¡Map ¡Service Video ¡player ¡ Topology ¡& ¡ ITM ¡Service ¡ ¡measurements RouQng ¡Info E.g., ¡NeXlix, ¡Akamai, ¡Conviva ¡ Low ¡ Med High Inference ¡ Algorithms ¡ Video ¡ Query ¡API ¡ Servers ¡ CDN,ISP, ¡P2P, ¡ ¡ 3 rd ¡party ¡opQmizers ¡ Video ¡Player ¡Clients ¡ 5 ¡
Concrete ¡Problem ¡DefiniQon ¡ For ¡each ¡epoch, ¡src, ¡dst: ¡ For ¡each ¡epoch, ¡src, ¡dst: ¡ Throughput ¡ Path ¡(PoP-‑level) ¡ Bytes ¡ e.g., ¡iPlane ¡ Video ¡player ¡ Topology ¡& ¡ ¡measurements RouQng ¡Info P1: ¡InferCapacity ¡ Link ¡ à ¡Capacity ¡ Inference ¡ Algorithms ¡ P2: ¡InferUQlizaQon ¡ Link,Epoch ¡ à ¡UQlizaQon ¡ 6 ¡
Concrete ¡Problem ¡DefiniQon ¡ For ¡each ¡epoch, ¡src, ¡dst: ¡ For ¡each ¡epoch, ¡src, ¡dst: ¡ Throughput ¡ Path ¡(PoP-‑level) ¡ Bytes ¡ e.g., ¡iPlane ¡ Video ¡player ¡ Topology ¡& ¡ ¡measurements RouQng ¡Info P1: ¡InferCapacity ¡ Link ¡ à à ¡Capacity ¡ Inference ¡ Algorithms ¡ P2: ¡InferUQlizaQon ¡ Link,Epoch ¡ à ¡UQlizaQon ¡ 7 ¡
P1: ¡InferCapacity ¡ Strawman ¡1: ¡Max ¡EsQmator ¡ Link ¡ à ¡Capacity ¡ T i,e ¡ ¡= ¡throughput ¡measurement ¡in ¡epoch ¡e ¡ N1 ¡ N6 ¡ T 1,e ¡ Cap N4-‑N5 ¡= ¡ UnderesQmate? ¡ ¡max {i,e} ¡T i,e ¡ ¡ N5 ¡ N7 ¡ N2 ¡ N4 ¡ T 2,e ¡ Background? ¡ Discrete ¡values? ¡ N3 ¡ N8 ¡ T 3,e ¡ Just ¡use ¡max ¡observed ¡throughput? ¡ ¡ 8 ¡
P1: ¡InferCapacity ¡ Strawman ¡2: ¡Tomography ¡ Link ¡ à ¡Capacity ¡ UnderesQmate? ¡ Background? ¡ Discrete ¡values? ¡ 1. Cap Ni-‑Nj ¡ ¡ from ¡discrete ¡values ¡ Constrained ¡OpQmizaQon ¡ 2. Hidden ¡background ¡values ¡ ¡ Output ¡= ¡Cap Ni-‑Nj ¡ ¡ B N{1,2,3}-‑N{6,7,8} ¡ Idea: ¡ ¡Max e ¡{B+T,Bytes/Time} ¡ 3. Cost-‑awareness ¡ Underconstrained! ¡ N1 ¡ N6 ¡ T 1,e ¡ N5 ¡ N7 ¡ N2 ¡ N4 ¡ T 2,e ¡ N3 ¡ N8 ¡ T 3.e ¡ 9 ¡
P1: ¡InferCapacity ¡ Idea: ¡Add ¡“Side” ¡informaQon ¡ Link ¡ à ¡Capacity ¡ 1. “Gravity” ¡assumpQon ¡ 2. B/T ¡raQo ¡ 3. Expected ¡overprovisioning ¡ 1. Cap Ni-‑Nj ¡ ¡ from ¡discrete ¡values ¡ Constrained ¡OpQmizaQon ¡ 2. Hidden ¡background ¡values ¡ ¡ Output ¡= ¡Cap Ni-‑Nj ¡ ¡ B N{1,2,3}-‑N{6,7,8} ¡ Idea: ¡Max_e ¡{B+T,Bytes/Time} ¡ 3. Cost-‑awareness ¡ Underconstrained! ¡ 10 ¡
Concrete ¡Problem ¡DefiniQon ¡ For ¡each ¡epoch, ¡src, ¡dst: ¡ For ¡each ¡epoch, ¡src, ¡dst: ¡ Throughput ¡ Path ¡(PoP-‑level) ¡ Bytes ¡ e.g., ¡iPlane ¡ Video ¡player ¡ Topology ¡& ¡ ¡measurements RouQng ¡Info P1: ¡InferCapacity ¡ Link ¡ à ¡Capacity ¡ Traffic ¡Map ¡ Service ¡ P2: ¡InferU5liza5on ¡ Link,Epoch ¡ à à ¡U5liza5on ¡ 11
P2: ¡InferUQlizaQon ¡ Link,Epoch ¡ à ¡UQlizaQon ¡ Strawman: ¡Tomography+? ¡ 1. “Gravity” ¡assumpQon ¡ “Aggregate” ¡effects ¡ 2. B/T ¡raQo ¡ 3. Expected ¡overprovisioning ¡ Constrained ¡OpQmizaQon ¡ Don’t ¡have ¡history ¡ Output ¡= ¡B Ni-‑Nj ¡ ¡ 12 ¡
High-‑level ¡Idea: ¡ P2: ¡InferUQlizaQon ¡ Link,Epoch ¡ à ¡UQlizaQon ¡ Capacity ¡+ ¡Max-‑min ¡fairness ¡ Since ¡we ¡know ¡capacity ¡from ¡solving ¡P1, ¡ ¡ What ¡B ¡values ¡“explain” ¡observed ¡throughputs? ¡ N1 ¡ N6 ¡ T 1,cur ¡ B3 ¡ B1 ¡ N5 ¡ N7 ¡ B2 ¡ N2 ¡ N4 ¡ B6 ¡ B4 ¡ T 2,cur ¡ B7 ¡ B5 ¡ N3 ¡ N8 ¡ T 3,cur ¡ Brute-‑force ¡search ¡to ¡find ¡a ¡max-‑likelihood ¡esQmator ¡ s.t. ¡predicted ¡throughputs ¡“match” ¡the ¡observed ¡ 13 ¡
EvaluaQon ¡Setup ¡ • Custom ¡flow-‑level ¡simulator ¡ • SensiQvity ¡ ¡ – number ¡of ¡epochs ¡ – Background ¡vs. ¡measurement ¡traffic ¡raQo ¡ – Accuracy ¡of ¡capacity ¡inference ¡ 14 ¡
Accuracy ¡of ¡Capacity ¡Inference ¡ with perfect inference 5 Epochs Fraction of links 10 Epochs 1 20 Epochs 0.8 0.6 0.4 0.2 0.1 0.2 0.3 0.4 0.5 Measurement-to-Background Ratio 15 ¡
Accuracy ¡of ¡Background ¡Inference ¡ Using InferCapacity Using GroundTruth 1 Accuracy 0.8 0.6 0.4 0.2 0.1 0.2 0.3 0.4 0.5 Measurement-to-background Ratio 16 ¡
LimitaQons ¡and ¡Open ¡Issues ¡ • How ¡much ¡side ¡informaQon ¡do ¡we ¡need? ¡ • Other ¡potenQal ¡“carrier ¡signals”? ¡ • SensiQvity ¡to ¡esQmaQon ¡parameters ¡ ¡ • Scalability ¡of ¡the ¡algorithms ¡ • Measurement ¡bias? ¡ • … ¡ 17 ¡
Conclusions ¡ ¡ • A ¡real-‑Qme ¡ Internet ¡Traffic ¡Map ¡ would ¡be ¡cool ¡ – Many ¡apps ¡could ¡benefit ¡ • Has ¡always ¡been ¡out ¡of ¡our ¡reach ¡ – Coverage, ¡Overhead ¡+ ¡Real-‑Qme ¡view ¡ • Video ¡offers ¡a ¡unique ¡opportunity ¡ – Capacity ¡and ¡Background ¡Inference ¡via ¡Video ¡ – IniQal ¡results ¡seem ¡promising ¡ • Many ¡limitaQons, ¡open ¡quesQons, ¡and ¡future ¡work! ¡ 18 ¡
Recommend
More recommend