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

opportunis c mobility with mul path tcp
SMART_READER_LITE
LIVE PREVIEW

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,


slide-1
SLIDE 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) ¡

slide-2
SLIDE 2

Mobile ¡Devices ¡Everywhere! ¡

Smartphones ¡ Tablets ¡ Cars ¡

  • Network ¡connec*vity ¡is ¡a ¡requirement ¡
  • Wifi, ¡3G, ¡Bluetooth ¡
  • Vastly ¡different ¡proper*es ¡
slide-3
SLIDE 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? ¡

slide-4
SLIDE 4

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

slide-5
SLIDE 5

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

slide-6
SLIDE 6

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

slide-7
SLIDE 7

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

Make ¡Before ¡Break ¡

slide-8
SLIDE 8

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

Make ¡Before ¡Break ¡

slide-9
SLIDE 9

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

slide-10
SLIDE 10

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

Make ¡Before ¡Break ¡

slide-11
SLIDE 11

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

slide-12
SLIDE 12

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

Ac*vely ¡Use ¡Mul*ple ¡Interfaces ¡

slide-13
SLIDE 13

What ¡is ¡a ¡good ¡mobility ¡strategy? ¡

3G ¡celltower ¡

Ac*vely ¡Use ¡Mul*ple ¡Interfaces ¡

slide-14
SLIDE 14

Mobility ¡Solu*ons ¡

¡ ¡

Survive ¡ Connec,on ¡ Make ¡ Before ¡ Break ¡ Mul,ple ¡ Links ¡

Current ¡Mobile ¡ Stacks ¡ No ¡ No ¡ No ¡ Mobile ¡IP ¡ Yes ¡ Yes ¡ No ¡ TCP-­‑Migrate ¡ Yes ¡ Yes ¡ No ¡

slide-15
SLIDE 15

Mobility ¡Solu*ons ¡

¡ ¡

Survive ¡ Connec,on ¡ Make ¡ Before ¡ Break ¡ Mul,ple ¡ Links ¡

Current ¡Mobile ¡ Stacks ¡ No ¡ No ¡ No ¡ Mobile ¡IP ¡ Yes ¡ Yes ¡ No ¡ TCP-­‑Migrate ¡ Yes ¡ Yes ¡ No ¡ Mul*path ¡TCP ¡ Yes ¡ Yes ¡ Yes ¡

slide-16
SLIDE 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 ¡

¡

¡

slide-17
SLIDE 17

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡

slide-18
SLIDE 18

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡ SYN ¡ ¡ MP_CAPABLE ¡X ¡

slide-19
SLIDE 19

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡

slide-20
SLIDE 20

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡

slide-21
SLIDE 21

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

slide-22
SLIDE 22

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

slide-23
SLIDE 23

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡ STATE ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

slide-24
SLIDE 24

MPTCP ¡Mobile ¡Architecture ¡

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

slide-25
SLIDE 25

MPTCP ¡Mobile ¡Architecture ¡

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

slide-26
SLIDE 26

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ STATE ¡B ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

slide-27
SLIDE 27

MPTCP ¡Mobile ¡Architecture ¡

3G ¡celltower ¡ STATE ¡A ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡ STATE ¡B ¡ CWND ¡ Snd.SEQNO ¡ Rcv.SEQNO ¡ … ¡

slide-28
SLIDE 28

MPTCP ¡Mobile ¡Architecture ¡

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

slide-29
SLIDE 29

MPTCP ¡Mobile ¡Architecture ¡

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

slide-30
SLIDE 30

MPTCP ¡Mobile ¡Architecture ¡

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

slide-31
SLIDE 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 ¡

slide-32
SLIDE 32

Proxy ¡Func*onality: ¡ ¡ Server ¡Does ¡Not ¡Speak ¡MPTCP ¡

3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

slide-33
SLIDE 33

Proxy ¡Func*onality: ¡ ¡ Server ¡Does ¡Not ¡Speak ¡MPTCP ¡

3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

slide-34
SLIDE 34

Proxy ¡Func*onality: ¡ ¡ Server ¡Speaks ¡MPTCP ¡

3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

slide-35
SLIDE 35

Proxy ¡Func*onality: ¡ ¡ Server ¡Speaks ¡MPTCP ¡

3G ¡celltower ¡ MPTCP ¡ ¡ Proxy ¡

slide-36
SLIDE 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] ¡

slide-37
SLIDE 37

Algorithms ¡under ¡test ¡

  • TCP ¡3G, ¡TCP ¡WiFi ¡

¡

  • WiFi ¡First: ¡switch ¡to ¡WiFi ¡if ¡available ¡

¡

  • Op*mal ¡TCP ¡= ¡Migrate ¡TCP ¡+ ¡Oracle ¡

¡

  • MPTCP ¡
slide-38
SLIDE 38

Outdoors ¡Mobility, ¡Walking ¡

2 4 6 8 10 5 10 15 20 25 Mb/s Time(min) 3G WiFi

slide-39
SLIDE 39

Outdoors ¡Mobility, ¡Walking ¡

0.5 1 1.5 2 2.5 20 40 60 80 100 Throughput-Walking (Mb/s) WiFi Coverage (%) TCP 3G

slide-40
SLIDE 40

Outdoors ¡Mobility, ¡Walking ¡

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

slide-41
SLIDE 41

Outdoors ¡Mobility, ¡Walking ¡

0.5 1 1.5 2 2.5 20 40 60 80 100 Throughput-Walking (Mb/s) WiFi Coverage (%) TCP 3G TCP Wifi Wifi First

slide-42
SLIDE 42

Outdoors ¡Mobility, ¡Walking ¡

0.5 1 1.5 2 2.5 20 40 60 80 100 Throughput-Walking (Mb/s) WiFi Coverage (%) TCP 3G TCP Wifi Wifi First Optimal TCP

slide-43
SLIDE 43

Outdoors ¡Mobility, ¡Walking ¡

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

slide-44
SLIDE 44

Similar ¡Improvements ¡in ¡All ¡Tests ¡ ¡

  • MPTCP ¡vs. ¡Op*mal ¡TCP: ¡10 ¡-­‑ ¡20% ¡
  • MPTCP ¡vs. ¡WiFi ¡First: ¡50 ¡-­‑ ¡100% ¡ ¡
slide-45
SLIDE 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% ¡ ¡

slide-46
SLIDE 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 ¡

slide-47
SLIDE 47

Conclusions ¡

  • MPTCP ¡for ¡mobility ¡seems ¡like ¡a ¡no-­‑brainer ¡
  • Its ¡main ¡advantage ¡is ¡overlapping ¡the ¡use ¡of ¡

mul*ple ¡interfaces ¡

– Gets ¡best ¡throughput ¡and ¡robustness ¡ – Might ¡improve ¡energy ¡usage ¡

  • Exci*ng ¡things ¡to ¡do ¡next ¡

– Test ¡how ¡real ¡apps ¡work ¡with ¡MPTCP ¡on ¡mobile ¡ phones ¡ – Study ¡scenarios ¡with ¡two ¡WiFi, ¡two ¡3G ¡interfaces ¡

slide-48
SLIDE 48

Backup ¡Slides ¡

slide-49
SLIDE 49

Looking ¡Beyond ¡Throughput ¡

  • For ¡mobile ¡phones ¡energy ¡maters! ¡
  • MPTCP ¡can ¡shiu ¡connec*ons ¡to ¡the ¡more ¡

efficient ¡interface ¡

1 2 3 4 5 6 2 4 6 8 10 12 14 Mb/J Time(min) 3G WiFi