49
Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu, Marcelo Bagnulo (UC3M) and Mark Handley (UCL)

Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Embed Size (px)

Citation preview

Page 1: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Opportunistic Mobility with Multipath TCP

Costin RaiciuDepartment of Computer Science

University Politehnica of Bucharest

Joint work with Dragos Niculescu, Marcelo Bagnulo (UC3M) and Mark Handley (UCL)

Page 2: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Mobile Devices Everywhere!Smartphones Tablets Cars

• Network connectivity is a requirement• Wifi, 3G, Bluetooth• Vastly different properties

Page 3: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Problem Statement

• Connectivity is transient for mobile nodes– A few seconds for Wifi at driving speeds [Bala2010]

• TCP connections use one interface– When link goes down, connection dies

• How can we utilize all these links to get the best performance?

Page 4: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Page 5: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Page 6: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Page 7: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Make Before Break

Page 8: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Make Before Break

Page 9: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Page 10: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Make Before Break

Page 11: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Page 12: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Actively Use Multiple Interfaces

Page 13: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What is a good mobility strategy?

3G celltower

Actively Use Multiple Interfaces

Page 14: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Mobility Solutions

Survive Connection

Make Before Break

Multiple Links

Current Mobile Stacks

No No No

Mobile IP Yes Yes No

TCP-Migrate Yes Yes No

Page 15: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Mobility Solutions

Survive Connection

Make Before Break

Multiple Links

Current Mobile Stacks

No No No

Mobile IP Yes Yes No

TCP-Migrate Yes Yes No

Multipath TCP Yes Yes Yes

Page 16: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Multipath TCP: Overview

MPTCP uses multiple paths in the network for one transport connection– Opens multiple 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 existing network

Page 17: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

Page 18: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltowerSYN

MP_CAPABLE X

Page 19: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

SYN/ACK

MP_CAPABLE Y

Page 20: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

Page 21: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

Page 22: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

Page 23: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

Page 24: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

SYN JOIN Y

Page 25: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

SYN/ACK JOIN X

Page 26: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

Page 27: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATA

SEQ A

DSEQ: 1

Page 28: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATASEQ B

DSEQ: 2

DATA

SEQ A

DSEQ: 1

Page 29: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATASEQ B

DSEQ: 2

Page 30: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATA

SEQNO A

DSEQ: 2

DATASEQ B

DSEQ: 2

Page 31: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

What if the remote server is not MPTCP enabled?

• This will be the case for initial deployment• Solution: 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 operation

Page 32: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Proxy Functionality: Server Does Not Speak MPTCP

3G celltower

MPTCP Proxy

Page 33: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Proxy Functionality: Server Does Not Speak MPTCP

3G celltower

MPTCP Proxy

Page 34: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Proxy Functionality: Server Speaks MPTCP

3G celltower

MPTCP Proxy

Page 35: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Proxy Functionality: Server Speaks MPTCP

3G celltower

MPTCP Proxy

Page 36: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Evaluation

• The benefits come from using multiple interfaces concurrently

• We considered multiple scenarios:– Indoor mobility (trace)– Outdoor mobility (simulation)

• 3G and WIFI connectivity varies– Link speeds and variations taken from [Bala2010,

Bychk2006]

Page 37: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Algorithms under test

• TCP 3G, TCP WiFi

• WiFi First: switch to WiFi if available

• Optimal TCP = Migrate TCP + Oracle

• MPTCP

Page 38: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Outdoors Mobility, Walking

Page 39: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Outdoors Mobility, Walking

Page 40: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Outdoors Mobility, Walking

Page 41: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Outdoors Mobility, Walking

Page 42: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Outdoors Mobility, Walking

Page 43: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Outdoors Mobility, Walking

Page 44: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Similar Improvements in All Tests

• MPTCP vs. Optimal TCP: 10 - 20%• MPTCP vs. WiFi First: 50 - 100%

Page 45: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Energy Experiments

• Bits/Joule varies for the same interface• How do we know which is the more efficient

interface?– Periodically activate all interfaces– Measure Bits/Joule– Switch to the most efficient one

• Compared to TCP WiFI MPTCP improves:– Energy efficiency by 7%– Throughput by 50%

Page 46: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

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

Page 47: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Conclusions

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

multiple interfaces– Gets best throughput and robustness– Might improve energy usage

• Exciting things to do next– Test how real apps work with MPTCP on mobile

phones– Study scenarios with two WiFi, two 3G interfaces

Page 48: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Backup Slides

Page 49: Opportunistic Mobility with Multipath TCP Costin Raiciu Department of Computer Science University Politehnica of Bucharest Joint work with Dragos Niculescu,

Looking Beyond Throughput

• For mobile phones energy matters!• MPTCP can shift connections to the more

efficient interface