32
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 Things NEC 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

Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 2: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

IoT - the Traditional Way

Page 3: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

3 © NEC Corporation 2017

A view of the Internet-of-Things...

Applications

Page 4: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 5: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 6: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 7: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 8: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

8 © NEC Corporation 2017

Page 9: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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)

Page 10: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 11: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 12: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

Advanced IoT Use Cases

Page 13: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 14: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 15: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 16: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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.

Page 17: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 18: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

FogFlow – Reliable Cloud/Edge Execution

Page 19: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 20: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 21: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

21 © NEC Corporation 2017

Fog Computing

Reliability & autonomy: important criterions for fog computing

Page 22: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 23: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 24: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 25: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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)

Page 26: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 27: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 28: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 29: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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)

Page 30: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 31: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories

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

Page 32: Reliable Cloud-Edge Programming for the Internet …...2017/07/25  · Reliable Cloud-Edge Programming for the Internet-of-Things NEC Solutions Innovators (NES) / NEC Laboratories