opportunistic mobility with multipath tcp

Post on 24-Feb-2016

55 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

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). Mobile Devices Everywhere!. Smartphones. Tablets. Cars. - PowerPoint PPT Presentation

TRANSCRIPT

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)

Mobile Devices Everywhere!Smartphones Tablets Cars

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

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?

What is a good mobility strategy?

3G celltower

What is a good mobility strategy?

3G celltower

What is a good mobility strategy?

3G celltower

What is a good mobility strategy?

3G celltower

Make Before Break

What is a good mobility strategy?

3G celltower

Make Before Break

What is a good mobility strategy?

3G celltower

What is a good mobility strategy?

3G celltower

Make Before Break

What is a good mobility strategy?

3G celltower

What is a good mobility strategy?

3G celltower

Actively Use Multiple Interfaces

What is a good mobility strategy?

3G celltower

Actively Use Multiple Interfaces

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

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

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

MPTCP Mobile Architecture

3G celltower

MPTCP Mobile Architecture

3G celltowerSYN

MP_CAPABLE X

MPTCP Mobile Architecture

3G celltower

SYN/ACK

MP_CAPABLE Y

MPTCP Mobile Architecture

3G celltower

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

SYN JOIN Y

MPTCP Mobile Architecture

3G celltower

STATECWNDSnd.SEQNORcv.SEQNO…

SYN/ACK JOIN X

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATA

SEQ A

DSEQ: 1

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATASEQ B

DSEQ: 2

DATA

SEQ A

DSEQ: 1

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATASEQ B

DSEQ: 2

MPTCP Mobile Architecture

3G celltower

STATE ACWNDSnd.SEQNORcv.SEQNO…

STATE BCWNDSnd.SEQNORcv.SEQNO…

DATA

SEQNO A

DSEQ: 2

DATASEQ B

DSEQ: 2

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

Proxy Functionality: Server Does Not Speak MPTCP

3G celltower

MPTCP Proxy

Proxy Functionality: Server Does Not Speak MPTCP

3G celltower

MPTCP Proxy

Proxy Functionality: Server Speaks MPTCP

3G celltower

MPTCP Proxy

Proxy Functionality: Server Speaks MPTCP

3G celltower

MPTCP Proxy

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]

Algorithms under test

• TCP 3G, TCP WiFi

• WiFi First: switch to WiFi if available

• Optimal TCP = Migrate TCP + Oracle

• MPTCP

Outdoors Mobility, Walking

Outdoors Mobility, Walking

Outdoors Mobility, Walking

Outdoors Mobility, Walking

Outdoors Mobility, Walking

Outdoors Mobility, Walking

Similar Improvements in All Tests

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

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%

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

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

Backup Slides

Looking Beyond Throughput

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

efficient interface

top related