New Models and Algorithms for Active Networks. 2 The Active Bell-Labs Engine An adjunct active...
-
Upload
cynthia-carroll -
Category
Documents
-
view
217 -
download
0
Transcript of New Models and Algorithms for Active Networks. 2 The Active Bell-Labs Engine An adjunct active...
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
The RS 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. The RS 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
• send a message to each recipient
• Complexity for a full binary tree– time: nP+log n C– message: n log n
Naïve solutionActive
2nP+log n C
2n
Distribute along the tree
26
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
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(nP+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 n=32
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.