nasdi - naming and service discovery for dtns in internet ......nasdi - naming and service discovery...

27
NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt , Wolf-Bastian Pöttner, Oliver Ohneiser, Lars Wolf, Mobilware 2012, Berlin

Upload: others

Post on 13-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI - Naming and Service Discovery forDTNs in Internet Backbones

Sebastian Schildt, Wolf-Bastian Pöttner, Oliver Ohneiser, Lars Wolf,Mobilware 2012, Berlin

Page 2: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

DTN Primer

Delay & Disruption Tolerant NetworkingNo continuous end-to-end connectivity in the network

Interplanetary Networks (NASA)

Mobile Sensor Networks

Pocket Switched Networks (Mobile Phones)

VANETs

A standardization effort for DTNs is underway in form of the BundleProtocol, specified in RFC5050

Mobilware 2012, Berlin Sebastian Schildt Page 2NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 3: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Bundle Protocol: DTN-Internet Convergence

Standard Bundle Protocol convergence layers (TCP-CL, UDP-CL)use internet standard protocols as transport

DTNs are used in fringe networks, which have localized andintermittent Internet connectivity

Intermittent 3G connection on a mobile deviceInternet enabled sink node in sensing apps

Bad idea: Use an application proxy at the border of the network tointerface with “The Internet”

Good idea: Use Bundle Protocol end-to-end

Mobilware 2012, Berlin Sebastian Schildt Page 3NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 4: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Bundle Protocol: DTN-Internet Convergence

Standard Bundle Protocol convergence layers (TCP-CL, UDP-CL)use internet standard protocols as transport

DTNs are used in fringe networks, which have localized andintermittent Internet connectivity

Intermittent 3G connection on a mobile deviceInternet enabled sink node in sensing apps

Bad idea: Use an application proxy at the border of the network tointerface with “The Internet”

Good idea: Use Bundle Protocol end-to-end

Mobilware 2012, Berlin Sebastian Schildt Page 3NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 5: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Bundle Protocol: DTN-Internet Convergence

Standard Bundle Protocol convergence layers (TCP-CL, UDP-CL)use internet standard protocols as transport

DTNs are used in fringe networks, which have localized andintermittent Internet connectivity

Intermittent 3G connection on a mobile deviceInternet enabled sink node in sensing apps

Bad idea: Use an application proxy at the border of the network tointerface with “The Internet”

Good idea: Use Bundle Protocol end-to-end

Mobilware 2012, Berlin Sebastian Schildt Page 3NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 6: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Bundle Protocol State of the Art

RoutingEpidemic, PRoPHET, Direct-Contact, Static, ...

Decide what to transfer when meeting a neighbor

Neighbor (Discovery)Configure static contacts

IP Neighbor Discovery (IETF Draft)

Proprietary DTN2 neighbor discovery

Mobilware 2012, Berlin Sebastian Schildt Page 4NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 7: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Bundle Protocol State of the Art

RoutingEpidemic, PRoPHET, Direct-Contact, Static, ...

Decide what to transfer when meeting a neighbor

Neighbor (Discovery)Configure static contacts

IP Neighbor Discovery (IETF Draft)

Proprietary DTN2 neighbor discovery

Mobilware 2012, Berlin Sebastian Schildt Page 4NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 8: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

The Result: DTNBone “WNS”

“ dtnbone [...] denote[s] our effort to establish a worldwide collection ofnodes running DTN bundle agents and applications.”

Wiki Name System!

Mobilware 2012, Berlin Sebastian Schildt Page 5NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 9: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

The Result: DTNBone “WNS”

“ dtnbone [...] denote[s] our effort to establish a worldwide collection ofnodes running DTN bundle agents and applications.”

Wiki Name System!

Mobilware 2012, Berlin Sebastian Schildt Page 5NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 10: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

What is Needed?

Problem StatementWe should be able to contact a Bundle Protocol DTN node by itsname: the Endpoint Identifier (EID)

This should work across the Internet

RequirementsNo additional restrictions: EIDs are URIs offering a flat namespace,as the BP specification imposes no further semantics

No additional infrastructure: Nobody wants to operate or pay for aDNS-like infrastructure

Mobilware 2012, Berlin Sebastian Schildt Page 6NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 11: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

What is Needed?

Problem StatementWe should be able to contact a Bundle Protocol DTN node by itsname: the Endpoint Identifier (EID)

This should work across the Internet

RequirementsNo additional restrictions: EIDs are URIs offering a flat namespace,as the BP specification imposes no further semantics

No additional infrastructure: Nobody wants to operate or pay for aDNS-like infrastructure

Mobilware 2012, Berlin Sebastian Schildt Page 6NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 12: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Solution Outline

Use a Distributed Hash Table (DHT) to store naming information.

Steinmetz, R., & Wehrle, K. (2005). Peer-to-peer systems and Applications

DHT=P2P, decentralized, scalable ( ∼ O(log(n)) node state andcommunication steps for retrieval)

Mobilware 2012, Berlin Sebastian Schildt Page 7NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 13: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Solution Outline

Use a Distributed Hash Table (DHT) to store naming information.

Steinmetz, R., & Wehrle, K. (2005). Peer-to-peer systems and Applications

DHT=P2P, decentralized, scalable ( ∼ O(log(n)) node state andcommunication steps for retrieval)

Mobilware 2012, Berlin Sebastian Schildt Page 7NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 14: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Basics

DHT solution based on KademliaMaidSafe DHT BSDlicensedKademliaimplementation

Advanced NAT traversal

Sophisticated timeout mechanisms

Beneficial for nodes not implementing NASDI

High-speed asynchronous change notifications

Mobilware 2012, Berlin Sebastian Schildt Page 8NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 15: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Overview

Masqueraded IP based Network

IP based Network

Non IP based Network

dtn://gw_x.dtn

dtn://gw.y.dtn

dtn://gw_z.dtn

dtn://sensornode1.dtn

dtn://mobile1.y.dtn

dtn://mobile1.y.dtn

DHT Member Node

NASDI Aware Node

NASDI Unaware Node

Mobilware 2012, Berlin Sebastian Schildt Page 9NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 16: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Record

valstored

Key ABBC2134

Value

time_to_live

type_information_list

time_since_last_seen

time_refresh_passive

type_entry

1000

TCP, UDP

200

100

SINGLE

key: Hashed EID ( H(dtn://node1.dtn ) )

type_entry: Entry for a node (not a group)

type_information_list: TCP or UDP connectivity information

Mobilware 2012, Berlin Sebastian Schildt Page 10NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 17: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Timeouts

time_to_live: Expected minimum validity for this entry in seconds

time_since_last_seen: Seconds since the last time this entry wasupdated

time_refresh_passive: Timeout after which the publisher promisesto refresh the entry

time_since_last_seen > time_refresh_passive indicates connectivityproblems

Mobilware 2012, Berlin Sebastian Schildt Page 11NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 18: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Proxied Nodes

Masqueraded

IP based

Network

IP based

Network

Non IP based

Network

dtn://gw_x.dtn

dtn://gw.y.dtn

dtn://gw_z.dtn

dtn://sensornode1.dtn

dtn://mobile1.y.dtn

dtn://mobile1.y.dtn

DHT Member Node

NASDI Aware Node

NASDI Unaware Node

A node can

Request being proxied by another node

Opt-out from being proxied via IPND (i.e. if it does not want to bediscoverable by outisde nodes)

Be proxied automatically if a neighbor’s NASDI implementation isset to publish neighbors (which do not opt-out) automatically

Mobilware 2012, Berlin Sebastian Schildt Page 12NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 19: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Asynchronous Notification

SituationIn a DTN it is to be expected that nodes will not be available at anygiven moment

ConsequencesA node wants to connect a certain EID, but cannot find anyconnectivity information in the DHT

A node has connectivity information but it is outdated (i.e. the nodecannot be connected)

The node wants to be notified as soon as possible, once the targetbecomes available (no polling)

Mobilware 2012, Berlin Sebastian Schildt Page 13NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 20: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Asynchronous Notification

1. Store a notification request using the key belonging to the EID weare interested in

Include our own EIDDescribe which events we are interested inSpecify whether this is a one-shot or continuous notification

2. Once the node rejoins the network or its entry is updated, thisrequest will be routed to the same DHT member that stored the EID

3. Upon a store request each DHT member checks, whether there areany pending notification requests for that key. If available, theinterested node will be contacted immediately

Mobilware 2012, Berlin Sebastian Schildt Page 14NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 21: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Asynchronous Notification

1. Store a notification request using the key belonging to the EID weare interested in

Include our own EIDDescribe which events we are interested inSpecify whether this is a one-shot or continuous notification

2. Once the node rejoins the network or its entry is updated, thisrequest will be routed to the same DHT member that stored the EID

3. Upon a store request each DHT member checks, whether there areany pending notification requests for that key. If available, theinterested node will be contacted immediately

Mobilware 2012, Berlin Sebastian Schildt Page 14NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 22: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Asynchronous Notification

1. Store a notification request using the key belonging to the EID weare interested in

Include our own EIDDescribe which events we are interested inSpecify whether this is a one-shot or continuous notification

2. Once the node rejoins the network or its entry is updated, thisrequest will be routed to the same DHT member that stored the EID

3. Upon a store request each DHT member checks, whether there areany pending notification requests for that key. If available, theinterested node will be contacted immediately

Mobilware 2012, Berlin Sebastian Schildt Page 14NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 23: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

NASDI Notification Latency

DHT

Processing34 ms

IBR-DTN Node 2

Store 1 ms

IBR-DTN Node 1

send to node 2

Notify 1 ms

Processing2988 ms Transfer bundle 2 ms

Processing61 ms

NotifyRequest

Establish TCP connection

received bundle

Mobilware 2012, Berlin Sebastian Schildt Page 15NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 24: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Conclusions

BenefitsVersatile Naming and Service Discovery for BP DTNs

Based on a fully featured, stable DHT implementation

Fast notification mechanism

ChallengesLots of of dependencies for the DHT library (embedded devices)

Chicken/Egg problem in deployment: How to reach critical mass?

Current StateAlready reimplemented main parts of the NASDI concept in top ofthe BitTorrent DHT (currently shipped with IBR-DTN)

Mobilware 2012, Berlin Sebastian Schildt Page 16NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 25: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Conclusions

BenefitsVersatile Naming and Service Discovery for BP DTNs

Based on a fully featured, stable DHT implementation

Fast notification mechanism

ChallengesLots of of dependencies for the DHT library (embedded devices)

Chicken/Egg problem in deployment: How to reach critical mass?

Current StateAlready reimplemented main parts of the NASDI concept in top ofthe BitTorrent DHT (currently shipped with IBR-DTN)

Mobilware 2012, Berlin Sebastian Schildt Page 16NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 26: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Conclusions

BenefitsVersatile Naming and Service Discovery for BP DTNs

Based on a fully featured, stable DHT implementation

Fast notification mechanism

ChallengesLots of of dependencies for the DHT library (embedded devices)

Chicken/Egg problem in deployment: How to reach critical mass?

Current StateAlready reimplemented main parts of the NASDI concept in top ofthe BitTorrent DHT (currently shipped with IBR-DTN)

Mobilware 2012, Berlin Sebastian Schildt Page 16NASDI - Naming and Service Discovery for DTNs in Internet Backbones

Page 27: NASDI - Naming and Service Discovery for DTNs in Internet ......NASDI - Naming and Service Discovery for DTNs in Internet Backbones Sebastian Schildt, Wolf-Bastian Pöttner, Oliver

Conclusions

BenefitsVersatile Naming and Service Discovery for BP DTNs

Based on a fully featured, stable DHT implementation

Fast notification mechanism

Thank you!Current State

Already reimplemented main parts of the NASDI concept in top ofthe BitTorrent DHT (currently shipped with IBR-DTN)

Mobilware 2012, Berlin Sebastian Schildt Page 16NASDI - Naming and Service Discovery for DTNs in Internet Backbones