6LoWPAN IPv6 for Wireless Sensor Network



Similar documents
6LoWPAN IPv6 for Wireless Sensor Network

6LoWPAN: An Open IoT Networking Protocol

Introduction to IP v6

Using IPv6 and 6LoWPAN for Home Automation Networks

6LoWPAN Technical Overview

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

Telematics. 9th Tutorial - IP Model, IPv6, Routing

Overview. Lecture 16: IP variations: IPv6, multicast, anycast. I think we have a problem. IPv6. IPv6 Key Features

IPv6 Associated Protocols

6LoWPAN Tutorial IP on IEEE Low-Power Wireless Networks

Dedication Preface 1. The Age of IPv6 1.1 INTRODUCTION 1.2 PROTOCOL STACK 1.3 CONCLUSIONS 2. Protocol Architecture 2.1 INTRODUCTION 2.

Tomás P. de Miguel DIT-UPM. dit UPM

Types of IPv4 addresses in Internet

IPv6 associated protocols. Piers O Hanlon

IPv6 Fundamentals: A Straightforward Approach

Network Security TCP/IP Refresher

IPv6 Hardening Guide for Windows Servers

Thingsquare Technology

IPv6 Fundamentals Ch t ap 1 er I : ntroducti ti t on I o P IPv6 Copyright Cisco Academy Yannis Xydas

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Personal Firewall Default Rules and Components

Vicenza.linux.it\LinuxCafe 1

Deploying IPv6 in 3GPP Networks. Evolving Mobile Broadband from 2G to LTE and Beyond. NSN/Nokia Series

IPv6 Trace Analysis using Wireshark Nalini Elkins, CEO Inside Products, Inc.

Internet Protocol Version 6 (IPv6)

ProCurve Networking IPv6 The Next Generation of Networking

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

How do I get to

SSVVP SIP School VVoIP Professional Certification

8.2 The Internet Protocol

Getting started with IPv6 on Linux

IPv6 Advantages. Yanick Pouffary.

IPv6 Functionality. Jeff Doyle IPv6 Solutions Manager

CloudEngine Series Switches. IPv6 Technical White Paper. Issue 01 Date HUAWEI TECHNOLOGIES CO., LTD.

Protocol Specification & Design. The Internet and its Protocols. Course Outline (trivia) Introduction to the Subject Teaching Methods

About the Technical Reviewers

Internet Protocols Fall Lectures 7-8 Andreas Terzis

IPv6 mobility and ad hoc network mobility overview report

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

Network layer: Overview. Network layer functions IP Routing and forwarding

Networking 4 Voice and Video over IP (VVoIP)

Implementation IPV6 in Mikrotik RouterOS. by Teddy Yuliswar

Performance Evaluation of AODV, OLSR Routing Protocol in VOIP Over Ad Hoc

Applications that Benefit from IPv6

Internet Packets. Forwarding Datagrams

IP and Mobility. Requirements to a Mobile IP. Terminology in Mobile IP

Review: Lecture 1 - Internet History

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

ZigBee IP Network Performance, Part I Unicast Messaging under SEP2.0 HAN Messaging Profile

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

Telecommunication Services Engineering (TSE) Lab. Chapter III 4G Long Term Evolution (LTE) and Evolved Packet Core (EPC)

SERVICE DISCOVERY AND MOBILITY MANAGEMENT

Computer Networks CS321

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

Internetworking. Problem: There is more than one network (heterogeneity & scale)

IPv6 Addressing. Awareness Objective. IPv6 Address Format & Basic Rules. Understanding the IPv6 Address Components

Internet of Things based approach to Agriculture Monitoring

ERserver. iseries. Networking TCP/IP setup

Chapter 3 Configuring Basic IPv6 Connectivity

IP Address Classes (Some are Obsolete) Computer Networking. Important Concepts. Subnetting Lecture 8 IP Addressing & Packets

10CS64: COMPUTER NETWORKS - II

Firewalls und IPv6 worauf Sie achten müssen!

IP Multicasting. Applications with multiple receivers

Protocols. Packets. What's in an IP packet

Introduction to IP networking

Introduction to TCP/IP

IPv6 Security Assessment and Benchmarking Abstract Test Suite

IPv6 Based Sensor Home Networking

Network layer" 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! goals: "

Multicast DNS in Wireless Ad-hoc Networks of. Low-resource Devices

Chapter 9. IP Secure

Industry Automation White Paper Januar 2013 IPv6 in automation technology

Internet Control Protocols Reading: Chapter 3

6PANview: A Network Monitoring System for the Internet of Things

Mobile IP. Bheemarjuna Reddy Tamma IIT Hyderabad. Source: Slides of Charlie Perkins and Geert Heijenk on Mobile IP

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

From Fieldbus to toreal Time Ethernet

IP - The Internet Protocol

IPV6 流 量 分 析 探 讨 北 京 大 学 计 算 中 心 周 昌 令

IT4405 Computer Networks (Compulsory)

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

Technology Brief IPv6 White Paper.

Connecting IPv6 capable Bluetooth Low Energy sensors with the Internet of Things

Internetworking and IP Address

Transport and Network Layer

Key requirements for Interoperable IoT systems

IP address format: Dotted decimal notation:

Performance Evaluation of Large-Scale Wireless Sensor Networks Communication Protocols that can be Integrated in a Smart City

Joe Davies. Principal Writer Windows Server Information Experience. Presented at: Seattle Windows Networking User Group June 1, 2011

We Are HERE! Subne\ng

Vulnerabili3es and A7acks

IPv4 and IPv6 Integration. Formation IPv6 Workshop Location, Date

Implementing DHCPv6 on an IPv6 network

ITL BULLETIN FOR JANUARY 2011

Address Resolution Protocol (ARP)

Definition. A Historical Example

IPV6 DEPLOYMENT GUIDELINES FOR. ARRIS Group, Inc.

Transcription:

6LoWPAN IPv6 for Wireless Sensor Network SASE 2012 Carlos Taffernaberry UTN - Mendoza - Argentina carlos.taffernaberry@gridtics.frm.utn.edu.ar This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA

References N. Kushalnagar, G. Montenegro, C. Schumacher IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs):Overview, Assumptions, Problem Statement, and Goals, RFC 4919, August 2007, IETF G. Montenegro,N. Kushalnagar,J. Hui, D. Culler Transmission of IPv6 Packets over IEEE 802.15.4 Networks, RFC 4944, September 2007, IETF Shelby & Bormann, The Wireless Embedded Internet ISBN: 978-0-470-74799-5, (c) 2009 John Wiley & Sons Ltd David E. Culler & Jonathan Hui 6LoWPAN Tutorial: IP on IEEE 802.15.4 Low-Power Wireless Networks, Arch Rock Corporation Compression Format for IPv6 Datagrams in 6LoWPAN Networks draft-ietf-6lowpan-hc-13. RFC 6282. Neighbor Discovery Optimization for Low-power and Lossy Networks draft-ietf-6lowpan-nd-15 Design and Application Spaces for 6LoWPANs, draft-ietf-6lowpan-usecases-09. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA

Outline Introduction, Motivation Introduction to 6LoWPAN The 6LoWPAN Format Neighbor Discovery Routing Application Layer Implementing 6loWPAN This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA

Introduction

Internet of Things - A global network infrastructure, linking physical and virtual objects through the exploitation of data capture and communications capabilities. - This infrastructure includes existing and evolving Internet and network developments. - It will offer specific object-identification, sensor and connection capability as the basis for the development of independent federated services and applications. - These will be characterised by a high degree of autonomous data capture, event transfer, network connectivity and interoperability. Source CASAGRAS 2

Internet of Things

Internet of Things Scope

Internet of Things Interconnection Challenge Wires are too expensive Electrical wall socket + installation = $50 Cat5 socket + installation = $150 1 Trillon nodes >> 1000 DGP Argentina Wireless? Technolog y Range Speed Power Use Cost Wifi 100 mts. 10-100 Mb/s High $$$ Bluetooth 10-100 mts. 802.15.4 10-100 mts. 1-3 Mb/s Medium $$ 0,25-Mb/s Low $

Evolution of Wireless Sensor Networks Price Scalability Cabling Proprietary radio + network ZigBee 6lowpan Internet Any vendor Z-Wave, prop. ISM etc. ZigBee and WHART 6lowpan ISA100 Cables Vendor lock-in Complex middleware Open development and portability 1980s 2000 2006 2008 -> Increased Productivity

Internet (v4) Regional Registry Exhaustion Addresses Challenge IANA Unallocated Address Pool Exhaustion: 03-Feb-2011 "Exhaustion" when the pool of available addresses in each RIR reaches the last /8 threshold.

IP next generation IPv6 Features: Address space: 128 bits (2 128 ) 3.4 10 38 = 340282366920938463463374607431768211456 addr. There are only ~ 10 25 grains of sand on the earth Let s settle for a trillion objects on the net Fix size Header No fragmentation in the path Extensibility by adding extension header Unicast, Multicast y Anycast (NO Broadcast) Stateless and stateful address autoconfiguration

Benefits of 6LoWPAN Technology IPv6 over Low-Power Wireless Personal Area Networks Low-power RF + IPv6 = The Wireless Embedded Internet 6LoWPAN makes this possible The benefits of 6LoWPAN include: Open, long-lived, reliable standards Easy learning-curve Transparent Internet integration Network maintainability Global scalability End-to-end data flows Use of existing Internet infrastructure

Introduction to 6LoWPAN

What is 6LoWPAN? IPv6 over Low-Power wireless Area Networks Defined by IETF standards RFC 4919, 4944 draft-ietf-6lowpan-hc and -nd draft-ietf-roll-rpl Stateless header compression Enables a standard socket API Minimal use of code and memory Direct end-to-end Internet integration Multiple topology options (802.15.4, Bluetooth,etc)

Challenge to LoWPAN's Hard to implement in embedded devices: -Power and duty-cycle: Battery-powered wireless devices need to keep low duty cycles. -Frame size: Current Internet protocols require links with sufficient frame length. -Multicast: Wireless embedded radio technologies, do not typically support multicast. -Reliability: Standard Internet protocols are not optimized for low-power wireless and lossy networks. -WebServices: Internet services today rely on webservices, mainly using the transmission control protocol (TCP). -Management: Management with SNMP or web services.

6LoWPAN Applications 6LoWPAN has a broad range of applications Facility, Building and Home Automation Personal Sports & Entertainment Healthcare and Wellbeing Asset Management Advanced Metering Infrastructures Environmental Monitoring Security and Safety Industrial Automation SIPIA

Protocol Stack

6loWPAN Features Useful with low-power link layers such as IEEE 802.15.4, narrowband ISM and power-line comunications (Bluetooth working) Support for e.g. 64-bit and 16-bit 802.15.4 addressing Efficient header compression IPv6 base and extension headers, UDP header Network autoconfiguration using neighbor discovery Unicast, multicast and broadcast support Multicast is compressed and mapped to broadcast Fragmentation 1280 byte IPv6 MTU -> 127 byte 802.15.4 frames Support for IP routing (e.g. IETF RPL) Support for use of link-layer mesh (e.g. 802.15.5)

The 6LoWPAN Format

Architecture

Architecture LoWPANs are stub networks Simple LoWPAN Single Edge Router Extended LoWPAN Multiple Edge Routers with common backbone link Ad-hoc LoWPAN No route outside the LoWPAN Internet Integration issues Maximum transmission unit Application protocols IPv4 interconnectivity (transition) Firewalls and NATs Security IPv6-LoWPAN Router Edge Stack

The 6LoWPAN Format 6LoWPAN is an adaptation header format Enables the use of IPv6 over low-power wireless links IPv6 header compression UDP header compression Format initially defined in RFC4944 Updated by draft-ietf-6lowpan-hc (work in progress)

The 6LoWPAN Format 6LoWPAN makes use of IPv6 address compression RFC4944 Features: Basic LoWPAN header format HC1 (IPv6 header) and HC2 (UDP header) compression formats Stateless compression mechanism Fragmentation & reassembly Mesh header feature (depreciation planned) Multicast mapping to 16-bit address space draft-ietf-6lowpan-hc Features: New HC (IPv6 header) and NHC (Next-header) compression Support for global address compression (with contexts) Support for IPv6 option header compression Support for compact multicast address compression

IPv4 and IPv6 Format

IPv6 Addresses Unicast Address Scope Local-link : fe80::/64 Local-Site : fec0::/64 Global : 2000::/3 Global Site-Local Link-Local

IPv6 Addressing Stateless Address Autoconfiguration (SAA) Prefix (64 bits) + Subfix (64bits) Prefix: (Scope of an address) Local link (prefix fe80::) Global Link (prefix: Router Advertisement Router Solicitation) Subfix: EUI64 64-bit (Global Identifier - IEEE) example wlan0 Link encap:ethernet HWaddr 00:25:d3:67:79:ad inet6 addr: 2001:1291:200:829e:225:d3ff:fe67:79ad/64 Scope:Global inet6 addr: fe80::225:d3ff:fe67:79ad/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:10732 errors:0 dropped:0 overruns:0 frame:0 TX packets:9573 errors:0 dropped:0 overruns:0 carrier:0 RX bytes:7807052 (7.8 MB) TX bytes:1175527 (1.1 MB)

Dispatch First byte of the Payload (http://www.iana.org/assignments/6lowpan-parameters/) Bit Pattern Header Type Reference 00 xxxxxx NALP - Not a LoWPAN frame [RFC4944] 01 000000 Reserved as a replacement value for ESC [RFC6282] 01 000001 IPv6 - uncompressed IPv6 Addresses [RFC4944] 01 000010 LOWPAN_HC1 - compressed IPv6 [RFC4944] 01 000011 to 01001111 reserved for future use 01 010000 LOWPAN_BC0 - broadcast [RFC4944] 01 010001 to 01011111 reserved for future use 01 1xxxxx LOWPAN_IPHC [RFC6282] 10 xxxxxx MESH - Mesh header [RFC4944] 11 000xxx FRAG1 -- Fragmentation Header (first) [RFC4944] 11 001000 to 11011111 reserved for future use 11 100xxx FRAGN -- Fragmentation Header (subseq) [RFC4944] 11 101000 to 11111111 reserved for future use

IPv6/UDP Headers Without compression IPv6 UDP Payload 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1 0 0 0 0 0 0 1 Version Traffic Class Flow Label +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Flow Label cont Payload Length Next Header +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Hop Limit +-+-+-+-+-+-+-+-+ + + + Source Address + + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ + + + Destination Address + + + + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Source Port Destination P. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Dest. P. cont Length Checksum +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Checksum cont UDP Payload... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

IP Header Compression (HC1 and HC2) No gzip techniques No end to end technique IP addr is needed in every route Stateless compression 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 0 1 0 0 0 0 1 0 SAE DAE C NH 0 Non-Compressed fields... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ dispatch / \_ HC1 header_/ 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 0 1 0 0 0 0 1 0 SAE DAE C NH 1 S D L N.-C. fields... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ dispatch / \_ HC1 header_/ \_ HC2 header_/ C = Class and Flow Label SAE/DAE = Source/Destination Address Encoding NH = Next Header S/D = Source/Destination Port Compression (61616 + 16) L= whenever the length es compressed Never Compressed Hop Limit and UDP Checksum

LoWPAN UDP/IPv6 Headers 6 Bytes! LoWPAN IPv6 UDP 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Dispatch with LOWPAN_IPHC LOWPAN_NHC Src Dst +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ UDP Checksum UDP Payload... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Payload draft-ietf-6lowpan-hc

IP Header Compression (IPHC) Most of the time is used Global Routeable Ipv6 Addresses. Base Header +-------------------------------------+------------------------ Dispatch + LOWPAN_IPHC (2-3 octets) Compressed IPv6 Header +-------------------------------------+------------------------ LOWPAN_IPHC Encoding 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ 0 1 1 TF NH HLIM CID SAC SAM M DAC DAM +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ TF = Traffic Class, Flow Label NH = Next Header Flag HLIM = Hop Limit CID = Context Identifier Extension SAC = Source Address Compression SAM = Source Address Mode M = Multicast Compression DAC = Destination Address Compression DAM = Destination Address Mode draft-ietf-6lowpan-hc

IP Header Compression (IPHC) Cont. S/SAM Inlline 0 00 128 inline (address fully inline, no compression) 0 01 64 FE80:0:0:0:inline (link-local + 64-bit Interface ID) 0 10 16 FE80:0:0:0:0:0:0:inline (link-local + 16-bit short address) 0 11 0 FE80:0:0:0:link-layer (link-local + link-layer source address) 1 00 reserved 1 01 64 context[0..63]:inline (context + 64-bit Interface ID) 1 10 16 context[0..111]:inline (context + 16-bit short address) 1 11 0 context[0..127] (context)

Next-header Compression (NHC) NHC Format +----------------+--------------------------- var-len NHC ID compressed next header... +----------------+--------------------------- UDP NHC Encoding 0 1 2 3 4 5 6 7 +---+---+---+---+---+---+---+---+ 1 1 1 1 0 C P +---+---+---+---+---+---+---+---+ C = Checksum Compression P = UDP Port Compression draft-ietf-6lowpan-hc

6LoWPAN Headers Orthogonal header format for efficiency Stateless header compression

Fragmentation IPv6 requires underlying links to support Minimum Transmission Units (MTUs) of at least 1280 bytes IEEE 802.15.4 leaves approximately 80-100 bytes of payload! RFC4944 defines fragmentation and reassembly of IPv6 The performance of large IPv6 packets fragmented over lowpower wireless mesh networks is poor! Lost fragments cause whole packet to be retransmitted Low-bandwidth and delay of the wireless channel 6LoWPAN application protocols should avoid fragmentation Compression should be used on existing IP application protocols when used over 6LoWPAN if possible Fragment recovery is currently under IETF consideration

Fragmentation Initial Fragment 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1 1 0 0 0 datagram_size datagram_tag +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Following Fragments 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1 1 1 0 0 datagram_size datagram_tag +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ datagram_offset +-+-+-+-+-+-+-+-+

Neighbor Discovery

ICMPv6 ICMP ARP IPv4 IGMP Multicast ND Neighbor Discovery ICMPv6 IPv6 MLD Multicast Listener Discovery Multicast Broadcast Ethernet Ethernet

IPv6 Neighbor Discovery IPv6 is the format - ND is the brains One-hop routing protocol defined in RFC4861 Finding Neighbors Neighbor Solicitation / Neighbor Advertisement Finding Routers Router Solicitation / Router Advertisement Stateless Address Autoconfiguration using NS/NA Detecting Addresses Duplication (DAD) using NS/NA Neighbor Unreachability Detection (NUD) using NS/NA DHCPv6 may be used in conjunction with ND Requirements: Link-layer Multicast Transitive relation between Neighbor

IPv6 Neighbor Discovery Multicast Address: All nodes All routers : ff02::1/128 : ff02::2/128

LoWPAN Information Option Simplification: Removed a second lifetime Removed a Reserved field Added a CID field for context-based compression 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Info Length L A C V CID +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Valid Lifetime +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+... Prefix or Address Information... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Prefix Dissemination In normal IPv6 networks RAs are sent to a link based on the information (prefix etc.) configured for that router interface In ND for 6LoWPAN RAs are also used to automatically disseminate router information across multiple hops

Addressing Example

Duplicated Address Detection in 6loWPAN The Router Edge mantains a table (whiteboard) Nodes must register in the whiteboard New ICMP type: Node Registration New ICMP type: Node Confirmation Node registration exchange enables Host/router unreachability detection Address resolution (a priori) Duplicate address detection Registrations are soft bindings Periodically refreshed with a new NR message

Typical 6LoWPAN-ND Exchange

NR/NC Format 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type (NR)/(NC) Code Checksum +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ TID Status P +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Binding Lifetime Advertising Interval +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + Owner Interface Identifier + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Owner Nonce +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Registration option(s)... +-+-+-+-+-+-+-+-+-+-+-+-+-+

The Whiteboard The whiteboard is used in the LoWPAN for: Duplicate address detection for the LoWPAN (= prefix) Dealing with mobility (Extended LoWPANs) Locating nodes

Routing

6LoWPAN Routing Multihop Mesh Topology Link Layer Forwarding (Mesh Under) : Link Layer mesh (e.g. 802.15.5 ) LoWPAN mesh (RFC but not forward algorithm) IP Layer Routing (Route Over): Routing in a LoWPAN Single-interface routing Flat address space (exact-match) Stub network (no transit routing)

Types of Routing Protocols Algorithm classes Distance-vector Links are associated with cost, used to find the shortest route. Each router along the path store local next-hop information about its route table. Link-state Each node aquires complete information about the network, typically by flooding. Each node calculated a shortest-path tree calculated to each destination. Types of Signaling Proactive Routing information aquired before it is needed. Reactive Routing information discovered dynamically when needed. Route metrics are an important factor

Protocols for 6LoWPAN IP is agnostic to the routing protocol used It forwards based on route table entries Thus 6LoWPAN is routing protocol agnostic Special consideration for routing over LoWPANs Single interface routing, flat topology Low-power and lossy wireless technologies Specific data flows for embedded applications MANET protocols useful in some ad-hoc cases e.g. AODV, DYMO New IETF working group formed Routing over low-power and lossy networks (ROLL) Deloped specifically for embedded applications

IETF ROLL Routing Over Low power and Lossy networks (ROLL) Working group at the IETF Standardizing a routing algorithm for embedded apps Application specific requirements Home automation Commercial building automation Industrial automation Urban environments Analyzed all existing protocols Solution must work over IPv6 and 6LoWPAN Protocol in-progress called RPL Ripple Proactive distance-vector approach See draft-ietf-roll-rpl for detailed information

Application Formats and Protocols

Introduction The processes of applications communicate over IP using an Internet Socket approach 6LoWPAN also uses the Internet Socket paradigm Application protocols used with 6LoWPAN however have special design and performance requirements

Socket API The Socket API provides access to data communications for applications Well-known interface for handling data flow and buffer management via socket Supports also control messages to protocols Commands include: socket, bind, send, read, close etc. Examples of Socket APIs Berkeley sockets in *nix systems Mac OSX (Darwin) Contiki uip (Pseudo socket approach)

End-to-end Paradigm

Application Formats and Protocols

Custom Protocols The most common solution today Application data typically binary encoded, application specific Application protocol uses a specific UDP port, application specific As 6LoWPAN is end-to-end IPv6 communications, not a problem Advantage: Compact, efficient, security can be integrated, end-to-end Disadvantage: Custom server app needed, little re-use, learning curve, interoperability Custom Protocol UDP IPv6 / 6lowpan L2/DLL L1/PHY

Streaming and RTP The correct streaming solution For audio or continuous sensor streaming Audio over 802.15.4 needs good codec Advantages: RTP can be used over 6LoWPAN Provides end-to-end solution No server modifications needed Jitter control Disadvantages: Headers could be more efficient for simple sensor data streaming Stream RTP UDP IPv6 / 6lowpan L2/DLL L1/PHY

XML/HTTP De-facto for inter-server communications Well-known XML schema important All Internet servers speak HTTP/XML Useable for RPC, pub/sub and events SOAP or REST paradigm Advantages: Well known XML schema Formal message sequences Internet-wide support Disadvantages: Inefficient, complex Solution: Embedded web-services See the IETF 6lowapp effort http://6lowapp.net XML Messages SOAP HTTP TCP IP L2/DLL L1/PHY

Implementation

Chips Solutions Single-Chip (App + 6LowPAN + Transceiver) Minimizing cost and size is critical. All soft on the same micro increases complexity and development time. Complexity of the embedded application is low. Examples TI CC2530, ATMEGA 128RF and the Jennic JN5139. Two-Chip (App + 6LowPAN <UART/SPI> Transceiver) Great application complexity and performance requirements. Leaves the developer freedom in the choice of application microcontroller. 6LoWPAN and application need to be integrated in the same microcontroller and may require extensive engineering and testing. Examples of radio transceivers are TI CC2520, Atmel AT86RF231. Network Processor (App <UART/SPI> 6LowPAN + Transceiver) Projects in which a design or application software already exists. Programming is often realized as an extended socket-like protocol. Not be possible for devices with extreme cost limitations. Example of network processor is TI CC1180.

Protocols Stacks Contiki Low-Power uipv6/rpl Network Tiny OS BLIP, the Berkeley Low-power IP stack IPv6 Ready Nano Stack (Sensinode) Nano Stack, Nano Router, Nano Service Nano Sensor Jennic 6LoWPAN (Jennic) JN5139 Wireless Microcontroller Jenie API, SNAP, JenNet

SIPIA Net Wireless Sensor Network for Agronomical Research SIPIA Net Propietary STACK (gridtics) SIPIA6 Net 6loWPAN STACK

PREGUNTAS Gracias por su asistencia Carlos Taffernaberry UTN - Mendoza - Argentina carlos.taffernaberry@gridtics.frm.utn.edu.ar

SPARE SLIDES

Mobility & Routing

Types of Mobility Mobility involves two processes Roaming - moving from one network to another Handover - changing point of attachment (and data flows) Mobility can be categorized as Micro-mobility - within a network domain Macro-mobility - between network domains (IP address change) Consider also Node vs. Network mobility What causes mobility? Physical movement Radio channel Network performance Sleep schedules Node failure

Node Mobility

Network Mobility

Dealing with Mobility Micro-mobility Do nothing (restart) Link-layer techniques (e.g. GPRS, WiFi) 6LoWPAN-ND extended LoWPANs Routing also plays a role Macro-mobility Do nothing (restart) Application layer (SIP, UUID, DNS) Mobile IPv6 [RFC3775] Proxy Home Agent Network mobility Do nothing (restart all nodes) NEMO [RFC3963]

IPv4 Interconnectivity

IPv4 IPv6 Transition Redes separadas Protocolos no compatibles entre si.disruptivo Working group at the IETF Transition Mechanisms [RFC 4213] Dual Stack Tunnel Manual Automatic 6to4 Tunnel Broker Traslation Application Layer Gateway NAT64/DNS64

IP Protocol Stack

Internet Architecture Image source: (Wikipeida) GFDL