Performance ¡Implica/ons ¡of ¡ Unilateral ¡Enabling ¡of ¡IPv6 ¡ Hussein ¡A. ¡Alzoubi ¡and ¡Michael ¡Rabinovich ¡ Case ¡Western ¡Reserve ¡University ¡ ¡ Oliver ¡Spatscheck ¡ AT&T ¡Labs ¡-‑-‑ ¡Research ¡ 1 ¡
IPv6 ¡Transi/on ¡Issue ¡ • IPv4 ¡is ¡prac/cally ¡exhausted ¡ – IANA ¡allocated ¡last ¡/8 ¡blocks ¡on ¡Feb. ¡3, ¡2011 ¡ – Regional ¡registries ¡are ¡running ¡out ¡ • Temporary ¡mi/ga/ons ¡ – Aggressive ¡NAT ¡use ¡ – Unused ¡address ¡reclama/on ¡ – IP ¡address ¡markets ¡ • Permanent ¡solu/on ¡ – Transi/on ¡to ¡IPv6 ¡ ¡ 2 ¡
Transi/on ¡Growing ¡Pains ¡ ? ¡ • Dual-‑stack ¡end ¡systems ¡are ¡common ¡ • End-‑to-‑end ¡IPv6 ¡paths ¡are ¡not ¡ • Dual-‑stack ¡Internet ¡server ¡perspec/ve: ¡ – Can ¡always ¡tell ¡IPv6-‑enabled ¡clients ¡by ¡AAAA-‑type ¡DNS ¡queries ¡ – Cannot ¡tell ¡end-‑to-‑end ¡connec/vity ¡ 3 ¡
Internet ¡Server ¡Strategies ¡ • If ¡client ¡asks ¡for ¡AAAA ¡address, ¡give ¡it ¡to ¡it! ¡ – Smart ¡clients ¡will ¡fall ¡over ¡to ¡IPv4 ¡if ¡no ¡connec/vity ¡ – But ¡we ¡do ¡not ¡if ¡they ¡would ¡or ¡how ¡quickly ¡ – Unilateral ¡approach ¡to ¡transi/on ¡ ¡ • Play ¡it ¡safe! ¡ – Only ¡honor ¡AAAA ¡queries ¡for ¡clients ¡with ¡verified ¡connec/vity ¡ – Clients ¡must ¡opt-‑in ¡ – Google’s ¡approach ¡ – Transi/on ¡relies ¡on ¡client-‑server ¡coopera/on ¡ Ques%on: ¡what ¡are ¡the ¡implica%ons ¡of ¡unilateral ¡approach? ¡ 4 ¡
Plausible ¡Scenarios ¡ • Parallel ¡IPv6 ¡and ¡IPv4 ¡a`empts ¡ – Parallel ¡A ¡and ¡AAAA ¡DNS ¡queries ¡ – Parallel ¡TCP ¡handshakes ¡ – Reset ¡IPv4 ¡connec/on ¡if ¡IPv6 ¡connec/on ¡succeed ¡ – Described ¡in ¡RFC ¡6555 ¡ • Sequen/al ¡IPv6 ¡-‑> ¡IPv4 ¡a`empts ¡ – Delay ¡penalty ¡ • Macro-‑behavior ¡the ¡result ¡of ¡complex ¡interac/ons ¡ – Browser, ¡OS, ¡DNS ¡resolvers ¡ ¡ ¡ ¡ 5 ¡
Client Side Measurement ¡Instrumenta/on ¡ 2/3. dns-research.com (A, AAAA)? 8 / 9 . 1 _ 2 _ 3 _ 4 Instrumented ¡ . s u b . d n s - r 6/7. 1_2_3_4.sub.dns-research.com (A, AAAA)? e s e a r c 5.6.7.8; NXDOMAIN for AAAA h . ADNS/HTTP ¡server ¡ c o m ( A , A A 10/11. 5.6.7.8; bogus IPv6 addr A A ) ? 1. dns-research.com? 5.6.7.8; bogus IPv6 addr 4. 5.6.7.8 302 Moved to 1_2_3_4.sub.dns-research.com/special.jpg 5. GET special.jpg 5.6.7.8 ¡ K 6 O v 0 P 0 I 2 s u g o b o t g p j . l a 13. GET special.jpg to 5.6.7.8 i c e p s T E G . 2 1 Embed ¡h`p://dns-‑research.com/special.jpg ¡ Redirect ¡to ¡h`p://<client-‑IP>.dns-‑research.com/special.jpg ¡ 1.2.3.4 ¡ 6 ¡
The ¡Dataset ¡ • 28-‑day ¡measurement ¡(Jan ¡5 ¡to ¡Feb ¡1, ¡2011) ¡ – Over ¡34M ¡DNS ¡and ¡56M ¡HTTP ¡interac/ons ¡ – Over ¡11M ¡client ¡IP ¡addresses ¡ – Almost ¡300K ¡LDNS ¡IP ¡addresses ¡ – Over ¡21M ¡unique ¡client/LDNS ¡associa/ons ¡ • IPv6 ¡usage ¡ 7 ¡
Failure ¡Rate ¡ • IPv4-‑only ¡clients: ¡0.0038% ¡ – 1217 ¡out ¡of ¡32M ¡downloads ¡ • IPv6-‑enabled ¡clients: ¡0.0064% ¡ – 154 ¡out ¡of ¡2.4M ¡downloads ¡ 8 ¡
DNS ¡Resolu/on ¡Penalty ¡ • 88% ¡-‑ ¡ nega%ve ¡penalty ¡ • Penalty ¡distribu/on ¡for ¡the ¡remaining ¡12%: ¡ 1 0.9 0.8 0.7 0.6 CDF 0.5 0.4 0.3 0.2 0.1 0 0.001 0.01 0.1 1 10 Number of seconds between (AAAA and A) Sub Requests 9 ¡
End-‑to-‑End ¡Delay ¡ All ¡delays ¡ Per ¡Client ¡Delays ¡ ¡ 1 1 0.95 0.95 0.9 0.9 0.85 0.85 0.8 CDF CDF 0.75 0.8 0.7 0.75 0.65 IPv4 Avg. Delays 0.7 IPv4 Max. Delays 0.6 IPv6 Avg. Delays All IPv4 Delays All IPv6 Delays IPv6 Max. Delays 0.65 0.55 1 10 100 1 10 100 Number of Seconds between (DNS and HTTP) Sub requests Number of Seconds between (DNS and HTTP) Sub requests 10 ¡
Conclusion ¡ • No ¡evidence ¡of ¡performance ¡penalty ¡for ¡ unilateral ¡IPv6 ¡enabling ¡ • Small ¡increase ¡in ¡failure ¡rate ¡ ¡ – From ¡0.0038% ¡to ¡0.0064% ¡ • Current ¡study ¡limita/on: ¡ ¡ – One-‑second ¡/me ¡measurement ¡granularity ¡ 11 ¡
Recommend
More recommend