OCALA O verlay C onvergence A rchitecture for supporting L egacy A pplications on O verlays

16
OCALA Overlay Convergence Architecture for supporting Legacy Applications on Overlays Dilip Antony Joseph 1 , Jayanth Kannan 1 , Ayumu Kubota 2 , Karthik Lakshminarayanan 1 , Ion Stoica 1 , Klaus Wehrle 3 1 UC Berkeley, 2 KDDI Labs, 3 University of Tübingen

description

OCALA O verlay C onvergence A rchitecture for supporting L egacy A pplications on O verlays. Dilip Antony Joseph 1 , Jayanth Kannan 1 , Ayumu Kubota 2 , Karthik Lakshminarayanan 1 , Ion Stoica 1 , Klaus Wehrle 3. 1 UC Berkeley, 2 KDDI Labs, 3 University of Tübingen. Motivation. - PowerPoint PPT Presentation

Transcript of OCALA O verlay C onvergence A rchitecture for supporting L egacy A pplications on O verlays

Page 1: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

OCALAOverlay Convergence Architecture for

supporting Legacy Applications on Overlays

Dilip Antony Joseph1, Jayanth Kannan1, Ayumu Kubota2, Karthik Lakshminarayanan1, Ion Stoica1, Klaus

Wehrle3

1UC Berkeley, 2KDDI Labs, 3University of Tübingen

Page 2: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Motivation• Many attempts to improve the Internet:

– i3 : mobility, NAT traversal, anycast, multicast– DOA: middlebox support– OverQoS: quality of service– SIFF: resilience against DDoS attacks

• But still no widespread deployment…

• Problem: rewriting/porting popular applications for new architectures a daunting task!

Page 3: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Goal

• Support legacy applications (e.g. ssh, Firefox, IE) over new network architectures and overlays– Enable users to take advantage of new network

functionality using their favorite applications!

Page 4: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Solution: Overlay Convergence Architecture for Legacy Applications (OCALA)

Overlay Convergence (OC) LayerOverlay Convergence (OC) Layer

Overlay(DOA, DTN, HIP, i3, RON, …)

Overlay(DOA, DTN, HIP, i3, RON, …)

Legacy Applications(ssh, firefox, explorer, …)

Legacy Applications(ssh, firefox, explorer, …)

Transport Layer(TCP, UDP, …)Transport Layer(TCP, UDP, …)

OC Independent (OC-I) Sublayer

OC Dependent (OC-D) Sublayer

Interpose an Overlay Convergence Layer between transport layer and overlay networks

Interpose an Overlay Convergence Layer between transport layer and overlay networks

Page 5: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Simultaneous access to multiple overlays

OC-IOC-I

i3

FirefoxFirefox

OC-IOC-I

RON

sshssh

www.cnn.comRON

IRCIRC sshssh

OC

-D

i3RON

Internet

…OC-IOC-I

i3

IRCIRC

Host A

Host B

Host C

IP

Page 6: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Which overlay to use?

• IP address and port number : – Eg: Forward all packets sent to 128.32.132.223 port 22 over RON

• DNS name: – Eg: Forward all packets sent to berkeley.edu.ron over RON

– Eg: Forward all packets sent to berkeley.edu.i3 over i3

Page 7: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Bridging Multiple Architectures

• Communication across overlays

• Stitch together functionality

OC-I

Host A

Appl.

OC-I

Host C (foo.ron)

Appl.

OC-I

Host B (bar.i3)

i3

OC

-D

i3 RONi3 RON

RON

tunnel tunnel

path

Page 8: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Legacy Client Gateways – Demo

• Clients need not run OCALA locally• Gateway has special Legacy Client IP (LCIP)

module

OC-I

Appl.

OC-I

LCIP OV

Legacy gateway

Overlay (OV)Internet

Legacy Client

OV

Overlay server (dilip.i3)

DNSreq(dilip.i3.ocalaproxy.net)

Page 9: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Legacy Server Gateways• Server need not run OCALA locally• Special OC-D module called Legacy Server IP (LSIP) at gateway• LSIP behaves like a software NAT box

OC-I

Appl.

OC-I

OV LSIP

Legacy gateway

Overlay (OV) Internet

Overlay client

OV

Legacy server(www.nasa.gov)

*.gov OV…

Configuration file

Page 10: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Legacy Client Gateways – Demo

• Can access following links:– http://ionhome.pli3.ocalaproxy.net:8040/ifconfi

g.html

– http://rodrigo.pli3.ocalaproxy.net:8040/gallery/albums.php

– http://dilip.pli3.ocalaproxy.net:8040/april/april8_10_Vodafone_UIUC/index.html

Page 11: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Overlay Convergence Architecture for Legacy Applications (OCALA)

Overlay Convergence (OC) LayerOverlay Convergence (OC) Layer

Overlay(DOA, DTN, HIP, i3, RON, …)

Overlay(DOA, DTN, HIP, i3, RON, …)

Legacy Applications(ssh, firefox, explorer, …)

Legacy Applications(ssh, firefox, explorer, …)

Transport Layer(TCP, UDP, …)Transport Layer(TCP, UDP, …)

OC Independent (OC-I) Sublayer

OC Dependent (OC-D) Sublayer

Interpose an Overlay Convergence Layer between transport layer and overlay networks

Interpose an Overlay Convergence Layer between transport layer and overlay networks

Page 12: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Setting up a new connection

Legacy App.

Transport Layer

OC-I LayerOC-I Layer

OC LayerOC Layer

1 DNSreq(foo.ov)

Name Res. Service (local addrbook,

DNS, OpenDHT…)

Host A

Host B (foo.ov, IDB)

Overlay(DTN, i3, RON)

i3 RON …

2 setup(foo.ov)

3 resolve(foo.ov)

4 IDB5 overlay specific

setup protocol

DNSresp(oc_handle = IPAB)8

tunnel_d = tdAB6

1.x.x.x

OCI-Setup (pdAB)7

Page 13: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Data Flow

Overlay(DTN, i3, RON)

pdAB ↔ IPAB

pdAB tdAB

tdAB IDB

Legacy App.

Transport Layer

IPAB data

pdAB dataIPABtdAB,

pdAB dataIPABIDB

pdAB ↔ IPBA

tdBAIDA

Legacy App.

Transport Layer

IPBA data

pdAB dataIPAB

Host A (IDA) Host B (foo.ov, IDB)

OC-I

OC-D OC-D

OC-I“foo.ov” pdAB

pdAB tdBA

Page 14: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Implementation

• Implemented as a proxy to be run by the user.– tun device used to capture packets

• Works on Linux and Windows XP/2000– Mac almost done…

• OC-D modules– Dynamically loadable libraries.– Implemented RON, i3, DOA, HIP OC-D modules.

• 250 lines of glue code in case of RON.• HIP/DOA OC-D modules implemented by HIP/DOA researchers

• Configuration GUI

Page 15: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Common functionality

• Functionality required by multiple overlays implemented in the OC-I layer

• Example: Security– Similar to SSL– Modifications for supporting middleboxes

Page 16: OCALA O verlay  C onvergence  A rchitecture for supporting  L egacy  A pplications on  O verlays

Conclusion

• Enables unmodified legacy applications to simultaneously access multiple overlays

• Stitch together functionality of different overlays

• Helps network researchers bring functionality of new network architectures to real users