Io t hurdles_i_pv6_slides_doin
IoT Hurdles: Designing IPv6
Things in an IPv4 World
Jonny Doin
CEO – GridVortex Systems
Agenda
!   Introduction
!   IPv6
!   Mesh Networks
!   6loWPAN: Header Compression and Border Routers
!   UDP instead of TCP
!   IPv6 => IPv4 Transition Mechanisms
!   Example: Android App interfacing with IoT application
–  P2P with embedded devices
–  Integration with IPv6
!   Final Thoughts
Introduction
!   The Internet will see all kinds of Embedded Devices
and new applications
!   While the data traffic of those systems may not be too
large, there must be an unique address for each one
Source: http://www.satiztpm.it/internet-things
IPv6
!   The new Embedded Applications will add billions to trillions
of new unique addresses to the Internet
!   Hard Fact: full depletion of the adress space for the IPv4
(32 bits worth of unique addresses – 4 bytes)
!   IPv6: 16 bytes (128 bits) of addressing, or 7.9 * 1028 times
more addresses
!   Caveat: IPv6 headers are 4 times longer than IPv4 headers
http://www.digitaltrends.com/computing/world-ipv6-launch-day-explained-the-next-unseen-evolution-of-the-web/#!bG589T
IPv6 (2)
!  The new expanded address range is much better
than expanding the effective address space of IPv4
using NAT (Network Address Translation)
!  Stateless Address Auto Configuration – SLAAC
(RFC4862, RFC4941)
!  Neighbor Discovery – ND (RFC4861, RFC6775)
IPv6 (3)
!  IPv6 headers take 40 bytes, compared to 20 bytes
for IPv4
source: Wikipedia
Why IPv6 ?
!  IPv6 is a lighter protocol than IPv4
!  Lower management overhead, important in
embedded applications
!  No need for centralized node address configuration
!  IPv4 address space saturation will only get worse
!  IPv6 applications are simpler to design and deploy
Mesh Networks
Source: Industrial Ethernet Book, issue 49 / 36
!   Dynamic Self-Healing algorithms used to promote reorganization of
node interconnections
!   Increased network reach at lower power radio
!  In Mesh Networks each mesh node takes part in
the packet routing
6loWPAN
!  IPv6 over Low Power Wireless Personal Area
Networks
!  Unique address for each node in the mesh
!  Designed to be implemented on 802.15.4 radio
networks
!  Main feature is IPv6 header compression
!  Enables Internet connectivity for 802.15.4 networks
6loWPAN: Header Compression
!  The standard IPv6 packet MTU is at least 1280
bytes
!  802.15.4 MTU is only 127 bytes
!  The standard headers for IPv6 leave a rather small
room for user payload
!  The response to that problem is Header
Compression
!  Header Compression schemes allow context-
based compression downto 2 bytes of header
6loWPAN: Border Router
!  Connects 6loWPAN
meshes to the Internet
!  Handles header
compression/expansion
!  Gateway between at
least two different
network interfaces
by the edge router for autoconfiguration. The edge router then configures the
01:300a:1::/48 to its IEEE802.15.4 wireless interface. Note that the LoWPAN
link are on different subnets as this uses the Simple LoWPAN model. The
4 wireless devices in the LoWPAN assume a default channel and security
he edge router starts advertising the IPv6 prefix, which is used by the three
orm Stateless Address Autoconfiguration, and to register with the edge router
IPv6 Internet
Remote server
Router
H
H
H
R R
R
LoWPAN
P2P link
2001:300a:1::/48
2001:300a::/32
2001:a03f::1ffa
::1
::2
::3
::4::5
::6
::7
Edge router
Figure 1.13 A 6LoWPAN example.Source: SHELBY, Zach. BORMANN, Carsten. 6LOWPAN The Wireless
Embedded Internet. Chichester, UK: Wiley, 2009
6loWPAN: Border Router (2)
!  Example: 6loWPAN /
802.3 gateway
!  Enables seamless P2P
connectivity between
loWPAN nodes and
standard UDP/IP
devices
!  Direct connection to,
e.g., SmartPhones,
Tablets, Computers and
other 6loWPAN devices
over the Internet
6LoWPAN: THE WIRELESS EMBEDDED INTERNET
6LoWPAN
interface
Ethernet
interface
IPv6
eth0 6lowpan0
6LoWPAN driverEthernet driver
TCP UDP ICMP
gure 6.8 Edge router with a 6LoWPAN network interface.
ral, e.g. in the form of a USB stick. The interface between the wireless
Source: SHELBY, Zach. BORMANN, Carsten. 6LOWPAN The Wireless
Embedded Internet. Chichester, UK: Wiley, 2009
6loWPAN: UDP instead of TCP
!  6loWPAN meshes are low-bandwidth and low-
power networks
!  CSMA-CA (collision avoidance): wait for free
channel to talk
!  UDP have the smallest utilization of the channels
!  TCP is too heavy for these networks
!  This choice impacts how applications are designed
IPv6 => IPv4
Transition Mechanisms
•  6in4
•  6to4
•  NAT64
•  TEREDO
•  6over4
IPv6 networks in a IPv4 World
REALITY: The Internet is still
predominantly IPv4
!  The switch to IPv6 is not a transparent move
!  Packets exchanged between IPv6 and IPv4 nodes
need modifications
!  There are several options for the co-existence of
IPv6 systems with the IPv4 backbone.
6in4 tunelling
!  Packet tunelling of IPv6 packets through IPv4
!  Transparent to the applications
!  Requires End-to end control of the implementation
Source: http://www.sixscape.com/joomla/sixscape/index.php/technical-backgrounders/tcp-ip/ip-the-internet-protocol/
ipv6-internet-protocol-version-6/transition-mechanisms-from-ipv4-to-ipv6/tunneling/6in4-tunneling
6to4 translation/encapsulation
!   Use of prefix 2002: to identify 6to4 packets
!   Connect IPv6 Islands and Internet sections through
IPv4 backbones
!   Standard gateways can route 2002:: prefixed packets
!   Packets have an overhead due to encapsulation
Source: Wikipedia
NAT64 translation
!   Connects IPv6 clients to IPv4 servers
!   Is frequently a stateful dynamic translation
!   Can be paired with DNS64 to provide the stateful translation
!   The IPv4 address is carried into a 32bit field on the 64:ff9b::/96
IPv6 address
Source: Wikipedia
TEREDO
!   Host-to-Host tunelling for IPv6 over IPv4
!   Uses standard IPv4 UDP packets for encapsulation
!   Can withstand multiple layers of standard NAT
!   Completely transparent for the routing IPv4
environment
Source: http://technet.microsoft.com/en-us/library/bb457011.aspx
6over4 Virtual Link Layer
!  IPv4 used as a virtual Link Layer
!  Supports IPv6-ND over the IPv4 network
!  Requires IPv4 Multicast which is not widely used
Source: http://www.cisco.com/web/about/ac123/ac147/downloads/customer/internetprotocoljournal/ipj_3-1/images/Fig_IV1.gif
IPv6 networks in a IPv4 World (2)
!   Integration of IPv6 applications into the IPv4 Internet is
not a transparent issue
!   Designers must decide what translation mechanism to
use during Design Time
!   Depending on the choice, specific physical routing
gear must be deployed
!   IPv6 address selection impacts on the chosen
translation mechanisms
!   Specific configuration of the gateways and host
applications must be applied
Application Example
Integration of an Android App with a 6loWPAN Embedded
Application
(Smart Lighting)
Application Example
!  The application example is a simple Android App
that employs direct P2P connection with a
6loWPAN network of Smart Street Lampposts.
!  In this application, a WiFi router is used to connect
to the loWPAN
!  The chosen transition mechanism in this case is
6to4
!  Device enumeration and service discovery using
2002:: prefixes for the loWPAN nodes
!  This is a contrived example, that limits the Android
node to link-local due to current Android limitations
Device and Service Discovery
Devices:
!  Discovery of 6loWPAN border routers via multicast
IPv6 (ad-Hoc)
!  FF02::1 – link local multicast address used by
Android app
!  All border routers present in the same link will
respond and enumerate
Device and Service Discovery (2)
Services:
!  SSDP – Simple Service Discovery Protocol
!  Uses HTTPU (HTTP over UDP)
!  Devices advertise services by multicast IPv6 at
port 1900
!  SSDP is a powerful means of interoperability
!  Supported by all major Operating Systems
Android and IPv6
Current version (Kitcat 4.4.4) has partial support for IPv6
!   There is a race condition between the Kernel and
dhcpcd in Android, which leads to conflict between
DHCPv6 and the link-local address configured by the
kernel
!   In this example application, we decided to disable
DHCPv6, and used the SLAAC configured fe80:: link
local address
!   This is a least-effort implementation
!   The resulting connection is limited to link-local, i.e., to
the WiFi router visibility
CoAP
!  Constrained Application Protocol
!  UDP-based
! RESTful (Representational State Transfer)
!  Binary encoding
–  Small frames
–  Easy to parse
!  Supports Multicast
!  Application-layer: must be designed into the App
as an End-to-end concern
CoAP
!  Easily translated to HTTP
!  Extensible
!  TLV – Type-Length-Value
! jCoAP
–  https://code.google.com/p/jcoap/
Source: KOVATSCH, Matthias. VERMILLARD, Julien.
Hands-on with CoAP. France: EclipseCon, 2014.
Example App
Final Thoughts
Integration of IPv6 Embedded Applications require
informed Design-Time decisions regarding the
Network deployment
The choices have an impact on the Embedded
Application and the peer connected application
Knowledge of idiosyncratic behaviors of the Network
elements (stacks, OS, routers) is necessary
Thank You
Jonny Doin
CEO - GridVortex
jonnydoin@gridvortex.com
Io t hurdles_i_pv6_slides_doin

More Related Content

PPTX
Getting started with IPv6
PPT
Ipv6
PDF
To Infiniband and Beyond
PDF
IPv6 Transition Strategies
PDF
Things I wish I had known about IPv6 before I started
PDF
Introduction of ipv6
DOCX
I pv6
Getting started with IPv6
Ipv6
To Infiniband and Beyond
IPv6 Transition Strategies
Things I wish I had known about IPv6 before I started
Introduction of ipv6
I pv6

What's hot (20)

PDF
IPv6 Autoconfig
PPTX
I pv4 vs ipv6
PDF
Addressing IPv6
PDF
IPv6 How To Set Up a Linux IPv6 Lan
KEY
IPV6 SIMPLE SECURITY CAPABILITIES
PDF
PLNOG 13: M. Czerwonka, T. Kossut: IPv6 in mobile network
PDF
IPv6 Transition & Deployment, including IPv6-only in cellular and broadband
PDF
IPv6 Adressvergabe und Adressierung
PPTX
Eric Vyncke - Layer-2 security, ipv6 norway
PPTX
Henrik Strøm - IPv6 from the attacker's perspective
PPTX
Eric Vyncke - IPv6 security in general
PPTX
PPTX
IPv6 translation methods
PPTX
Ipv6
PPTX
PPTX
Transitioning IPv4 to IPv6
PPTX
Basic of IPv6
PDF
IPv6 Transition
PDF
AusNOG 2014 - Network Virtualisation: The Killer App for IPv6?
PPTX
16.) layer 3 (basic tcp ip routing)
IPv6 Autoconfig
I pv4 vs ipv6
Addressing IPv6
IPv6 How To Set Up a Linux IPv6 Lan
IPV6 SIMPLE SECURITY CAPABILITIES
PLNOG 13: M. Czerwonka, T. Kossut: IPv6 in mobile network
IPv6 Transition & Deployment, including IPv6-only in cellular and broadband
IPv6 Adressvergabe und Adressierung
Eric Vyncke - Layer-2 security, ipv6 norway
Henrik Strøm - IPv6 from the attacker's perspective
Eric Vyncke - IPv6 security in general
IPv6 translation methods
Ipv6
Transitioning IPv4 to IPv6
Basic of IPv6
IPv6 Transition
AusNOG 2014 - Network Virtualisation: The Killer App for IPv6?
16.) layer 3 (basic tcp ip routing)
Ad

Similar to Io t hurdles_i_pv6_slides_doin (20)

PPTX
6LowPAN etc.pptx computer network and IOT devices in future technology
PDF
I pv6 tutorial
PPTX
Ipv6 - Hamzeh Al-Qudah
PDF
Fb i pv6-sparchimanv1.0
PDF
A Survey On Next Generation Internet Protocol IPv6
PDF
6lowpan introduction
PPT
L6 6 lowpan
PDF
Introduction to IPv6
PDF
Why We Need IPv6
PPTX
IPv6 ND 2020
PPT
Internet Protocol Version 6 By Suvo 2002
PDF
On the migration of a large scale network from i pv4 to ipv6 environment
PDF
I pv6 aag-v3_019-kr
PDF
I pv6 aag-v3_019-kr
PDF
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
PDF
Ipv4 To Ipv6 Transition
PPTX
Future protocol IP v6
PDF
IPv6 .pdf
PDF
6LowPAN etc.pptx computer network and IOT devices in future technology
I pv6 tutorial
Ipv6 - Hamzeh Al-Qudah
Fb i pv6-sparchimanv1.0
A Survey On Next Generation Internet Protocol IPv6
6lowpan introduction
L6 6 lowpan
Introduction to IPv6
Why We Need IPv6
IPv6 ND 2020
Internet Protocol Version 6 By Suvo 2002
On the migration of a large scale network from i pv4 to ipv6 environment
I pv6 aag-v3_019-kr
I pv6 aag-v3_019-kr
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSD...
Ipv4 To Ipv6 Transition
Future protocol IP v6
IPv6 .pdf
Ad

More from Jonny Doin (12)

PPTX
Jonny doin safe io t- lt_spice failsafe
PDF
Impacto metrologialegal jonnydoin
PDF
Jonny doin lt spice servo_dac
PDF
Sts 401 slides-doin
PDF
Esc 209 slides-doin
PDF
Esc 209 paper_doin
PDF
Network insecuritysimplehackscortexm jonnydoin
PDF
Implementing lora smartcity doin
PDF
Csc jonny doin_painel1_sm
PDF
ParallelLogicToEventDrivenFirmware_Doin
PDF
SiliconFailsafeForIoT_Doin
PDF
ImplementingCryptoSecurityARMCortex_Doin
Jonny doin safe io t- lt_spice failsafe
Impacto metrologialegal jonnydoin
Jonny doin lt spice servo_dac
Sts 401 slides-doin
Esc 209 slides-doin
Esc 209 paper_doin
Network insecuritysimplehackscortexm jonnydoin
Implementing lora smartcity doin
Csc jonny doin_painel1_sm
ParallelLogicToEventDrivenFirmware_Doin
SiliconFailsafeForIoT_Doin
ImplementingCryptoSecurityARMCortex_Doin

Recently uploaded (20)

PPTX
Internet Safety for Seniors presentation
PDF
Buy Cash App Verified Accounts Instantly – Secure Crypto Deal.pdf
PPTX
在线订购名古屋艺术大学毕业证, buy NUA diploma学历认证失败怎么办
PDF
Alethe Consulting Corporate Profile and Solution Aproach
PPTX
Layers_of_the_Earth_Grade7.pptx class by
PDF
The Ikigai Template _ Recalibrate How You Spend Your Time.pdf
PPTX
MY PRESENTATION66666666666666666666.pptx
PPTX
Reading as a good Form of Recreation
PDF
Containerization lab dddddddddddddddmanual.pdf
PDF
Top 8 Trusted Sources to Buy Verified Cash App Accounts.pdf
PDF
KEY COB2 UNIT 1: The Business of businessĐH KInh tế TP.HCM
PDF
Computer Networking, Internet, Casting in Network
PPTX
The-Importance-of-School-Sanitation.pptx
PPTX
Tìm hiểu về dịch vụ FTTH - Fiber Optic Access Node
PPT
415456121-Jiwratrwecdtwfdsfwgdwedvwe dbwsdjsadca-EVN.ppt
DOCX
Memecoinist Update: Best Meme Coins 2025, Trump Meme Coin Predictions, and th...
PDF
mera desh ae watn.(a source of motivation and patriotism to the youth of the ...
PDF
Session 1 (Week 1)fghjmgfdsfgthyjkhfdsadfghjkhgfdsa
PPTX
Top Website Bugs That Hurt User Experience – And How Expert Web Design Fixes
PDF
Understand the Gitlab_presentation_task.pdf
Internet Safety for Seniors presentation
Buy Cash App Verified Accounts Instantly – Secure Crypto Deal.pdf
在线订购名古屋艺术大学毕业证, buy NUA diploma学历认证失败怎么办
Alethe Consulting Corporate Profile and Solution Aproach
Layers_of_the_Earth_Grade7.pptx class by
The Ikigai Template _ Recalibrate How You Spend Your Time.pdf
MY PRESENTATION66666666666666666666.pptx
Reading as a good Form of Recreation
Containerization lab dddddddddddddddmanual.pdf
Top 8 Trusted Sources to Buy Verified Cash App Accounts.pdf
KEY COB2 UNIT 1: The Business of businessĐH KInh tế TP.HCM
Computer Networking, Internet, Casting in Network
The-Importance-of-School-Sanitation.pptx
Tìm hiểu về dịch vụ FTTH - Fiber Optic Access Node
415456121-Jiwratrwecdtwfdsfwgdwedvwe dbwsdjsadca-EVN.ppt
Memecoinist Update: Best Meme Coins 2025, Trump Meme Coin Predictions, and th...
mera desh ae watn.(a source of motivation and patriotism to the youth of the ...
Session 1 (Week 1)fghjmgfdsfgthyjkhfdsadfghjkhgfdsa
Top Website Bugs That Hurt User Experience – And How Expert Web Design Fixes
Understand the Gitlab_presentation_task.pdf

Io t hurdles_i_pv6_slides_doin

  • 2. IoT Hurdles: Designing IPv6 Things in an IPv4 World Jonny Doin CEO – GridVortex Systems
  • 3. Agenda !   Introduction !   IPv6 !   Mesh Networks !   6loWPAN: Header Compression and Border Routers !   UDP instead of TCP !   IPv6 => IPv4 Transition Mechanisms !   Example: Android App interfacing with IoT application –  P2P with embedded devices –  Integration with IPv6 !   Final Thoughts
  • 4. Introduction !   The Internet will see all kinds of Embedded Devices and new applications !   While the data traffic of those systems may not be too large, there must be an unique address for each one Source: http://www.satiztpm.it/internet-things
  • 5. IPv6 !   The new Embedded Applications will add billions to trillions of new unique addresses to the Internet !   Hard Fact: full depletion of the adress space for the IPv4 (32 bits worth of unique addresses – 4 bytes) !   IPv6: 16 bytes (128 bits) of addressing, or 7.9 * 1028 times more addresses !   Caveat: IPv6 headers are 4 times longer than IPv4 headers http://www.digitaltrends.com/computing/world-ipv6-launch-day-explained-the-next-unseen-evolution-of-the-web/#!bG589T
  • 6. IPv6 (2) !  The new expanded address range is much better than expanding the effective address space of IPv4 using NAT (Network Address Translation) !  Stateless Address Auto Configuration – SLAAC (RFC4862, RFC4941) !  Neighbor Discovery – ND (RFC4861, RFC6775)
  • 7. IPv6 (3) !  IPv6 headers take 40 bytes, compared to 20 bytes for IPv4 source: Wikipedia
  • 8. Why IPv6 ? !  IPv6 is a lighter protocol than IPv4 !  Lower management overhead, important in embedded applications !  No need for centralized node address configuration !  IPv4 address space saturation will only get worse !  IPv6 applications are simpler to design and deploy
  • 9. Mesh Networks Source: Industrial Ethernet Book, issue 49 / 36 !   Dynamic Self-Healing algorithms used to promote reorganization of node interconnections !   Increased network reach at lower power radio !  In Mesh Networks each mesh node takes part in the packet routing
  • 10. 6loWPAN !  IPv6 over Low Power Wireless Personal Area Networks !  Unique address for each node in the mesh !  Designed to be implemented on 802.15.4 radio networks !  Main feature is IPv6 header compression !  Enables Internet connectivity for 802.15.4 networks
  • 11. 6loWPAN: Header Compression !  The standard IPv6 packet MTU is at least 1280 bytes !  802.15.4 MTU is only 127 bytes !  The standard headers for IPv6 leave a rather small room for user payload !  The response to that problem is Header Compression !  Header Compression schemes allow context- based compression downto 2 bytes of header
  • 12. 6loWPAN: Border Router !  Connects 6loWPAN meshes to the Internet !  Handles header compression/expansion !  Gateway between at least two different network interfaces by the edge router for autoconfiguration. The edge router then configures the 01:300a:1::/48 to its IEEE802.15.4 wireless interface. Note that the LoWPAN link are on different subnets as this uses the Simple LoWPAN model. The 4 wireless devices in the LoWPAN assume a default channel and security he edge router starts advertising the IPv6 prefix, which is used by the three orm Stateless Address Autoconfiguration, and to register with the edge router IPv6 Internet Remote server Router H H H R R R LoWPAN P2P link 2001:300a:1::/48 2001:300a::/32 2001:a03f::1ffa ::1 ::2 ::3 ::4::5 ::6 ::7 Edge router Figure 1.13 A 6LoWPAN example.Source: SHELBY, Zach. BORMANN, Carsten. 6LOWPAN The Wireless Embedded Internet. Chichester, UK: Wiley, 2009
  • 13. 6loWPAN: Border Router (2) !  Example: 6loWPAN / 802.3 gateway !  Enables seamless P2P connectivity between loWPAN nodes and standard UDP/IP devices !  Direct connection to, e.g., SmartPhones, Tablets, Computers and other 6loWPAN devices over the Internet 6LoWPAN: THE WIRELESS EMBEDDED INTERNET 6LoWPAN interface Ethernet interface IPv6 eth0 6lowpan0 6LoWPAN driverEthernet driver TCP UDP ICMP gure 6.8 Edge router with a 6LoWPAN network interface. ral, e.g. in the form of a USB stick. The interface between the wireless Source: SHELBY, Zach. BORMANN, Carsten. 6LOWPAN The Wireless Embedded Internet. Chichester, UK: Wiley, 2009
  • 14. 6loWPAN: UDP instead of TCP !  6loWPAN meshes are low-bandwidth and low- power networks !  CSMA-CA (collision avoidance): wait for free channel to talk !  UDP have the smallest utilization of the channels !  TCP is too heavy for these networks !  This choice impacts how applications are designed
  • 15. IPv6 => IPv4 Transition Mechanisms •  6in4 •  6to4 •  NAT64 •  TEREDO •  6over4
  • 16. IPv6 networks in a IPv4 World REALITY: The Internet is still predominantly IPv4 !  The switch to IPv6 is not a transparent move !  Packets exchanged between IPv6 and IPv4 nodes need modifications !  There are several options for the co-existence of IPv6 systems with the IPv4 backbone.
  • 17. 6in4 tunelling !  Packet tunelling of IPv6 packets through IPv4 !  Transparent to the applications !  Requires End-to end control of the implementation Source: http://www.sixscape.com/joomla/sixscape/index.php/technical-backgrounders/tcp-ip/ip-the-internet-protocol/ ipv6-internet-protocol-version-6/transition-mechanisms-from-ipv4-to-ipv6/tunneling/6in4-tunneling
  • 18. 6to4 translation/encapsulation !   Use of prefix 2002: to identify 6to4 packets !   Connect IPv6 Islands and Internet sections through IPv4 backbones !   Standard gateways can route 2002:: prefixed packets !   Packets have an overhead due to encapsulation Source: Wikipedia
  • 19. NAT64 translation !   Connects IPv6 clients to IPv4 servers !   Is frequently a stateful dynamic translation !   Can be paired with DNS64 to provide the stateful translation !   The IPv4 address is carried into a 32bit field on the 64:ff9b::/96 IPv6 address Source: Wikipedia
  • 20. TEREDO !   Host-to-Host tunelling for IPv6 over IPv4 !   Uses standard IPv4 UDP packets for encapsulation !   Can withstand multiple layers of standard NAT !   Completely transparent for the routing IPv4 environment Source: http://technet.microsoft.com/en-us/library/bb457011.aspx
  • 21. 6over4 Virtual Link Layer !  IPv4 used as a virtual Link Layer !  Supports IPv6-ND over the IPv4 network !  Requires IPv4 Multicast which is not widely used Source: http://www.cisco.com/web/about/ac123/ac147/downloads/customer/internetprotocoljournal/ipj_3-1/images/Fig_IV1.gif
  • 22. IPv6 networks in a IPv4 World (2) !   Integration of IPv6 applications into the IPv4 Internet is not a transparent issue !   Designers must decide what translation mechanism to use during Design Time !   Depending on the choice, specific physical routing gear must be deployed !   IPv6 address selection impacts on the chosen translation mechanisms !   Specific configuration of the gateways and host applications must be applied
  • 23. Application Example Integration of an Android App with a 6loWPAN Embedded Application (Smart Lighting)
  • 24. Application Example !  The application example is a simple Android App that employs direct P2P connection with a 6loWPAN network of Smart Street Lampposts. !  In this application, a WiFi router is used to connect to the loWPAN !  The chosen transition mechanism in this case is 6to4 !  Device enumeration and service discovery using 2002:: prefixes for the loWPAN nodes !  This is a contrived example, that limits the Android node to link-local due to current Android limitations
  • 25. Device and Service Discovery Devices: !  Discovery of 6loWPAN border routers via multicast IPv6 (ad-Hoc) !  FF02::1 – link local multicast address used by Android app !  All border routers present in the same link will respond and enumerate
  • 26. Device and Service Discovery (2) Services: !  SSDP – Simple Service Discovery Protocol !  Uses HTTPU (HTTP over UDP) !  Devices advertise services by multicast IPv6 at port 1900 !  SSDP is a powerful means of interoperability !  Supported by all major Operating Systems
  • 27. Android and IPv6 Current version (Kitcat 4.4.4) has partial support for IPv6 !   There is a race condition between the Kernel and dhcpcd in Android, which leads to conflict between DHCPv6 and the link-local address configured by the kernel !   In this example application, we decided to disable DHCPv6, and used the SLAAC configured fe80:: link local address !   This is a least-effort implementation !   The resulting connection is limited to link-local, i.e., to the WiFi router visibility
  • 28. CoAP !  Constrained Application Protocol !  UDP-based ! RESTful (Representational State Transfer) !  Binary encoding –  Small frames –  Easy to parse !  Supports Multicast !  Application-layer: must be designed into the App as an End-to-end concern
  • 29. CoAP !  Easily translated to HTTP !  Extensible !  TLV – Type-Length-Value ! jCoAP –  https://code.google.com/p/jcoap/ Source: KOVATSCH, Matthias. VERMILLARD, Julien. Hands-on with CoAP. France: EclipseCon, 2014.
  • 31. Final Thoughts Integration of IPv6 Embedded Applications require informed Design-Time decisions regarding the Network deployment The choices have an impact on the Embedded Application and the peer connected application Knowledge of idiosyncratic behaviors of the Network elements (stacks, OS, routers) is necessary