multipath tcp proxy n.
Skip this Video
Loading SlideShow in 5 Seconds..
MultiPath TCP Proxy PowerPoint Presentation
Download Presentation
MultiPath TCP Proxy

Loading in 2 Seconds...

play fullscreen
1 / 21

MultiPath TCP Proxy - PowerPoint PPT Presentation

  • Uploaded on

MultiPath TCP Proxy. Presented by: Yongzhi Zhuang, Wei Zeng, Jianlei Zhang. TCP. two functions: reliable transmit and congestion control 95% Internet traffic driven by TCP Single TCP connection not support different application interfaces

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'MultiPath TCP Proxy' - ninon

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
multipath tcp proxy
MultiPath TCP Proxy

Presented by: Yongzhi Zhuang,

Wei Zeng,

Jianlei Zhang

  • two functions: reliable transmit and congestion control
  • 95% Internet traffic driven by TCP
  • Single TCP connection not support different application interfaces
  • Today, high demanding applications increaseing very fast.
multipath tcp
MultiPath TCP
  • Allow single data connection to use for multi interfaces
  • Resource pooling helps to increase bandwidth
  • Possible to switch between interfaces
  • Establish several subflows for the same connection
multipath proxy
MultiPath Proxy
  • Problem:
    • most of the servers not support MultiPath TCP
  • Solution:
    • set up a proxy on the path
mptcp scenario mobile client
MPTCP Scenario(mobile client)
  • MPTCP client sends SYN to proxy with the server’s address, proxy initiates connection to server.
mptcp scenario mobile client1
MPTCP Scenario(mobile client)
  • New subflow connets to the server
mptcp scenario mobile client2
MPTCP Scenario(mobile client)
  • After the proxy knows server is MP_CAPABLE, sends ADD_ADDRESS to client.
  • New subflow will be set up directly from client to server with proxy used as backup.
  • Data traffic not bother proxy.
our goal
Our Goal
  • Primary Goal:
    • Implement a basic MPTCP proxy between MPTCP client and Non-MPTCP server, then increasingly improve its functionality
  • Optional Goal:
    • Consistent with congestion control algorithm
    • TCP checksum validation
mptcp proxy

MPTCP Client



implicit vs explicit
Implicit vs. Explicit
  • Explicit Proxy
    • Configured client to use the proxy for all connection
    • Signaling Problem: How to tell the real destination
  • Implicit Proxy
    • Transparent to Client and Server
    • Deploy on the direct routing path between Client and Server
    • Inspect and then inject the packet
connection setup
Connection Setup

MPTCP Client







4. ADD_ADDR(Address of Proxy)

5. Tell Client to use proxy directly (e.g. REMOVE_ADDR(Address of Server))

connection setup issues
Connection Setup: Issues
  • Intercept the packet and establish the connection without breaking the original handshake
  • Client’s other interface may use other path to establish sub connection with server before we indicate the client to use proxy
data transfer
Data Transfer

MPTCP Client



F1 seqno. 1000 DSN 0

seqno. 1, 2, 3

F2. seqno. 2000 DSN 1

F1 seqno. 1001 DSN 2

data transfer issues
Data Transfer: Issues
  • Data Sequence Number Mapping
  • Data re-assemble and re-order
  • Acknowledgement Mechanism
  • Congestion Control and Performance
  • User space packet handling
  • Data transfer
      • Data Sequence mapping between sub-flows
      • Basic Acknowledgement mechanism
  • TCP Proxy  MPTCP Proxy
  • State machine
  • Rules about how to transform packet and what need to be transform
  • Yongzhi, Zhuang
    • Key coder
  • Jianlei, Zhang
    • Documentation work

meeting notes & report writing

    • Testing & evaluation
  • Wei, Zeng
    • Project manager

assign work to each member, keep project processing in time

    • Seconder coder
time plan
Time Plan
  • Background Research – 2 week
  • Initial Design - 1 week
  • Implementation – 5 weeks
    • Minimum requirements
      • Packets handle
      • Connection setup
      • Data uplink forwarding
      • Data downlink forwarding
    • Optional Functions
      • Congestion Control
      • Checksum
  • Testing and Evaluation – 2 weeks
  • Dissertation Writing – 2 weeks
resource manage
Resource Manage
  • Version Control System

Google Code + SVN

  • Documentation

Evernote: using a shared account to manage meeting notes, design drafts, relative materials.

risk management
Risk Management
  • Schedule flaws

Lack of through understanding the work involved, under estimate the time need to complete certain function. Group members may have some unexpected issues in this summer.

    • Technical Issues

Because of the current internet structure and protocol, we may meet some unsolvable problem.

  • Design mistake and Bug

We may spend a a lot time in going wrong direction, and solving bug.

  • Control Risk

Define minimum requirements, keep the whole processing as fast as the plan.