multipath tcp proxy n.
Download
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


  • 192 Views
  • 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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
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

slide2
TCP
  • 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 Proxy

MPTCP Client

MPTCP Proxy

Server

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

MPTCP Proxy

Server

1. SYN MP_CAPABLE

Intercept

3. SYN ACK MP_CAPABLE

2. SYN ACK NON MP_CAPABLE

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

MPTCP Proxy

Server

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
approach
Approach
  • 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
slide17
Role
  • 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

http://code.google.com/p/mptcp-proxy/

  • 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.