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

principles for measurability
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Mark Allman (ICSI) Robert Beverly (NPS) Brian Trammell (ETHZ)

Principles for Measurability in Protocol Design

From: ACM SIGCOMM CCR Vol. 47 Issue 2 August 24, 2017

1

slide-2
SLIDE 2

Mark Allman (ICSI) Robert Beverly (NPS) Brian Trammell (ETHZ)

Principles for Measurability in Protocol Design

From: ACM SIGCOMM CCR Vol. 47 Issue 2 August 24, 2017

1

slide-3
SLIDE 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

slide-4
SLIDE 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

slide-5
SLIDE 5

Even simple inferences difficult!

4

❖ What’s the delay between two hosts

slide-6
SLIDE 6

Even simple inferences difficult!

4

❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs.

host delay, asymmetry)

slide-7
SLIDE 7

Even simple inferences difficult!

❖ What are the endpoints in a communication?

4

❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs.

host delay, asymmetry)

slide-8
SLIDE 8

Even simple inferences difficult!

❖ What are the endpoints in a communication?

4

❖ What’s the delay between two hosts ❖ (Per-protocol traffic differentiation, path vs.

host delay, asymmetry)

❖ (NATs, CGNs, aliases, IPv6)

slide-9
SLIDE 9

Even simple inferences difficult!

❖ What are the endpoints in a communication?

4

❖ What’s the delay between two hosts ❖ How did packets arrive at a remote destination? ❖ (Per-protocol traffic differentiation, path vs.

host delay, asymmetry)

❖ (NATs, CGNs, aliases, IPv6)

slide-10
SLIDE 10

Even simple inferences difficult!

❖ What are the endpoints in a communication?

4

❖ What’s the delay between two hosts ❖ How did packets arrive at a remote destination? ❖ (Per-protocol traffic differentiation, path vs.

host delay, asymmetry)

❖ (NATs, CGNs, aliases, IPv6) ❖ (order? modified? mangled? path? queued?)

slide-11
SLIDE 11

Reconsidering Measurability

5

What if we re-think the stack with measurability as a first-class component?

slide-12
SLIDE 12

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

slide-13
SLIDE 13

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

Remove ambiguity Transparency encourages adoption

slide-14
SLIDE 14

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

Faithfully capture measurement

  • bjective
slide-15
SLIDE 15

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

Measurement burden on consumer, not producer

slide-16
SLIDE 16

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

Measurement producers can make conscious decisions what to expose

slide-17
SLIDE 17

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

Measurements require visibility into forward/ reverse paths and packet modification

slide-18
SLIDE 18

Principles for Measurability

  • P1. Explicit
  • P2. In-band
  • P3. Consumer bears cost
  • P4. Provider retains control
  • P5. Visible
  • P6. Cooperative

6

Measurements must cooperate with routers, middleboxes, and infrastructure

slide-19
SLIDE 19

Primitives

7

Measurability Principles Compatible Candidate Primitives Measurement Capability

slide-20
SLIDE 20

Primitives

7

Imagine packets carry measurement meta-data. What should that meta-data include?

Measurability Principles Compatible Candidate Primitives Measurement Capability

slide-21
SLIDE 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

slide-22
SLIDE 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

8

How to apply principles to make HostID viable?

slide-23
SLIDE 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

slide-24
SLIDE 24

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

  • P1. Explicit
slide-25
SLIDE 25

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

  • P1. Explicit
  • P4. Provider retains control
slide-26
SLIDE 26

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

  • P1. Explicit
  • P4. Provider retains control
  • P3. Consumer bears cost
slide-27
SLIDE 27

HostID: Active Inference

10

4 6 4 6 4 6 4 6 4 6 4 6

slide-28
SLIDE 28

HostID: Active Inference

10

4 ID: 0xabcd 6 4 6 4 ID: 0xbeef 6 4 6 4 ID: 0xabcd 6 4 6

slide-29
SLIDE 29

HostID: Active Inference

10

4 ID: 0xabcd 6 4 6 4 ID: 0xbeef 6 4 6 4 ID: 0xabcd 6 4 6 Router 1 Aliases: Router 2 Aliases:

slide-30
SLIDE 30

HostID: Active Inference

10

4 ID: 0xabcd 6 4 6 4 ID: 0xbeef 6 4 6 4 ID: 0xabcd 6 4 6 Router 1 Aliases: Router 2 Aliases:

slide-31
SLIDE 31

HostID: Active Inference

10

4 ID: 0xabcd 6 4 6 4 ID: 0xbeef 6 4 6 4 ID: 0xabcd 6 4 6 Router 1 Aliases: Router 2 Aliases: 4 6 4 6 4 6 4 6 4 6 4 6

slide-32
SLIDE 32

HostID

11

4 ID: 0xabcd 6 4 6 4 ID: 0xbeef 6 4 6 4 ID: 0xcafe 6 4 6 Router 1 Aliases: Router 2 Aliases: 4 6 4 6 4 6 4 6 4 6 4 6 Router 3 Aliases:

slide-33
SLIDE 33

HostID: Passive Inference

12

A A A A

NAT/CGNs What are the end points in a communication?

slide-34
SLIDE 34

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

13

S R

(5800)(1001)(5)

slide-35
SLIDE 35

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

13

S R

(5800)(1001)(5) (45,5800)(1376,5805)

slide-36
SLIDE 36

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

13

S R

(5800)(1001)(5) (45,5800)(1376,5805)

Sender knows ACKs in order

slide-37
SLIDE 37

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

13

S R

(5800)(1001)(5) (45,5800)(1376,5805)

Sender knows ACKs in order Sender knows second segment lost

slide-38
SLIDE 38

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

13

S R

(5800)(1001)(5) (45,5800)(1376,5805)

Sender knows ACKs in order Sender knows second segment lost Sender knows 1st and 3rd segments arrived out of order

slide-39
SLIDE 39

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

14

S R

(5800)(1001)(5) (45,5800)(1376,5805)

slide-40
SLIDE 40

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

14

S R

(5800)(1001)(5) (45,5800)(1376,5805)

P5: Visibility

slide-41
SLIDE 41

Candidate Primitive: Arrival Info

❖ How packets arrive at destination ❖ Nonce tuple (Nxmit, Nsum): ❖ Nxmit: random, set by sender ❖ Nsum: sum of received Nxmit values echoed back ❖ Permits sender to reconstruct arrival stream

14

S R

(5800)(1001)(5) (45,5800)(1376,5805)

  • P3. Consumer bears cost

P5: Visibility

slide-42
SLIDE 42

Network support

❖ Imagine increased cooperation and support from the

network

❖ Topology tuples ❖ Path change tuples ❖ Performance tuples ❖ Accumulated performance tuples

15

slide-43
SLIDE 43

Network support

❖ Imagine increased cooperation and support from the

network

❖ Topology tuples ❖ Path change tuples ❖ Performance tuples ❖ Accumulated performance tuples

15

See paper for details on these

slide-44
SLIDE 44

Conclusions

❖ Network measurement critical, we need better tools,

and better tools need better support from the network

❖ Propose guiding principles for viable measurement ❖ Demonstrate candidate primitives that address long-

standing, important real-world measurement problems

❖ Position paper: spur discussion, debate, and inform

protocol development

16