A Traveling Wave-based Self-Organizing
MURATA
Communication Mechanism for WSNs OSAKALAB.
UNIV.
Yoshiaki Taniguchi, Naoki Wakamiya, Masayuki Murata
Graduate School of Information Science and Technology,Osaka University, JAPAN{y-tanigu, wakamiya, murata}@ist.osaka-u.ac.jp
Overview of our communication mechanism [1]• Organize periodical communication patterns depending on application requirements• Information gathering from all sensor nodes (e.g. temperature data)• Information diffusion to all sensor nodes (e.g. control signals)• Based on traveling wave phenomena of pulse-coupled oscillator model• Adaptive, robust, fully-distributed, and self-organizing• Synchronized message emissionÆEfficient sleep scheduling (energy-efficiency)• But several iterations are necessary to form a traveling wave

Pulse-coupled oscillator model• Explains synchronous behavior of biological oscillators, e.g., flashing fireflies• Basic Behavior• Oscillator i has a timer with phase φi∈[0,1]• When the phase reaches 1, oscillator i fires and the phase jumps back to 0
• Other oscillators coupled with the firing oscillator are stimulated and advance theirphase by an amount Δ(φi)• Through mutual interactions, global synchronization or traveling wave appears• Global synchronization: all oscillators fire synchronously• Traveling wave: oscillators behave synchronously keeping fixed phase difference
global synchronization

traveling wave
non-firing node
firing node
timetime• The condition of PRC (Phase Response Curve) function Δ(φ) to generate a
traveling wave from random initial condition is discussed in [1][1] Y. Taniguchi, N. Wakamiya, M. Murata, “A Traveling Wave based Communication Mechanism for Wireless Sensor Networks”,Journal of Networks, Vol.2, No.5, pp.24-32, September 2007

How does the mechanism work?
• Any of sensor nodes can become a fusion/diffusion point, called core node, from which
messages are disseminated or to which messages are gathered• Sensor node i has a timer φi ∈[0,1], PRC function Δ(φi) , level value li , session identifiersi , direction δi , offset τi• Core node: li Å 0, si Å si + 1 for new session• Sensor node broadcasts a message when timer reaches 1• A message contains level value li , session identifier si , direction δi , sensor data• When sensor node receives a message, it adjusts control parameters and is stimulated• Once traveling wave is organized, sensor node can sleep during τmax < φi < 1-τmax
ti

broadcastLevel value li : number of hops from core node
Direction δi : 1 for diffusion and -1 for gathering
Offset τi : the interval of message emission
between a node of level l -1 and that of level lτmaxsleep

τjτks j > siYES(new communication)

NOnode klevel li+1δi ← δ j

l j = li − δ i

δi ← δ j

YESYESNOnode jlevel li+1

φ i ← φ i + Δ (φ i )li ← l j + 1

l j < linode ilevel li

Fig. 1: Timing of Message Emissionli ← l j + 1

s j = si

tj

time

tk
si ← s j

NOti

tk

tj

sensor node i receives a message
from sensor node jτmax

φ i ← φ i + Δ (φ i )YESsensor node i deposits
received information

NO

end of processing

Fig. 2: Node Behavior on Message Reception

Demonstration• We can choose any sensor node as a core node for information diffusion or gathering• Flashes of LEDs propagate from/to a core node

Dashed lines indicate neighbor relations• We can add and remove sensor nodes
Node #1

Node #7

Node #9

Node #4
Node #6
Node #2

Node #5

Node #3

Node #8

Fig. 3: Demo Network

Node #10

PUSH SW (LEFT) :Set a core node for information
gathering
PUSH SW (RIGHT) :Set a core node for information
diffusion
LED (RED) :Flashes when the sensor nodebroadcasts a message