SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
1Samsung Open Source Group
Stefan Schmidt
Samsung Open Source Group
stefan@osg.samsung.com
6LoWPAN: An Open IoT
Networking Protocol
OpenIoT Summit 2016
San Diego
2Samsung Open Source Group
6LoWPAN: An Open IoT Networking Protocol
● Open: Specified by the IETF
– Specifications available without any membership or license fees
– Designed and developed in public
● IoT: Making “Things” Internet-aware
– Usage of IPv6 to make use of internet protocols
– Leverage on the success of open protocols in contrast to
proprietary solutions
● Networking: Stopping at layer 3
– Application layer protocols are flexible and can vary
– Often used together with CoAP, MQTT, etc
3Samsung Open Source Group
●
Motivation
●
6LoWPAN
●
Linux-wpan Status
●
Future Work
Agenda
4Samsung Open Source Group
Motivation
5Samsung Open Source Group
Use Cases
● Battery powered sensors (temp, smoke, etc)
● Main powered appliances (washing machine)
● WiFi accesspoints as Border Router / Gateways
● Home use
● Industrial use Internet
IEEE 802.15.4
6Samsung Open Source Group
Motivation 6LoWPAN
● Sensors are likely to have restricted wireless connectivity
● Using IPv6 instead of something proprietary allows the usage of
existing and proven protocols driving the internet
● A full unmodified TCP/IP stack might clash with hardware
limitations (which are useful for power savings)
● Sensors only need to transfer little
data, compared to the usage
scenarios of a Smartphone, PC ..
Internet
IEEE 802.15.4
7Samsung Open Source Group
Motivation Linux-wpan
● Battery powered sensors might not run Linux but choose a smaller OS
● Main powered appliances might run Linux already and would benefit
from native 6LoWPAN support
● IEEE 802.15.4 chips could easily be integrated in WiFi accesspoints or
routers which already run Linux
● Thus a real benefit to have a
802.15.4 subsystem ready in
the Linux kernel
Internet
IEEE 802.15.4
8Samsung Open Source Group
Movement Towards IP
● A lot protocols are moving towards IP
● Often started out with their own networking stack
● Switching to make use of the success of IP as a protocol
● The name Internet of Things already implies that it should be modeled
after the success of the Internet
– Direct addressing of nodes
– Re-usage of proven protocols
● But TCP/IP is not one size fits all
– Adaptations needed for MTU size
– Reduce of header overhead
– UDP (DTLS) instead of TCP to avoid latencies
9Samsung Open Source Group
● Development boards
with IEEE 802.15.4
● Ci40 creator
● Artik 5/10
● Pi with openlabs shield
Development Boards
10Samsung Open Source Group
●
Products with IEEE 802.15.4
●
Using 6LoWPAN or some
version of Thread
●
Nest Thermostat and Protect
●
Google OnHub router
Products
11Samsung Open Source Group
6LoWPAN
12Samsung Open Source Group
ZigBee Relations
● IEEE 802.15.4 is often mixed up with ZigBee
● It uses the PHY and MAC layers defined by
IEEE 802.15.4
● Everything above Layer 2 was proprietary
● ZigBee IP seems to have switched to 6LoWPAN and
keeping application profiles on top of it
● ZigBee licensing seems incompatible with the GPL,
no ZigBee support for the Linux Kernel
13Samsung Open Source Group
IEEE 802.15.4 / LoWPAN
● IEEE 802.15.4 specifications, started in 2003
● Low-Rate and low power Wireless Personal Area
Networks
● Specifies the physical and the MAC layer
● Simple addressing but no routing
● Star and Peer-to-Peer topologies supported
● Mesh topologies need some layers on top of these
● Applications are small battery powered devices like
sensors and actors in automation
14Samsung Open Source Group
6LoWPAN
● A series of IETF specifications, started
in 2007
● IPv6 over LoWPAN (IEEE 802.15.4)
● Adaptation layer between Data-Link and Network layer
(RFC4944)
● Autoconfiguration with neighbor discovery (RFC4944)
● Header and payload compressions (RFC4944, RFC6282,
RFC7400)
● Updates and extensions in other RFC's (see references at the end)
15Samsung Open Source Group
6LoWPAN Adaptation Layer
● The 6LoWPAN adaptation layer sits between
Data-link and original Network layer
● It effectively becomes part of the Network layer,
but only on the specified Data-Link layers
L3 Network Layer
L4 Transport Layer
L1 Physical Layer
L5 Application Layer
L2 Data Link Layer
IP
TCP | UDP | ICMP
Ethernet PHY
Application
Ethernet MAC
IPv6
UDP | ICMPv6
6LoWPAN
IEEE 802.15.4 PHY
Application
IEEE 802.15.4 MAC
16Samsung Open Source Group
6LoWPAN Fragmentation
●
IPv6 allows for a maximum packet size of 1280 bytes
● This is impossible to handle in the 127 bytes MTU of IEEE 802.15.4
(other PHY's will vary here)
● Therefore 6LoWPAN defines a fragmentation scheme to allow such
packets
●
The 11 bit fragmentation header allows for 2048 bytes packet size
with fragmentation
● But fragmentation can still lead to bad performance in lossy
networks
●
Recommended to avoid big packet sizes
17Samsung Open Source Group
The Header Size Problem
● Worst-case scenario calculations
● Maximum frame size in IEEE 802.15.4: 127 bytes
● Reduced by the max. frame header (25 bytes): 102 bytes
● Reduced by highest link-layer security (21 bytes): 81 bytes
● Reduced by standard IPv6 header (40 bytes): 41 bytes
● Reduced by standard UDP header (8 bytes): 33 bytes
● This leaves only 33 bytes for actual payload
● The rest of the space is used by headers
Frame Header (25) LLSEC (21) IPv6 Header (40) UDP Payload (33)
18Samsung Open Source Group
IPv6 Header Compression (IPHC)
● Defining some default values in IPv6 header
– Version == 6, traffic class & flow-label == 0, hop-limit only well-known values (1, 64 or 255)
– Remove the payload length (available in 6LoWPAN fragment header or data-link header)
– Addresses (link-local, global, multicast)
● Re-usage of the L2 address for IPv6
– Omit the IPv6 prefix (global known by network, link-local defined by compression)
– Using the EUI-64 L2 address
– Using the short address in following format PAN_ID:16 bit zero:SHORT_ADDRESS
Version
Source Address
(128 bit)
Destination Address
(128 bit)
Traffic Class Flow Label (20 bit)
Payload Length (16 bit) Next Header Hop Limit (8 bit)
IPv6 Header (40 bytes)
Source Address
Dispatch
6LoWPAN Header IPHC multi-hop (7 bytes)
Hop LimitLoWPAN_IPHC
Destination Address
Dispatch
6LoWPAN Header IPHC link-local (2 bytes)
LoWPAN_IPHC
19Samsung Open Source Group
6LoWPAN Compressions
● Started with HC1 and HC2 compressions (Best
savings in link-local communication, e.g. neighbor
discovery)
● Updated / deprecated by IPHC and NHC
● Extended by Generic Header Compression
● More NHC schemes to come, e.g. EAP
● Possible to invent your own scheme if you have
repeating usage patterns in your use case
20Samsung Open Source Group
Next Header Compression
● RFC6282
● LOWPAN_IPHC
– Better compression for global and multicast addresses not only link-local
– Compress header fields with common values: version, traffic class, flow label,
hop-limit
● NHC IPv6 Extension Header compression
– Hop-by-Hop, Routing Header, Fragment Header, Destination Options Header,
Mobility Header
● NHC UDP Header compression
– Compressing ports range to 4 bits
– Allows to omit the UDP checksum for cases where upper layers handle message integrity
21Samsung Open Source Group
The Header Size Solution
● Calculations with plain 6LoWPAN usage
● IPv6 with link-local and UDP on top
● IPHC with NHC for UDP
● The 48 bytes IPv6 + UDP header could in
the best cases be reduced to 6 bytes
Frame Header (25) LLSEC (21) 6 Payload (75)
Dispatch (1) LOWPAN_IPHC (1)LOWPAN_NHC (1) UDP Ports (1) UDP Checksum (2)
22Samsung Open Source Group
Generic Header Compression
● RFC7400
● A new scheme had to be defined for each new header which
should be compressed
● Plugging into NHC
● Adding a vastly more general, but slightly less efficient scheme
● LZ-77 style compression with bytecode for
– Appending zeroes
– Backreferencing to a static dictionary
– Copy data as is
● Indicating GHC capability over ND option 6CIO for bootstrapping
23Samsung Open Source Group
Stateless Address Autoconfiguration
● Autoconfiguration based on layer 2 address
– EUI-64 hardware address use as is
– Pseudo 48bit address based on short address:
16_bit_PAN:16_zero_bits:16_bit_short_address
● Link-local addresses use the FE80::/64 prefix
● Neighbor Discovery for 6LoWPAN is specified
in RFC6775
24Samsung Open Source Group
Bluetooth LE Relationship
● IETF specification for IPv6 over Bluetooth LE
● RFC7668
● No fragmentation but usage of
compression methods
● Common code is thus shared between the
wpan and Bluetooth subsystems in the
Linux kernel
25Samsung Open Source Group
More 6LoWPAN Adaptations
● Specifications being prepared for other L2 technologies
● NFC
● DECT Ultra Low Energy
● PowerLine (PLC)
● 802.11ah lower energy consumption, many stations,
long distance, sub 1GHz
● 6loBAC: Token passing network for the RS-485 physical
layer
26Samsung Open Source Group
Linux-wpan Status
27Samsung Open Source Group
Project
● IEEE 802.15.4 and 6LoWPAN support in the Linux kernel
● Started in 2008 as linux-zigbee project on Sourceforge
● The first steps of mainlining around 2012
● New project name to avoid confusion: Linux-wpan
● New maintainer Alexander Aring, Pengutronix
● Mailing list moved to vger like most other Kernel lists
● Patches are now handled on the list and picked up through the
Bluetooth-next tree
● http://wpan.cakelab.org, releases, docs
28Samsung Open Source Group
Architecture
● ieee802154 handles the MAC layer and
drivers (wpan0 interface)
● 6LoWPAN sits on top of the wpan devices
and acts as adaptation layer to be used
by the normal IPv6 kernel stack
(lowpan0 interface)
● 6LoWPAN transparently handles the
fragmentation and reassembly between
the different MTU's (127 vs 1280)
as well as compressions
Source: Alexander Aring
29Samsung Open Source Group
Current Mainline Status
● ieee802154 layer with drivers for various chips
(at86rf2xx, mrf24j40, cc2520, atusb, adf7242)
● Link Layer Security
● 6LoWPAN implementation
● LOWPAN_IPHC
● NHC for UDP
● GHC being worked on
● Connection between Linux devices
● Connection to Contiki devices
● Connection to RIOT devices
Source: openlabs.ca
Source: qi-hardware.com
30Samsung Open Source Group
Next Header Compression
● 6LoWPAN Next Header Compression (NHC)
● Kernel framework allows for different modules to
handle one compression and decrompression format
each
● Mix and match different modules/formats
● Only NHC UDP is fully implemented right now
● Runtime configuration interface missing
● GHC capability indication via ND (6CIO) not yet supported
31Samsung Open Source Group
Future Work
32Samsung Open Source Group
Linux-wpan
●
Implement missing parts of the spec
– Beacon and MAC command frame support
– Coordinator support in MAC layer and wpan-tools
– Scan for available PANs
– Short address handling in 6LoWPAN
●
Improve existing drivers and add support for new hardware
●
Implement more NHC modules for other compression
schemes
●
Neighbor Discovery Optimization for 6LoWPAN (RFC6775)
33Samsung Open Source Group
Interoperability
●
Linux-wpan is most of the time tested against Linux-wpan only
●
Basic tests with Contiki
– IEEE 802.15.4 connections
– 6LoWPAN with LOWPAN_IPHC and NHC UDP
●
RIOT OS developers also test against Linux-wpan
– Lead to fixes on both sides
●
Attending a formal Plugtest is still on the agenda
– There was some testing during the ETSI plugtest at IETF94 between Linux
and RIOT
– Maybe another Plugtest in Berlin in July
34Samsung Open Source Group
Miscellaneous
●
Routing Protocol for Low-Power and
Lossy Networks (RFC6550)
– unstrung, linux-rpl as current implementations
●
Thread uses many parts 6LoWPAN for
their protocol
– Potential for cooperation and interop testing
35Samsung Open Source Group
References
● RFC4919: 6LoWPAN Problem Statement
● RFC4944: Transmission of IPv6 Packets over
IEEE 802.15.4 Networks
● RFC6282: Compression Format for IPv6 Datagrams
● RFC6550: RPL: IPv6 Routing Protocol for Low-Power and
Lossy Networks
● RFC6775: Neighbor Discovery Optimization for 6LoWPAN
● RFC7400: 6LoWPAN-GHC: Generic Header Compression
for 6LoWPAN
36Samsung Open Source Group
Thank you.
http://www.slideshare.net/SamsungOSG
37Samsung Open Source Group
We are hiring.
jobs@osg.samsung.com

Weitere ähnliche Inhalte

Was ist angesagt?

IPv6 header
IPv6 headerIPv6 header
IPv6 headerHeba_a
 
IOT Protocols
IOT  Protocols IOT  Protocols
IOT Protocols Nagesh Rao
 
6lowpan
6lowpan 6lowpan
6lowpan Wi6Labs
 
Routing protocols-network-layer
Routing protocols-network-layerRouting protocols-network-layer
Routing protocols-network-layerNitesh Singh
 
Why We Need IPv6
Why We Need IPv6Why We Need IPv6
Why We Need IPv6Netwax Lab
 
Application Layer Protocols for the IoT
Application Layer Protocols for the IoTApplication Layer Protocols for the IoT
Application Layer Protocols for the IoTDamien Magoni
 
Network visibility and control using industry standard sFlow telemetry
Network visibility and control using industry standard sFlow telemetryNetwork visibility and control using industry standard sFlow telemetry
Network visibility and control using industry standard sFlow telemetrypphaal
 
A very good introduction to IPv6
A very good introduction to IPv6A very good introduction to IPv6
A very good introduction to IPv6Syed Arshad
 
Dynamic Routing IGRP
Dynamic Routing IGRPDynamic Routing IGRP
Dynamic Routing IGRPKishore Kumar
 
Network address translation
Network address translationNetwork address translation
Network address translationVarsha Honde
 
LoRaWAN in Depth
LoRaWAN in DepthLoRaWAN in Depth
LoRaWAN in DepthAPNIC
 
ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorialzdshelby
 
Protocols for IoT
Protocols for IoTProtocols for IoT
Protocols for IoTAmit Dev
 

Was ist angesagt? (20)

IPv6 header
IPv6 headerIPv6 header
IPv6 header
 
IOT Protocols
IOT  Protocols IOT  Protocols
IOT Protocols
 
6lowpan
6lowpan 6lowpan
6lowpan
 
IPv6
IPv6IPv6
IPv6
 
Routing protocols-network-layer
Routing protocols-network-layerRouting protocols-network-layer
Routing protocols-network-layer
 
Why We Need IPv6
Why We Need IPv6Why We Need IPv6
Why We Need IPv6
 
Application Layer Protocols for the IoT
Application Layer Protocols for the IoTApplication Layer Protocols for the IoT
Application Layer Protocols for the IoT
 
IoT Coap
IoT Coap IoT Coap
IoT Coap
 
IPv6
IPv6IPv6
IPv6
 
TinyOS
TinyOSTinyOS
TinyOS
 
Network visibility and control using industry standard sFlow telemetry
Network visibility and control using industry standard sFlow telemetryNetwork visibility and control using industry standard sFlow telemetry
Network visibility and control using industry standard sFlow telemetry
 
A very good introduction to IPv6
A very good introduction to IPv6A very good introduction to IPv6
A very good introduction to IPv6
 
Dynamic Routing IGRP
Dynamic Routing IGRPDynamic Routing IGRP
Dynamic Routing IGRP
 
Network address translation
Network address translationNetwork address translation
Network address translation
 
LoRaWAN in Depth
LoRaWAN in DepthLoRaWAN in Depth
LoRaWAN in Depth
 
Ccna
CcnaCcna
Ccna
 
ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorial
 
IPV4 vs IPV6
IPV4 vs IPV6IPV4 vs IPV6
IPV4 vs IPV6
 
Ipv6
Ipv6Ipv6
Ipv6
 
Protocols for IoT
Protocols for IoTProtocols for IoT
Protocols for IoT
 

Andere mochten auch

Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxSamsung Open Source Group
 
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Adam Dunkels
 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationSamsung Open Source Group
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsSamsung Open Source Group
 
Building day 2 upload Building the Internet of Things with Thingsquare and ...
Building day 2   upload Building the Internet of Things with Thingsquare and ...Building day 2   upload Building the Internet of Things with Thingsquare and ...
Building day 2 upload Building the Internet of Things with Thingsquare and ...Adam Dunkels
 
Connect to the IoT with a lightweight protocol MQTT
Connect to the IoT with a lightweight protocol MQTTConnect to the IoT with a lightweight protocol MQTT
Connect to the IoT with a lightweight protocol MQTTKenneth Peeples
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...Samsung Open Source Group
 
20150311 사물인터넷이 여는 새로운 세상 telco
20150311 사물인터넷이 여는 새로운 세상 telco20150311 사물인터넷이 여는 새로운 세상 telco
20150311 사물인터넷이 여는 새로운 세상 telcoDonghyung Shin
 
Overview of Wireless Sensor Networks
Overview of Wireless Sensor NetworksOverview of Wireless Sensor Networks
Overview of Wireless Sensor NetworksDuncan Purves
 
Descripcion del puesto gerente de ti
Descripcion del puesto gerente de tiDescripcion del puesto gerente de ti
Descripcion del puesto gerente de tiInngriita Fueentes
 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivitySamsung Open Source Group
 

Andere mochten auch (20)

Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
 
SOSCON 2016 JerryScript
SOSCON 2016 JerryScriptSOSCON 2016 JerryScript
SOSCON 2016 JerryScript
 
JerryScript on RIOT
JerryScript on RIOTJerryScript on RIOT
JerryScript on RIOT
 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential Collaboration
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
 
Introduction to IoT.JS
Introduction to IoT.JSIntroduction to IoT.JS
Introduction to IoT.JS
 
Building day 2 upload Building the Internet of Things with Thingsquare and ...
Building day 2   upload Building the Internet of Things with Thingsquare and ...Building day 2   upload Building the Internet of Things with Thingsquare and ...
Building day 2 upload Building the Internet of Things with Thingsquare and ...
 
Connect to the IoT with a lightweight protocol MQTT
Connect to the IoT with a lightweight protocol MQTTConnect to the IoT with a lightweight protocol MQTT
Connect to the IoT with a lightweight protocol MQTT
 
Clang: More than just a C/C++ Compiler
Clang: More than just a C/C++ CompilerClang: More than just a C/C++ Compiler
Clang: More than just a C/C++ Compiler
 
Tizen Connected with IoTivity
Tizen Connected with IoTivityTizen Connected with IoTivity
Tizen Connected with IoTivity
 
Development Boards for Tizen IoT
Development Boards for Tizen IoTDevelopment Boards for Tizen IoT
Development Boards for Tizen IoT
 
Toward "OCF Automotive" profile
Toward "OCF Automotive" profileToward "OCF Automotive" profile
Toward "OCF Automotive" profile
 
OIC AGL Collaboration
OIC AGL CollaborationOIC AGL Collaboration
OIC AGL Collaboration
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
 
20150311 사물인터넷이 여는 새로운 세상 telco
20150311 사물인터넷이 여는 새로운 세상 telco20150311 사물인터넷이 여는 새로운 세상 telco
20150311 사물인터넷이 여는 새로운 세상 telco
 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
 
Overview of Wireless Sensor Networks
Overview of Wireless Sensor NetworksOverview of Wireless Sensor Networks
Overview of Wireless Sensor Networks
 
Descripcion del puesto gerente de ti
Descripcion del puesto gerente de tiDescripcion del puesto gerente de ti
Descripcion del puesto gerente de ti
 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
 

Ähnlich wie 6LoWPAN: An Open IoT Networking Protocol

Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceSamsung Open Source Group
 
Linux Kernel Status Report for IEEE 802.15.4 & 6LoWPAN
Linux Kernel Status Report for IEEE 802.15.4 & 6LoWPANLinux Kernel Status Report for IEEE 802.15.4 & 6LoWPAN
Linux Kernel Status Report for IEEE 802.15.4 & 6LoWPANSamsung Open Source Group
 
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linaro
 
An FPGA for high end Open Networking
An FPGA for high end Open NetworkingAn FPGA for high end Open Networking
An FPGA for high end Open Networkingrinnocente
 
Io t hurdles_i_pv6_slides_doin
Io t hurdles_i_pv6_slides_doinIo t hurdles_i_pv6_slides_doin
Io t hurdles_i_pv6_slides_doinJonny Doin
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)Kirill Tsym
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingKernel TLV
 
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDKLagopus SDN/OpenFlow switch
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaJim St. Leger
 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?OPNFV
 
PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...
PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...
PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...PROIDEA
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPThomas Graf
 
Network for the Large-scale Hadoop cluster at Yahoo! JAPAN
Network for the Large-scale Hadoop cluster at Yahoo! JAPANNetwork for the Large-scale Hadoop cluster at Yahoo! JAPAN
Network for the Large-scale Hadoop cluster at Yahoo! JAPANDataWorks Summit/Hadoop Summit
 
Tutorial: IPv6-only transition with demo
Tutorial: IPv6-only transition with demoTutorial: IPv6-only transition with demo
Tutorial: IPv6-only transition with demoAPNIC
 
Improving Network Efficiency with Simplemux
Improving Network Efficiency with SimplemuxImproving Network Efficiency with Simplemux
Improving Network Efficiency with SimplemuxJose Saldana
 
Internet Protocol Version 6 By Suvo 2002
Internet Protocol Version 6 By Suvo 2002Internet Protocol Version 6 By Suvo 2002
Internet Protocol Version 6 By Suvo 2002suvobgd
 

Ähnlich wie 6LoWPAN: An Open IoT Networking Protocol (20)

Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
 
Linux Kernel Status Report for IEEE 802.15.4 & 6LoWPAN
Linux Kernel Status Report for IEEE 802.15.4 & 6LoWPANLinux Kernel Status Report for IEEE 802.15.4 & 6LoWPAN
Linux Kernel Status Report for IEEE 802.15.4 & 6LoWPAN
 
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
 
SFScon 21 - Stefan Schmidt - The Rise of IPv6 in IoT Protocols
SFScon 21 - Stefan Schmidt - The Rise of IPv6 in IoT ProtocolsSFScon 21 - Stefan Schmidt - The Rise of IPv6 in IoT Protocols
SFScon 21 - Stefan Schmidt - The Rise of IPv6 in IoT Protocols
 
L6 6 lowpan
L6 6 lowpanL6 6 lowpan
L6 6 lowpan
 
An FPGA for high end Open Networking
An FPGA for high end Open NetworkingAn FPGA for high end Open Networking
An FPGA for high end Open Networking
 
Io t hurdles_i_pv6_slides_doin
Io t hurdles_i_pv6_slides_doinIo t hurdles_i_pv6_slides_doin
Io t hurdles_i_pv6_slides_doin
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet Processing
 
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
 
RouterOS v6
RouterOS v6RouterOS v6
RouterOS v6
 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?
 
PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...
PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...
PLNOG 17 - Nicolai van der Smagt - Building and connecting the eBay Classifie...
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDP
 
Network for the Large-scale Hadoop cluster at Yahoo! JAPAN
Network for the Large-scale Hadoop cluster at Yahoo! JAPANNetwork for the Large-scale Hadoop cluster at Yahoo! JAPAN
Network for the Large-scale Hadoop cluster at Yahoo! JAPAN
 
Tutorial: IPv6-only transition with demo
Tutorial: IPv6-only transition with demoTutorial: IPv6-only transition with demo
Tutorial: IPv6-only transition with demo
 
Improving Network Efficiency with Simplemux
Improving Network Efficiency with SimplemuxImproving Network Efficiency with Simplemux
Improving Network Efficiency with Simplemux
 
Internet Protocol Version 6 By Suvo 2002
Internet Protocol Version 6 By Suvo 2002Internet Protocol Version 6 By Suvo 2002
Internet Protocol Version 6 By Suvo 2002
 
6 lowpan
6 lowpan6 lowpan
6 lowpan
 

Mehr von Samsung Open Source Group

The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)Samsung Open Source Group
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBSamsung Open Source Group
 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesSamsung Open Source Group
 
IoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondIoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondSamsung Open Source Group
 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialSamsung Open Source Group
 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategySamsung Open Source Group
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilitySamsung Open Source Group
 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxSamsung Open Source Group
 
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesIoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesSamsung Open Source Group
 

Mehr von Samsung Open Source Group (15)

The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)
 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
 
Spawny: A New Approach to Logins
Spawny: A New Approach to LoginsSpawny: A New Approach to Logins
Spawny: A New Approach to Logins
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USB
 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
 
IoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondIoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and Beyond
 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorial
 
GENIVI + OCF Cooperation
GENIVI + OCF CooperationGENIVI + OCF Cooperation
GENIVI + OCF Cooperation
 
Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate Strategy
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
 
IoTivity: From Devices to the Cloud
IoTivity: From Devices to the CloudIoTivity: From Devices to the Cloud
IoTivity: From Devices to the Cloud
 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
 
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesIoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
 
IoTivity on Tizen: How to
IoTivity on Tizen: How toIoTivity on Tizen: How to
IoTivity on Tizen: How to
 

Kürzlich hochgeladen

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...software pro Development
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 

Kürzlich hochgeladen (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 

6LoWPAN: An Open IoT Networking Protocol

  • 1. 1Samsung Open Source Group Stefan Schmidt Samsung Open Source Group stefan@osg.samsung.com 6LoWPAN: An Open IoT Networking Protocol OpenIoT Summit 2016 San Diego
  • 2. 2Samsung Open Source Group 6LoWPAN: An Open IoT Networking Protocol ● Open: Specified by the IETF – Specifications available without any membership or license fees – Designed and developed in public ● IoT: Making “Things” Internet-aware – Usage of IPv6 to make use of internet protocols – Leverage on the success of open protocols in contrast to proprietary solutions ● Networking: Stopping at layer 3 – Application layer protocols are flexible and can vary – Often used together with CoAP, MQTT, etc
  • 3. 3Samsung Open Source Group ● Motivation ● 6LoWPAN ● Linux-wpan Status ● Future Work Agenda
  • 4. 4Samsung Open Source Group Motivation
  • 5. 5Samsung Open Source Group Use Cases ● Battery powered sensors (temp, smoke, etc) ● Main powered appliances (washing machine) ● WiFi accesspoints as Border Router / Gateways ● Home use ● Industrial use Internet IEEE 802.15.4
  • 6. 6Samsung Open Source Group Motivation 6LoWPAN ● Sensors are likely to have restricted wireless connectivity ● Using IPv6 instead of something proprietary allows the usage of existing and proven protocols driving the internet ● A full unmodified TCP/IP stack might clash with hardware limitations (which are useful for power savings) ● Sensors only need to transfer little data, compared to the usage scenarios of a Smartphone, PC .. Internet IEEE 802.15.4
  • 7. 7Samsung Open Source Group Motivation Linux-wpan ● Battery powered sensors might not run Linux but choose a smaller OS ● Main powered appliances might run Linux already and would benefit from native 6LoWPAN support ● IEEE 802.15.4 chips could easily be integrated in WiFi accesspoints or routers which already run Linux ● Thus a real benefit to have a 802.15.4 subsystem ready in the Linux kernel Internet IEEE 802.15.4
  • 8. 8Samsung Open Source Group Movement Towards IP ● A lot protocols are moving towards IP ● Often started out with their own networking stack ● Switching to make use of the success of IP as a protocol ● The name Internet of Things already implies that it should be modeled after the success of the Internet – Direct addressing of nodes – Re-usage of proven protocols ● But TCP/IP is not one size fits all – Adaptations needed for MTU size – Reduce of header overhead – UDP (DTLS) instead of TCP to avoid latencies
  • 9. 9Samsung Open Source Group ● Development boards with IEEE 802.15.4 ● Ci40 creator ● Artik 5/10 ● Pi with openlabs shield Development Boards
  • 10. 10Samsung Open Source Group ● Products with IEEE 802.15.4 ● Using 6LoWPAN or some version of Thread ● Nest Thermostat and Protect ● Google OnHub router Products
  • 11. 11Samsung Open Source Group 6LoWPAN
  • 12. 12Samsung Open Source Group ZigBee Relations ● IEEE 802.15.4 is often mixed up with ZigBee ● It uses the PHY and MAC layers defined by IEEE 802.15.4 ● Everything above Layer 2 was proprietary ● ZigBee IP seems to have switched to 6LoWPAN and keeping application profiles on top of it ● ZigBee licensing seems incompatible with the GPL, no ZigBee support for the Linux Kernel
  • 13. 13Samsung Open Source Group IEEE 802.15.4 / LoWPAN ● IEEE 802.15.4 specifications, started in 2003 ● Low-Rate and low power Wireless Personal Area Networks ● Specifies the physical and the MAC layer ● Simple addressing but no routing ● Star and Peer-to-Peer topologies supported ● Mesh topologies need some layers on top of these ● Applications are small battery powered devices like sensors and actors in automation
  • 14. 14Samsung Open Source Group 6LoWPAN ● A series of IETF specifications, started in 2007 ● IPv6 over LoWPAN (IEEE 802.15.4) ● Adaptation layer between Data-Link and Network layer (RFC4944) ● Autoconfiguration with neighbor discovery (RFC4944) ● Header and payload compressions (RFC4944, RFC6282, RFC7400) ● Updates and extensions in other RFC's (see references at the end)
  • 15. 15Samsung Open Source Group 6LoWPAN Adaptation Layer ● The 6LoWPAN adaptation layer sits between Data-link and original Network layer ● It effectively becomes part of the Network layer, but only on the specified Data-Link layers L3 Network Layer L4 Transport Layer L1 Physical Layer L5 Application Layer L2 Data Link Layer IP TCP | UDP | ICMP Ethernet PHY Application Ethernet MAC IPv6 UDP | ICMPv6 6LoWPAN IEEE 802.15.4 PHY Application IEEE 802.15.4 MAC
  • 16. 16Samsung Open Source Group 6LoWPAN Fragmentation ● IPv6 allows for a maximum packet size of 1280 bytes ● This is impossible to handle in the 127 bytes MTU of IEEE 802.15.4 (other PHY's will vary here) ● Therefore 6LoWPAN defines a fragmentation scheme to allow such packets ● The 11 bit fragmentation header allows for 2048 bytes packet size with fragmentation ● But fragmentation can still lead to bad performance in lossy networks ● Recommended to avoid big packet sizes
  • 17. 17Samsung Open Source Group The Header Size Problem ● Worst-case scenario calculations ● Maximum frame size in IEEE 802.15.4: 127 bytes ● Reduced by the max. frame header (25 bytes): 102 bytes ● Reduced by highest link-layer security (21 bytes): 81 bytes ● Reduced by standard IPv6 header (40 bytes): 41 bytes ● Reduced by standard UDP header (8 bytes): 33 bytes ● This leaves only 33 bytes for actual payload ● The rest of the space is used by headers Frame Header (25) LLSEC (21) IPv6 Header (40) UDP Payload (33)
  • 18. 18Samsung Open Source Group IPv6 Header Compression (IPHC) ● Defining some default values in IPv6 header – Version == 6, traffic class & flow-label == 0, hop-limit only well-known values (1, 64 or 255) – Remove the payload length (available in 6LoWPAN fragment header or data-link header) – Addresses (link-local, global, multicast) ● Re-usage of the L2 address for IPv6 – Omit the IPv6 prefix (global known by network, link-local defined by compression) – Using the EUI-64 L2 address – Using the short address in following format PAN_ID:16 bit zero:SHORT_ADDRESS Version Source Address (128 bit) Destination Address (128 bit) Traffic Class Flow Label (20 bit) Payload Length (16 bit) Next Header Hop Limit (8 bit) IPv6 Header (40 bytes) Source Address Dispatch 6LoWPAN Header IPHC multi-hop (7 bytes) Hop LimitLoWPAN_IPHC Destination Address Dispatch 6LoWPAN Header IPHC link-local (2 bytes) LoWPAN_IPHC
  • 19. 19Samsung Open Source Group 6LoWPAN Compressions ● Started with HC1 and HC2 compressions (Best savings in link-local communication, e.g. neighbor discovery) ● Updated / deprecated by IPHC and NHC ● Extended by Generic Header Compression ● More NHC schemes to come, e.g. EAP ● Possible to invent your own scheme if you have repeating usage patterns in your use case
  • 20. 20Samsung Open Source Group Next Header Compression ● RFC6282 ● LOWPAN_IPHC – Better compression for global and multicast addresses not only link-local – Compress header fields with common values: version, traffic class, flow label, hop-limit ● NHC IPv6 Extension Header compression – Hop-by-Hop, Routing Header, Fragment Header, Destination Options Header, Mobility Header ● NHC UDP Header compression – Compressing ports range to 4 bits – Allows to omit the UDP checksum for cases where upper layers handle message integrity
  • 21. 21Samsung Open Source Group The Header Size Solution ● Calculations with plain 6LoWPAN usage ● IPv6 with link-local and UDP on top ● IPHC with NHC for UDP ● The 48 bytes IPv6 + UDP header could in the best cases be reduced to 6 bytes Frame Header (25) LLSEC (21) 6 Payload (75) Dispatch (1) LOWPAN_IPHC (1)LOWPAN_NHC (1) UDP Ports (1) UDP Checksum (2)
  • 22. 22Samsung Open Source Group Generic Header Compression ● RFC7400 ● A new scheme had to be defined for each new header which should be compressed ● Plugging into NHC ● Adding a vastly more general, but slightly less efficient scheme ● LZ-77 style compression with bytecode for – Appending zeroes – Backreferencing to a static dictionary – Copy data as is ● Indicating GHC capability over ND option 6CIO for bootstrapping
  • 23. 23Samsung Open Source Group Stateless Address Autoconfiguration ● Autoconfiguration based on layer 2 address – EUI-64 hardware address use as is – Pseudo 48bit address based on short address: 16_bit_PAN:16_zero_bits:16_bit_short_address ● Link-local addresses use the FE80::/64 prefix ● Neighbor Discovery for 6LoWPAN is specified in RFC6775
  • 24. 24Samsung Open Source Group Bluetooth LE Relationship ● IETF specification for IPv6 over Bluetooth LE ● RFC7668 ● No fragmentation but usage of compression methods ● Common code is thus shared between the wpan and Bluetooth subsystems in the Linux kernel
  • 25. 25Samsung Open Source Group More 6LoWPAN Adaptations ● Specifications being prepared for other L2 technologies ● NFC ● DECT Ultra Low Energy ● PowerLine (PLC) ● 802.11ah lower energy consumption, many stations, long distance, sub 1GHz ● 6loBAC: Token passing network for the RS-485 physical layer
  • 26. 26Samsung Open Source Group Linux-wpan Status
  • 27. 27Samsung Open Source Group Project ● IEEE 802.15.4 and 6LoWPAN support in the Linux kernel ● Started in 2008 as linux-zigbee project on Sourceforge ● The first steps of mainlining around 2012 ● New project name to avoid confusion: Linux-wpan ● New maintainer Alexander Aring, Pengutronix ● Mailing list moved to vger like most other Kernel lists ● Patches are now handled on the list and picked up through the Bluetooth-next tree ● http://wpan.cakelab.org, releases, docs
  • 28. 28Samsung Open Source Group Architecture ● ieee802154 handles the MAC layer and drivers (wpan0 interface) ● 6LoWPAN sits on top of the wpan devices and acts as adaptation layer to be used by the normal IPv6 kernel stack (lowpan0 interface) ● 6LoWPAN transparently handles the fragmentation and reassembly between the different MTU's (127 vs 1280) as well as compressions Source: Alexander Aring
  • 29. 29Samsung Open Source Group Current Mainline Status ● ieee802154 layer with drivers for various chips (at86rf2xx, mrf24j40, cc2520, atusb, adf7242) ● Link Layer Security ● 6LoWPAN implementation ● LOWPAN_IPHC ● NHC for UDP ● GHC being worked on ● Connection between Linux devices ● Connection to Contiki devices ● Connection to RIOT devices Source: openlabs.ca Source: qi-hardware.com
  • 30. 30Samsung Open Source Group Next Header Compression ● 6LoWPAN Next Header Compression (NHC) ● Kernel framework allows for different modules to handle one compression and decrompression format each ● Mix and match different modules/formats ● Only NHC UDP is fully implemented right now ● Runtime configuration interface missing ● GHC capability indication via ND (6CIO) not yet supported
  • 31. 31Samsung Open Source Group Future Work
  • 32. 32Samsung Open Source Group Linux-wpan ● Implement missing parts of the spec – Beacon and MAC command frame support – Coordinator support in MAC layer and wpan-tools – Scan for available PANs – Short address handling in 6LoWPAN ● Improve existing drivers and add support for new hardware ● Implement more NHC modules for other compression schemes ● Neighbor Discovery Optimization for 6LoWPAN (RFC6775)
  • 33. 33Samsung Open Source Group Interoperability ● Linux-wpan is most of the time tested against Linux-wpan only ● Basic tests with Contiki – IEEE 802.15.4 connections – 6LoWPAN with LOWPAN_IPHC and NHC UDP ● RIOT OS developers also test against Linux-wpan – Lead to fixes on both sides ● Attending a formal Plugtest is still on the agenda – There was some testing during the ETSI plugtest at IETF94 between Linux and RIOT – Maybe another Plugtest in Berlin in July
  • 34. 34Samsung Open Source Group Miscellaneous ● Routing Protocol for Low-Power and Lossy Networks (RFC6550) – unstrung, linux-rpl as current implementations ● Thread uses many parts 6LoWPAN for their protocol – Potential for cooperation and interop testing
  • 35. 35Samsung Open Source Group References ● RFC4919: 6LoWPAN Problem Statement ● RFC4944: Transmission of IPv6 Packets over IEEE 802.15.4 Networks ● RFC6282: Compression Format for IPv6 Datagrams ● RFC6550: RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks ● RFC6775: Neighbor Discovery Optimization for 6LoWPAN ● RFC7400: 6LoWPAN-GHC: Generic Header Compression for 6LoWPAN
  • 36. 36Samsung Open Source Group Thank you. http://www.slideshare.net/SamsungOSG
  • 37. 37Samsung Open Source Group We are hiring. jobs@osg.samsung.com