Transcript
Page 1: New Models and Algorithms for Active Networks

New Models and Algorithms for Active Networks

Page 2: 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

Page 3: New Models and Algorithms for Active Networks

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

Page 4: New Models and Algorithms for Active Networks

4

• What is the right model to analyze algorithmic solutions?

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

Page 5: New Models and Algorithms for Active Networks

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?

Page 6: New Models and Algorithms for Active Networks

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

Page 7: New Models and Algorithms for Active Networks

7

DARPA Model vs. Our Model

NodeOS

EE

1

class

FF

Execution Environment

(EE)

Filter oracle

forwarding

EE

2

EE

3

IP

Page 8: New Models and Algorithms for Active Networks

8

Performance Measures

• Communication (Message) complexity - hops traveled by messages

• Time complexity - time to mission completion.

• processing complexity - CPU time used.

Page 9: New Models and Algorithms for Active Networks

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

Page 10: New Models and Algorithms for Active Networks

10

A naïve Solution

• The source query nodes sequentially.

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

Page 11: New Models and Algorithms for Active Networks

11

A naïve Solution

• The source query nodes sequentially.

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

Page 12: New Models and Algorithms for Active Networks

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

Page 13: New Models and Algorithms for Active Networks

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.

Page 14: New Models and Algorithms for Active Networks

14

collect-en-route

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

Page 15: New Models and Algorithms for Active Networks

15

Route ExplorationReport

En-RouteCollectEn-Route

naive

time nP+nC n2P+nC nP+n2C

message n2 n n2

Can we do better?

Page 16: New Models and Algorithms for Active Networks

16

Report-every-l• Obtain the route length.

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

Page 17: New Models and Algorithms for Active Networks

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

)(

Page 18: New Models and Algorithms for Active Networks

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)

Page 19: New Models and Algorithms for Active Networks

19

Collect-rec (2)

Time: O(nP+nC)

Message: O(nlogn)

Page 20: New Models and Algorithms for Active Networks

20

Collect-rec (2)

Time: O(nP+nC)

Message: O(nlogn)

Page 21: New Models and Algorithms for Active Networks

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

Page 22: New Models and Algorithms for Active Networks

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

Page 23: New Models and Algorithms for Active Networks

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

Page 24: New Models and Algorithms for Active Networks

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

Page 25: New Models and Algorithms for Active Networks

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

Page 26: New Models and Algorithms for Active Networks

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

Page 27: New Models and Algorithms for Active Networks

27

Multicast

• We assume a multicast group exist

• Aim: build the best tree

• In general: NP-hard

• We will look at the line case

Page 28: New Models and Algorithms for Active Networks

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)

Page 29: New Models and Algorithms for Active Networks

29

Better solution

• Embed a tree in the line

• What should be its arrity?

Page 30: New Models and Algorithms for Active Networks

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

Page 31: New Models and Algorithms for Active Networks

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

Page 32: New Models and Algorithms for Active Networks

32

Other Basic Problems

• Bottleneck detection - computation along a route.

• Message dissemination to an ad-hoc group.

• Topology discovery.

• Computation of a global function.

Page 33: New Models and Algorithms for Active Networks

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.

Page 34: New Models and Algorithms for Active Networks

34

Paper(s) available at:

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