CCNxCon2012: Session 5: HTTP/CCN Gateway and Cooperative Caching Demonstrator

Preview:

DESCRIPTION

HTTP/CCN Gateway and Cooperative Caching Demonstrator Dariusz Bursztynowski, Mateusz Dzida, Tomasz Janaszka (Telekomunikacja Polska, Orange Labs Poland), Adam Dubiel (Warsaw University of Technology, Poland), Michal Rowicki (Warsaw University of Technology and Telekomunikacja Polska, Poland)

Citation preview

CCNx Comm. Meeting, Sophia-Antipolis, Sept. 12-13, 2012

Orange Labs

1. Motivation

• Experiment with caching schemes using real traffic(HTTP dominates)

• Hands-on on application level => universal HTTP/CCN gateway (able to operate in different settings: inbound/outbound proxy, HTTP tunelling)

2. Naming and mapping of messages

3. Architecture – functional settings

CCN client / IP server

4. Actual setup

• CCN client / IP server

• CCN client / CCN server

Watch the demo for more details

Client/server HTTP/CCN gateway in CCN environment with cooperative caching

6. Demo use cases

CCNxnetwork monitoring

browser

local contentstatistics

grid cluster HTTP/CCN

HTTP/CCN

CCNxnetwork monitoring

browser

local contentstatistics

grid cluster HTTP/CCN

HTTP/CCN

Requirements• 100% HTTP compatibility• easy to implement• future-proof to the changes of CCNx protocol

Two basic rules adopted:• Request header – mapped onto content name using

command markers• Entity Body always conveyed in Data packets

(sequences of Interest/Data may be required)

Examples:

GET

POST

ccnx://http/<request_method_name>/<URL>/<abs_path>....../%C1.http.<header_field_name>~Eb64(field_value)/%C1.http...

Need to upload a file using the POSTmethod

Interest (can I send ?)

name:

name:content: OK

Data [OK] (wait for the Interest that prompts you to specify your request)

Interest (specify your POST request)

Data (well, I’m posting this)

name:

content:

Interest (please, send a server OK response to me)

+ body

Data (here goes the OK to the POST)

name:content: OK

Need to upload a file using the POSTmethod

Interest (can I send ?)

name:

name:content: OK

Data [OK] (wait for the Interest that prompts you to specify your request)

Interest (specify your POST request)

Data (well, I’m posting this)

name:

content:

Interest (please, send a server OK response to me)

+ body

Data (here goes the OK to the POST)

name:content: OK

HTTPserver

HTTPclient

HTTPserver

HTTPclient

CCN client / CCN server + IP client/IP server/CCN tunelling

HTTPserver

HTTPclient

HTTPclient

CCN

IP

IP

IP

CCN

Registered names

Server

FileHTTPserver

HTTPclient

HTTPclient

CCN

IP

IP

IP

CCN

Registered names

Server

File