opportunis c mobility with mul path tcp
play

Opportunis*c Mobility with Mul*path TCP Cos*n Raiciu - PowerPoint PPT Presentation

Opportunis*c Mobility with Mul*path TCP Cos*n Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,


  1. Opportunis*c ¡Mobility ¡with ¡ Mul*path ¡TCP ¡ Cos*n ¡Raiciu ¡ Department ¡of ¡Computer ¡Science ¡ University ¡Politehnica ¡of ¡Bucharest ¡ ¡ ¡ Joint ¡work ¡with ¡Dragos ¡Niculescu, ¡Marcelo ¡Bagnulo ¡(UC3M) ¡ and ¡Mark ¡Handley ¡(UCL) ¡

  2. Mobile ¡Devices ¡Everywhere! ¡ Smartphones ¡ Tablets ¡ Cars ¡ • Network ¡connec*vity ¡is ¡a ¡requirement ¡ • Wifi, ¡3G, ¡Bluetooth ¡ • Vastly ¡different ¡proper*es ¡

  3. Problem ¡Statement ¡ • Connec*vity ¡is ¡transient ¡for ¡mobile ¡nodes ¡ – A ¡few ¡seconds ¡for ¡Wifi ¡at ¡driving ¡speeds ¡[Bala2010] ¡ ¡ • TCP ¡connec*ons ¡use ¡one ¡interface ¡ – When ¡link ¡goes ¡down, ¡connec*on ¡dies ¡ ¡ • How ¡can ¡we ¡u*lize ¡all ¡these ¡links ¡to ¡get ¡the ¡ best ¡performance? ¡

  4. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡

  5. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡

  6. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡

  7. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡ Make ¡Before ¡Break ¡

  8. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡ Make ¡Before ¡Break ¡

  9. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡

  10. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡ Make ¡Before ¡Break ¡

  11. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡

  12. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡ Ac*vely ¡Use ¡Mul*ple ¡Interfaces ¡

  13. What ¡is ¡a ¡good ¡mobility ¡strategy? ¡ 3G ¡celltower ¡ Ac*vely ¡Use ¡Mul*ple ¡Interfaces ¡

  14. Mobility ¡Solu*ons ¡ ¡ Survive ¡ Make ¡ Mul,ple ¡ ¡ Connec,on ¡ Before ¡ Links ¡ Break ¡ Current ¡Mobile ¡ No ¡ No ¡ No ¡ Stacks ¡ Mobile ¡IP ¡ Yes ¡ Yes ¡ No ¡ TCP-­‑Migrate ¡ Yes ¡ Yes ¡ No ¡

  15. Mobility ¡Solu*ons ¡ ¡ Survive ¡ Make ¡ Mul,ple ¡ ¡ Connec,on ¡ Before ¡ Links ¡ Break ¡ Current ¡Mobile ¡ No ¡ No ¡ No ¡ Stacks ¡ Mobile ¡IP ¡ Yes ¡ Yes ¡ No ¡ TCP-­‑Migrate ¡ Yes ¡ Yes ¡ No ¡ Mul*path ¡TCP ¡ Yes ¡ Yes ¡ Yes ¡

  16. Mul*path ¡TCP: ¡Overview ¡ n MPTCP ¡uses ¡mul*ple ¡paths ¡in ¡the ¡network ¡for ¡one ¡ transport ¡connec*on ¡ – Opens ¡mul*ple ¡subflows ¡which ¡carry ¡data ¡over ¡the ¡ different ¡paths ¡ – Different ¡paths ¡are ¡selected ¡by ¡using ¡different ¡addresses ¡ and/or ¡ports ¡ • MPTCP ¡is ¡a ¡drop ¡in ¡replacement ¡for ¡TCP ¡ ¡ – Works ¡with ¡unmodified ¡apps ¡ – Works ¡over ¡the ¡exis*ng ¡network ¡ ¡ ¡

  17. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡

  18. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ SYN ¡ ¡ MP_CAPABLE ¡X ¡

  19. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡

  20. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡

  21. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  22. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  23. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  24. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ N ¡ ¡ Y S ¡ ¡ Y N O I J

  25. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ ¡ ¡ C K A / N Y S X ¡ N ¡ I O J

  26. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ STATE ¡B ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  27. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ STATE ¡B ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  28. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ ¡ T A A D STATE ¡B ¡ B ¡ ¡ Q S E CWND ¡ ¡ ¡ 2 Q : E S D Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  29. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ ¡ T A A D STATE ¡B ¡ B ¡ ¡ Q S E CWND ¡ ¡ ¡ 2 Q : E S D Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  30. MPTCP ¡Mobile ¡Architecture ¡ 3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ ¡ T A A D STATE ¡B ¡ B ¡ ¡ Q S E CWND ¡ ¡ ¡ 2 Q : E S D Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

  31. What ¡if ¡the ¡remote ¡server ¡is ¡not ¡ MPTCP ¡enabled? ¡ • This ¡will ¡be ¡the ¡case ¡for ¡ini*al ¡deployment ¡ • Solu*on: ¡use ¡an ¡MPTCP ¡proxy ¡ – Will ¡be ¡deployed ¡by ¡the ¡mobile ¡operator ¡ – Phones ¡will ¡be ¡configured ¡with ¡the ¡proxy’s ¡ address ¡via ¡DHCP ¡ • The ¡proxy ¡can ¡also ¡help ¡with: ¡ – Simultaneous ¡move ¡ – Peer ¡to ¡peer ¡opera*on ¡

  32. Proxy ¡Func*onality: ¡ ¡ Server ¡Does ¡Not ¡Speak ¡MPTCP ¡ 3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

  33. Proxy ¡Func*onality: ¡ ¡ Server ¡Does ¡Not ¡Speak ¡MPTCP ¡ 3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

  34. Proxy ¡Func*onality: ¡ ¡ Server ¡Speaks ¡MPTCP ¡ 3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

  35. Proxy ¡Func*onality: ¡ ¡ Server ¡Speaks ¡MPTCP ¡ 3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

  36. Evalua*on ¡ • The ¡benefits ¡come ¡from ¡using ¡mul*ple ¡ interfaces ¡concurrently ¡ • We ¡considered ¡mul*ple ¡scenarios: ¡ – Indoor ¡mobility ¡(trace) ¡ – Outdoor ¡mobility ¡(simula*on) ¡ • 3G ¡and ¡WIFI ¡connec*vity ¡varies ¡ – Link ¡speeds ¡and ¡varia*ons ¡taken ¡from ¡[Bala2010, ¡ Bychk2006] ¡

  37. Algorithms ¡under ¡test ¡ • TCP ¡3G, ¡TCP ¡WiFi ¡ ¡ • WiFi ¡First: ¡switch ¡to ¡WiFi ¡if ¡available ¡ ¡ • Op*mal ¡TCP ¡= ¡Migrate ¡TCP ¡+ ¡Oracle ¡ ¡ • MPTCP ¡

  38. Outdoors ¡Mobility, ¡Walking ¡ 10 3G 8 WiFi 6 Mb/s 4 2 0 0 5 10 15 20 25 Time(min)

  39. Outdoors ¡Mobility, ¡Walking ¡ TCP 3G 2.5 Throughput-Walking (Mb/s) 2 1.5 1 0.5 0 0 20 40 60 80 100 WiFi Coverage (%)

  40. Outdoors ¡Mobility, ¡Walking ¡ TCP 3G TCP Wifi 2.5 Throughput-Walking (Mb/s) 2 1.5 1 0.5 0 0 20 40 60 80 100 WiFi Coverage (%)

  41. Outdoors ¡Mobility, ¡Walking ¡ TCP 3G Wifi First TCP Wifi Throughput-Walking (Mb/s) 2.5 2 1.5 1 0.5 0 0 20 40 60 80 100 WiFi Coverage (%)

  42. Outdoors ¡Mobility, ¡Walking ¡ TCP 3G Wifi First TCP Wifi Optimal TCP Throughput-Walking (Mb/s) 2.5 2 1.5 1 0.5 0 0 20 40 60 80 100 WiFi Coverage (%)

  43. Outdoors ¡Mobility, ¡Walking ¡ TCP 3G Optimal TCP TCP Wifi MPTCP Wifi First Throughput-Walking (Mb/s) 2.5 2 1.5 1 0.5 0 0 20 40 60 80 100 WiFi Coverage (%)

  44. Similar ¡Improvements ¡in ¡All ¡Tests ¡ ¡ • MPTCP ¡vs. ¡Op*mal ¡TCP: ¡10 ¡-­‑ ¡20% ¡ • MPTCP ¡vs. ¡WiFi ¡First: ¡50 ¡-­‑ ¡100% ¡ ¡

  45. Energy ¡Experiments ¡ • Bits/Joule ¡varies ¡for ¡the ¡same ¡interface ¡ • How ¡do ¡we ¡know ¡which ¡is ¡the ¡more ¡efficient ¡ interface? ¡ – Periodically ¡ac*vate ¡all ¡interfaces ¡ – Measure ¡Bits/Joule ¡ – Switch ¡to ¡the ¡most ¡efficient ¡one ¡ • Compared ¡to ¡TCP ¡WiFI ¡MPTCP ¡improves: ¡ – Energy ¡efficiency ¡by ¡7% ¡ – Throughput ¡by ¡50% ¡ ¡

  46. MPTCP ¡Overheads ¡ • CPU ¡overheads ¡ – Depend ¡on ¡the ¡number ¡of ¡subflows ¡ – Negligible ¡for ¡x86 ¡and ¡few ¡subflows ¡ • Network ¡overheads ¡ – 20B ¡in ¡each ¡segment ¡~ ¡1.5% ¡ • Memory ¡overheads ¡ – Receive ¡buffer ¡grows ¡as ¡max(RTT)*sum(BW) ¡ across ¡all ¡paths ¡

Recommend


More recommend