RPL: Routing for IoT. Bardh Prenkaj Dept. of Computer Science. Internet of Things A.A

Similar documents
Lesson 4 RPL and 6LoWPAN Protocols. Chapter-4 L04: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

Routing Protocol for LLN (RPL) Configuration Guide, Cisco IOS Release 15M&T

Analysis and Enhancement of RPL under Packet Drop Attacks

Mobile Communications

RPL- Routing over Low Power and Lossy Networks

Wireless Sensor Networks Module 2: Routing

Study of RPL DODAG Version Attacks

Routing over Low Power and Lossy Networks

Principles of Wireless Sensor Networks

Routing in the Internet of Things (IoT) Rolland Vida Convergent Networks and Services

Design and Analysis of Routing Protocol for IPv6 Wireless Sensor Networks

Semainaire Objects connectés industriels, M2M, réseaux June 12th, 2014 IoT et Smart Cities: comment passer à l échelle

An Algorithm for Timely Transmission of Solicitation Messages in RPL for Energy-Efficient Node Mobility

Internet Engineering Task Force (IETF) Request for Comments: ISSN: March 2012

Enhancing Routing Protocol for Low Power and Lossy Networks

INTERNATIONAL JOURNAL OF COMMUNICATIONS Volume 12, Performance comparative analysis of LOADing-CTP and RPL routing protocols for LLNs

Load Balancing Metric Based Routing Protocol for Low Power and Lossy Networks (lbrpl)

Optimizing Routing Protocol for Low power and Lossy Network (RPL) Objective Function for Mobile Low-Power Wireless Networks

IoT Roadmap in the IETF. Ines Robles

ns-3 RPL module: IPv6 Routing Protocol for Low power and Lossy Networks

Politecnico di Milano Advanced Network Technologies Laboratory. 6LowPAN

The P2P-RPL Routing Protocol for IPv6 Sensor Networks: Testbed Experiments

Intended Status: Standard Track. March 12, Optimization of Parent-node Selection in RPL-based Networks draft-hou-roll-rpl-parent-selection-00

Resource Aware Routing Protocol in Heterogeneous Wireless Machine-to-Machine Networks

Leveraging upon standards to build the Internet of Things

RPL: The IP routing protocol designed for low power and lossy networks

Intended status: Standards Track. H. Chen Huawei Technologies October 05, 2016

Iden%fying Defunct DAGs in RPL dra7- goyal- roll- defunct- dags- 00. Mukul Goyal University of Wisconsin Milwaukee

ns-3 RPL module: IPv6 Routing Protocol for Low power and Lossy Networks

arxiv: v1 [cs.ni] 8 Jun 2016

Secure routing in IoT networks with SISLOF

Cisco Systems, Inc. October Performance Evaluation of the Routing Protocol for Low-Power and Lossy Networks (RPL)

Comparative Study of RPL-Enabled Optimized Broadcast in Wireless Sensor Networks

A Comparative Performance Study of the Routing Protocols RPL, LOADng and LOADng-CTP with Bidirectional Traffic for AMI Scenario

IPv6 Neighbor Discovery

Performance Evaluation of Routing Protocols in Lossy Links for Smart Building Networks

A Dinamic Multi-Layer Self-Healing Algorithm for WSN using Contiki OS

A Critical Evaluation of the IPv6 Routing Protocol for Low Power and Lossy Networks (RPL)

Internet Engineering Task Force (IETF) Category: Standards Track. September The Minimum Rank with Hysteresis Objective Function

RF and network basics. Antonio Liñán Colina

Study of Multipoint-to-Point and Broadcast Tra c Performance in the IPv6 Routing Protocol for Low Power and Lossy Networks

THE Internet-of-Things (IoT) has become a new focus for

IPv6 Neighbor Discovery

Wireless Sensor Networks, energy efficiency and path recovery

MULTI-CONSTRAINTS ADAPTIVE LINK QUALITY INDEX BASED MOBILE-RPL ROUTING PROTOCOL FOR LOW POWER LOSSY NETWORKS

Research Article RPL Mobility Support for Point-to-Point Traffic Flows towards Mobile Nodes

Optimized Neighbor Discovery for 6LoWPANs: Implementation and Performance Evaluation

Multi DODAGs in RPL for Reliable Smart City IoT

IETF 93 ROLL. Routing over Low-Power And Lossy Networks. Chairs: Michael Richardson Ines Robles

A Performance Evaluation of RPL in Contiki

RIP Configuration. RIP Overview. Operation of RIP. Introduction. RIP routing table. RIP timers

Quantitative Analysis and Evaluation of RPL with Various Objective Functions for 6LoWPAN

A RPL based Adaptive and Scalable Data-collection Protocol module for NS-3 simulation platform

Politecnico di Milano Advanced Network Technologies Laboratory. 6LowPAN

Conference Paper. Cyber-OF: An Adaptive Cyber-Physical Objective Function for Smart Cities Applications

Introduction to IPv6 - II

Routing Protocols in Internet of Things. Charlie Perkins December 15, 2015 with a few slides originated by Pascal

3. Evaluation of Selected Tree and Mesh based Routing Protocols

IPv6 Neighbor Discovery

ICS 351: Today's plan. distance-vector routing game link-state routing OSPF

Guide to TCP/IP Fourth Edition. Chapter 6: Neighbor Discovery in IPv6

ICS 351: Today's plan. OSPF BGP Routing in general routing protocol comparison encapsulation network dynamics

This is a repository copy of Dynamic RPL for Multi-hop Routing in IoT Applications.

Improving the Energy Efficiency of WSN by Using Application-Layer Topologies to Constrain RPL-defined Routing Trees

Scaling RPL to Dense and Large Networks with Constrained Memory

IPv6 Associated Protocols. Athanassios Liakopoulos 6DEPLOY IPv6 Training, Skopje, June 2011

Expanding Ring Search for Route Discovery in LOADng Routing Protocol

Operation Manual IPv6 H3C S3610&S5510 Series Ethernet Switches Table of Contents. Table of Contents

IPv6 PIM. Based on the forwarding mechanism, IPv6 PIM falls into two modes:

Juniper Netscreen Security Device. How to Enable IPv6 Page-51

A Comprehensive Evaluation of RPL under Mobility

Proposed Node and Network Models for M2M Internet

Chapter 5. RIP Version 1 (RIPv1) CCNA2-1 Chapter 5

Trickle-F: fair broadcast suppression to improve energy-efficient route formation with the RPL routing protocol

Overview. Overview. OTV Fundamentals. OTV Terms. This chapter provides an overview for Overlay Transport Virtualization (OTV) on Cisco NX-OS devices.

IP Multicast Technology Overview

NAT Internetworking Standards and Technologies, Computer Engineering, KMITL 2

DualMOP-RPL: Supporting Multiple Modes of Downward Routing in a Single RPL Network

LECTURE 8. Mobile IP

Mobile Routing : Computer Networking. Overview. How to Handle Mobile Nodes? Mobile IP Ad-hoc network routing Assigned reading

Multicast Technology White Paper

IPv6 Stack. 6LoWPAN makes this possible. IPv6 over Low-Power wireless Area Networks (IEEE )

MLD. MLDv1 (defined in RFC 2710), which is derived from IGMPv2. MLDv2 (defined in RFC 3810), which is derived from IGMPv3.

TDC 363 Introduction to LANs

IPv6 PIM-DM configuration example 36 IPv6 PIM-SM non-scoped zone configuration example 39 IPv6 PIM-SM admin-scoped zone configuration example 42 IPv6

A COMPARISON OF REACTIVE ROUTING PROTOCOLS DSR, AODV AND TORA IN MANET

RFC Compliance Test Report. Release 3.0

Top-Down Network Design, Ch. 7: Selecting Switching and Routing Protocols. Top-Down Network Design. Selecting Switching and Routing Protocols

Operation Manual ARP H3C S5500-SI Series Ethernet Switches. Table of Contents

Multicast EECS 122: Lecture 16

IPV6 SIMPLE SECURITY CAPABILITIES.

Multicast Communications

ICS 351: Today's plan. OSPF BGP Routing in general

Networked Embedded Systems: 6LoWPAN

Comparative Analysis of Objective Functions in Routing Protocol for Low Power and Lossy Networks

IPv6 address configuration and local operation

UNIVERSITY OF OSLO Department of Informatics. Implementing RPL in a mobile and fixed wireless sensor network with OMNeT++.

Advanced Networking: Routing & Switching 2 Chapter 7

Chapter 6 Addressing the Network- IPv4

6TiSCH. towards an IPv6-based Industrial Internet. Technical Track.

Transcription:

RPL: Routing for IoT Bardh Prenkaj Dept. of Computer Science Internet of Things A.A. 17-18 1

Overview Protocol scenario description Design principles of the protocol Fundamental terminology to understand RPL Importance of the objective function DODAG Versioning RPL in the wild Forwarding data on IoT networks Brief introduction to message timing: the Trickle algorithm Internet of Things A.A. 17-18 2

Scenario description Components: gateway (GW), smart devices (blue circles) and the Internet (cloudy shape) GW connects the smart devices (SDs) with Internet SDs want to communicate with the Internet Need of a protocol that routes packets from SDs to GW and then to the Internet Internet GW Smart environment Internet of Things A.A. 17-18 3

LLNs Low-Power and Lossy Networks Routers constrained in processing power, memory and energy Links characterized by high loss rates, low data rates and instability Traffic flows include point-to-point point-to-multipoint multipoint-to-point Internet of Things A.A. 17-18 4

IPv6 Routing Protocol for Low- Power and Lossy Networks (RPL) Internet of Things A.A. 17-18 5

Design Principles Provides a mechanism for multipoint-to-point and a point-to-multipoint traffic 1 Designed to meet the requirements in RFC5867, RFC5826, RFC5673 and RFC5548 Separate packet processing and forwarding from the routing optimization objective Router reachability must be verified before the router can be used as a parent (i.e.: Neighbour Unreachability Detection - NUD) 1. Support for point-to-point is also available Internet of Things A.A. 17-18 6

Terminology Directed Acyclic Graph (DAG) a directed graph without cycles DAG root node within the DAG that has no outgoing edge R1 R2 R3 Destination-Oriented DAG (DODAG) a DAG with a single root Internet of Things A.A. 17-18 7

Terminology Up the direction from leaf nodes towards DODAG roots following DODAG edges Down the direction from DODAG roots towards leaf nodes in the reverse direction of DODAG edges Rank defines the node s individual position relative to other nodes w.r.t. a DODAG root. Rank s computation depends on the DAG s objective function 0 1 1 2 1 2 2 2 3 2 2 Node ranking based on distance from the root Internet of Things A.A. 17-18 8

Terminology RPL Instance ID a unique identifier within a network RPL Instance a set of one or more DODAGs that share a RPL instance ID. Each RPL instance operates independently of other instances Goal an application-specific goal that is defined outside the scope of RPL. Any node that roots a DODAG will need to know about this Goal to decide whether or not the Goal can be satisfied Internet of Things A.A. 17-18 9

Terminology DODAG ID2 a unique identifier of a DODAG root. The tuple (RPL Instance ID, DODAG ID) uniquely identifies a DODAG Grounded DODAG when the DODAG root can satisfy the goal Floating DODAG a DODAG is called floating if it s not grounded DODAG parent immediate successor of a node in the path towards the root 2. A DODAG ID is an IPv6 address Internet of Things A.A. 17-18 10

Terminology Storing DODAG each node in the DODAG keeps routing tables (no global view of the network) Not-Storing DODAG nodes don t have information of routing besides their corresponding parents Internet of Things A.A. 17-18 11

Objective Function Importance Defines the node ranking computation knowing routing metrics and optimization objectives Dictates parent selection in a DODAG Implies the construction of the DODAG Allows to minimize some constraints (i.e..: power consumption) given specific metrics Internet of Things A.A. 17-18 12

DODAG Versioning Every time a new DODAG gets computed with the same root, the version changes Change of versions: broken links, joining nodes, failing nodes The DODAG s lifetime passes through different possible versions The same objective function on two different DODAGs can have different versions Internet of Things A.A. 17-18 13

DODAG Versioning V N R V N+1 R A B A. C.. C Example of version changing in a DODAG the objective function has changed the rank computing thus B becomes C s child. B. Internet of Things A.A. 17-18 14

RPL: Message Types DIO (DODAG Information Object) it is sent in multicast downwards The root can send the DODAG s version, objective function, its ID to the other nodes in the network DIS (DODAG Information Selection) it may be used to solicit a DODAG Information Object from an RPL node A node wanting to join the DODAG, sends in broadcast this message (neighbourhood discovery) Internet of Things A.A. 17-18 15

RPL: Message Types DIO (DODAG Information Object) it is sent in multicast downwards The root can send the DODAG s version, objective function, its ID to the other nodes in the network DIS (DODAG Information Selection) it may be used to solicit a DODAG Information Object from an RPL node A node wanting to join the DODAG, sends in broadcast this message (neighbourhood discovery) Internet of Things A.A. 17-18 16

RPL: Message Types DAO (DODAG Advertisement Object) it is sent upwards towards the root Usually its usage is limited into answering to a DIO message ( Can I join you? message) DAO ACK it is a response to a DAO message with an ACK or NACK Acknowledge that a new node has joined an existing DODAG Internet of Things A.A. 17-18 17

Node message exchanging New node Root 1 DIS DIO 2 3 DAO DAO ACK 4 Internet of Things A.A. 17-18 18

How does RPL work? Goal: construct a DODAG satisfying an objective function Assumption: some nodes are configured to be roots (however only one is chosen because of DODAGs properties) Internet of Things A.A. 17-18 19

How does RPL work? Root sends DIO messages to the other nodes in its transmission range Each node, upon receiving a DIO, use their own information to decide whether to reply or not to the root The replying nodes provision routing table entries accordingly The replying nodes update their corresponding ranks according to the objective function received in the DIO message Internet of Things A.A. 17-18 20

How does RPL work? 1)A sends a DIO message in multicast 2)B, C, D and E respond with a DAO in unicast 3)A sends a DAO ACK to each of the replying nodes in unicast 4)The process iterates for the new attached nodes to the constructed DODAG 5)If a nodes receives a lower rank advertisement, it chooses that rank and the advertising node as its parent Internet of Things A.A. 17-18 21

How does RPL work? A A A B DIO C B DAO C 1 1 B C D E D E 3 D E 4 Internet of Things A.A. 17-18 22

How does RPL work? DIO A DIO A A 1 1 B C B C 1 B C 1 3 D E 4 DIO DAO ACK ACK DAO D E 2 D E 2 Suppose C advertises to E rank 1 and B advertises 1 and 2 to D and E, respectively E accepts C as a parent and D accepts B as parent The new DODAG is constructed and the nodes update their ranks Internet of Things A.A. 17-18 23

Forwarding data in LLNs 1-to-1: (from X to Y) Storing DODAG X sends data to its chosen parent and the latter, since it has the IDs of its subtree children, forwards the packet to Y Not-storing DODAG X s parent has to forward the packet to the root who then provides to forward the packet to Y Internet of Things A.A. 17-18 24

Forwarding data in LLNs 1-to-1: (from x to y) R R C D C D X Y E X Y E Storing DODAG case: X sends to C (blue) and C forwards data to Y (red) Not-storing DODAG case: X sends to C (blue), C forwards data to the root R who then forwards the data to Y by encapsulating the entire path in the packet (red) Internet of Things A.A. 17-18 25

Forwarding data in LLNs 1-to-n: Storing DODAG each node broadcasts data packets to its children Not-storing DODAG the root has to encapsulate the whole path to the destination and forward the packet Internet of Things A.A. 17-18 26

Forwarding data in LLNs 1-to-n: R R C D C D W X Y Z E W X Y Z E Storing DODAG case: X sends to C (blue) and C broadcasts to its children different from the source X (red) Not-storing DODAG case: X sends to C (blue), C forwards data to the root R (red) who then forwards the data to W,Y,Z by encapsulating the entire path to these nodes. C unwraps the received packet and forwards it to the destinations (green) Internet of Things A.A. 17-18 27

Message timing: The Trickle Algorithm Nodes transmit when an alarm is solicited after some interval of time Regulates DIO broadcast transmissions If the network is consistent, then nodes do not transmit redundant messages If inconsistency is detected, then the transmitting timer is decreased; otherwise the timer is increased Internet of Things A.A. 17-18 28

Further readings RFC 6550 @ https://tools.ietf.org/html/rfc6550 Iova Oana, Pietro Picco, Timofei Istomin, and Csaba Kiraly. "RPL: The Routing Standard for the Internet of Things... Or Is It?." IEEE Communications Magazine 54, no. 12 (2016): 16-22. https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/rpl/configuration/15-mt/rpl-1 5-mt-book.html IPSO Alliance. RPL: The IP routing protocol designed for low power and lossy networks @ http://www.ipso-alliance.org/wp-content/media/rpl.pdf Aishwarya Parasuram, David Culler and Randy Katz. An Analysis of the RPL Routing Standard for Low Power and Lossy Networks. (2016) @ https://www2.eecs.berkeley.edu/pubs/techrpts/2016/eecs-2016-106.pdf Internet of Things A.A. 17-18 29