applications of the ip timestamp option to internet ... › ~justine › honors... · •the sender...

67
Applications of the IP Timestamp Option to Internet Measurement Honors Thesis Presentation Justine Sherry March 2010

Upload: others

Post on 08-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Applications of the IP Timestamp

Option to Internet MeasurementHonors Thesis Presentation

Justine Sherry

March 2010

Page 2: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

The Internet is a big black box

Internet?!

Page 3: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

The Internet is a big black box

Internet?!

My ISP

Page 4: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

The Internet is a big black box

Internet?!

My ISPSome

other ISP

Some other ISP

No one can see the big picture very well, outside of their own cloud.

Page 5: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Who cares?

Internet

Page 6: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

We have some tools to help us out

• Ping – classic! Is this machine connected to the network, responsive, can I reach it?

• Traceroute – show me the routers on the forward path between me and a distant target

• Record route – show me the routers within the first 9 hops the packet takes

• And others - most involve tricking routers into providing some information about themselves after receiving specially crafted packets

Tons of questions are still hard though!

Page 7: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Some Questions I Want to Answer

• Traceroute gives us the forward path a packet takes, how do I tell if a router is on the reverse path (which may be different)?

• Can I tell when two IP addresses belong to the same machine?

• How long does it take for a packet to travel from one router to the next?

Page 8: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Agenda

• Motivating Internet Measurements

• Understanding IP Timestamp

• Three Use Cases:

▫ Reverse Path Visibility

▫ IP Alias Resolution

▫ One-Way Link Latency

Page 9: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Introducing IP Timestamp

• IP Timestamp is an optional extension to the IP header. It allows the sender to request timestamp values from any machine which handles the packet by specifying it’s IP address.

• IP Timestamp can help us answer some of these questions.

Page 10: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Timestamp Specification

• The sender lists up to four IP addresses in the packet header

• Each router along the way checks if it’s own IP address is the first unstamped IP address

• If it does indeed own that IP address, then it provides a timestamp before forwarding

Page 11: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 1

R1 R3R2 D

From: STo: DTS:R1?R2?R3?

S

Page 12: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

R1 R3R2 D

From: STo: DTS:R1 12345R2?R3?

S

Example 1

Page 13: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

R1 R3R2 D

From: STo: DTS:R1 12345R2? 12347R3?

S

Example 1

Page 14: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 1

R1 R3R2 D

From: STo: DTS:R1 12345R2 12347R3 12356

S

Page 15: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 1

R1 R3R2 D

From: DTo: STS:R1 12345R2 12347R3 12356

S

Page 16: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: STo: DTS:R1 ?R3 ?R2 ?

S

Page 17: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: STo: DTS:R1 12345R3 ?R2 ?

S

Page 18: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: STo: DTS:R1 12345R3 ?R2 ?

S

Page 19: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: STo: DTS:R1 12345R3 12352R2 ?

S

Page 20: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: DTo: STS:R1 12345R3 12352R2 ?

S

Let’s assume the path is symmetric for this example –that the packet takes the same path back to S that it came from.

Page 21: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: DTo: STS:R1 12345R3 12352R2 ?

S

Page 22: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: DTo: STS:R1 12345R3 12352R2 12364

S

Page 23: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: DTo: STS:R1 12345R3 12352R2 12364

S

Page 24: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Example 2

R1 R3R2 D

From: DTo: STS:R1 12345R3 12352R2 12364

S

Page 25: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Unique Characteristics

• Probe can be stamped in-transit on the forward or the reverse path

• Can query multiple IP addresses in a single probe

• Timestamp sequence implies ordering between routers

• Literal timestamp values provide milliseconds since midnight UTC

Page 26: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

How often are timestamps supported?

We performed studies of several different datasets. In our least successful run, we saw

• 55.5% dropped the packet• 19.5 % do not provide timestamps• 25% do provide timestamps

in measurements to all targets from over 20 PlanetLab vantage points.

Page 27: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Not all timestampers are the same

We targeted 153,565 routers with a direct request and asked for their own timestamp in all four prespecified requests.

From: STo: DTS:D? D?D?D?

Page 28: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Not all timestampers are the same

We targeted 153,565 routers with a direct request and asked for their own timestamps in all four prespecified requests. Of those that provided timestamps,

From: DTo: STS:D 12345D?D?D?

•34.9% provided one stamp

Page 29: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Not all timestampers are the same

We targeted 153,565 routers with a direct request and asked for their own timestamp in all four prespecified requests. Of those that provided timestamps,

From: DTo: STS:D 12345D 12345D ?D ?

•34.9% provided one stamp•43.9% provided two stamps

Page 30: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Not all timestampers are the same

We targeted 153,565 routers with a direct request and asked for their own timestamp in all four prespecified requests. Of those that provided timestamps,

From: DTo: STS:D 12345D 12345D 12345D 12345

•34.9% provided one stamp•43.9% provided two stamps•13.5% provided four stamps

Page 31: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Agenda

• Motivating Internet Measurements

• Understanding IP Timestamp

• Three Use Cases:

▫ Reverse Path Visibility

▫ IP Alias Resolution

▫ Single Link One-Way Delay

Page 32: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Traceroute shows the forward path

S

Page 33: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Reverse path is often very different

S

Page 34: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Making a guess: sometimes we have an

idea that a router might be

on the reverse path

B

C

A

D

S

Page 35: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Send a timestamp probe and request

stamps from destination, followed by

our guess hop, to verify

B

C

A

DFrom: STo: DTS:D?A?

S

Page 36: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Send a timestamp probe and request

stamps from destination, followed by

our guess hop, to verify

B

C

A

D

From: DTo: STS:D 12345A?

S

Page 37: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Send a timestamp probe and request

stamps from destination, followed by

our guess hop, to verify

B

C

A

D

From: DTo: STS:D 12345A 12350

S

Page 38: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Some More Complicated Cases

• What if D doesn’t provide timestamps at all, but A still does?

• What about anomalous timestamp implentations?

▫ Addressed in written thesis

• How can we combine timestamp with other techniques to view the whole path?

▫ Talk to Ethan and read Reverse Traceroute

Page 39: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Timestamp Gains for Reverse Traceroute

Page 40: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Agenda

• Motivating Internet Measurements

• Understanding IP Timestamp

• Three Use Cases:

▫ Reverse Path Visibility

▫ IP Alias Resolution

▫ Single Link One-Way Delay

Page 41: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

IP Aliasing Problem

• Routers may have dozens of IP addresses assigned to them

• We use IP addresses as identifiers for routers

• Different measurements of the same router may be associated with several IP addresses

Page 42: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Many Attempts to Resolve Aliases

• Ally, Radargun, DisCarte, Mercator…

• All rely on various tricks to make the router reveal the association between different IPs

• Timestamp can fill in some of the gaps left by these existing techniques

Page 43: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Timestamp Aliasing

• We can use timestamps to place constraints on the relationship between a candidate pair A and B:

▫ Topological constraint: order of the timestamps implies the order that the packet traversed the routers

▫ Shared clock constraint: timestamp values can inform us whether A and B may access a common clock

Page 44: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Timestamp-Based Alias Resolution

• Say we have a candidate alias pair A,B.

• Send a probe to A, and request timestamps from A and B interleaved

• Send a probe to B, and do the same

To: AFrom: JustineTS:A?B?A?B?

To: BFrom: JustineTS:B?A?B?A?

Page 45: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Understanding a Timestamp Reply

To: SFrom: ATS:A 12345B 12345A 12345B 12345

What configuration of A and B might have generated this response?

Page 46: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

From: STo: ATS:A?B?A?B?

B AS

Understanding a Timestamp Reply

Page 47: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

From: ATo: STS:A 12345B?A?B?

B AS

Understanding a Timestamp Reply

Page 48: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

From: ATo: STS:A 12345B 12345A?B?

B AS

Understanding a Timestamp Reply

Page 49: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

From: ATo: STS:A 12345B 12345A 12345B?

B AS

Understanding a Timestamp Reply

Page 50: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

From: ATo: STS:A 12345B 12345A 12345B 12345

B AS

Understanding a Timestamp Reply

Page 51: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

From: ATo: STS:A 12345B 12345A 12345B 12345

B AS

Understanding a Timestamp Reply

Page 52: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

A and B are Aliases

• That forwarding pattern was wacky!

• Furthermore, the timestamp values are identical across all four stamps, despite A and B forwarding the packet back and forth four times.

It makes much more sense if A and B were just aliases, and the packet was stamped and forwarded once.

Page 53: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

In Practice

• We can use similar arguments even if we only get stamps from A and B twice (rather than all four times).

• Measuring over a set of ground-truth alias pairs, we found that Radargun, an existing technique, was unable to address 79.3% of the targets it measured. Of those 79.3%, we were able to successfully confirm alias pairs for 19.3%.

• In September, we confirmed 43,847 alias pairs using the timestamp technique, generating 8,697 alias clusters.

Page 54: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Agenda

• Motivating Internet Measurements

• Understanding IP Timestamp

• Three Use Cases:

▫ Reverse Path Visibility

▫ IP Alias Resolution

▫ One-Way Link Latency

Page 55: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Latency

• Typically measured with Round-Trip Times (RTTs)

• However, many applications require more precise, more accurate measurements.

▫ Like geolocation

Page 56: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

To: DFrom: STS:A ?B ?

A Timestamp Measurement

• Send a probe that traverses an A-B link, and ask A and B each for timestamps

A B DS

Page 57: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

A Timestamp Measurement

• Send a probe that traverses an A-B link, and ask A and B each for timestamps

To: DFrom: STS:A 67890B?

A B DS

Page 58: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

A Timestamp Measurement

• Send a probe that traverses an A-B link, and ask A and B each for timestamps

To: DFrom: STS:A 67890B 67897

A B DS

Page 59: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

A Timestamp Measurement

• Send a probe that traverses an A-B link, and ask A and B each for timestamps

To: SFrom: DTS:A 67890B 67897

A B DS

Page 60: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Components of Timestamp Values

• We can subtract A’s timestamp from B

• The difference is 7 milliseconds

• But what does this difference comprise?

TS(A) – TS(B) = latency + skew(A,B) + queue

To: SteveFrom: DTS:A 67890B 67897

Page 61: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Components of Timestamp Values

• We can subtract A’s timestamp from B

• The difference is 7 milliseconds

• But what does this difference comprise?

TS(A) – TS(B) = latency + skew(A,B) + queue

To: SteveFrom: DTS:A 67890B 67897

Can ignore by taking the min across several measurements

Page 62: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Components of Timestamp Values

• We can subtract A’s timestamp from B

• The difference is 7 milliseconds

• But what does this difference comprise?

TS(A) – TS(B) = latency + skew(A,B) + queue

To: SteveFrom: DTS:A 67890B 67897

Still need to get rid of this!

Page 63: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Canceling out Skew• What if we could measure the B-A Link in the

opposite direction?

• With many PlanetLab nodes, we can find a path that crosses the link in the opposite direction

To: D2From: S2TS:B?A?

A B DS

Page 64: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Canceling out the Skew

∆1 = TS(A) – TS(B) = latency + skew(A,B) + queue

∆2 = TS(A) – TS(B) = latency – skew(A,B) + queue

So… latency = ∆1 + ∆2 / 2

To: SteveFrom: DTS:A 67890B 67897

To: EthanFrom: D2TS:B 67900A 67912

Page 65: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Work in Progress

We tested over links in the Internet2 backbone

For 11 out of 13 links, we were within a millisecond of the estimates provided by measurements at the routers themselves!

Further experiments required to see if technique will be successful in more diverse networks.

Page 66: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Conclusion

• IP Timestamps are a practical tool for Internet Measurement.

• Timestamps are supported by over 25% of routers.

• Measurement techniques can take advantage of unique characteristics of timestamp to confirm if a router lies on the reverse path a packet takes, declare IP aliases, and measure the delay of a single link.

Page 67: Applications of the IP Timestamp Option to Internet ... › ~justine › honors... · •The sender lists up to four IP addresses in the packet header •Each router along the way

Acknowledgements

Ethan Katz-Bassett, Arvind Krishnamurthy, Tom Anderson, Colin Scott, Mary Pimenova, HarshaMadhyastha, and probably like half the people in this room.