icn in the iot on riot - internet engineering task force in the iot on riot cenk gündogan, ... •...

19
ICN in the IoT on RIOT Cenk Gündogan, Oliver Hahm, Thomas C. Schmidt, Mahias Wählisch IETF 98 1

Upload: haque

Post on 03-May-2018

221 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

ICN in the IoT on RIOT

Cenk Gündogan, Oliver Hahm, Thomas C. Schmidt, Matthias Wählisch

IETF 98 1

Page 2: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Outline

1. Problems & Scenarios

2. ICN-IoT Platform: CCN-lite on RIOT

3. Content Dissemination in the IoT: Implementing Pub/Sub

IETF 98 2

Page 3: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Problem Space (that we look at)

• Constrained systems– Memory: scarce kBs

– Storage: the least constraint (if available)

– Operations: possibly long sleep cycles

• Communication – Event triggers insufficiently supported: want no push on

the data plane

– Data availability: timely at lowest price

• Naming– Role of contexts unclear

IETF 98 3

Page 4: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Typical IoT Network Scenarios

• Sparse deployment (of fixed devices)

• Inhomogeneous node coverage

• Partitioned networks

• Mobility

• Intermittent connectivity

• Selected uplinks into a cloud environment

IETF 98 4

Page 5: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Opportunities with ICN for IoT

• Mobility– Mobile devices are common for the use cases

– Content counts, not addresses

• Security– False alarms may lead to shutdowns

– Dropped alarms may lead to health risks

• Network management– Easy deployment and auto-configuration

– Reducing total cost of ownership

• Network caches– May reduce latency for multiple services

– Fixed devices anchor network cachingIETF 98 5

Page 6: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Shortcoming of ICN in the IoT

Routing on Names

• Long names, limited aggregation potentials

• FIBs (too) large, high churn potentials

Simplified Link-layer Model

• NDN assumes point-to-point or broadcast

IoT Wireless is a Broadcast Domain

• Lack of L2 mapping moves all packets to the CPU– Increases system load and energy consumption

• IoT link layer technologies usually restricted to short MTUs– Enhanced susceptibility to interference and loss

IETF 98 6

Page 7: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Implementing ICN in the IoT: Network Stack

Which ICN implementation?

• CCN/NDN

Which operating system for IoT?

• RIOT

Porting CCN-Lite to RIOT

• 1,000 lines of C code

• Required ROM 16 kBytes

• Required RAM 5 kBytesMore details: Emmanuel Baccelli, Christian Mehlis, Oliver Hahm, Thomas C. Schmidt, Matthias Wählisch, Information Centric Networking in the IoT: Experiments with NDN in the Wild, In: Proc. of ACM ICN, pp. 77--86, New York:ACM, 2014. IETF 98 7

Page 8: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

CCN-lite on RIOT

• Joint development started in late 2016

• Objective: Maintain CCN-lite as a RIOT package

• Major refactoring started– Code reorganization

– New source structure and include policies

– Many bug fixes & adaptations (56 PRs closed so far)

– Features related to IoT platforms

• Dedicated branch in CCN-lite repo:https://github.com/cn-uofbasel/ccn-lite/tree/ccnlv2 IETF 98 8

Page 9: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

New Features

• CCN-Lite runs on a wide range of IoT devices via RIOT (analog to NDN-RIOT)

• LoWPAN support added to CCN-Lite– CCN-Lite implements RIOT’s recursive netapi – Inherits support for all protocols/drivers

• Multi-Transceiver /Multi-Stack-Support in RIOT – Enables easy gateway functions

– ICN-MQTT gateway ready

• Two new hooks in CCN-lite– on interest– on cache full

IETF 98 9

Page 10: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Roadmap & Ongoing Steps

• Building a build system: – Modularize code dependencies

– Produce Makefiles …

• CI similar to RIOT environment – replace Travis?

• Enhance data structures for constrained devices

• Eliminating dynamic memory allocation– Provide a fixed size, dynamically usable mem-pool

– Trade protocol state with cache

– Limit names by a fixed max length

IETF 98 10

Page 11: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Content Dissemination

• How to publish data efficiently without continued node presence and huge FIBs?

• draft-gundogan-icnrg-pub-iot-00

IETF 98 11

Page 12: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Pub/Sub in ICN?

• Common Pub: Push on the data plane

• ICN paradigm contradicts pushing of data – still there is around– Unsolicited Push Message

– Interest Notification

– Long-Lived Interest

– Interest polling

• What happens on the control plane?

Page 13: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

ICN Control Plane

• Distributes routing information

• Fills FIBs distribute names– Originally plain broadcast

– Flooding according to selected routing protocols

– Unicast push to Name Collector (PANINI)

– Request/Response replication (Chronosync)

• Publishing = Making a name available?

More details: Thomas C. Schmidt, Sebastian Wölke, Nora Berg, Matthias Wählisch, Let's Collect Names: How PANINI Limits FIB Tables in Name Based Routing, In: Proc. of IFIP Networking, pp. 458–466, IEEE Press, 2016.

Page 14: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Pub/Sub Approach

• Construct a rendezvous network

• RPs are content nodes– Gateways

– Caches

– Content stores (CDN replica …)

• RPs announce prefixes– Prefix-specific

default routing

Page 15: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Publishing Names

• A content producer ‚tells‘ the new name to the content node– Name advertisement along default route

(Panini NAM)• Pushing the name, not the content

Page 16: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Publishing Content

• The content node may request data– Replication to caches/deputy nodes

– Data follows Interest

Page 17: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Subscribing to Content in the IoT

• Interest - following default route– Returns a unique content item

– May carry a „sub“-indicator for future alerts

• Name advertisement– Meta table

(polling)

– NAM advertisement(broadcast/ multicast)

Page 18: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Implementation

IETF 98 18

Page 19: ICN in the IoT on RIOT - Internet Engineering Task Force in the IoT on RIOT Cenk Gündogan, ... • IoT link layer technologies usually restricted to short MTUs – Enhanced susceptibility

Questions & Discussion?

http://riot-os.org/http://ccn-lite.net/

IETF 98 19