principles for measurability
play

Principles for Measurability From: ACM SIGCOMM in Protocol Design - PowerPoint PPT Presentation

Principles for Measurability From: ACM SIGCOMM in Protocol Design CCR Vol. 47 Issue 2 Mark Allman (ICSI) August 24, 2017 Robert Beverly (NPS) Brian Trammell (ETHZ) 1 Principles for Measurability From: ACM SIGCOMM in Protocol Design CCR


  1. Principles for Measurability From: ACM SIGCOMM in Protocol Design CCR Vol. 47 Issue 2 Mark Allman (ICSI) August 24, 2017 Robert Beverly (NPS) Brian Trammell (ETHZ) 1

  2. Principles for Measurability From: ACM SIGCOMM in Protocol Design CCR Vol. 47 Issue 2 Mark Allman (ICSI) August 24, 2017 Robert Beverly (NPS) Brian Trammell (ETHZ) 1

  3. Network Measurement ❖ Fundamental to network operation, application performance, and policy (not just research) ❖ But, today: ❖ Minimal support from stack ❖ Measurements rely on brittle hacks, unintended features, and inferences 2

  4. Result: Important questions are hard ❖ E.g.: ❖ What’s the best path to route traffic? ❖ What is the capacity or utilization of a link? ❖ How do networks interconnect? ❖ What AS operates a given router? 3

  5. Even simple inferences difficult! ❖ What’s the delay between two hosts 4

  6. Even simple inferences difficult! ❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs. host delay, asymmetry) 4

  7. Even simple inferences difficult! ❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs. host delay, asymmetry) ❖ What are the endpoints in a communication? 4

  8. Even simple inferences difficult! ❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs. host delay, asymmetry) ❖ What are the endpoints in a communication? ❖ (NATs, CGNs, aliases, IPv6) 4

  9. Even simple inferences difficult! ❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs. host delay, asymmetry) ❖ What are the endpoints in a communication? ❖ (NATs, CGNs, aliases, IPv6) ❖ How did packets arrive at a remote destination? 4

  10. Even simple inferences difficult! ❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs. host delay, asymmetry) ❖ What are the endpoints in a communication? ❖ (NATs, CGNs, aliases, IPv6) ❖ How did packets arrive at a remote destination? ❖ (order? modified? mangled? path? queued?) 4

  11. Reconsidering Measurability What if we re-think the stack with measurability as a first-class component? 5

  12. Principles for Measurability P1. Explicit P2. In-band P3. Consumer bears cost P4. Provider retains control P5. Visible P6. Cooperative 6

  13. Principles for Measurability Remove ambiguity P1. Explicit Transparency encourages adoption P2. In-band P3. Consumer bears cost P4. Provider retains control P5. Visible P6. Cooperative 6

  14. Principles for Measurability P1. Explicit Faithfully capture measurement P2. In-band objective P3. Consumer bears cost P4. Provider retains control P5. Visible P6. Cooperative 6

  15. Principles for Measurability P1. Explicit P2. In-band Measurement burden on P3. Consumer bears cost consumer, not producer P4. Provider retains control P5. Visible P6. Cooperative 6

  16. Principles for Measurability P1. Explicit P2. In-band P3. Consumer bears cost Measurement producers can make P4. Provider retains control conscious decisions what to expose P5. Visible P6. Cooperative 6

  17. Principles for Measurability P1. Explicit P2. In-band P3. Consumer bears cost P4. Provider retains control Measurements require visibility into forward/ P5. Visible reverse paths and packet modification P6. Cooperative 6

  18. Principles for Measurability P1. Explicit P2. In-band P3. Consumer bears cost P4. Provider retains control P5. Visible Measurements must cooperate with P6. Cooperative routers, middleboxes, and infrastructure 6

  19. Primitives Compatible Measurability Measurement Candidate Principles Capability Primitives 7

  20. Primitives Compatible Measurability Measurement Candidate Principles Capability Primitives Imagine packets carry measurement meta-data. What should that meta-data include? 7

  21. Candidate Primitive: HostID ❖ Host ID: ❖ Chosen randomly, included in packets ❖ Removes IP address = host assumption ❖ Remove NAT, load-balancer, IPv6, alias ambiguities that plague today’s measurements 8

  22. Candidate Primitive: HostID ❖ Host ID: ❖ Chosen randomly, included in packets ❖ Removes IP address = host assumption ❖ Remove NAT, load-balancer, IPv6, alias ambiguities that plague today’s measurements How to apply principles to make HostID viable? 8

  23. Candidate Primitive: HostID ❖ Host ID: ❖ ID is ephemeral ❖ Small ID space + change ID to prevent tracking ❖ Large population requires observation over time, probabilistic inferences 9

  24. Candidate Primitive: HostID P1. Explicit ❖ Host ID: ❖ ID is ephemeral ❖ Small ID space + change ID to prevent tracking ❖ Large population requires observation over time, probabilistic inferences 9

  25. Candidate Primitive: HostID P1. Explicit ❖ Host ID: P4. Provider retains control ❖ ID is ephemeral ❖ Small ID space + change ID to prevent tracking ❖ Large population requires observation over time, probabilistic inferences 9

  26. Candidate Primitive: HostID P1. Explicit ❖ Host ID: P4. Provider retains control ❖ ID is ephemeral ❖ Small ID space + change ID to prevent tracking ❖ Large population requires observation over time, probabilistic inferences P3. Consumer bears cost 9

  27. HostID: Active Inference 4 4 4 4 4 4 6 6 6 6 6 6 10

  28. HostID: Active Inference ID: 0xabcd ID: 0xbeef ID: 0xabcd 4 4 4 4 4 4 6 6 6 6 6 6 10

  29. HostID: Active Inference ID: 0xabcd ID: 0xbeef ID: 0xabcd 4 4 4 4 4 4 6 6 6 6 6 6 Router 1 Aliases: Router 2 Aliases: 10

  30. HostID: Active Inference ID: 0xabcd ID: 0xbeef ID: 0xabcd 4 4 4 4 4 4 6 6 6 6 6 6 Router 1 Aliases: Router 2 Aliases: 10

  31. HostID: Active Inference ID: 0xabcd ID: 0xbeef ID: 0xabcd 4 4 4 4 4 4 6 6 6 6 6 6 4 6 4 6 4 6 4 6 Router 1 Aliases: 4 6 4 6 Router 2 Aliases: 10

  32. HostID ID: 0xabcd ID: 0xbeef ID: 0xcafe 4 4 4 4 4 4 6 6 6 6 6 6 4 6 4 6 Router 1 Aliases: 4 6 4 6 Router 2 Aliases: Router 3 Aliases: 4 6 4 6 11

  33. HostID: Passive Inference What are the end points in a communication? NAT/CGNs A A A A 12

  34. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R 13

  35. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R (45, 5800 )(1376, 5805 ) 13

  36. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R (45, 5800 )(1376, 5805 ) Sender knows ACKs in order 13

  37. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back Sender knows second segment lost ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R (45, 5800 )(1376, 5805 ) Sender knows ACKs in order 13

  38. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back Sender knows second segment lost ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R (45, 5800 )(1376, 5805 ) Sender knows 1st and 3rd segments arrived out of order Sender knows ACKs in order 13

  39. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R (45,5800)(1376,5805) 14

  40. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): P5: Visibility ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) S R (45,5800)(1376,5805) 14

  41. Candidate Primitive: Arrival Info ❖ How packets arrive at destination ❖ Nonce tuple (N xmit , N sum ): P5: Visibility ❖ N xmit : random, set by sender ❖ N sum : sum of received N xmit values echoed back ❖ Permits sender to reconstruct arrival stream (5800)(1001)(5) P3. Consumer bears cost S R (45,5800)(1376,5805) 14

  42. Network support ❖ Imagine increased cooperation and support from the network ❖ Topology tuples ❖ Path change tuples ❖ Performance tuples ❖ Accumulated performance tuples 15

  43. Network support ❖ Imagine increased cooperation and support from the network ❖ Topology tuples ❖ Path change tuples See paper for details on these ❖ Performance tuples ❖ Accumulated performance tuples 15

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend