Reliable Cloud-Edge Programming for the Internet-of-Things
NEC Solutions Innovators (NES) / NEC Laboratories Europe (NLE)
Bin Cheng, Ernoe Kovacs
Cloud Services and Smart ThingsNEC Laboratories Europe
July 25, 2017
'This activity is based on results achieved within the project CPaaS.io,
which has received funding from the European Union’s Horizon 2020
research and innovation program
IoT - the Traditional Way
3 © NEC Corporation 2017
A view of the Internet-of-Things...
Applications
4 © NEC Corporation 2017
leafengine concept: Co-Creation of IoT services
▌Application Creator & Device Manufacturer
▌Simply add IoT capabilities to your product
Cloud M2M Platform
3rd Party Sensors & Actuators
Local Application
5 © NEC Corporation 2017
Basic Level SensorsVibration Sensor (Wired)Ultrasound Distance Sensor (Wired)Touch Sensor (Wired)Temperature Sensor (Wired)Sound Sensor (Wired)Shade Sensor (Wireless)Remote ControlRain Sensor (Wireless)RFID ReaderProperty FileNFC ReaderMotion Sensor (Wireless)Motion Sensor (Wired)
Light Sensor (Wireless)Light Sensor (Wired)
Infrared Light Barrier (Wireless)Humidity Sensor (Wired)Gas Pressure SensorDoor/Window Open Sensor (Wireless)Distance Sensor (Wired)Discontinued - Oak Light Sensor (Wired)Discontinued - Oak Distance Sensor (Wired)Controllable Power PlugCO2 Sensor (Wired)1D/2D Bar Code ReaderBLE Beacons (Eddystone)Digimesh Sensors…
Expert Level SensorsUbertooth Bluetooth ScannerField Analyst 4
Heavy Duty SensorsPOS-T ePusher v2
leafengine sensors
6 © NEC Corporation 2017
New: leafengine 2.0 [Smart City Edition]
Advanced Technology
▌Licensing Schema for Smart Cities
▌Remote Management and Mass Deployment
▌Dockerized leafengine
▌Meshed Network – Digimesh
LeafEngine X
LeafEngine Y
LeafEngine Z
LeafEngine W
da orig: X dist: Xb orig: Y dist: Xc orig: Z dist: Xc
a orig: X dist: Xb orig: Y dist: Yd orig: W dist: X
ba orig: X dist: Xc orig: Z dist: Zd orig: W dist: X
ab orig: Y dist: Yc orig: Z dist: Zd orig: W dist: W
DigimeshZigBee AdHoc
Network
7 © NEC Corporation 2017
IoTDeviceLayer
IoTBroker Layer
ApplicationLayer
Smart Home App
Smart City App
Smart Agriculture App
Aeron: The NEC IoT Broker
Role of Aeron: Make the IoT do what the applications need.
Data- Entity Model- Semantic
Discovery
Processing- World-wide Operation- Federation- Edge Processing
Meaning- IoT Analytics- Contextualization- Sem. Mediation
8 © NEC Corporation 2017
9 © NEC Corporation 2017
Customer Values for Smart Cities
Customer Value (I): Deep understanding of the city „health“ • Key Performance Indicators• Environment, Traffic, ...• Real –Time Situation
City Monitoring
Visualisation
NEC‘s Technology Strength
• fast and reliable (global) service creation and operations
• proven and ready-to-deploy toolchain for smart cities
• city-wide analytics
Customer Value (II):Enabling data-driven business(with open, real-time data)
10 © NEC Corporation 2017
NEC ... Replicating Smart City Solutions
Santander, Spain
Smart waste
collection service and
CCOC
Japan
Seismic and Tsunami
Network at seabed
Tigre, Argentina
City surveillance
ecosystem
Portugal
Large-Scale Farming
Analysis solution in
Agriculture ICT
Water leakage
detection solution
Arlington, Texas
Safer City
project
Singapore
Enhance public infrastructure,
including transportation networks
Wellington, New Zealand
Bus fleet
management
Hong Kong
Toshima, Japan
Disaster prevention and
crowd detection
India
Financial Inclusion
KawasakiKawasaki city eco-town project
11 © NEC Corporation 2017
Outlook: Future Technology Trends
IoT Clouds [today state-of-the-art] Cloud-based provisioning of IoT services NEC product: Cloud City Operation
CenterElastic IoT [emerging] From central cloud to federation &
brokering: Cloud-of-Cloud, System-of-System Edge Computing & automated functional
distribution, devops IoT network re-configuration
Hyperconnected IoT [Next Gen Discussion] Business mode: many-to-many data sharing semantic interoperability, multi-source data
analysis, semantic context, sharing of control massive orchestration
Extreme IoT [R&D starting] Massive use: „100-10K IoT objects per room“ IoT & 5G: IoT into every (!) object network impact , advance discovery & contextualized orchestration, tactile control
Today
1-3 year
2-5 year
4-6 year
Advanced IoT Use Cases
13 © NEC Corporation 2017
Beacon for Smart Displays
▌Beaconing Technology Bluetooth Low Energy (BLE) profile
Enables information broadcast
Realizes the Physical Web: things are linkedto the Web
▌ Example Smart Displays: equipped with beacons
Broadcasting URLs with additional informationabout the shown content
▌ Realization Using Raspberry Pi Zero W
or NEC Slot-in-PC with BLE dongle (Linux only)
▌ NLE Technology iPhone App with calibration for distance
management software for the beacons (using leafengine)
entity lookup using the IoT Broker
14 © NEC Corporation 2017
Swarm Algorithm 1: Real time scheduling module – NITRO -Nature Inspired Task - Resource allocation Optimization
Strategic Resource Scheduling Module
…
Drone Controller
Position Battery Status
Strategic Resource Scheduling Module
Environment Data
Operator
Maps Weather Traffic data
Targets Priorities
Adjust model according to predefined environment model
Pluggable Environment Models
…
(re-) allocating tasks to drones Recalling drones with fuel Adapting to changes
▌Performance indicators
• Quality of Service (timely scheduling)
• Cost (efficient scheduling)
▌Performance evaluation
• Scalability
• Ability to perform in changing environments
• Performance for simulated input
• Performance for non-routing applications
15 © NEC Corporation 2017
Real time scheduling module – NITRO - Nature Inspired Task-Resource allocation Optimization
▌ “Distributed task scheduling using multiple agent paradigms”, H. Hildmann and M. Martin
16 © NEC Corporation 2017
Swarm Algorithm 2: Swarm Surveillance – Adaptive Video Surveillance using multiple Aerial Sensing Platforms Drones)
Fig. 2 –Coveragechange with altitude
Fig. 1a – homogeneous coverage
Fig. 3 – System Architecture
Fig. 1b – optimized coverage
Algorithm improvements
Algorithm example and system architecture
The swarm surveillance algorithms enable groups of devices to cooperatively execute tasks where one device is not enough, eg, surveying a large area. Devices participating in collective sensing tasks (such as providing video coverage for an area or locating gas leaks, e.g.) can adjust the quality or the scope of their sensory focus. This enables a swarm of devices to operate on two levels: while the entire swarm provides blanket coverage over an area the individual devices can significantly improve the measurements provided for specific points. The target customers are companies and units in the public and civil security area such as GSD and NEC NZ, as well as those providing (real-time) advice for e.g. agricultural or mining applications. The method can be applied to devices ranging from cameras to satellites.
17 © NEC Corporation 2017
▌System architecture
Multi-Agent Control System for different systems
Agency
IoT PF
Edge
Mission
------------------------
Task board
N
G
S
I
ProxyNGSI
ROS
Light
Video Surveillanc
e
Face Recognitio
n
Planners
High level
Mid level
Low level
TaskBreakdowneeeee
Mission
Agencies submit high level missions to the system
The planners within the system breakdown this missions into simple tasks to be executed by the agents
ProxyNGSI
leafengineProxy
NGSI
ROS
FogFlow – Reliable Cloud/Edge Execution
19 © NEC Corporation 2017
Research
Digital Model
FogFlow
Fog/Edge
Edge Programming• Dynamic Edge Programming• Local Processing Flows• Communication Optimization
(10x higher throughput then ORION)• FIWARE-based Pub/Sub Model
Cloud
IoT Synergie Layer
IoT Broker
Data Model / Data Handling• FIWARE NGSI (supported by100
cities)• ETSI ISG CIM – Semantic Context
Information about Smart Cities
Standard API (NGSI)
IoT Synergie Layer• Joint optimization of Edge, SDN
and wireless networks
Digital Services• Data Stream Analysis• Contextualized Services
Federation
20 © NEC Corporation 2017
Mission Critical IoT Services
▌Mission Critical IoT Services – a emerging class of IoT servicesClosed loop: sensing analyzing actuating sensing
Use case examples
• Lane preparation for ambulance cars
• Car accidence avoidance with fast alert in emergency situation
• Terrorist searching and tracking for public safety
Top requirements: reliability, time constraint (often low end-to-end latency and fast response time), efficiency, scalability
lane preparation for ambulance cars terrorist searching and tracking
21 © NEC Corporation 2017
Fog Computing
Reliability & autonomy: important criterions for fog computing
22 © NEC Corporation 2017
FogFlow: Reliable Fog Computing Framework
W B W B
W
B TM
D
TM D
WB WB
TMD
W
B
cloud
Edge Domain1
EdgeDomain2
coordination Services(etcd)
IoT devices IoT devices
Task designer
ExternalApplications
Two big challenges: 1) How to achieve the reliability of system components2) How to offer the reliability of user-defined services?
D
TM
B
W
IoT Discovery
IoT Broker
Worker
Topology Master
23 © NEC Corporation 2017
Core Ideas: Dynamic Task Orchestration over Cloud-Edges
Anomalydetection
Sum
Visualization
Calling
alarm
Triggering dockerized tasks based on the availability of its required input data;Data processing topology can be constructed dynamically;
Sum
Sum
Incident reporting
Remote Monitoring
Ambulancescheduling
Statusanalysis
city control center
ambulance
fireman
shop owner
people who are shopping inside
city
district
section
EmergencyLane planning
shop
24 © NEC Corporation 2017
Reliability Issues (1): Reliable Service Orchestration
▌Distributed orchestration:
Turn TM (topology master) from centralized to distributed
Turn TM (topology master) from stateful to stateless (using reliable coordination services for saving intermediate decisions)
▌Task Migration
Migrate tasks from one edge to another edge without losing inputs and internal states
TM
D
TM D TMD
cloud
coordination Services(etcd)
Task designer
edge1 edge2
tasks
taskstasks
25 © NEC Corporation 2017
Reliability Issues (2): Reliable Information Delivery
Context Entities(information exchanging)
Context Availability(indexing, discovery)
IoT Devices(provide/consume context)
D D D
B B B B B
updates
D1
Temperature sensor(context provider)
D2 D2
moving or unavailable temporarily
How to ensure the order and reliable delivery of messages when exchanging context information? (we have enhanced our IoT Broker to provide reliable notify delivery in an optional way)
26 © NEC Corporation 2017
Concrete Issue related to System Reliability
▌Enhancement to solve the issues with NOTIFY delivery
Disorder of messages between IoT Broker and IoT Discovery
The response of NGSI9 subscription comes back after its notification already arrives. This NGSI9 notification will be discarded because the corresponding
subscriptionId can not be found.
Broker can cache the NGSI9 notification if no subscriptionId is found and then recheck it after
the subscriptionId comes back
Problem
Solution
27 © NEC Corporation 2017
Concrete Issue related to System Reliability
▌Enhancement to solve the issues with NOTIFY delivery
Lost of NGSI10 notification before the receiver gets ready (start listening)
In FogFlow, this receiver is a task container, launched by a worker. Currently, the work issues a subscription
on behalf of the task receiver to get its input streams. However, it might happen that NGSI10 notification come before the task receiver starts
listening. In this case, NGSI10 notification will be lost
Problem
Broker can cache the NGSI10 notification if the receiver is not available and then resend it
when a timeout is triggered or the next notification arrives
Solution
28 © NEC Corporation 2017
Concrete Issue related to System Reliability
▌Enhancement to solve the issues with NOTIFY delivery
Subscriber(receiver) is behind NAT/firewall, no able to receive notifications via a listening port
Communicate with Broker over websocket
Solution
Notifications can not reach the receiver(subscriber)
Problem
29 © NEC Corporation 2017
Reliability Issues (3): Reliable Actuating
big mission
Which task?How to break it?When to execute?Where to execute?
small mission (taskA)
small mission (taskB)
small mission (taskC)
Broker(s)
Search and track Terrorist using all
drones when there is an explosion is
detected
Provide proper and easy programming model to define missions and let the framework to handle all complexities
Coordinate all actuators to perform small divided tasks in order to finish the given mission
More importantly, we need the mechanism to ensure each mission has been done (reliable actuating)
30 © NEC Corporation 2017
Summary
Internet-of-Things
▌is evolving into a global infrastructure for data and processes
▌is moving to become more elastic and hyperconnected
Edge Computing
▌is solving issues of latency, bandwidth, lcoal operation, and disconnection
▌is using content-based brokering
▌need to be made reliable by updating its internal system mechanisms
Moving On
▌IoT is moving towards self-organized ensembles of devices
▌needs reliable and stable algorithm for coordination and decision making
31 © NEC Corporation 2017
'This activity is based on results achieved within the projects CPaaS.io,
which has received funding from the European Union’s Horizon 2020
research and innovation program
Top Related