Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Things Conference India

The Things Conference India

Johan Stokking

November 10, 2018
Tweet

Other Decks in Technology

Transcript

  1. THE TECHNOLOGY OF THE THINGS NETWORK Johan Stokking Tech Lead,

    The Things Network CTO and Co-Founder, The Things Industries [email protected] @johanstokking
  2. 0 5 10 15 20 25 2016 2017 2018 2020

    Number of Installed IoT Units (Billions) Consumer Business: Cross-Industry Business: Vertical-Specific Source: Gartner (January, 2017)
  3. 0 10 20 30 40 50 60 70 80 COST

    AND SCALE Reduce TCO • Design • Development • Materials • Certification • Distribution • Commissioning • Installation • Connectivity • Maintenance • Support
  4. so devices can run on solar panels for months or

    years on batteries Low power and small messages
  5. LORA PERFORMANCE TX P (dBm) RX TX Power Connector loss

    Antenna gain Connector loss Antenna gain RX Power Path loss and fading 14 0 -100
  6. LORA PERFORMANCE TX P (dBm) RX TX Power Connector loss

    Antenna gain Connector loss Antenna gain RX Power Path loss and fading 14 0 -100 Receiver sensitivity
  7. LORA PERFORMANCE RX TX Power Connector loss Antenna gain Connector

    loss Antenna gain RX Power Path loss and fading Receiver sensitivity -137 dBm 151 dBm link budget
  8. LORA PERFORMANCE Wi-Fi Unlicensed LPWAN Licensed LPWAN TX Power RX

    Sensitivity Link budget 20.5 dBm -75 dBm 95.5 dBm 14 dBm -137 dBm 151 dBm 23 dBm -129 dBm 152 dBm
  9. LORA PERFORMANCE Theoretical maximum in free space
 is 850 km

    (US915 regulations) Wi-Fi is only 550 meters The Things Network
 Community set the
 world record: 702 km
 using a helium balloon
  10. Sigfox IOT CONNECTIVITY Range Bandwidth NFC BLE Wi-Fi NB-IoT LoRa

    Wearables Contactless payments, tag scanning
  11. Sigfox IOT CONNECTIVITY Range Bandwidth NFC BLE Wi-Fi NB-IoT LoRa

    Smart home and small office Wearables Contactless payments, tag scanning
  12. Sigfox IOT CONNECTIVITY Range Bandwidth NFC BLE Wi-Fi NB-IoT LoRa

    Smart home and small office Outdoor use cases in coverage area, i.e. asset tracking, cars Wearables Contactless payments, tag scanning
  13. Sigfox IOT CONNECTIVITY Range Bandwidth NFC BLE Wi-Fi NB-IoT LoRa

    Smart home and small office Agriculture, lighting, asset tracking, smart metering, utilities, maintenance, parking, smart buildings Outdoor use cases in coverage area, i.e. asset tracking, cars Wearables Contactless payments, tag scanning
  14. LORAWAN 40 BBAA0126 80 D204 2A A50EDB DB2A5FFA Uplink DevAddr

    FHDR FCnt FPort Payload AES 128-bit ECB maximum 51 to 222 bytes MIC AES 128-bit CMAC
  15. LORAWAN SESSIONS Network Session Keys: Message Integrity, MAC commands Application

    Session Key: Payload Encryption and Decryption Devices Gateways Network Server Application
  16. RED FLAGS • Use of ABP: not secure; keys cannot

    be changed, must be shared with network operator
 • Keys printed on paper or sent by email; keys should not be visible (use HSM), paper trail is impossible to clear
 • Unable to choose a Join Server or operate your own: platform lock-in, potentially unsafe storage of end device root keys
 • Unable to choose an Application Server or operate your own: application data may get compromised
 • Same keys for multiple end devices: end devices need unique keys
 • Hardcoded keys in end device: end devices should use a HSM
  17. #include <TheThingsNetwork.h> const char *appEui = "0000000000000000"; const char *appKey

    = "00000000000000000000000000000000"; #define loraSerial Serial1 #define debugSerial Serial TheThingsNetwork ttn(loraSerial, debugSerial, TTN_FP_EU868); void setup() { loraSerial.begin(57600); debugSerial.begin(9600); ttn.join(appEui, appKey); ttn.showStatus(); } void loop() { float temp = analogRead(1); int16_t temp100 = temp * 100; byte payload[2]; payload[0] = temp100 ">> 8; payload[1] = temp100 & 0xff; ttn.sendBytes(payload, sizeof(payload)); delay(10000); } 25,42 °C "=> 0x09EE
  18. function Decoder(payload) { var temp100; if (payload[0] & 0x80) {

    temp100 = (0xffff "<< 16) | (payload[0] "<< 8) | payload[1]; } else { temp100 = (payload[0] "<< 8) | payload[1]; } return { temperature: temp100 / 100 } } 0x09EE "=> 25,42 °C
  19. var ttn = require(“ttn") var appID = "foo" var accessKey

    = "ttn-account-v2.eiPq8mEeYRL_PNBZsOpPy-O3ABJXYWulODmQGR5PZzg" ttn.data(appID, accessKey) .then(function (client) { client.on("uplink", function (devID, payload) { console.log("uplink from ", devID) console.log(payload) }) }) .catch(function (error) { console.error("whoops", error) process.exit(1) }) { “temperature”: 25.42 }
  20. REGULATED CHAIN 3–4 weeks between harvesting and consumption Very delicate

    product: maturity and shape when harvesting, and bruises and ripening during transportation Ripening is between 4 days (17,8 °C) to 8 days (14,5 °C) with ethylene gas
  21. CONNECTED CHAIN Banana Ripening App The Things Network: public and

    private Control temperature, humidity and ethylene gas throughout the chain
  22. CONNECTED CHAIN Banana Ripening App Farm Ship Transport Storage Shop

    The Things Network: public and private Control temperature, humidity and ethylene gas throughout the chain
  23. CONNECTED CHAIN Banana Ripening App Farm Ship Transport Storage Shop

    The Things Network: public and private Control temperature, humidity and ethylene gas throughout the chain Private 
 + Public Private offline or satellite Private pico + Public Private Private
  24. CHOOSE YOUR DEPLOYMENT Private Networks • Hosted
 The Things Industries

    V3 SaaS • Private Cloud: AWS, Azure, GCP, etc
 The Things Industries V3 Private Cloud • Images: Docker, VMware, OpenStack, binaries, etc
 The Things Industries V3 Images • Development
 The Things Network V3 Stack for LoRaWAN Public Networks • Operator networks • Collaborative networks
  25. Public network Private SaaS Private on-premises Private pico/offline LoRaWAN development

    V3: 2018 V2: 2017 V1: 2016 V0: 2015 THE THINGS NETWORK STACK V3
  26. V3 GATEWAY SERVER • Maintains connections with gateways • Supports

    gRPC, MQTT and UDP protocols • Authenticated and encrypted connection • Manages gateway’s duty cycle • Forwards uplink traffic to a Network Server or Peering Broker • Serves frequency plan to the gateway • Supports standard or custom frequency plans
  27. V3 NETWORK SERVER • Handles LoRAWAN MAC layer: 1.1, 1.0.3,

    1.0.2 and 1.0 • Supports class A, B and C • Keeps MAC state per device • LoRaWAN and Regional Parameters versions • Radio settings, including RX1 timings, RX2 data rates, etc
  28. V3 APPLICATION SERVER • Extended support for payload formats •

    Encoder and decoder JavaScript payload functions are there to stay • Adding an open source device repository on GitHub with payload functions for off-the-shelf devices • Set the payload format per device to allow for different models and versions • Manage devices in groups • Integrate third-party geo-localization services using LoRa TDOA, LoRa/ WiFi/BLE RSSI
  29. V3 INTEGRATIONS • V3 features the popular MQTT and HTTP

    web hook integrations • Commercial cloud platform integration; • AWS IoT • Azure IoT Hub • Google Cloud IoT Core • More optional, zero effort, commercial integrations for leading IoT platforms • Easy to integrate directly in your application through HTTP web hooks
  30. V3 CONSOLE • Can be deployed in any cluster scenario:

    • NS + AS + JS + Console • NS + AS + Console • NS + Console • AS + JS + Console • AS + Console • JS + Console • New look and improved navigation • Realtime insight in data and events • Enhanced filtering capabilities
  31. V3 CONSOLE • Can be deployed in any cluster scenario:

    • NS + AS + JS + Console • NS + AS + Console • NS + Console • AS + JS + Console • AS + Console • JS + Console • New look and improved navigation • Realtime insight in data and events • Enhanced filtering capabilities
  32. V3 IDENTITY SERVER • Issues security tokens, implements OAuth 2.0

    server • Supports integration with enterprise SAML identity provider • Contains user, application and gateway registry • Supports organizations and inheriting rights • The Things Industries private offerings include a multi-tenant Identity Server: separate environments
  33. V3 JOIN SERVER AND SECURITY • Stores the LoRaWAN root

    keys and derives session keys • You can deploy the Join Server inside or outside a V3 cluster, i.e. a private cloud or on-premises in a trusted domain • Control your security keys in your Join Server while using any V3 deployment scenario • Gives you the power to switch V3 clusters: public to private, private to public and private to private
  34. TRUSTED THIRD PARTY JOIN SERVERS • The Things Network Stack

    V3 supports the LoRaWAN Backend Interfaces 1.0, allowing interoperability with external Join Servers • Next generation devices contain secure elements • Pre-provisioned with symmetric LoRaWAN root keys that will never be exposed • Session keys are derived from the root keys, required by the Network Server and Application Server • The Join Server keeps the root keys safe, and only issues session keys
  35. V3 PUBLIC COMMUNITY NETWORK The Things Network Foundation "#$% Open

    Network Infrastructure Association & Meshed ' Digital Catapult (
  36. V3 PUBLIC COMMUNITY NETWORK The Things Network Foundation "#$% Open

    Network Infrastructure Association & Meshed ' Digital Catapult ( In progress or RFP )*+,-#"
  37. MULTI TENANT CONSOLE NOC & BILLING API GEO LOCATION FIRMWARE

    UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK JOIN SERVER APPLICATION SERVER INTEGRATIONS NETWORK SERVER GATEWAY SERVER
  38. MULTI TENANT CONSOLE NOC & BILLING API GEO LOCATION FIRMWARE

    UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK JOIN SERVER APPLICATION SERVER INTEGRATIONS NETWORK SERVER GATEWAY SERVER
  39. LORAWAN 1.1 COMPLIANT MULTI TENANT CONSOLE NOC & BILLING API

    LORAWAN 1.0.x AND 1.1 + ALL REGIONS MONITORING AND CONFIGURATION THE THINGS NETWORK STACK APPLICATION SERVER INTEGRATIONS GATEWAY SERVER NETWORK SERVER ROOT KEY STORE JOIN SERVER
  40. LORAWAN 1.1 COMPLIANT MULTI TENANT CONSOLE NOC & BILLING API

    GEO LOCATION FIRMWARE UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK INTEGRATIONS GATEWAY SERVER NETWORK SERVER JOIN SERVER ROOT KEY STORE LORAWAN DECODING DECRYPTION KEY STORE APPLICATION SERVER
  41. ROOT KEY STORE PAYLOAD ENCODING AND DECODING SESSION KEYS LORAWAN

    1.1 COMPLIANT MULTI TENANT CONSOLE NOC & BILLING API GEO LOCATION FIRMWARE UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK INTEGRATIONS GATEWAY SERVER NETWORK SERVER JOIN SERVER APPLICATION SERVER
  42. ROOT KEY STORE LORAWAN DECODING DECRYPTION KEY STORE LORAWAN 1.1

    COMPLIANT MULTI TENANT CONSOLE NOC & BILLING API GEO LOCATION FIRMWARE UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK GATEWAY SERVER NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS
  43. ROOT KEY STORE LORAWAN DECODING DECRYPTION KEY STORE LORAWAN 1.1

    COMPLIANT MULTI TENANT CONSOLE NOC & BILLING API GEO LOCATION FIRMWARE UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK GATEWAY SERVER NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS
  44. ROOT KEY STORE LORAWAN DECODING DECRYPTION KEY STORE LORAWAN 1.1

    COMPLIANT MULTI TENANT CONSOLE NOC & BILLING API GEO LOCATION FIRMWARE UPDATES MONITORING AND CONFIGURATION THE THINGS NETWORK STACK GATEWAY SERVER NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS
  45. NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER NETWORK

    SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER
  46. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER
  47. NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER NETWORK

    SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER CLOUD PEERING
  48. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  49. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  50. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  51. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  52. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  53. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  54. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  55. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  56. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON PREMISE
  57. PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER

    NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON SITE NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER
  58. PEERING PEERING NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY

    SERVER NETWORK SERVER JOIN SERVER APPLICATION SERVER INTEGRATIONS GATEWAY SERVER ON SITE JOIN SERVER
  59. Public Networks • Operator networks • Collaborative networks CHOOSE YOUR

    DEPLOYMENT Private Networks • Hosted
 The Things Industries V3 SaaS • Private Cloud: AWS, Azure, GCP, etc
 The Things Industries V3 Private Cloud • Images: Docker, VMware, OpenStack, binaries, etc
 The Things Industries V3 Images • Development
 The Things Network V3 Stack for LoRaWAN
  60. DEPLOYMENT MODELS Private gateways Multi- tenant Multi- region Auto- scaling

    FOTA SLA Support Available TTN PCN N N Y Y N N N 2019 Q1 TTI Hosted Y Y Y Y Y Y Y 2019 Q1 TTI Private Cloud Y Y Y N Y N Y 2018 Q4 TTI Images and Binaries Y Y Y N Y N Y 2018 Q4 TTN Open Source Y N N N N N N 2018 Q4
  61. Peering allows for exchanging traffic between a private network and

    the public network This enables sharing of coverage, while staying in full control of infrastructure