Researches

on

Scheme

of

Pairwise

Key

Establishment

for

DistributedSensor

Networks

Wang

Lei

Fujian

University

Technology

Fuzhou,Funjian,

PR.China

Chen

Zhi-ping

Fujian

University

Technology

Fuzhou,Funjian,

PR.China

Jiang

Xin-hua

Fujian

University

Technology

Fuzhou,Funjian,

PR.China

xhj@csu.edu.cn

ABSTRACT

Security

schemes

of

pairwise

key

establishment,

which

enable

sensors

to

communicate

with

each

other

securely,

play

a

fundamental

role

in

research

on

security

issue

in

wireless

sensor

networks.

A

new

kind

of

cluster

deployed

sensor

networks

distribution

model

is

presented,

and

based

on

which,

an

innovative

Hierarchical

Hypercube

model

H(k,u,m,v,n)

and

the

mapping

relationship

between

cluster

deployed

sensor

networks

and

the

H(k,u,m,v,n)

are

proposed.

By

utilizing

nice

properties

of

H(k,u,m,v,n)

model,

a

new

general

framework

for

pairwise

key

predistribution

and

a

new

pairwise

key

establishment

algorithm

are

designed,

which

combines

the

idea

of

KDC(Key

Distribution

Center)

and

polynomial

pool

schemes.

Furthermore,

the

working

performance

of

the

newly

proposed

pairwise

key

establishment

algorithm

is

seriously

inspected.

Theoretic

analysis

and

experimental

figures

show

that

the

new

algorithm

has

better

performance

and

provides

higher

possibilities

for

sensor

to

establish

pairwise

key,

compared

with

previous

related

works.

Categories

and

Subject

Descriptors

[Computer-Communication-Networks]:

Distributed

Systems-Distributed

applications.

General

Terms:

Security.

INTRODUCTION

Security

communication

is

an

important

requirement

in

many

sensor

network

applications,

so

shared

secret

keys

are

used

between

communicating

nodes

to

encrypt

data.

As

one

of

the

most

fundamental

security

services,

pairwise

key

establishment

enables

the

sensor

nodes

to

communicate

securely

with

each

other

using

cryptographic

techniques.

However,

due

to

the

sensor

nodes'

limited

computational

capabilities,

battery

energy,

and

available

memory,

it

is

not

feasible

for

them

to

use

traditional

pairwise

key

establishment

techniques

such

as

public

key

cryptography

and

key

distribution

center

(KDC).

Several

alternative

approaches

have

been

developed

recently

to

perform

pairwise

key

establishment

on

resource-constrained

sensor

networks

without

involving

the

use

of

traditional

cryptography

Eschenauer

and

Gligor

proposed

a

basic

probabilistic

key

predistribution

scheme

for

pairwise

key

establishment

In

the

scheme,

each

sensor

node

randomly

picks

a

set

of

keys

from

a

key

pool

before

the

deployment

so

that

any

two

of

the

sensor

nodes

have

a

certain

probability

to

share

at

least

one

common

key.

Chan

et

al.

further

extended

this

idea

and

presented

two

key

predistribution

schemes:

a

q-composite

key

pre-distribution

scheme

and

a

random

pairwise

keys

scheme.

The

q-composite

scheme

requires

any

two

sensors

share

at

least

q

pre-distributed

keys.

The

random

scheme

randomly

picks

pair

of

sensors

and

assigns

each

pair

a

unique

random

key

Inspired

by

the

studies

above

and

the

polynomial-based

key

pre-distribution

protocol

Liu

et

al.

further

developed

the

idea

addressed

in

the

previous

works

and

proposed

a

general

framework

of

polynomial

pool-based

key

predistribution

The

basic

idea

can

be

considered

as

the

combination

of

the

polynomial-based

key

pre-distribution

and

the

key

pool

idea

used

in

and

Based

on

such

a

framework,

they

presented

two

pairwise

key

pre-distribution

schemes:

a

random

subset

assignment

scheme

and

a

grid-based

scheme.

A

polynomial

pool

is

used

in

those

schemes,

instead

of

using

a

key

pool

in

the

previous

techniques.

The

random

subset

assignment

scheme

assigns

each

sensor

node

the

secrets

generated

from

a

random

subset

of

polynomials

in

the

polynomial

pool.

The

gridbased

scheme

associates

polynomials

with

the

rows

and

the

columns

of

an

artificial

grid,

assigns

each

sensor

node

to

a

unique

coordinate

in

the

grid,

and

gives

the

node

the

secrets

generated

from

the

corresponding

row

and

column

polynomials.

Based

on

this

grid,

each

sensor

node

can

then

identify

whether

it

can

directly

establish

a

pairwise

key

with

another

node,

and

if

not,

what

intermediate

nodes

it

can

contact

to

indirectly

establish

the

pairwise

key.

A

similar

approach

to

those

schemes

described

by

Liu

et

al

was

independently

developed

by

Du

et

a.

Rather

than

on

Blundo's

scheme

their

approach

is

based

on

Blom's

scheme

In

some

cases,

it

is

essentially

equivalent

to

the

one

in

All

of

those

schemes

above

improve

the

security

over

the

basic

probabilistic

key

pre-distribution

scheme.

However,

the

pairwise

key

establishment

problem

in

sensor

networks

is

still

not

well

solved.

For

the

basic

probabilistic

and

the

q-composite

key

predistribution

schemes,

as

the

number

of

compromised

nodes

increases,

the

fraction

of

affected

pairwise

keys

increases

quickly.

As

a

result,

a

small

number

of

compromised

nodes

may

affect

a

large

fraction

of

pairwise

keys

Though

the

random

pairwise

keys

scheme

doses

not

suffer

from

the

above

security

problem,

it

incurs

a

high

memory

overhead,

which

increases

linearly

with

the

number

of

nodes

in

the

network

if

the

level

of

security

is

kept

constant

For

the

random

subset

assignment

scheme,

it

suffers

higher

communication

and

computation

overheads.

In

Liu

proposed

a

new

hypercube-based

pairwise

key

predistribution

scheme

which

extends

the

grid-based

scheme

from

a

two

dimensional

grid

to

a

multi-dimensional

hypercube.

The

analysis

shows

that

hypercube-based

scheme

keeps

some

attractive

properties

of

the

grid-based

scheme,

including

the

guarantee

of

establishing

pairwise

keys

and

the

resilience

to

node

compromises.

Also,

when

perfect

security

against

node

compromise

is

required,

the

hypercube-based

scheme

can

support

a

larger

network

by

adding

more

dimensions

instead

of

increasing

the

storage

overhead

on

sensor

nodes.

Though

hypercube-based

scheme

(we

consider

the

grid-based

scheme

is

a

special

case

of

hypercube-based

scheme)

has

many

attractive

properties,

it

requires

any

two

nodes

in

sensor

networks

can

communication

directly

with

each

other.

This

strong

assumption

is

impractical

in

most

of

the

actual

applications

of

the

sensor

networks.

In

this

paper,

we

present

a

kind

of

new

cluster-based

distribution

model

of

sensor

networks,

and

for

which,

we

propose

a

new

pairwise

key

pre-distribution

scheme.

The

main

contributions

of

this

paper

are

as

follows:

Combining

the

deployment

knowledge

of

sensor

networks

and

the

polynomial

pool-based

key

pre-distribution,

we

setup

a

clusterbased

topology

that

is

practical

with

the

real

deployment

of

sensor

networks.

Based

on

the

topology,

we

propose

a

novel

cluster

distribution

based

hierarchical

hypercube

model

to

establish

the

pairwise

key.

The

key

contribution

is

that

our

scheme

dose

not

require

the

assumption

of

all

nodes

can

directly

communicate

with

each

other

as

the

previous

schemes

do,

and

it

still

maintains

high

probability

of

key

establishment,

low

memory

overhead

and

good

security

performance.

We

develop

a

kind

of

new

pairwise

key

establishment

algorithm

with

our

hierarchical

hypercube

model.

The

structure

of

this

paper

is

arranged

as

follows:

In

section

a

new

distribution

model

of

cluster

deployed

sensor

networks

is

presented.

In

section

a

new

Hierarchical

Hypercube

model

is

proposed.

In

section

the

mapping

relationship

between

the

clusters

deployed

sensor

network

and

Hierarchical

Hypercube

model

is

discussed.

In

section

and

section

new

pairwise

key

establishment

algorithm

are

designed

based

on

the

Hierarchical

Hypercube

model

and

detailed

analyses

are

described.

Finally,

section

presents

a

conclusion.

PRELIMINARY

Definition

(Key

Predistribution):

The

procedure,

which

is

used

to

encode

the

corresponding

encryption

and

decryption

algorithms

in

sensor

nodes

before

distribution,

is

called

Key

Predistribution.

Definition

(Pairwise

Key):

For

any

two

nodes

A

and

B,

if

they

have

a

common

key

E,

then

the

key

E

is

called

a

pairwise

key

between

them.

Definition

(Key

Path):

For

any

two

nodes

and

Ak,

when

there

has

not

a

pairwise

key

between

them,

if

there

exists

a

path

and

there

exists

at

least

one

pairwise

key

between

the

nodes

Ai

and

Aj

for

and

then

the

path

consisted

of

is

called

a

Key

Path

between

and

Ak.

Definition

(n-dimensional

Hypercube):

An

n-dimensional

Hypercube

(or

n−cube)

H(v,n)

is

a

topology

with

the

following

properties:

It

is

consisted

of

edges,

Each

node

can

be

coded

as

a

string

with

n

positions

such

as

where

Any

two

nodes

are

called

neighbors,

which

means

that

there

is

an

edge

between

them,

iff

there

is

just

one

position

different

between

their

node

codes.

MODEL

OF

CLUSTERS

DEPLOYED

SENSOR

NETWORKS

In

some

actual

applications

of

sensor

networks,

sensors

can

be

deployed

through

airplanes.

Supposing

that

the

deployment

rounds

of

sensors

are

k,

and

the

communication

radius

of

any

sensors

is

r,

then

the

sensors

deployed

in

the

same

round

can

be

regarded

as

belonging

to

a

same

Cluster.

We

assign

a

unique

cluster

number

l

l

k)

for

each

cluster.

Supposing

that

the

sensors

form

a

connected

graph

in

any

cluster

after

deployment

through

airplanes,

and

then

the

presents

an

actual

model

of

clusters

deployed

sensor

networks.

An

actual

model

of

clusters

deployed

sensor

networks.

From

it

is

easy

to

know

that,

for

a

given

node

A,

there

exist

lots

of

nodes

in

the

same

cluster

of

A,

which

can

be

communicated

directly

with

A,

since

the

nodes

are

deployed

densely

in

a

cluster.

But

there

exist

much

less

nodes

in

a

cluster

neighboring

to

the

cluster

of

A,

which

can

be

communicated

directly

with

A.

since

the

two

clusters

are

not

deployed

at

the

same

time.

HIERARCHICAL

HYPERCUBE

MODEL

Definition

(k-levels

Hierarchical

Hypercube):

Let

there

are

N

nodes

totally,

then

a

k-levels

Hierarchical

Hypercube

named

H(k,u,m,v,n)

can

be

constructed

as

follows:

The

N

nodes

are

divided

into

k

clusters

averagely,

and

the

[N/k]

nodes

in

any

cluster

are

connected

into

an

n-dimensional

Hypercube:

In

the

n-dimensional

Hypercube,

any

node

is

encoded

as

which

are

called

In-Cluster-Hypercube-Node-Codes,

where

n

kN

],[j]

equals

to

an

integer

not

less

than

j.

So

we

can

obtain

k

such

kind

of

different

hypercubes.

The

k

different

hypercubes

obtained

above

are

encoded

as

which

are

called

Out-Cluster-Hypercube-Node-Codes,

where

m

k

And

the

nodes

in

the

k

different

hypercubes

are

connected

into

m-dimensional

hypercubes

according

to

the

following

rules:

The

nodes

with

same

In-Cluster-Hypercube-Node-Codes

and

different

Out-ClusterHypercube-Node-Codes

are

connected

into

an

m-dimensional

hypercube.

(The

graph

constructed

through

above

steps

is

called

a

k-levels

Hierarchical

Hypercube

abbreviated

as

H(k,u,m,v,n).)

Any

node

A

in

H(k,u,m,v,n)

can

be

encoded

as

(i,

j),

where

is

the

In-Cluster-HypercubeNode-Code

of

node

A,

and

is

the

Out-Cluster-Hypercube-Node-Code

of

node

A.

Obviously,

the

H(k,u,m,v,n)

model

has

the

following

good

properties:

Property

The

diameter

of

H(k,u,m,v,n)

model

is

m+n.

Proof:

Since

the

diameter

of

n-dimensional

hypercube

is

n,

and

the

diameter

of

m-dimensional

hypercube

is

m,

so

it

is

easy

to

know

that

the

diameter

of

H(k,u,m,v,n)

model

is

m+n

from

the

definition

Property

The

distance

between

any

two

nodes

and

in

H(k,u,m,v,n)

model

is

d(A,B)=

where

dh

represents

the

Hamming

distance.

Proof:

Since

the

distance

between

any

two

nodes

in

hypercube

equals

to

the

Hamming

distance

between

them,

so

it

is

obvious

that

the

theorem

conclusion

stands

from

definition

MAPPING

CLUSTERS

DEPLOYED

SENSOR

NETWORKS

TO

H(K,U,M,V,N)

Obviously,

from

the

description

in

section

and

we

can

know

that

the

clusters

deployed

sensor

network

can

be

mapped

into

a

klevels-

hierarchical

hypercube

model

as

follows:

At

first,

the

k

clusters

in

the

sensor

network

can

be

mapped

into

k

different

levels

(or

hypercubes)

in

the

k-levels-

hierarchical

hypercube

model.

Then,

the

sensor

nodes

in

each

cluster

can

be

encoded

with

the

In-Cluster-Hypercube-Node-Codes,

and

the

sensor

nodes

in

the

k

different

clusters

with

the

same

In-ClusterHypercube-Node-Codes

can

be

encoded

with

the

Out-ClusterHypercube-Node-Codes

according

to

the

definition

respectively.

Consequently,

the

whole

sensor

network

has

been

mapped

into

a

k-levels-

hierarchical

hypercube

model.

H(K,U,M,V,N)

MODEL-BASED

PAIRWISE

KEY

PREDISTRIBUTION

ALGORITHM

FOR

SENSOR

NETWORKS

In

order

to

overcome

the

drawbacks

of

polynomial-based

and

polynomial

pool-based

key

predistribution

algorithms,

this

paper

proposed

an

innovative

H(k,u,m,v,n)

model-based

key

predistribution

scheme

and

pairwise

key

establishment

algorithm,

which

combines

the

advantages

of

polynomial-based

and

key

pool-based

encryption

schemes,

and

is

based

on

the

KDC

and

polynomials

pool-based

key

predistribution

models.

The

new

H(k,u,m,v,n)

model-based

pairwise

key

establishment

algorithm

includes

three

main

steps:

Generation

of

the

polynomials

pool

and

key

predistribution,

Direct

pairwise

key

discovery,

Path

key

discovery.

Generation

of

Polynomials

Pool

and

Key

Predistribution

Supposing

that,

the

sensor

network

includes

N

nodes,

and

is

deployed

through

k

different

rounds.

Then

we

can

predistribute

keys

for

each

sensor

node

on

the

basis

of

the

H(k,u,m,v,n)

model

as

follows:

Step

Key

setup

server

randomly

generates

a

bivariate

polynomials

pool

such

as

the

following:

F={

f

i

iiil

n

(x,y),

f

j

jjjinii

m

(x,y)

iii

n

i

n,

l

k;

jjj

m

j

m}

with

vn

+[N/vn

different

t-degree

bivariate

polynomials

over

a

finite

field

Fq,

and

then

assigns

a

unique

polynomial

ID

to

each

bivariate

polynomial

in

F.

Step

In

each

round,

key

setup

server

assigns

a

unique

node

ID:

to

each

sensor

node

from

small

to

big,

where

Step

key

setup

server

assigns

a

unique

cluster

ID:

l

to

all

the

sensor

nodes

deployed

in

the

same

round,

where

l

k.

Step

key

setup

server

predistributes

m+n

bivariate

polynomials

f

iiil

n

f

n

iiil

n

(in,y);

f

jjinii

m

f

m

jjinii

m

jm,y)

and

the

corresponding

polynomial

IDs

to

the

sensor

node

deployed

in

the

lth

round

and

with

ID

Direct

Pairwise

Key

Discovery

If

the

node

in

the

sensor

network

wants

to

establish

pairwise

key

with

a

node

B

then

node

A

can

establish

pairwise

key

with

the

node

B

trough

the

following

methods.

Firstly,

node

A

computes

out

the

distance

between

itself

and

node

B:

d=

where

and

If

then

node

A

obtains

the

direct

pairwise

key

between

itself

and

node

B

according

to

the

following

theorem

Theorem

For

any

two

sensor

nodes

and

B

in

the

sensor

network,

supposing

that

the

distance

between

nodes

A

and

B

is

d=

where

and

If

then

there

exists

a

direct

pairwise

key

between

nodes

A

and

B.

Poof:

Since

then

there

is

or

If

From

there

is

nodes

A,

B

belong

to

the

same

cluster.

Supposing

that

nodes

A,

B

belong

to

the

same

cluster

l,

then

from

There

is

only

one

position

different

between

and

Let

it=i"t,

when

t

and

in

i"n

f

n

iiil

n

(in,i"n)=

f

n

iiil

n

(i"n,in).

So,

there

exists

a

direct

pairwise

key

f

n

iiil

n

(in,i"n)

between

nodes

A

and

B.

If

From

There

is

only

one

position

different

between

and

Let

jt=j"t,

when

t

and

jm

j"m.

Since

equals

to

f

m

jjjinii

m

(jm,

j"m)=

f

m

jjji

nii

m

(j"m,jm).

So,

there

exists

a

direct

pairwise

key

f

m

jjjinii

m

(jm,

j"m)

between

nodes

A

and

B.

According

to

theorem

we

present

the

detailed

description

of

the

direct

pairwise

key

discovery

algorithm

as

follows:

Step

Obtain

the

node

IDs

and

cluster

IDs

of

the

source

node

A

and

destination

node

B;

Step

Compute

out

the

distance

between

nodes

A

and

B:

d=

Step

If

then

select

out

a

common

polynomial

share

of

nodes

A

and

B

from

f

iiil

n

f

n

iiil

n

to

establish

direct

pairwise

key;

Step

If

then

select

out

a

common

polynomial

share

of

nodes

A

and

B

from

f

jjinii

m

f

m

jjjinii

m

to

establish

direct

pairwise

key;

Step

Otherwise,

there

exists

no

direct

pairwise

key

between

nodes

A

and

B.

And

then

turn

to

the

following

path

key

discovery

process.

Path

Key

Discovery

If

then

node

A

can

establish

path

key

with

node

B

according

to

the

following

theorem

Theorem

For

any

two

sensor

nodes

and

B

in

the

sensor

network,

supposing

that

the

distance

between

nodes

A

and

B

is

d=

where

and

If

then

there

exists

a

path

key

between

nodes

A

and

B.

Proof:

Let

then

we

can

think

that

it

i't,

when

t

a;

but

it=i't,

when

t>a;

and

jt

j't,

when

t

b;

but

jt=j't,

when

t>b.

Obviously,

nodes

belong

to

the

same

cluster.

So,

according

to

the

supposing

condition

of

The

nodes

in

the

same

cluster

form

a

connected

graph,

there

is

a

route

among

those

nodes.

In

addition,

in

those

nodes,

the

distance

between

any

two

neighboring

nodes

is

so

from

theorem

it

is

easy

to

know

that

there

exists

direct

pairwise

key

between

any

two

neighboring

nodes

among

those

nodes.

For

nodes

jm),…,

since

they

have

the

same

Out-Cluster-Hypercube-Node-Codes

with

the

node

so

nodes

jm),…,

jm)

and

node

B

belong

to

a

same

logical

hypercube.

Obviously,

from

the

supposing

condition

of

The

whole

sensor

network

forms

a

connected

graph,

there

is

a

route

among

those

nodes.

In

addition,

in

those

nodes,

the

distance

between

any

two

neighboring

nodes

is

so

from

theorem

it

is

easy

to

know

that

there

exists

direct

pairwise

key

between

any

two

neighboring

nodes

among

those

nodes.

So,

it

is

obvious

that

there

exists

a

path

key

between

nodes

A

and

B.

According

to

theorem

we

present

the

detailed

description

of

the

path

key

discovery

algorithm

as

follows:

Step

Compute

out

the

intermediate

nodes

and

jm)

from

the

source

node

and

the

destination

node

B

Step

In

those

nodes

series

and

jm),…,

jm),

B

the

neighboring

nodes

select

their

common

polynomial

share

to

establish

direct

pairwise

key.

From

theorem

it

is

easy

to

know

that

any

source

node

A

can

compute

out

a

key

path

P

to

the

destination

node

B

according

to

the

above

algorithm,

when

there

are

no

compromised

nodes

in

the

sensor

network.

Once

the

key

path

P

is

computed

out,

then

node

A

can

send

messages

to

B

along

the

path

P

to

establish

indirect

pairwise

key

with

node

B.

presents

a

example

of

key

path

establishment.

Key

path

establishment

example.

For

example:

In

the

above

node

can

establish

pairwise

key

with

node

through

the

following

key

path:

where

node

F

shall

route

through

nodes

G,

H,

I,

J

to

establish

direct

pairwise

key

with

node

B.

According

to

the

properties

of

H(k,u,m,v,n)

model,

we

can

prove

that

the

following

theorem

by

combing

the

proof

of

theorem

Theorem

Supposing

that

there

exist

no

compromised

nodes

in

the

sensor

network,

and

the

distance

between

node

A

and

B,

then

there

exists

a

shortest

key

path

with

k

distance

between

node

A

and

B

logically.

That

is

to

say,

node

A

can

establish

indirect

pairwise

key

with

node

B

through

intermediate

nodes.

Proof:

Supposing

that

the

distance

between

node

and

B

is

where

Since

d=t,

according

to

the

construction

properties

of

H(k,u,m,v,n),

it

is

easy

to

know

that

there

exist

intermediate

nodes

in

the

logical

space

H(k,u,m,v,n),

which

satisfy

that

the

distance

between

any

two

neighboring

nodes

in

the

nodes

series

A,

B

equals

to

So

according

to

the

theorem

we

can

know

that

nodes

A,

B

form

a

correct

key

path

between

node

A

and

B.

If

any

two

neighboring

nodes

in

the

nodes

series

A,

B

can

communicate

directly,

then

node

A

can

establish

indirect

pairwise

key

with

node

B

through

those

intermediate

nodes.

Dynamic

Path

Key

Discovery

The

path

key

discovery

algorithm

proposed

in

the

above

section

can

establish

a

key

path

correctly,

only

when

there

exist

no

compromised

nodes

in

the

whole

sensor

network,

since

the

key

path

is

computed

out

beforehand.

And

the

proposed

algorithm

cannot

find

an

alternative

key

path

when

there

exist

some

compromised

nodes

or

some

intermediate

nodes

not

in

the

communication

radius,

even

that

there

exists

other

alternative

key

paths

in

the

sensor

network.

From

the

following

example

we

can

know

that

there

are

many

parallel

paths

in

the

H(k,u,m,v,n)

model

for

any

two

given

source

and

destination

nodes,

since

the

H(k,u,m,v,n)

model

is

high

Alternative

key

path

establishment

example.

For

example:

Considering

the

key

path

establishment

example

given

in

the

above

section

based

on

supposing

that

node

has

compromised,

then

from

we

can

know

that

there

exists

another

alternative

key

path

as

which

can

be

used

to

establish

the

indirect

pairwise

key

between

node

A

and

B,

where

node

E

shall

route

through

nodes

D

and

K

to

establish

direct

pairwise

key

with

node

M,

and

node

M

shall

route

through

nodes

N,

O,

G,

H,

I,

J

to

establish

direct

pairwise

key

with

node

B.

Since

the

sensors

are

source

limited,

so

they

are

easy

to

die

or

out

of

the

communication

radius,

therefore

the

algorithm

proposed

in

the

above

section

cannot

guarantee

to

establish

correct

key

path

efficiently.

In

this

section,

we

will

propose

a

dynamic

path

key

discovery

algorithm

as

follows,

which

can

improve

the

probability

of

key

path

effectively:

Algorithm

I:

Dynamic

key

path

establishment

algorithm

based

on

H(k,u,m,v,n)

model

for

cluster

deployed

sensor

networks.

Input:

Sub-sensor

network

H(k,u,m,v,n),

which

has

some

compromised

/fault

sensors

and

fault

links,

And

two

reachable

nodes

and

in

H(k,u,m,v,n),

where

a"t

b"t,

a"t=b"t,

t

>s.

Output:

A

correct

key

path

from

node

A

to

B

in

H(k,u,m,v,n).

Step

Obtain

the

code

strings

of

node

A

and

B:

A

B

where

aj,

bj

a"j,

b"j

Step

If

then

node

A

can

find

a

route

to

B

according

to

the

routing

algorithms

of

hypercube

Step

Otherwise,

node

A

can

find

a

route

to

according

to

the

Algorithm

I

or

Algorithm

II.

Then

let

and

each

node

It

in

the

above

nodes

series

find

a

route

to

its

neighboring

node

on

the

basis

of

the

location

information

(Detailed

routing

algorithms

based

on

location

information

can

see

the

Step

Algorithm

exits.

If

such

kind

of

a

correct

key

path

exists,

then

through

which

node

A

can

establish

an

indirect

pairwise

key

with

node

B.

Otherwise,

node

A

fails

to

establish

an

indirect

pairwise

key

with

node

B.

And

node

A

will

tries

again

to

establish

an

indirect

pairwise

key

with

node

B

some

time

later.

ALGORITHM

ANALYSES

Practical

Analyses

According

to

the

former

description

and

analyses,

it

is

easy

to

know

that

the

above

newly

proposed

algorithm

has

the

following

properties:

Property

When

there

exist

no

fault

and

compromised

nodes,

by

using

new

pairwise

key

predistribution

scheme

based

on

H(k,u,m,v,n)

model,

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

can

be

estimated

as

where

N

is

the

total

number

of

nodes

in

the

sensor

network,

and

N=um

vn

Proof:

Since

the

predistributed

pairwise

keys

for

any

node

FA

f

iiil

n

f

n

iiil

n

(in,y);

f

jjinii

m

,y),…,

f

m

jjinii

m

jm,y)

in

the

newly

proposed

algorithm.

Obviously,

in

the

logical

hypercube

formed

by

the

nodes

in

the

same

cluster

of

node

A,

there

are

nodes,

which

have

direct

pairwise

key

with

node

A.

And

in

the

logical

hypercube

formed

by

the

nodes

in

different

clusters

from

that

of

node

A,

there

are

nodes,

which

have

direct

pairwise

key

with

node

A.

Therefore,

there

are

totally

nodes,

which

have

direct

pairwise

key

with

node

A.

So,

the

probability

of

pairwise

key

establishment

between

any

two

nodes

can

be

estimated

as

since

the

whole

sensor

network

has

N

sensor

nodes

in

all.

presents

the

comparision

between

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

and

the

dimension

n,

when

the

sensor

network

has

different

total

nodes,

and

use

the

new

pairwise

key

predistribution

scheme

based

on

model.

Number

of

Dimension

ProbabilitytoEstablishDirectKey

N

Comparision

between

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

and

the

dimension

n,

when

the

sensor

network

has

different

total

nodes,

and

use

the

new

pairwise

key

predistribution

scheme

based

on

model.

From

it

is

easy

to

know

that

by

using

new

pairwise

key

predistribution

scheme

based

on

H(k,u,m,v,n)

model,

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

decreases

with

the

increasing

of

the

scale

of

the

sensor

networks,

and

in

addition,

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

decreases

with

the

increasing

of

the

dimension

n,

when

the

scale

of

the

sensor

network

is

fixed.

Theorem

Supposing

that

the

total

sensors

is

N

in

the

sensor

network,

then

when

u

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes,

when

using

the

key

distribution

scheme

based

on

the

hypercube

model

H(v,p),

is

smaller

than

that

when

using

the

key

distribution

scheme

based

on

the

H(k,u,m,v,n)

model.

Proof:

Since

u

v,

then

we

can

let

u=vt

where

t

Since

the

total

number

of

nodes

in

H(v,p)

is

vp

=N,

the

total

number

of

nodes

in

H(k,u,m,v,n)

is

um

vn

=N.

Let

p=x+n,

then

there

is

um

*vn

vx

vn

um

=vx

x=tm.

From

the

property

it

is

easy

to

know

that

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

can

be

estimated

as

According

to

the

description

in

it

is

well

know

that

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

can

be

estimated

as

P"=

Next,

we

will

prove

that

m(vt

Construct

a

function

as

f(t)=

vt

where

t

When

it

is

obvious

that

there

is

f(t)=

vt

and

f"(t)=t

So,

there

is

f(t)

vt

m(vt

Therefore,

the

conclusion

of

the

theorem

stands.

As

for

the

conclusion

of

theorem

we

give

an

example

to

illustrate.

Supposing

that

the

total

number

of

nodes

in

the

sensor

network

is

and

H(v,p)=

then

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

based

on

the

H(k,u,m,v,n)

model

is

P=

but

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

based

on

the

H(v,p)

model

is

P"=

Supposing

that

the

total

number

of

nodes

in

the

sensor

network

is

N,

illustrates

the

comparison

between

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

based

on

the

H(k,u,m,v,n)

model

and

the

probability

of

direct

pairwise

key

establishment

between

any

two

nodes

based

on

the

H(v,p)

model,

when

and

x

scaleofthesensornetwork

ProbabilitytoEstablishDirectKey

H(k,u,m,v,n)model-based

H(v,p)model-based

Comparison

between

the

probability

of

direct

pairwise

key

establishment

between

H(v,n)

and

H(k,u,m,v,n)

models.

From

it

is

easy

to

know

that

the

theorem

stands.

Theorem

Supposing

that

the

total

sensors

is

N

in

the

sensor

network,

then

the

pairwise

key

distribution

scheme

based

on

the

hypercube

model

H(v,p),

is

only

a

special

case

of

the

pairwise

key

distribution

scheme

based

on

the

H(k,u,m,v,n)

model.

Proof:

As

for

the

pairwise

key

distribution

scheme

based

on

the

H(k,u,m,v,n)

model,

let

which

means

that

the

total

sensor

network

includes

only

one

cluster.

Then

obviously,

the

H(k,u,m,v,n)

model

will

degrade

into

the

H(v,n)

model.

According

to

the

former

anayses

in

this

paper

and

the

definition

of

the

pairwise

key

distribution

scheme

based

on

the

hypercube

model

H(v,p)

in

it

is

easy

to

know

that

the

conclusion

of

the

theorem

stands.

Security

Analyses

By

using

the

pairwise

key

establishment

algorithm

based

on

the

H(k,u,m,v,n)

model,

the

intruders

can

launch

two

kinds

of

attacks:

The

attackers

may

target

the

pairwise

key

between

two

particular

sensor

node,

in

order

to

compromise

the

pairwise

key

between

them,

or

prevent

them

to

establish

pairwise

key.

The

attackers

may

attack

against

the

whole

sensor

network,

inorder

to

decrease

the

probability

of

the

pairwise

key

establishment,

or

increase

the

cost

of

the

pairwise

key

establishment.

Attacks

against

a

Pair

of

sensor

nodes

Supposing

that

the

intruders

want

to

attack

two

particular

sensor

nodes

u,v,

where

u,v

are

all

not

compromised

nodes,

but

the

intruders

want

to

compromise

the

pairwise

key

between

them.

If

u,v

can

establish

direct

pairwise

key,

then

the

only

way

to

compromise

the

key

is

to

compromise

the

common

bivariate

polynomial

f(x,y)

between

u,v.

Since

the

degree

of

the

bivariate

polynomial

f(x,y)

is

t,

so

the

intruders

need

to

compromise

at

least

sensor

nodes

that

have

a

share

of

the

bivariate

polynomial

f(x,y).

If

u,v

can

establish

indirect

pairwise

key

through

intermediate

nodes,

then

the

intruders

need

to

compromise

at

least

one

intermediate

node,

or

compromise

the

common

bivariate

polynomial

f(x,y)

between

two

neighboring

intermediate

nodes.

But

even

if

the

intruders

succeed

to

do

that,

node

u

and

v

can

still

reestablish

indirect

pairwise

key

through

alternative

intermediate

nodes.

Supposing

that

the

intruders

want

to

attack

two

particular

sensor

nodes

u,v,

where

u,v

are

all

not

compromised

nodes,

but

the

intruders

want

to

prevent

them

to

establish

the

pairwise

key.

Then,

the

intruders

need

to

compromise

all

of

the

m+n

bivariate

polynomials

of

node

u

or

v.

Since

the

degree

of

the

bivariate

polynomial

f(x,y)

is

t,

so

for

bivariate

polynomial,

the

intruders

need

to

compromise

at

least

sensor

nodes

that

have

a

share

of

the

given

bivariate

polynomial.

Therefore,

the

intruders

need

to

compromise

sensor

nodes

altogether

to

prevent

u,v

to

establish

the

pairwise

key.

Attacks

against

the

sensor

network

Supposing

that

the

Attackers

know

the

distribution

of

the

polynomials

over

sensor

nodes,

it

may

systematically

attack

the

network

by

compromising

the

polynomials

in

F

one

by

one

in

order

to

compromise

the

entire

network.

Assume

the

fraction

of

the

compromised

polynomials

is

pc,

then

there

are

up

to

N"=pc

vn

v

N

umv

n

n

mn

pc

××N

(m+n)

Sensor

nodes

that

have

at

least

one

compromised

polynomial

share.

Among

all

of

the

remaining

N-

N"

sensor

nodes,

of

them

includes

a

compromised

polynomial

share.

So,

the

remaining

N-

N"

sensor

nodes

can

establish

direct

pairwise

key

by

using

any

one

of

their

polynomial

shares.

However,

the

indirect

pairwise

keys

in

the

remaining

N-

N"

sensor

nodes

may

be

affected.

And

they

may

need

to

re-establish

a

new

indirect

pairwise

key

between

them

by

select

alternative

intermediate

nodes

that

do

not

belong

to

the

N"

compromised

nodes.

Supposing

that

the

scale

of

the

sensor

network

is

presents

the

comparison

between

pc

and

the

number

of

sensor

nodes

with

at

least

one

compromised

polynomial

share

in

sensor

networks

based

on

different

H(k,u,m,v,n)

distribution

models.

From

it

is

easy

to

know

that,

when

the

scale

of

the

sensor

network

is

fixed,

the

number

of

the

affected

sensor

nodes

in

the

sensor

network

increases

with

the

increasing

of

the

number

of

compromised

nodes.

F

rac

tion

of

C

om

prom

is

ed

B

ivariate

P

oly

nom

ialsSensorNodeswithatleastoneCompromisedPolynomialShare

H

H

H

H

the

comparison

between

pc

and

the

number

of

sensor

nodes

with

at

least

one

compromised

polynomial

share

in

sensor

networks

based

on

different

H(k,u,m,v,n)

distribution

models.

Theorem

Supposing

that

the

total

sensors

is

N

in

the

sensor

network,

and

the

fraction

of

compromised

nodes

is

pc,

then

when

u>v,

the

number

of

affected

nodes

of

the

H(v,p)

model

based

key

predistribution

scheme,

is

bigger

than

that

of

the

H(k,u,m,v,n)

model

based

key

predistribution

scheme.

Proof:

Since

the

number

of

affected

nodes

of

the

H(k,u,m,v,n)

model

based

key

predistribution

scheme

is

pc

××N

(m+n),

and

it

is

proved

in

that

the

number

of

affected

nodes

of

the

H(v,p)

model

based

key

predistribution

scheme

is

pc

××N

p.

Let

p=x+n,

then

there

is

um

vn

vx

vn

um

=vx

Since

u>v

x>m

pc

××N

(m+n)<

pc

××N

(x+n)=

pc

××N

p.

Supposing

that

the

scale

of

the

sensor

network

is

presents

the

comparison

between

pc

and

the

number

of

sensor

nodes

with

at

least

one

compromised

polynomial

share

in

sensor

networks

based

on

and

distribution

models.

From

it

is

easy

to

know

that

the

conclusion

of

theorem

is

correct,

and

the

number

of

the

affected

sensor

nodes

in

the

sensor

network

increases

with

the

increasing

of

the

number

of

compromised

nodes,

when

the

scale

of

the

sensor

network

is

fixed.

Fraction

of

Compromised

Bivariate

Polynomials

the

comparison

between

pc

and

the

number

of

sensor

nodes

with

at

least

one

compromised

polynomial

share

in

sensor

networks

based

on

and

distribution

models.

CONCLUSION

A

new

hierarchical

hypercube

model

named

H(k,u,m,v,n)

is

proposed,

which

can

be

used

for

pairwise

key

predistribution

for

cluster

deployed

sensor

networks.

And

Based

on

the

H(k,u,m,v,n)

model,

an

innovative

pairwise

key

predistribution

scheme

and

algorithm

are

designed

respectively,

by

combing

the

good

properties

of

the

Polynomial

Key

and

Key

Pool

encryption

schemes.

The

new

algorithm

uses

the

good

characteristics

of

node

codes

and

high

fault-tolerance

of

H(k,u,m,v,n)

model

to

route

and

predistribute

pairwise

keys,

in

which

nodes

are

not

needed

to

be

able

to

communicate

with

each

other

directly

such

as

that

the

algorithms

proposed

by

shall

need.

So,

the

traditional

pairwise

key

predistribution

algorithm

based

on

hypercube

model

is

only

a

special

case

of

the

new

algorithm

proposed

in

this

paper.

Theoretical

and

experimental

analyses

show

that

the

newly

proposed

algorithm

is

an

efficient

pairwise

key

establishment

algorithm

that

is

suitable

for

the

cluster

deployed

sensor

networks.

ACKNOWLEDGMENTS

Our

thanks

to

ACM

SIGCHI

for

allowing

us

to

modify

templates

they

had

developed,

and

to

nature

science

fund

of

Fujian

province

of

PR.China

under

grant

REFERENCES

L.

Eschenauer

and

V.

Gligor.

A

key-management

scheme

for

distribute

sensor

networks.

In

Proceedings

of

the

ACM

Conference

on

Computer

and

Communication

Security.

ACM

Press,

Washington

DC,

USA,

H.

Chan,

A.

Perrig,

and

D.

Song.

Random

key

predistribution

schemes

for

sensor

networks.

In

IEEE

Symposium

on

Security

and

Privacy.

IEEE

Computer

Society,

California,

USA,

C.

Blundo,

A.

D.

Santis,

A.

Herzberg,

S.

Kutten,

U.

Vaccaro,

and

M.

Yung.

Perfectly-secure

key

distribution

for

dynamic

conferences.

Lecture

Notes

in

Computer

Science.

D.

Liu

and

P.

Ning.

Establishing

pairwise

keys

in

distributed

sensor

networks.

In

Proceedings

of

the

ACM

Conference

on

Computer

and

Communications

Security.

ACM

Press,

Washingtion,

DC,

USA,

W.

Du,

J.

Deng,

Y.

Han,

and

P.

Varshney.

A

pairwise

key

pre-distribution

scheme

for

wireless

sensor

networks.

In

Proceedings

of

the

Tenth

ACM

Conference

on

Computer

and

Communications

Security.

Washingtion,

DC,

R.

Blom.

An

optimal

class

of

symmetric

key

generation

systems.

Advances

in

Cryptology:

Proceedings

of

EUROCRYPT

Lecture

Notes

in

Computer

Science.

Donggang

Liu,

Peng

Ning,

Rongfang

Li,

Establishing

Pairwise

Keys

in

Distributed

Sensor

Networks.

ACM

Journal

Name,

L.

Fang,

W.

Du,

and

N.

Peng.

A

Beacon-Less

Location

Discovery

Scheme

for

Wireless

Sensor

Networks,

INFOCOM

Wang

Lei,

Lin

Ya-ping,

Maximum

safety

path

matrix

based

fault-tolerant

routing

algorithm

for

hypercube

interconnection

network.

Journal

of

software.

Wang

Lei,

Lin

Ya-ping,

Maximum

safety

path

vector

based

fault-tolerant

routing

algorithm

for

hypercube

interconnection

network.

Journal

of

China

Institute

of

Communications.

Lin

Ya-ping,

Wang

Lei,

Location

information

based

hierarchical

data

congregation

routing

algorithm

for

sensor

networks.

Chinese

Journal

of

electronics.

W.

Heinzelman,

J.

Kulik,

and

H.

Balakrishnan,

Negotiation

Based

Protocols

for

Disseminating

Information

in

Wireless

Sensor

Networks.

ACM

Wireless

Networks.

Manjeshwar,A.;

Agrawal,D.P.

TEEN:

a

routing

protocol

for

enhanced

efficiency

in

wireless

sensor

networks].

In

Proceedings

of

Parallel

and

Distributed

Processing

Symposium].

IEEE

Computer

Society,

San

Francisco,

USA,

B.

Krishnamachari,

D.

Estrin,

and

S.

Wicker.

Modelling

Data-Centric

Routing

in

Wireless

Sensor

Networks.

In

Proceedings

of

IEEE

Infocom,

O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O B I O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B I I I O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B O O B O O O O O O O B I O O O O O O O O O O O O O O O O O O O B O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B I O O O B I O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O B I I I O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O B I O B I I O O O O O O O O O B I I I O O O O O B I I O O O O O O O O O O O O O O O B I O O O O O O O O O B O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O B I I O O O O O O O O O B I O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O B I I O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O B I O O B I I I O O O O O O O O O B O O O O O O O O O O B I O O O O O B I I I O O O O O O O O O O O B I O O B I O O O O O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O B I O O O B I O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O B I O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O O O B I O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B I I I O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O B I O O O O O O O B I O O O O O O O O B I O O O O O O O B I O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O B I O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O B I O O O O O O O O O O O O O O B I O O O O O O O O O O O O O B I O B I B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B I O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O

cluster-based distribution model
node code
high fault-tolerance

sensor network
key pool
key predistribution
hierarchical hypercube model
security
pairwise key establishment algorithm
polynomial key
encryption
pairwise key


Evaluating

Adaptive

Resource

Management

for

Distributed

Real-Time

Embedded

Systems

Nishanth

Shankaran,

Xenofon

Koutsoukos,

Douglas

C.

Schmidt,

and

Aniruddha

Gokhale

Dept.

of

EECS,

Vanderbilt

University,

Nashville

ABSTRACT

A

challenging

problem

faced

by

researchers

and

developers

of

distributed

real-time

and

embedded

(DRE)

systems

is

devising

and

implementing

effective

adaptive

resource

management

strategies

that

can

meet

end-to-end

quality

of

service

(QoS)

requirements

in

varying

operational

conditions.

This

paper

presents

two

contributions

to

research

in

adaptive

resource

management

for

DRE

systems.

First,

we

describe

the

structure

and

functionality

of

the

Hybrid

Adaptive

Resourcemanagement

Middleware

(HyARM),

which

provides

adaptive

resource

management

using

hybrid

control

techniques

for

adapting

to

workload

fluctuations

and

resource

availability.

Second,

we

evaluate

the

adaptive

behavior

of

HyARM

via

experiments

on

a

DRE

multimedia

system

that

distributes

video

in

real-time.

Our

results

indicate

that

HyARM

yields

predictable,

stable,

and

high

system

performance,

even

in

the

face

of

fluctuating

workload

and

resource

availability.

Categories

and

Subject

Descriptors

[Distributed

Systems]:

Distributed

Applications;

[Organization

and

Design]:

Real-time

Systems

and

Embedded

Systems

INTRODUCTION

Achieving

end-to-end

real-time

quality

of

service

(QoS)

is

particularly

important

for

open

distributed

real-time

and

embedded

(DRE)

systems

that

face

resource

constraints,

such

as

limited

computing

power

and

network

bandwidth.

Overutilization

of

these

system

resources

can

yield

unpredictable

and

unstable

behavior,

whereas

under-utilization

can

yield

excessive

system

cost.

A

promising

approach

to

meeting

these

end-to-end

QoS

requirements

effectively,

therefore,

is

to

develop

and

apply

adaptive

middleware

which

is

software

whose

functional

and

QoS-related

properties

can

be

modified

either

statically

or

dynamically.

Static

modifications

are

carried

out

to

reduce

footprint,

leverage

capabilities

that

exist

in

specific

platforms,

enable

functional

subsetting,

and/or

minimize

hardware/software

infrastructure

dependencies.

Objectives

of

dynamic

modifications

include

optimizing

system

responses

to

changing

environments

or

requirements,

such

as

changing

component

interconnections,

power-levels,

CPU

and

network

bandwidth

availability,

latency/jitter,

and

workload.

In

open

DRE

systems,

adaptive

middleware

must

make

such

modifications

dependably,

i.e.,

while

meeting

stringent

end-to-end

QoS

requirements,

which

requires

the

specification

and

enforcement

of

upper

and

lower

bounds

on

system

resource

utilization

to

ensure

effective

use

of

system

resources.

To

meet

these

requirements,

we

have

developed

the

Hybrid

Adaptive

Resource-management

Middleware

(HyARM),

which

is

an

distributed

resource

management

middleware.

HyARM

is

based

on

hybrid

control

theoretic

techniques

which

provide

a

theoretical

framework

for

designing

control

of

complex

system

with

both

continuous

and

discrete

dynamics.

In

our

case

study,

which

involves

a

distributed

real-time

video

distribution

system,

the

task

of

adaptive

resource

management

is

to

control

the

utilization

of

the

different

resources,

whose

utilizations

are

described

by

continuous

variables.

We

achieve

this

by

adapting

the

resolution

of

the

transmitted

video,

which

is

modeled

as

a

continuous

variable,

and

by

changing

the

frame-rate

and

the

compression,

which

are

modeled

by

discrete

actions.

We

have

implemented

HyARM

atop

The

ACE

ORB

(TAO)

which

is

an

implementation

of

the

Real-time

CORBA

specification

Our

results

show

that

HyARM

ensures

effective

system

resource

utilization

and

end-to-end

QoS

requirements

of

higher

priority

applications

are

met,

even

in

the

face

of

fluctuations

in

workload.

The

remainder

of

the

paper

is

organized

as

follows:

Section

describes

the

architecture,

functionality,

and

resource

utilization

model

of

our

DRE

multimedia

system

case

study;

Section

explains

the

structure

and

functionality

of

HyARM;

Section

evaluates

the

adaptive

behavior

of

HyARM

via

experiments

on

our

multimedia

system

case

study;

Section

compares

our

research

on

HyARM

with

related

work;

and

Section

presents

concluding

remarks.

The

code

and

examples

for

HyARM

are

available

at

dre.vanderbilt.edu/∼nshankar/HyARM/.

Article

CASE

STUDY:

DRE

MULTIMEDIA

SYSTEM

This

section

describes

the

architecture

and

QoS

requirements

of

our

DRE

multimedia

system.

Multimedia

System

Architecture

Wireless

Link

Wireless

Link

Wireless

Link

Physical

Link

Physical

Link

Physical

Link

Base

Station

End

Receiver

End

Receiver

End

Receiver`

Physical

Link

End

Receiver

UAV

Camera

Video

Encoder

Camera

Video

Encoder

Camera

Video

Encoder

UAV

Camera

Video

Encoder

Camera

Video

Encoder

Camera

Video

Encoder

UAV

Camera

Video

Encoder

Camera

Video

Encoder

Camera

Video

Encoder

Figure

DRE

Multimedia

System

Architecture

The

architecture

for

our

DRE

multimedia

system

is

shown

in

Figure

and

consists

of

the

following

entities:

source

(video

capture

by

UAV),

where

video

is

captured

(related

to

subject

of

interest)

by

camera(s)

on

each

UAV,

followed

by

encoding

of

raw

video

using

a

specific

encoding

scheme

and

transmitting

the

video

to

the

next

stage

in

the

pipeline.

distributor

(base

station),

where

the

video

is

processed

to

remove

noise,

followed

by

retransmission

of

the

processed

video

to

the

next

stage

in

the

pipeline.

Sinks

(command

and

control

center),

where

the

received

video

is

again

processed

to

remove

noise,

then

decoded

and

finally

rendered

to

end

user

via

graphical

displays.

Significant

improvements

in

video

encoding/decoding

and

(de)compression

techniques

have

been

made

as

a

result

of

recent

advances

in

video

encoding

and

compression

techniques

Common

video

compression

schemes

are

Real

Video,

and

Each

compression

scheme

is

characterized

by

its

resource

requirement,

e.g.,

the

computational

power

to

(de)compress

the

video

signal

and

the

network

bandwidth

required

to

transmit

the

compressed

video

signal.

Properties

of

the

compressed

video,

such

as

resolution

and

frame-rate

determine

both

the

quality

and

the

resource

requirements

of

the

video.

Our

multimedia

system

case

study

has

the

following

endto-end

real-time

QoS

requirements:

latency,

interframe

delay

(also

know

as

jitter),

frame

rate,

and

picture

resolution.

These

QoS

requirements

can

be

classified

as

being

either

hard

or

soft.

Hard

QoS

requirements

should

be

met

by

the

underlying

system

at

all

times,

whereas

soft

QoS

requirements

can

be

missed

For

our

case

study,

we

treat

QoS

requirements

such

as

latency

and

jitter

as

harder

QoS

requirements

and

strive

to

meet

these

requirements

at

all

times.

In

contrast,

we

treat

QoS

requirements

such

as

video

frame

rate

and

picture

resolution

as

softer

QoS

requirements

and

modify

these

video

properties

adaptively

to

handle

dynamic

changes

in

resource

Although

hard

and

soft

are

often

portrayed

as

two

discrete

requirement

sets,

in

practice

they

are

usually

two

ends

of

a

continuum

ranging

from

softer

to

harder

rather

than

two

disjoint

points.

ity

effectively.

DRE

Multimedia

System

Rresources

There

are

two

primary

types

of

resources

in

our

DRE

multimedia

system:

processors

that

provide

computational

power

available

at

the

UAVs,

base

stations,

and

end

receivers

and

network

links

that

provide

communication

bandwidth

between

UAVs,

base

stations,

and

end

receivers.

The

computing

power

required

by

the

video

capture

and

encoding

tasks

depends

on

dynamic

factors,

such

as

speed

of

the

UAV,

speed

of

the

subject

(if

the

subject

is

mobile),

and

distance

between

UAV

and

the

subject.

The

wireless

network

bandwidth

available

to

transmit

video

captured

by

UAVs

to

base

stations

also

depends

on

the

wireless

connectivity

between

the

UAVs

and

the

base

station,

which

in-turn

depend

on

dynamic

factors

such

as

the

speed

of

the

UAVs

and

the

relative

distance

between

UAVs

and

base

stations.

The

bandwidth

of

the

link

between

the

base

station

and

the

end

receiver

is

limited,

but

more

stable

than

the

bandwidth

of

the

wireless

network.

Resource

requirements

and

availability

of

resources

are

subjected

to

dynamic

changes.

Two

classes

of

applications

QoS-enabled

and

best-effort

use

the

multimedia

system

infrastructure

described

above

to

transmit

video

to

their

respective

receivers.

QoS-enabled

class

of

applications

have

higher

priority

over

best-effort

class

of

application.

In

our

study,

emergency

response

applications

belong

to

QoS-enabled

and

surveillance

applications

belong

to

best-effort

class.

For

example,

since

a

stream

from

an

emergency

response

application

is

of

higher

importance

than

a

video

stream

from

a

surveillance

application,

it

receives

more

resources

end-to-end.

Since

resource

availability

significantly

affects

QoS,

we

use

current

resource

utilization

as

the

primary

indicator

of

system

performance.

We

refer

to

the

current

level

of

system

resource

utilization

as

the

system

condition.

Based

on

this

definition,

we

can

classify

system

conditions

as

being

either

under,

over,

or

effectively

utilized.

Under-utilization

of

system

resources

occurs

when

the

current

resource

utilization

is

lower

than

the

desired

lower

bound

on

resource

utilization.

In

this

system

condition,

residual

system

resources

(i.e.,

network

bandwidth

and

computational

power)

are

available

in

large

amounts

after

meeting

end-to-end

QoS

requirements

of

applications.

These

residual

resources

can

be

used

to

increase

the

QoS

of

the

applications.

For

example,

residual

CPU

and

network

bandwidth

can

be

used

to

deliver

better

quality

video

(e.g.,

with

greater

resolution

and

higher

frame

rate)

to

end

receivers.

Over-utilization

of

system

resources

occurs

when

the

current

resource

utilization

is

higher

than

the

desired

upper

bound

on

resource

utilization.

This

condition

can

arise

from

loss

of

resources

network

bandwidth

and/or

computing

power

at

base

station,

end

receiver

or

at

UAV

or

may

be

due

to

an

increase

in

resource

demands

by

applications.

Over-utilization

is

generally

undesirable

since

the

quality

of

the

received

video

(such

as

resolution

and

frame

rate)

and

timeliness

properties

(such

as

latency

and

jitter)

are

degraded

and

may

result

in

an

unstable

(and

thus

ineffective)

system.

Effective

resource

utilization

is

the

desired

system

condition

since

it

ensures

that

end-to-end

QoS

requirements

of

the

UAV-based

multimedia

system

are

met

and

utilization

of

both

system

resources,

i.e.,

network

bandwidth

and

computational

power,

are

within

their

desired

utilization

bounds.

Article

Section

describes

techniques

we

applied

to

achieve

effective

utilization,

even

in

the

face

of

fluctuating

resource

availability

and/or

demand.

OVERVIEW

OF

HYARM

This

section

describes

the

architecture

of

the

Hybrid

Adaptive

Resource-management

Middleware

(HyARM).

HyARM

ensures

efficient

and

predictable

system

performance

by

providing

adaptive

resource

management,

including

monitoring

of

system

resources

and

enforcing

bounds

on

application

resource

utilization.

HyARM

Structure

and

Functionality

Resource

Utilization

Legend

Resource

Allocation

Application

Parameters

Figure

HyARM

Architecture

HyARM

is

composed

of

three

types

of

entities

shown

in

Figure

and

described

below:

Resource

monitors

observe

the

overall

resource

utilization

for

each

type

of

resource

and

resource

utilization

per

application.

In

our

multimedia

system,

there

are

resource

monitors

for

CPU

utilization

and

network

bandwidth.

CPU

monitors

observe

the

CPU

resource

utilization

of

UAVs,

base

station,

and

end

receivers.

Network

bandwidth

monitors

observe

the

network

resource

utilization

of

wireless

network

link

between

UAVs

and

the

base

station

and

wired

network

link

between

the

base

station

and

end

receivers.

The

central

controller

maintains

the

system

resource

utilization

below

a

desired

bound

by

processing

periodic

updates

it

receives

from

resource

monitors

and

modifying

the

execution

of

applications

accordingly,

e.g.,

by

using

different

execution

algorithms

or

operating

the

application

with

increased/decreased

QoS.

This

adaptation

process

ensures

that

system

resources

are

utilized

efficiently

and

end-to-end

application

QoS

requirements

are

met.

In

our

multimedia

system,

the

HyARM

controller

determines

the

value

of

application

parameters

such

as

video

compression

schemes,

such

as

Real

Video

and

and/or

frame

rate,

and

picture

resolution.

From

the

perspective

of

hybrid

control

theoretic

techniques

the

different

video

compression

schemes

and

frame

rate

form

the

discrete

variables

of

application

execution

and

picture

resolution

forms

the

continuous

variables.

Application

adapters

modify

application

execution

according

to

parameters

recommended

by

the

controller

and

ensures

that

the

operation

of

the

application

is

in

accordance

with

the

recommended

parameters.

In

the

current

mplementation

of

HyARM,

the

application

adapter

modifies

the

input

parameters

to

the

application

that

affect

application

QoS

and

resource

utilization

compression

scheme,

frame

rate,

and

picture

resolution.

In

our

future

implementations,

we

plan

to

use

resource

reservation

mechanisms

such

as

Differentiated

Service

and

Class-based

Kernel

Resource

Management

to

provision/reserve

network

and

CPU

resources.

In

our

multimedia

system,

the

application

adapter

ensures

that

the

video

is

encoded

at

the

recommended

frame

rate

and

resolution

using

the

specified

compression

scheme.

Applying

HyARM

to

the

Multimedia

System

Case

Study

HyARM

is

built

atop

TAO

a

widely

used

open-source

implementation

of

Real-time

CORBA

HyARM

can

be

applied

to

ensure

efficient,

predictable

and

adaptive

resource

management

of

any

DRE

system

where

resource

availability

and

requirements

are

subject

to

dynamic

change.

Figure

shows

the

interaction

of

various

parts

of

the

DRE

multimedia

system

developed

with

HyARM,

TAO,

and

TAO"s

A/V

Streaming

Service.

TAO"s

A/V

Streaming

service

is

an

implementation

of

the

CORBA

A/V

Streaming

Service

specification.

TAO"s

A/V

Streaming

Service

is

a

QoS-enabled

video

distribution

service

that

can

transfer

video

in

real-time

to

one

or

more

receivers.

We

use

the

A/V

Streaming

Service

to

transmit

the

video

from

the

UAVs

to

the

end

receivers

via

the

base

station.

Three

entities

of

Receiver

UAV

TAO

Resource

Utilization

HyARM

Central

Controller

A/V

Streaming

Service

Sender

Real

Video

HyARM

Resource

Monitor

A/V

Streaming

Service

Receiver

Compressed

Video

Compressed

Video

Application

HyARM

Application

Adapter

Remote

Object

Call

Control

Inputs

Resource

Utilization

Resource

Utilization

Control

Inputs

Control

Inputs

Legend

Figure

Developing

the

DRE

Multimedia

System

with

HyARM

HyARM,

namely

the

resource

monitors,

central

controller,

and

application

adapters

are

built

as

CORBA

servants,

so

they

can

be

distributed

throughout

a

DRE

system.

Resource

monitors

are

remote

CORBA

objects

that

update

the

central

controller

periodically

with

the

current

resource

utilization.

Application

adapters

are

collocated

with

applications

since

the

two

interact

closely.

As

shown

in

Figure

UAVs

compress

the

data

using

various

compression

schemes,

such

as

and

Real

Video,

and

uses

TAO"s

A/V

streaming

service

to

transmit

the

video

to

end

receivers.

HyARM"s

resource

monitors

continuously

observe

the

system

resource

utilization

and

notify

the

central

controller

with

the

current

utilization.

The

interaction

between

the

controller

and

the

resource

monitors

uses

the

Observer

pattern

When

the

controller

receives

resource

utilization

updates

from

monitors,

it

computes

the

necessary

modifications

to

application(s)

parameters

and

notifies

application

adapter(s)

via

a

remote

operation

call.

Application

adapter(s),

that

are

collocated

with

the

application,

modify

the

input

parameters

to

the

application

in

our

case

video

encoder

to

modify

the

application

resource

utilization

and

QoS.

The

base

station

is

not

included

in

the

figure

since

it

only

retransmits

the

video

received

from

UAVs

to

end

receivers.

Article

PERFORMANCE

RESULTS

AND

ANALYSIS

This

section

first

describes

the

testbed

that

provides

the

infrastructure

for

our

DRE

multimedia

system,

which

was

used

to

evaluate

the

performance

of

HyARM.

We

then

describe

our

experiments

and

analyze

the

results

obtained

to

empirically

evaluate

how

HyARM

behaves

during

underand

over-utilization

of

system

resources.

Overview

of

the

Hardware

and

Software

Testbed

Our

experiments

were

performed

on

the

Emulab

testbed

at

University

of

Utah.

The

hardware

configuration

consists

of

two

nodes

acting

as

UAVs,

one

acting

as

base

station,

and

one

as

end

receiver.

Video

from

the

two

UAVs

were

transmitted

to

a

base

station

via

a

LAN

configured

with

the

following

properties:

average

packet

loss

ratio

of

and

bandwidth

Mbps.

The

network

bandwidth

was

chosen

to

be

Mbps

since

each

UAV

in

the

DRE

multimedia

system

is

allocated

Kbps.

These

parameters

were

chosen

to

emulate

an

unreliable

wireless

network

with

limited

bandwidth

between

the

UAVs

and

the

base

station.

From

the

base

station,

the

video

was

retransmitted

to

the

end

receiver

via

a

reliable

wireline

link

of

Mbps

bandwidth

with

no

packet

loss.

The

hardware

configuration

of

all

the

nodes

was

chosen

as

follows:

MHz

Intel

Pentium

III

processor,

MB

physical

memory,

Intel

EtherExpress

Pro

Mbps

Ethernet

ports,

and

GB

hard

drive.

A

real-time

version

of

Linux

TimeSys

Linux/NET

based

on

RedHat

Linux

used

as

the

operating

system

for

all

nodes.

The

following

software

packages

were

also

used

for

our

experiments:

Ffmpeg

which

is

an

open-source

library

(http:

that

compresses

video

into

Real

Video,

and

many

other

video

formats.

Iftop

which

is

an

opensource

library

we

used

for

monitoring

network

activity

and

bandwidth

utilization.

ACE

TAO

which

is

an

opensource

implementation

of

the

Real-time

CORBA

specification

upon

which

HyARM

is

built.

TAO

provides

the

CORBA

Audio/Video

(A/V)

Streaming

Service

that

we

use

to

transmit

the

video

from

the

UAVs

to

end

receivers

via

the

base

station.

Experiment

Configuration

Our

experiment

consisted

of

two

(emulated)

UAVs

that

simultaneously

send

video

to

the

base

station

using

the

experimentation

setup

described

in

Section

At

the

base

station,

video

was

retransmitted

to

the

end

receivers

(without

any

modifications),

where

it

was

stored

to

a

file.

Each

UAV

hosted

two

applications,

one

QoS-enabled

application

(emergency

response),

and

one

best-effort

application

(surveillance).

Within

each

UAV,

computational

power

is

shared

between

the

applications,

while

the

network

bandwidth

is

shared

among

all

applications.

To

evaluate

the

QoS

provided

by

HyARM,

we

monitored

CPU

utilization

at

the

two

UAVs,

and

network

bandwidth

utilization

between

the

UAV

and

the

base

station.

CPU

resource

utilization

was

not

monitored

at

the

base

station

and

the

end

receiver

since

they

performed

no

computationallyintensive

operations.

The

resource

utilization

of

the

Mpbs

physical

link

between

the

base

station

and

the

end

receiver

does

not

affect

QoS

of

applications

and

is

not

monitored

by

HyARM

since

it

is

nearly

times

the

MB

bandwidth

of

the

LAN

between

the

UAVs

and

the

base

station.

The

experiment

also

monitors

properties

of

the

video

that

affect

the

QoS

of

the

applications,

such

as

latency,

jitter,

frame

rate,

and

resolution.

The

set

point

on

resource

utilization

for

each

resource

was

specified

at

which

is

the

upper

bound

typically

recommended

by

scheduling

techniques,

such

as

rate

monotonic

algorithm

Since

studies

have

shown

that

human

eyes

can

perceive

delays

more

than

we

use

this

as

the

upper

bound

on

jitter

of

the

received

video.

QoS

requirements

for

each

class

of

application

is

specified

during

system

initialization

and

is

shown

in

Table

Empirical

Results

and

Analysis

This

section

presents

the

results

obtained

from

running

the

experiment

described

in

Section

on

our

DRE

multimedia

system

testbed.

We

used

system

resource

utilization

as

a

metric

to

evaluate

the

adaptive

resource

management

capabilities

of

HyARM

under

varying

input

work

loads.

We

also

used

application

QoS

as

a

metric

to

evaluate

HyARM"s

capabilities

to

support

end-to-end

QoS

requirements

of

the

various

classes

of

applications

in

the

DRE

multimedia

system.

We

analyze

these

results

to

explain

the

significant

differences

in

system

performance

and

application

QoS.

Comparison

of

system

performance

is

decomposed

into

comparison

of

resource

utilization

and

application

QoS.

For

system

resource

utilization,

we

compare

network

bandwidth

utilization

of

the

local

area

network

and

CPU

utilization

at

the

two

UAV

nodes.

For

application

QoS,

we

compare

mean

values

of

video

parameters,

including

picture

resolution,

frame

rate,

latency,

and

jitter.

Comparison

of

resource

utilization.

Over-utilization

of

system

resources

in

DRE

systems

can

yield

an

unstable

system.

In

contrast,

under-utilization

of

system

resources

increases

system

cost.

Figure

and

Figure

compare

the

system

resource

utilization

with

and

without

HyARM.

Figure

shows

that

HyARM

maintains

system

utilization

close

to

the

desired

utilization

set

point

during

fluctuation

in

input

work

load

by

transmitting

video

of

higher

(or

lower)

QoS

for

QoS-enabled

(or

best-effort)

class

of

applications

during

over

(or

under)

utilization

of

system

resources.

Figure

shows

that

without

HyARM,

network

utilization

was

as

high

as

during

increase

in

workload

conditions,

which

is

greater

than

the

utilization

set

point

of

by

As

a

result

of

over-utilization

of

resources,

QoS

of

the

received

video,

such

as

average

latency

and

jitter,

was

affected

significantly.

Without

HyARM,

system

resources

were

either

under-utilized

or

over-utilized,

both

of

which

are

undesirable.

In

contrast,

with

HyARM,

system

resource

utilization

is

always

close

to

the

desired

set

point,

even

during

fluctuations

in

application

workload.

During

sudden

fluctuation

in

application

workload,

system

conditions

may

be

temporarily

undesirable,

but

are

restored

to

the

desired

condition

within

several

sampling

periods.

Temporary

over-utilization

of

resources

is

permissible

in

our

multimedia

system

since

the

quality

of

the

video

may

be

degraded

for

a

short

period

of

time,

though

application

QoS

will

be

degraded

significantly

if

poor

quality

video

is

transmitted

for

a

longer

period

of

time.

Comparison

of

application

QoS.

Figures

Figure

and

Table

compare

latency,

jitter,

resolution,

and

frameArticle

Class

Resolution

Frame

Rate

Latency

(msec

Jitter

(msec)

QoS

Enabled

x

Best-effort

x

Table

Application

QoS

Requirements

Figure

Resource

utilization

with

HyARM

Figure

Resource

utilization

without

HyARM

rate

of

the

received

video,

respectively.

Table

shows

that

HyARM

increases

the

resolution

and

frame

video

of

QoSenabled

applications,

but

decreases

the

resolution

and

frame

rate

of

best

effort

applications.

During

over

utilization

of

system

resources,

resolution

and

frame

rate

of

lower

priority

applications

are

reduced

to

adapt

to

fluctuations

in

application

workload

and

to

maintain

the

utilization

of

resources

at

the

specified

set

point.

It

can

be

seen

from

Figure

and

Figure

that

HyARM

reduces

the

latency

and

jitter

of

the

received

video

significantly.

These

figures

show

that

the

QoS

of

QoS-enabled

applications

is

greatly

improved

by

HyARM.

Although

application

parameters,

such

as

frame

rate

and

resolutions,

which

affect

the

soft

QoS

requirements

of

best-effort

applications

may

be

compromised,

the

hard

QoS

requirements,

such

as

latency

and

jitter,

of

all

applications

are

met.

HyARM

responds

to

fluctuation

in

resource

availability

and/or

demand

by

constant

monitoring

of

resource

utilization.

As

shown

in

Figure

when

resources

utilization

increases

above

the

desired

set

point,

HyARM

lowers

the

utilization

by

reducing

the

QoS

of

best-effort

applications.

This

adaptation

ensures

that

enough

resources

are

available

for

QoS-enabled

applications

to

meet

their

QoS

needs.

Figures

and

show

that

the

values

of

latency

and

jitter

of

the

received

video

of

the

system

with

HyARM

are

nearly

half

of

the

corresponding

value

of

the

system

without

HyARM.

With

HyARM,

values

of

these

parameters

are

well

below

the

specified

bounds,

whereas

without

HyARM,

these

value

are

significantly

above

the

specified

bounds

due

to

overutilization

of

the

network

bandwidth,

which

leads

to

network

congestion

and

results

in

packet

loss.

HyARM

avoids

this

by

reducing

video

parameters

such

as

resolution,

frame-rate,

and/or

modifying

the

compression

scheme

used

to

compress

the

video.

Our

conclusions

from

analyzing

the

results

described

above

are

that

applying

adaptive

middleware

via

hybrid

control

to

DRE

system

helps

to

improve

application

QoS,

increase

system

resource

utilization,

and

provide

better

predictability

(lower

latency

and

inter-frame

delay)

to

QoSenabled

applications.

These

improvements

are

achieved

largely

due

to

monitoring

of

system

resource

utilization,

efficient

system

workload

management,

and

adaptive

resource

provisioning

by

means

of

HyARM"s

network/CPU

resource

monitors,

application

adapter,

and

central

controller,

respectively.

RELATED

WORK

A

number

of

control

theoretic

approaches

have

been

applied

to

DRE

systems

recently.

These

techniques

aid

in

overcoming

limitations

with

traditional

scheduling

approaches

that

handle

dynamic

changes

in

resource

availability

poorly

and

result

in

a

rigidly

scheduled

system

that

adapts

poorly

to

change.

A

survey

of

these

techniques

is

presented

in

One

such

approach

is

feedback

control

scheduling

(FCS)

FCS

algorithms

dynamically

adjust

resource

allocation

by

means

of

software

feedback

control

loops.

FCS

algorithms

are

modeled

and

designed

using

rigorous

controltheoretic

methodologies.

These

algorithms

provide

robust

and

analytical

performance

assurances

despite

uncertainties

in

resource

availability

and/or

demand.

Although

existing

FCS

algorithms

have

shown

promise,

these

algorithms

often

assume

that

the

system

has

continuous

control

variable(s)

that

can

continuously

be

adjusted.

While

this

assumption

holds

for

certain

classes

of

systems,

there

are

many

classes

of

DRE

systems,

such

as

avionics

and

total-ship

computing

environments

that

only

support

a

finite

a

priori

set

of

discrete

configurations.

The

control

variables

in

such

systems

are

therefore

intrinsically

discrete.

HyARM

handles

both

continuous

control

variables,

such

as

picture

resolution,

and

discrete

control

variable,

such

as

discrete

set

of

frame

rates.

HyARM

can

therefore

be

applied

to

system

that

support

continuous

and/or

discrete

set

of

control

variables.

The

DRE

multimedia

system

as

described

in

Section

is

an

example

DRE

system

that

offers

both

continuous

(picture

resolution)

and

discrete

set

(frame-rate)

of

control

variables.

These

variables

are

modified

by

HyARM

to

achieve

efficient

resource

utilization

and

improved

application

QoS.

CONCLUDING

REMARKS

Article

Figure

Comparison

of

Video

Latency

Figure

Comparison

of

Video

Jitter

Source

Picture

Size

Frame

Rate

With

HyARM

Without

HyARM

QoS

Enabled

Application

X

X

Best-effort

Application

X

X

QoS

Enabled

Application

X

X

Best-effort

Application

X

X

Table

Comparison

of

Video

Quality

Many

distributed

real-time

and

embedded

(DRE)

systems

demand

end-to-end

quality

of

service

(QoS)

enforcement

from

their

underlying

platforms

to

operate

correctly.

These

systems

increasingly

run

in

open

environments,

where

resource

availability

is

subject

to

dynamic

change.

To

meet

end-to-end

QoS

in

dynamic

environments,

DRE

systems

can

benefit

from

an

adaptive

middleware

that

monitors

system

resources,

performs

efficient

application

workload

management,

and

enables

efficient

resource

provisioning

for

executing

applications.

This

paper

described

HyARM,

an

adaptive

middleware,

that

provides

effective

resource

management

to

DRE

systems.

HyARM

employs

hybrid

control

techniques

to

provide

the

adaptive

middleware

capabilities,

such

as

resource

monitoring

and

application

adaptation

that

are

key

to

providing

the

dynamic

resource

management

capabilities

for

open

DRE

systems.

We

employed

HyARM

to

a

representative

DRE

multimedia

system

that

is

implemented

using

Real-time

CORBA

and

CORBA

A/V

Streaming

Service.

We

evaluated

the

performance

of

HyARM

in

a

system

composed

of

three

distributed

resources

and

two

classes

of

applications

with

two

applications

each.

Our

empirical

results

indicate

that

HyARM

ensures

efficient

resource

utilization

by

maintaining

the

resource

utilization

of

system

resources

within

the

specified

utilization

bounds,

QoS

requirements

of

QoS-enabled

applications

are

met

at

all

times.

Overall,

HyARM

ensures

efficient,

predictable,

and

adaptive

resource

management

for

DRE

systems.

REFERENCES

T.

F.

Abdelzaher,

J.

Stankovic,

C.

Lu,

R.

Zhang,

and

Y.

Lu.

Feddback

Performance

Control

in

Software

Services.

IEEE:

Control

Systems,

June

L.

Abeni,

L.

Palopoli,

G.

Lipari,

and

J.

Walpole.

Analysis

of

a

reservation-based

feedback

scheduler.

In

IEEE

Real-Time

Systems

Symposium,

Dec.

S.

Blake,

D.

Black,

M.

Carlson,

E.

Davies,

Z.

Wang,

and

W.

Weiss.

An

architecture

for

differentiated

services.

Network

Information

Center

RFC

Dec.

H.

Franke,

S.

Nagar,

C.

Seetharaman,

and

V.

Kashyap.

Enabling

Autonomic

Workload

Management

in

Linux.

In

Proceedings

of

the

International

Conference

on

Autonomic

Computing

(ICAC),

New

York,

New

York,

May

IEEE.

E.

Gamma,

R.

Helm,

R.

Johnson,

and

J.

Vlissides.

Design

Patterns:

Elements

of

Reusable

Object-Oriented

Software.

Addison-Wesley,

Reading,

MA,

G.

Ghinea

and

J.

P.

Thomas.

Qos

impact

on

user

perception

and

understanding

of

multimedia

video

clips.

In

MULTIMEDIA

Proceedings

of

the

sixth

ACM

international

conference

on

Multimedia,

pages

Bristol,

United

Kingdom,

ACM

Press.

Internet

Engineering

Task

Force.

Differentiated

Services

Working

Group

(diffserv)

Charter.

X.

Koutsoukos,

R.

Tekumalla,

B.

Natarajan,

and

C.

Lu.

Hybrid

Supervisory

Control

of

Real-Time

Systems.

In

IEEE

Real-Time

and

Embedded

Technology

and

Applications

Symposium,

San

Francisco,

California,

Mar.

J.

Lehoczky,

L.

Sha,

and

Y.

Ding.

The

Rate

Monotonic

Scheduling

Algorithm:

Exact

Characterization

and

Average

Case

Behavior.

In

Proceedings

of

the

IEEE

Real-Time

Systems

Symposium

(RTSS

pages

IEEE

Computer

Society

Press,

J.

Loyall,

J.

Gossett,

C.

Gill,

R.

Schantz,

J.

Zinky,

P.

Pal,

R.

Shapiro,

C.

Rodrigues,

M.

Atighetchi,

and

D.

Karr.

Comparing

and

Contrasting

Adaptive

Middleware

Support

in

Wide-Area

and

Embedded

Distributed

Object

Applications.

In

Proceedings

of

the

International

Conference

on

Distributed

Computing

Systems

pages

IEEE,

Apr.

C.

Lu,

J.

A.

Stankovic,

G.

Tao,

and

S.

H.

Son.

Feedback

Control

Real-Time

Scheduling:

Framework,

Modeling,

and

Algorithms.

Real-Time

Systems

Journal,

July

Object

Management

Group.

Real-time

CORBA

Specification,

OMG

Document

edition,

Aug.

D.

C.

Schmidt,

D.

L.

Levine,

and

S.

Mungee.

The

Design

and

Performance

of

Real-Time

Object

Request

Brokers.

Computer

Communications,

Apr.

Thomas

Sikora.

Trends

and

Perspectives

in

Image

and

Video

Coding.

In

Proceedings

of

the

IEEE,

Jan.

X.

Wang,

H.-M.

Huang,

V.

Subramonian,

C.

Lu,

and

C.

Gill.

CAMRIT:

Control-based

Adaptive

Middleware

for

Real-time

Image

Transmission.

In

Proc.

of

the

IEEE

Real-Time

and

Embedded

Tech.

and

Applications

Symp.

(RTAS),

Toronto,

Canada,

May

Article

O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O B I I O O O O O O O O O O O O O O B I I O O O O O O O O O O O O B I I I O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B I O O O O O O O B I O O O B I O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O

distributed real-time embedded system
end-to-end quality of service
service end-to-end quality
hybrid control technique
real-time video distribution system
real-time corba specification
video encoding/decoding
resource reservation mechanism
dynamic environment
distribute real-time embed system
hybrid system
service quality

hybrid adaptive resourcemanagement middleware