New Models and Algorithms for Active Networks

Preview:

DESCRIPTION

New Models and Algorithms for Active Networks. The Active Bell-Labs Engine. An adjunct active engine to any COTS router Only some packets are diverted to the AE Packet Delay depends on whether it passes thru the AE. Processing time in the AE may depend on data in the packet. - PowerPoint PPT Presentation

Citation preview

New Models and Algorithms for Active Networks

2

The Active Bell-Labs Engine• An adjunct active engine

to any COTS router

• Only some packets are diverted to the AE Packet

• Delay depends on whether it passes thru the AE.

• Processing time in the AE may depend on– data in the packet.– soft state in the AE.

MIB

routerfilter

Active Engine (AE)

manager

session 1 session 2

3

Addressing Modes

• Explicit - sent directly to a known AE.– efficient

• Oblivious - sent along a path, and intercepted by the first AE en-route.– topology learning – robust

4

• What is the right model to analyze algorithmic solutions?

• How to compare the strength of AN architectures?• Are active networks efficient?

5

Standard Asynchronous Model

• Communication is between neighbors

• A message arrivals triggers computation at a node

• A single bound on the delay of a communication + computation cycle– What does O(n log n) mean?

6

A New Model

• Two bounds on the delay:– C thru the FF.

– P(k) thru the EE.

• Forwarding is done according to the destination addr.

• No assumptions on the routing.

• We use P(k) = P ·k

FF

Execution Environment

(EE)

Filter oracle

forwarding

7

DARPA Model vs. Our Model

NodeOS

EE

1

class

FF

Execution Environment

(EE)

Filter oracle

forwarding

EE

2

EE

3

IP

8

Performance Measures

• Communication (Message) complexity - hops traveled by messages

• Time complexity - time to mission completion.

• processing complexity - CPU time used.

9

An Application Example:Route Exploration

• In the model - a node is only aware of its local neighbors.

• A node wishes to learn the route to some destination.

• Abstraction of the traceroute program.

45

10

A naïve Solution

• The source query nodes sequentially.

• O(n2) messages.• O(n2C+nP) time.

11

A naïve Solution

• The source query nodes sequentially.

• O(n2) messages.• O(n2C+nP) time.

12

report-en-route

• A query process advances sequentially.

• Reports are sent to the source for each query.

• O(n2) messages.• O(nC+nP) time.

send Report(id, c+1) to sif id send MSG*(s,d, c+1) to d

13

collect-en-route

• A query process advances sequentially.

• Information is collected in the forward direction, and sent by the destination to the source.

• O(n) messages.• O(nC+n2P) time.

14

collect-en-route

if i==d send Report(list|i) to selse send MSG*(s,d, list|i) to d

15

Route ExplorationReport

En-RouteCollectEn-Route

naive

time nP+nC n2P+nC nP+n2C

message n2 n n2

Can we do better?

16

Report-every-l• Obtain the route length.

• Initiate collect-en-route in n/l segments of length l.

17

Report-every-l• Complexities:

– message O(n2/l)– time O(nC+(n+l2)P)

• alg. at the ith segment starts after (i-1)(C+P)l

• segment time cmplx:

• For l=n2/3:– message O(n4/3); time O(nC+ n4/3 P)

)/()( 2/

1

lnOillln

i

PllCiPCl

i

2

1

)(

18

Collect-rec• Optimal up to a log factor !

• Obtain the route length.• Partition the route to two segments.• Send results from the second segment using the

FF.• Perform recursively.• Complexities:

– message O(n log n); time O(nC+nP)

19

Collect-rec (2)

Time: O(nP+nC)

Message: O(nlogn)

20

Collect-rec (2)

Time: O(nP+nC)

Message: O(nlogn)

21

Collect-rec complexity

• We can count messages/time per iteration.

• Alternative approach:– TC(n) TC(n/2) + 4n(P+C)– MC(n) 2MC(n/2) + 4n

22

Route Exploration (5)

Naive CollectEn-Route

ReportEn-Route

ReportEvery-l

CollectRec

time nP+n2C nP+2nC nP+2nC ll22PP++ nnCC nnPP++nnCC

message n2 n n2 nn22//ll nn lloogg nn

23

• A message for a large number of receivers.

• No notion of group. Ad-hoc.

• Processing time is linear in the recipient size.

• Example: a full binary tree

Message Dissemination

24

Naïve solution

• send a message to each recipient

• Complexity for a full binary tree– time: nP+log n C– message: n log n

25

Mail Distribution (2)

1 2 3 4 5 6 7 8receivers

sender

5,6,7,8,m

7,8,m

8,m7,m

5,6,m

1,2,3,4,m

26

Naïve solution

• send a message to each recipient

• Complexity for a full binary tree– time: nP+log n C– message: n log n

Active

2nP+log n C

2n

27

Multicast

• We assume a multicast group exist

• Aim: build the best tree

• In general: NP-hard

• We will look at the line case

28

Previous Solutions

• Unicast:– time complexity: O(n(P+C))– message complexity: O(n2)

• message dissemination:– time complexity: O(n(P+C))– message complexity: O(n)

29

Better solution

• Embed a tree in the line

• What should be its arrity?

30

Complexity of a tree scheme

nCnPx

Cnxxx

xnnPxnTC

x

nTCC

x

xnPxnTC

nn

xnMC

x

nxMC

nx

x

nxMCi

x

nnMC

x

x

x

x

i

log)1(

1...

111

)1(log)1()(

)1()1()(

log2

)1()(

2

)1()(

2

1

1

31

Optimum

• x / log x achieves optimum at 3 when restricted to integers

2 4 6 8220

240

260

280

300

tree degree

tim

e

2 4 6 8150

160

170

180

190

200

210

220

tree degree

mes

sag

e

C=1, P=20

32

Other Basic Problems

• Bottleneck detection - computation along a route.

• Message dissemination to an ad-hoc group.

• Topology discovery.

• Computation of a global function.

33

Summary

• A new model to analyze active network applications.

• Can be used for Other domains– Peer2Peer– application layer multicast

• Can be used to compare strength of architectures by comparing lower bounds.

34

Paper(s) available at:

www.cs.bell-labs.com/~ABLE

Recommended