hyperlinked entities: decentralised micro-services, paulo chainho, altice labs

17
1 TAD Summit Hyperlinked Entities: Decentralized Microservices Paulo Chainho, November 15 th 2016 TAD Summit

Upload: alan-quayle

Post on 16-Apr-2017

129 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

1

TAD Summit

Hyperlinked Entities: Decentralized MicroservicesPaulo Chainho, November 15th 2016

TAD Summit

Page 2: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

2

Hyperty

Microservice (Independently deployable Business Capability) similar to user agents or bots, perform tasks on user's behalf

An instance is associated to a “User” through an identityThe Identity is decoupled from the Service Provider

2

Hyperty Plane

User Plane

bla bla

bla bla

chat

chat

H1H1

Hyperty – User Association

Hyperty – User Association

Hyperty Communication

Page 3: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

3

No need to standardise Service Network Protocols or Service APIs

{

"id": "HelloObject","type": "object","required": ["hello"],"additionalProperties": false,

"properties": {"scheme": {

"constant": "hello"},"hello": {

"type": "string"}

}}

Service Interoperability with agreements on the data formats, only.

Inherently Inter-operable

Page 4: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

4

Hyperty Descriptor

Describes Hyperty Business Capabilities in terms of:- Supported Data Schemas- Supported (Hyperty)Resources

Page 5: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

5

WriteO

JSON Data Object

Communication via Data Synchronisation Streams

Read Changes

Read Changes

Reporter

Observer

Observer

Observer

A

hello://example.com/201601290617

hyperty://example.com/sdfg-fdjhgj

B

C

D

hyperty://example.io/hfgdjhfg-jkhkjjdf

hyperty://foo.net/hfgdjhfg-jkhkjjdf

hyperty://example.org/hfgdjhfg-jkhkjjdf

Page 6: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

6

Connector Hyperty

Hyperties supporting Connection schema are able to handle WebRTC Peer Connections independently of the signalling protocol used. The Connection schema is defined from the W3C WebRTC data model.

The URL Scheme for Connection Data Objects is "connection" (example: "connection://example.com/201601290617")

A

Connection

B

Connection

Page 7: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

7

A Context B

Context Hyperty

C

D

Hyperties supporting Context Data Schema are able to produce or consume Context Data, usually collected from sensors. Compliant with Jenning’s IETF Draft Sensor Markup Language (SenML). The URL Scheme for Context Data Objects is "context“. Example: context://example.com/room/temperature201601290617").

Page 8: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

8

DEMO

Page 9: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

9

HOW?

Page 10: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

10

Decentralized

A Decentralized Resource Oriented Messaging Framework is used for communication.

Publish/subscribe and request/response messaging patterns are supported.

10

router

router

HH

router

HH

router

router

router

HH

router

HH

router

router

HH

router

HH

router

router

HH

router

HH

Page 11: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

11

Message Delivery Layers

11Hyperty Runtime Hyperty Runtime

Msg Node

Msg BUS

Sandbox

Msg BUS

MiniBUS

HH

Sandbox

MiniBUS

HH

Domain level Message Delivery

Runtime level Message Delivery

Sandbox level Message Delivery

Sandbox

MiniBUS

HH

Sandbox

MiniBUS

HH

Native StandardHyperty

JSON Messaging

Any Messaging Protocol (Protofly)

P2P

Page 12: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

12

Protocol on-the-fly – Protofly Protocol on-the-fly leverages the code on-demand support by Web runtimes (e.g.

Javascript) The most appropriate protocol stack is dynamically selected loaded and instantiate

during run-time

Hyperty Runtime Hyperty RuntimeSandbox

SandboxSandbox

Msg Node1

Msg BUS

Sandbox

Msg BUS

MiniBUS

HoH

MiniBUS

HoHo

MiniBUS

HHr

MiniBUS

HoH

Protostub Sandbox

P1

Msg Node2

Mini BUS

Protostub Sandbox

P2

Mini BUS

Protostub Sandbox

P1

Mini BUS

Protostub

Protostub

Page 13: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

13

Data Synch Stream Routing Path

Hyperty Runtime Hyperty Runtime

SandboxSandbox

Sandbox

Msg Node

Msg BUS

Sandbox

Msg BUS

MiniBUS

HoH

MiniBUS

HoHo

MiniBUS

HHr

MiniBUS

HoH

Runtime Sync Manager

Runtime Sync Manager

Msg NodeSync Manager

Data SynchronisationRouting Path

Add Listeners to setup Data Sync Routing Path

Data Sync Routing Path Management between Msg Node

and Runtimes

Page 14: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

14

Trust Model

Hyperty Runtime Hyperty Runtime

H HH H

Hyperty Messaging Framework

IDP Proxy Sandbox

IDP Proxy

IDP Proxy Sandbox

IDP Proxy

IDP

1-Intercept Outgoing Message

3-Msg with Assertion

2- Generate AssertionIdentity Module

Policy Engine

IdentityModule

Policy Engine

5- Validate Assertion

4-Intercept Incoming Message

6-Message with Assertion Validated

5-Validate Assertion

2-GenerateAssertion

• Identity tokens are generated, inserted in intercepted Messages sent by Hyperties, and validated by recipient Hyperty Runtimes before delivered to the target Identity.

• Identity management procedures are performed according to applicable policies managed by the end-user.

Page 15: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

15

H1

P1

Load Hyperty

H3

Register Hyperty Instance

H1

Service Provider

Message Node

Registry

Catalog

H1 P1

Edge Server Runtime

H2

Messaging Communication between Hyperties

P2P Communication between Hyperties

UserDevice Runtime

IDP Proxy

Identity Provider

Generate Assertions

ValidateAssertions

reTHINK Service Delivery FrameworkGlobal registry trusted circleDiscover

Page 16: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

16

INTER-DOMAIN

rethink.tlabscloud.com

Msg Node

Catalog

H2

Hyperty Instances Registry

P1

Hyperty Sandbox

H2

Protostub Sandbox

P1

Msg bus

Hyperty Sandbox

H1

Protostub Sandbox

P1

Msg bus

hysmart.rethink.ptinovacao.pt

Msg Node

Catalog

H1

Hyperty Instances Registry

BA

Protostub Sandbox

P2

P2

Protostub Sandbox

P2

Media / data

Each side connected to own domain – using own Hyperty implementation

Page 17: Hyperlinked Entities: decentralised micro-services, Paulo Chainho, Altice Labs

17

Thank You!https://github.com/reTHINK-project/startup

Paulo Chainho

This work has received funding from the European Union’s Horizon 2020 research and innovation program under grant agreement No 645342, project reTHINK.