Broadcasting Protocol for an Amorphous Computer Lukáš Petrů MFF UK, Prague Jiří Wiedermann ICS...

Post on 18-Dec-2015

219 views 1 download

Transcript of Broadcasting Protocol for an Amorphous Computer Lukáš Petrů MFF UK, Prague Jiří Wiedermann ICS...

Broadcasting Protocol for an Broadcasting Protocol for an Amorphous ComputerAmorphous Computer

Lukáš PetrůMFF UK, Prague

Jiří WiedermannICS AS CR

OutlineOutline

MotivationModel of an Amorphous computerProtocol SendProtocol BroadcastConclusion

Device MiniaturizationDevice Miniaturization

Technology allows producing very small energy efficient devices (MEMS)

They can be built in large numbersCan communicate via wireless radio

→ Wireless sensor networks

→ Amorphous computers

Wireless Sensor NetworkWireless Sensor Network

A large number of devices is randomly distributed in an area of interest

Each device is self-contained employing sensors, CPU, memory, controller, wireless transceiver and power source

Sensors measuring light intensity, temperature, humidity, …, or intrusion detectors, etc.

Data from all devices on the network are gathered in base station

Amorphous Computer (pict.)Amorphous Computer (pict.)

A bag containing a large number of computing elements

Amorphous ComputerAmorphous Computer

Amorphous ComputerAmorphous Computer

Amorphous Computer (AC)Amorphous Computer (AC)

Idea of a computing machine built from a large number of identical parts

Differences from wireless networks:– only CPU with a severely limited memory– Random topology– All devices are identical (no id numbers)– No signal collision detection

Model of an ACModel of an AC

No synchronizationNo collision detection (no message is

received in case of collision)Special node IO-portNo addresses

NodeNode

Registers

Size O(log N) bits

Control unit

Random numberInput

Output

Model of an ACModel of an AC

Amorphous computer A=(N, P, A, r, T)

N – number of nodes (=processors); each node is a RAM with registers of size O(log N) bits; has random number generator

P, A – a process P randomly distributes nodes in a planar area A

r – radio range; nodes within distance r are neighbours

T – duration of one radio transmission

Random TopologyRandom Topology

When the node topology is random, what are the consequences on the communication possibility?

Is communication possible?Under what conditions?

Random TopologyRandom Topology

Low density

Random TopologyRandom Topology

Medium density

Random TopologyRandom Topology

High density

AssumptionsAssumptions

Assume that network connectivity graph contains one large component– Some nodes may not be part of the component

N = size of the graph componentQ = maximum neighbourhood sizeD = diameter of the graph component

Sending to NeighboursSending to Neighbours

Protocol SendProtocol Send

An algorithm that determines how a node transmits a message to its neighbours

Operates in an uncoordinated network of undistinguishable nodes that are not synchronized

Assumptions: given Q – An upper bound on the number of node’s neighbours;given ε – the maximum allowed probability of failed transmission is known

Protocol SendProtocol Send

Let p = 1/(Q+1); k = O(Q · log(1/ε))

procedure Send(m : message,p : probability) {For i := 1 to k do {

Wait for time 2T;With probability p do

Send message m;}

}

Protocol SendProtocol Send

Theorem:

If all nodes of the network use algorithm Send, then the probability that a message fails to be delivered from a sender to any of its neighbours is at most ε.The protocol works in time O( Q log (1/ε) ).

BroadcastingBroadcasting

Protocol BroadcastProtocol Broadcast

is used to deliver the same message to all nodes in the network

A simple protocol for node-to-node communication when no routing information is available

Assumptions: given N – the network size;Q – node neighbourhood size upper bound;ε – the maximum allowed probability of broadcast algorithm error

Protocol BroadcastProtocol Broadcast

procedure Broadcast(N : integer) {var m, m_last : messageLoop forever {

receive(m);If m != m_last {

Send(m, ε/N);m_last = m;

}}

}

Protocol BroadcastProtocol Broadcast

Theorem:

On a network of diameter D, algorithm Broadcast will run in timeO(D · Q · log (N/ε)). The probability of algorithm failure is at most ε>0.

ConclusionConclusion

We have …

defined a formal model of ACdeveloped a randomized broadcasting

algorithmderived its time complexity

Future workFuture work

Describe simulation of other theoretical models (Turing machine, RAM)

Consider moving nodes – flying amorphous computer