Decoupling Information and Connectivity via Information-Centric - - PowerPoint PPT Presentation

decoupling information and connectivity via information
SMART_READER_LITE
LIVE PREVIEW

Decoupling Information and Connectivity via Information-Centric - - PowerPoint PPT Presentation

Decoupling Information and Connectivity via Information-Centric Transport Hila Ben Abraham, Jyoti Parwatikar, John DeHart, Adam Drescher, and Patrick Crowley Computer Science and Engineering (CSE) Washington University in St. Louis Outline


slide-1
SLIDE 1

Decoupling Information and Connectivity via Information-Centric Transport

Hila Ben Abraham, Jyoti Parwatikar, John DeHart, Adam Drescher, and Patrick Crowley

Computer Science and Engineering (CSE) Washington University in St. Louis

slide-2
SLIDE 2

Outline

  • The ICN abstraction and its promise
  • Forwarding strategies
  • Information-Centric Transport (ICT)
  • Sync
  • Push notifications
  • Topics may seem unrelated, but they are important

components in the story of: Decoupling information and connectivity

2

slide-3
SLIDE 3

Outline

  • The ICN abstraction and its promise – Motivation
  • Forwarding strategies – The source of the problem
  • Information-Centric Transport (ICT) – Proposed solution
  • Sync – An ICT example
  • Push notifications – An ICT example
  • Topics may seem unrelated, but they are important

components in the story of: Decoupling information and connectivity

3

slide-4
SLIDE 4

Motivation -The Promise of ICN

Information-Centric Networking (ICN) is based on the “request for named data” abstraction.

4 What is the content for this name? App Interest

slide-5
SLIDE 5

Motivation -The Promise of ICN

Information-Centric Networking (ICN) is based on the “request for named data” abstraction.

5 What is the content for this name? App Interest Data Network’s job to find and retrieve the named data

slide-6
SLIDE 6

Motivation -The Promise of ICN

Information-Centric Networking (ICN) is based on the “request for named data” abstraction.

6 What is the content for this name? App Interest Data Network’s job to find and retrieve the named data It doesn’t matter how

slide-7
SLIDE 7

Motivation -The Promise of ICN

Information-Centric Networking (ICN) is based on the “request for named data” abstraction.

7 What is the content for this name? App Interest Data Network’s job to find and retrieve the named data

ICNs promise that applications can operate in the Information Plane, dealing only with namespaces, and trust relationship. Applications can be decoupled from connectivity.

It doesn’t matter how

slide-8
SLIDE 8

The Problem

  • Forwarding strategies binds applications to the details of

connectivity in an unsustainable way.

  • Two questions that demonstrate this coupling:
  • 1. What is the role of the forwarding strategy component?

– It is underspecified. Strategies are used by both applications and the network.

  • 2. Who chooses a forwarding strategy?

– Neither application developers nor the network operators are qualified!

  • An application can break when the strategy selection or

implementation changes.

8

slide-9
SLIDE 9

The Problem (2)

The problem lies in ICNs, such as NDN and CCN, having

  • ne architectural component, the forwarding strategy,

that both reconciles application and network considerations, and manages the interests of both application developers and network operators.

9

slide-10
SLIDE 10

Step 1: Specify Strategy's Role

10

What is the content for this name?

App Interest Data

Network’s job to find and retrieve the named data

slide-11
SLIDE 11

Step 1: Specify Strategy's Role

11

What is the content for this name?

  • In practice, there is always an actual, real-world connectivity present.

E.g. a collection of one or more connectivity options.

App Interest Data

slide-12
SLIDE 12

Step 1: Specify Strategy's Role

12

What is the content for this name?

  • In practice, there is always an actual, real-world connectivity present.

E.g. a collection of one or more connectivity options.

  • Existing connectivity characteristics must be relied upon to answer the

questions above.

App Interest Data

  • Who might have the data?
  • What is the most efficient

way to retrieve it?

slide-13
SLIDE 13

Step 1: Specify Strategy's Role

13

What is the content for this name?

  • In practice, there is always an actual, real-world connectivity present.

E.g. a collection of one or more connectivity options.

  • Existing connectivity characteristics must be relied upon to answer the

questions above.

  • Applications operate in the information plane, but the network is

required to satisfy the “request for named data” while operating in the connectivity plane.

App Interest Data

  • Who might have the data?
  • What is the most efficient

way to retrieve it?

slide-14
SLIDE 14

Step 1: Specify Strategy's Role (2)

We specify the forwarding strategy as the architectural component that bridges the information and connectivity planes in ICN.

14

slide-15
SLIDE 15

Step 1: Specify Strategy's Role (2)

We specify the forwarding strategy as the architectural component that bridges the information and connectivity planes in ICN.

15

  • Therefore, a forwarding strategy
  • should implement mechanisms with respect to local network

characteristics.

  • should not implement information-oriented mechanisms.
  • can be safely chosen and deployed by network operators,

according to the connectivity they manage.

slide-16
SLIDE 16

Is This Enough?

  • Removing name-based strategy means:

– Applications should not rely on strategy mechanisms. – Applications should only use end-point libraries.

  • This is not enough!

– Same in-network processing for all application. – Applications must respond to connectivity events.

  • What if we have intermittent or lossy links?
  • What if there is never a synchronous end-to-end path?
  • ICN is channel-less, but applications are still bound to the end-to-

end communication model.

– But what if we could deploy information-oriented process in the network? 16

slide-17
SLIDE 17

Step 2: Information-Centric Transport (ICT)

  • ICT is an abstraction, and a distributed service, that can implement

information-oriented mechanisms in the network.

  • An ICT consists of two components:
  • an API for applications at the end hosts,
  • and an intermediate process that runs in the network.
  • An ICT must be designed to support a specific, but broadly

applicable set of application requirements.

  • and for scalability reasons, those needs must be shared among different types
  • f applications.

Interest/ Data

ICT-A API App App Intermittent link or another connectivity concern ICN forwarder + Intermediate ICT(s)

slide-18
SLIDE 18

How can In-Network Transport be Scalable?

  • According to the end-to-end principle, application-specific features

should never reside in the network.

  • Therefore, an ICT must be implemented to capture abstractly a

specific set of application-level needs, and for scalability reasons, those needs must be shared among different types of applications.

– This abstract application needs can be purely semantic to performance and reliability.

  • While Forwarding Strategies implement connectivity-oriented

mechanisms, an intermediate ICT implement information-oriented mechanisms.

18

slide-19
SLIDE 19

Demonstrating the Concept of ICT

  • We do not have a clear understanding of the true needs and

requirements of ICN applications.

  • We demonstrate the ICT concept using two ICTs designed to

support specific application semantics

– ICT-Sync: retrieves all the names under a specific application prefix. – ICT-Notify: pushes the latest content under a namespace.

  • In both of the implemented ICTs, we use the ICT namespace to

express the application semantics.

19

slide-20
SLIDE 20

Why a Sync ICT?

  • What is Sync?

– In ICN, sync is a service that establishes data consistency over time among multiple participants sharing the same prefix. – Sync notifies others when a participant adds content under the shared prefix 20

Alice Bob Ted

Sync-based application /ChatApp/Room-wustl /ChatApp/Room-wustl /ChatApp/Room-wustl

slide-21
SLIDE 21

Why a Sync ICT?

21

Alice Bob Ted

Sync-based application /ChatApp/Room-wustl /ChatApp/Room-wustl /ChatApp/Room-wustl

Bob adds a message: Name: ChatApp/Room-wustl/BobMsg/1 Content: “Hi everyone” Sync will let Alice and Bob know that ChatApp/Room-wustl/BobMsg/1 Was added to the shared dataset Sync will let Alice and Ted know that ChatApp/Room-wustl/BobMsg/1 Was added to the shared dataset

  • What is Sync?

– In ICN, sync is a service that establishes data consistency over time among multiple participants sharing the same prefix. – Sync notifies others when a participant adds content under the shared prefix

slide-22
SLIDE 22

Why a Sync ICT?

22

Alice Bob Ted

Sync-based application /ChatApp/Room-wustl /ChatApp/Room-wustl /ChatApp/Room-wustl

  • What is Sync?

– In ICN, sync is a service that establishes data consistency over time among multiple participants sharing the same prefix. – Sync notifies others when a participant adds content under the shared prefix

  • Sync is a primitive shared by different types of applications

(Dropbox-style file sharing, chat applications and more).

– Because names can represent different types of data

slide-23
SLIDE 23

ICT-Sync

  • ICT-Sync is a proof of concept implementation and an enhancement of

ChronoSync.

– Uses the same data structure and namespace design.

  • The intermediate ICT-Sync

– responds to sync updates by automatically fetching the relevant content. – validates and saves the full Data packet, including the original signature. – serves as a provider of the fetched content. – can be configured to use either persistent storage or the ICN CS 23

Repo NDN Forwarder ICT-Sync intermediate service

Sync Interest Sync Data

An optional intermediate ICT-Sync

App App ICT-Sync* API NDN Forwarder

slide-24
SLIDE 24

Why a notification ICT?

  • ICT-Notify was designed to push the latest known (usually small)

content of an application.

  • Can become a primitive for different types of ICN applications:

– IoT devices, asking to push their latest measurements. – GPS-based tracking applications, asking to push their current location. – Event-driven applications, asking to notify dynamic events. – Traditional applications with event-driven properties.

  • Sync can do it, but it is heavyweight.

24

slide-25
SLIDE 25

ICT-Notify

  • Push notification is a hard problem in ICN.
  • We used long-lived interests with a namespace design that allows

us to push small pieces of content within one-way delay latency.

– We don’t focus on the specifics of the mechanism, but on its role as an ICT.

  • The intermediate ICT-Notify service, does not require a repository,

but only needs to ”remember” the last pushed data

– By only looking at its name.

slide-26
SLIDE 26

Deploying an Intermediate ICT

  • An intermediate ICT should be deployed where connectivity might

impact applications.

  • When deployed in the network, an intermediate ICT can make the

ICT-based applications agnostic to connectivity, even with intermittent links or inconsistent end-to-end path.

  • The ICT name gives the context.

– Without revealing the content!! 26

Alice Bob Ted

ICT-based application Intermittent link

2 1

Intermediate ICT The parties don’t know about ICT The intermediate ICT is deployed by the

  • perator

ICT API ICT API ICT API

slide-27
SLIDE 27

27

  • Linux Host
  • Linux Software Router (SWR)

Tested Topologies in Open Network Lab (ONL)

slide-28
SLIDE 28

ICT-Sync Demo – File Transfer

28 10% loss 0% loss 20% loss 30% loss NDN IP

slide-29
SLIDE 29

ICT-Notify Demo – Location Tracking App

29 Reliable links Never a synchronous end-to-end path

slide-30
SLIDE 30

Takeaways

  • The goal of this paper is to propose architectural modifications to

ICN that allow effective decoupling of information and connectivity mechanisms.

  • We do this by specifying that:

– Forwarding strategies should implement only connectivity-oriented mechanism, and should be chosen by network operators. – Information-oriented mechanisms should be implemented by Information-Centric Transport (ICT).

  • We implemented ICT-Sync and ICT-Notify to address specific

name-based semantics.

– Retrieve all the names of a shared prefix – Push the latest content of the shared prefix

30

slide-31
SLIDE 31

Future Work

  • How can an ICT be designed to support performance and reliability

requirements while keeping the application decoupled from connectivity?

– mechanisms for performance properties intrinsically couple information-level and connectivity-level considerations.

  • Name-based ICT might be too simplistic

– Explore other discovery mechanisms.

  • Where to deploy intermediate services?

– At every hop? Selected routers? Should all ICTs be deployed at the same places? Or is it related to their mechanisms? We need to quantify the tradeoffs.

  • Is the a finite set of ICTs?
  • What are the Security implications?

31

slide-32
SLIDE 32

Questions?

  • Thank you!

32