opportunistic mobility with multipath tcp
Post on 24-Feb-2016
55 Views
Preview:
DESCRIPTION
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