Trendy service discovery protocol at WoT 2012

Post on 12-Jun-2015

970 views 1 download

Tags:

description

We propose, trendy, a new registry-based Service Discovery protocol with context awareness. It uses CoAP-based RESTful web services to provide a standard interoperable interface which can be easily translated from HTTP. In addition, trendy introduces an adaptive timer and grouping mechanism to minimise control overhead and energy consumption. Trendy ’s grouping is based on location tags to localise status maintenance traffic and to compose and offer new group based services. Our simulation results show that trendy techniques reduce the control traffic considerably and also reduce the energy consumption, while offering the optimal service selection.

Transcript of Trendy service discovery protocol at WoT 2012

Loughborough University

TRENDY: Adaptive

and Context-Aware

Service Discovery

Protocol for 6LoWPANs

1

Talal Ashraf Butt, Dr. Iain Phillips,

Dr. Lin Guan, Dr. George Oikomonou

Overview

2

• WoT vision and Role of Service Discovery (SD)

• WoT SD Requirements

• Our proposed solution: TRENDY

• Experiments and results

• Future Work

Web of Things (WoT) How to make application-specific WSNs to be

active part of the web?

3

6LoWPAN Internet of Things

Service discovery

Web Services

Discoverability

Interoperability

Web of Things

Role of Service Discovery

4

Router User Agent

(UA)

I need * service

• Switch off the lights in corridor of x building

• Give me the overall temperature of x building

• Close all the windows when its windy

• Close all the windows when no one in the room

• If rooms temperature is below x and someone in the room

Then Switch on the heating and close the windows

Existing Solutions: Gaps

5

limited

Packet

Size

limited

Bandwidth

Protocols Sleeping

Nodes

Limited

ROM and RAM

Bulky

formats

PULL-based

Compact version for 6LoWPAN

Translation

Overhead

Architecture

6LoWPAN constraints Heavy Dependencies

WoT: SD Requirements

6LoWPAN General

Compact

Size

Sleep

Cycles

Heterogeneity

Scalability

Efficiency

Service

Selection

Requirements

Interoperability

Compact

packets

Service

Composition

Requirements

6

TRENDY SD Protocol

CoAP

Based

Restful

Web services

Adaptivity

TRENDY: An Adaptive and Context-Aware Service

Discovery Protocol for 6LoWPANs

Grouping Service

Composition

7

Context

Awareness

Service Description

8

• Very simple at registration time (Comma

separated URLs)

• Optional: Detailed IETF CoRE well-

known descriptions

Context awareness

9

Directory Agent

(DA)

User Agent

(UA)

I need * service in * place

• Switch off the lights in corridor of x building

• Give me the overall temperature of x building

• Close all the windows when its windy

• Close all the windows when no one in the room

• If rooms temperature is below x and someone in the room

Then Switch on the heating and close the windows

Location based tags

Context awareness

10

DA User Agent

(UA)

I need temperature service

in H room

of x building

H room

Service Selection

Two Options:

Select the one with

1. Hit count (Popularity)

2. Less battery consumed

3. More reliable

Discovery Query Options

11

DA User Agent

(UA)

I need temperature service

in H room

of x building

H room Using URI-query with:

1. Keyword

2. Keyword and location

3. 1 or 2 with select the optimal option

URL(s) and IP address(es)

of matched service(s)

Status maintenance

12

DA

GM4 GM2

GM6

Interval = 412

Interval = 431

Interval = 521

Interval = 501

Basic Time window = 600

GL1 = Active

GM1 = Active

GM2 = Active

GM3 = Active

GM1

GM3 GM5

Interval = 511 Interval = 476

o Static interval o Multihop effect

Every node randomly selects

a interval between 50 and 90% of time window for status updates

Adaptive timer

13

DA

GM4 GM2

GM6

Interval = 512*2

Interval = 531*2

Interval = 521*2

Interval = 501*2

Basic Time window = 600

GM1 timer counter = 2

GM2 timer counter = 2

GM3 timer counter = 3

GM4 timer counter = 2

GM5 timer counter = 3

GM6 timer counter = 2

GM1

GM3 GM5

Interval = 411*3 Interval = 476*3

Benefit: Adaptive Timer

Increases

status

maintenance

interval

Decreases

Control

Overhead

14

Grouping

15

DA

GL1

GM2 GM1

GM3 Interval = 412

Interval = 431 Interval = 521

Interval = 501

Basic Time window = 600

GL1 = Active

GM1 = Active

GM2 = Active

GM3 = Active

Implements GL

CoAP resource

Grouping

16

DA

GL1

GM2 GM1

GM3

Interval = 412

Interval = 431 Interval = 521

Interval = 501

Basic Time window = 600

GL1 = Active

GM1 = GM of GL1

GM2 = GM of GL1

GM3 = Active

Multiple available GLs

17

DA

GL1

GM2 GM1

GM3 Interval = 412

Interval = 431 Interval = 521

Interval = 501

Basic Time window = 600

GL1 = Active

GM1 = Active

GM2 = Active

GM3 = Active

GL2

Interval = 476

Optimal GL Selection

18

• If multiple GLs available

• Select one with high rank

Rank = st + nGM - f - (b/1000)

st

(serving time)

nGM

(number of

registered GMs)

f

(number of failures)

b

(battery consumption)

Architecture

19

DA

GL

GM

GM

GM GM

GM

GL

GM GM

GM GM

GM

Area: INB01 Area: JKF01

Adaptive Timer: Grouping

20

DA

GL1

GM2 GM1

GM3

Interval = 412*3

Interval = 431*3 Interval = 521*3

Interval = 501*2

Basic Time window = 600

GL1 timer counter = 3

GM1 timer counter = GM

GM2 timer counter = GM

GM3 timer counter = 2

Group Members report to

corresponding Group Leaders

Benefits: Grouping

Based on

their

locations

Enable

Service

Composition

Group

nodes

Reduces

Registry

load

21

Experiments Setup

22

DA • Linux process

• Java based CoAP Implementation

COOJA: Simulator

GL

GM

• CONTIKI (OS)

• CSMA (MAC)

• CONTIKIMAC (Duty cycling)

• ENERGEST (Energy estimation)

• C-based CoAP Implementation

25 Tmote sky nodes (+1 border router)

with 10 runs for 100 minutes

Results

23

Method Control

Packets Energy (J)

BASIC 810 62.08

TRENDY TIMER 163 61.27

TRENDY FULL 297 60.13

Future Work

Intelligent Timer (e.g. trickle)

Publish/Subscribe

Adaptivity Grouping

Proxy Scope

Large-scale

Load balancing

More responsible GLs

Caching

Interoperability

Service composition

24

Loughborough University

Questions? T h a n k y o u

25