21.08.2013 Views

Protocols for Secure Communication in Wireless Sensor Networks

Protocols for Secure Communication in Wireless Sensor Networks

Protocols for Secure Communication in Wireless Sensor Networks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.2. Rout<strong>in</strong>g on Spann<strong>in</strong>g Trees 137<br />

Algorithm 3 Variant: Forward a message to all cover<strong>in</strong>g children<br />

1: on receive message DATA〈t,s,d, p〉 from j:<br />

2: if d ∈ cover (t)<br />

u then<br />

3: /* handle message */<br />

4: end if<br />

5: ∀c : c = v ∧ d ∈ T [t].reach(c): <strong>for</strong>ward DATA〈t,s,d, p〉 to c<br />

6: if T [t].parent ∈ {u,v} then<br />

7: <strong>for</strong>ward DATA〈t,s,d, p〉 to T [t].parent<br />

8: end if<br />

9:<br />

condition<br />

D1 ∪ D2 ⊆ D1 ⊎ D2 ,<br />

i.e. all addresses conta<strong>in</strong>ed <strong>in</strong> either D1 or D2 are also conta<strong>in</strong>ed <strong>in</strong> the result<strong>in</strong>g<br />

set. For some address spaces, it may be impractical to represent subsets of that<br />

space both efficiently and accurately. We there<strong>for</strong>e admit some “fuzz<strong>in</strong>ess” <strong>in</strong><br />

the union operation, i.e. we allow<br />

D1 ⊎ D2 \ (D1 ∪ D2) = /0 .<br />

This means that additional addresses may be <strong>in</strong> the comb<strong>in</strong>ed covers that are<br />

not covered by either of the components.<br />

In the follow<strong>in</strong>g, we show how to <strong>in</strong>stantiate this general scheme with concrete<br />

address<strong>in</strong>g schemes.<br />

Tree Address<strong>in</strong>g<br />

With<strong>in</strong> a tree, there is a canonical address<strong>in</strong>g scheme, assum<strong>in</strong>g a static order<br />

on the children of each node. Start<strong>in</strong>g from the root, each node can be given a<br />

unique <strong>in</strong>dex address<br />

i0.i1.i2. ... .ih<br />

where i j ∈ IN denotes the <strong>in</strong>dex of a child of the current node. If two such<br />

addresses have the same prefix, they are located <strong>in</strong> the same subtree. Note that<br />

the root’s address is the empty <strong>in</strong>dex sequence ε. Address<strong>in</strong>g nodes <strong>in</strong> this way<br />

is efficient s<strong>in</strong>ce this scheme requires no further state <strong>in</strong><strong>for</strong>mation except <strong>for</strong><br />

the static order on children.<br />

Index address<strong>in</strong>g has the drawback that the same node has a different address<br />

<strong>in</strong> every tree, there<strong>for</strong>e an address is only valid <strong>for</strong> the lifetime of the tree. Also,<br />

the sender has to know the <strong>in</strong>dex address of the dest<strong>in</strong>ation node <strong>in</strong> order to send<br />

a message. Gett<strong>in</strong>g the current <strong>in</strong>dex address of the dest<strong>in</strong>ation to the sender<br />

requires additional overhead.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!