• Keine Ergebnisse gefunden

Artificial physical chemistry : analysis and design of networking and communication systems

N/A
N/A
Protected

Academic year: 2022

Aktie "Artificial physical chemistry : analysis and design of networking and communication systems"

Copied!
292
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Analysis and Design of

Networking and Communication Systems

Inauguraldissertation

zur

Erlangung der W¨ urde eines Doktors der Philosophie vorgelegt der

Philosophisch-Naturwissenschaftlichen Fakult¨ at der Universit¨ at Basel (Schweiz)

und der

Universit¨ at Pisa (Italien)

von

Massimo Monti aus Italien

Basel, 2014

Originaldokument gespeichert auf dem Dokumentenserver der Universit¨at Basel: edoc.unibas.ch

Dieses Werk ist unter dem Vertrag “Creative Commons Namensnennung- Keine kommerzielle Nutzung-Keine Bearbeitung 3.0 Schweiz” (CC BY- NC-ND 3.0 CH) lizenziert. Die vollst¨andige Lizenz kann unter creativecommons.org/licenses/by-nc-nd/3.0/ch/eingesehen werden.

(2)

Auf Antrag von

Prof. Dr. Christian F. Tschudin, Universit¨at Basel, Schweiz (Fakult¨atsverantwortlicher)

Prof. Dr. Marco Luise, Universit`a di Pisa, Italia (Dissertationsleiter)

Prof. Dr. Edouard Bugnion,

Ecole Polytechnique F´ed´erale De Lausanne (EPFL), Suisse´ (Korreferent)

Prof. Dr. M´erouane Debbah,

Grande ´Ecole Sup`erieure d’´Electricit´e (SUP´ELEC), France (Korreferent)

Basel, den 16. 09. 2014

Prof. Dr. J¨org Schibler (Dekan)

(3)

You are free:

to Share— to copy, distribute and transmit the work

Under the following conditions:

Attribution— You must attribute the work in the manner spec- ified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).

NonCommercial — You may not use this work for commercial purposes.

NoDerivativeWorks—You may not alter, transform, or build upon this work.

With the understanding that:

Waiver— Any of the above conditions can be waivedif you get permission from the copyright holder.

Public Domain — Where the work or any of its elements is in thepublic domainunder applicable law, that status is in no way affected by the license.

Other Rights — In no way are any of the following rights affected by the license:

• Your fair dealing orfair userights, or other applicable copyright exceptions and limitations;

• The author’smoralrights;

• Rights other persons may have either in the work itself or in how the work is used, such aspublicityor privacy rights.

Notice — For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to the web pagehttp://creativecommons.org/licenses/by-nc-nd/3.0/ch/deed.en.

(4)
(5)
(6)
(7)

In this thesis, we use concepts, principles, and theoretical results from Physical Chemistry to engineer communication and networking systems. We focus on system dynamics and exploit laws from chemical kinetics in order to govern the dynamics of a communication network. This is achieved by orchestrating the interactions among network nodes by means of “artificial chemistries”. We provide a new perspective on traditional issues concerning the design, the for- mal analysis and the deployment of distributed algorithms and communication protocols, ultimately leading to programmable network dynamics with provable properties.

Specifically, (i) we introduce a class of chemistry-inspired flow controllers that can easily be customized to accommodate many requirements of network (re- source) management, such as distributed coordination of flow aggregates, ca- pacity allocation, access regulations and service differentiation among user flows or flow bundles. (ii) We show the benefit of the chemical approach in designing solutions to the “distributed consensus problem” for wireless sensor networks.

After having designed and analyzed the required interaction rules “on paper”, we use the derived communication protocol in a hardware testbed. Salient features of this minimalistic setup are mainly three. Nodes achieve consensus based only on asynchronously emitted RF pulses. No media access control is used. The protocol works in an embodied fashion by exploiting subtle timing differences and without recurring to symbolic information. (iii) Finally, in order to demonstrate the use of Chemistry-driven mechanisms also for high- performance tasks (e.g., high-rate packet-pacing), we describe the implemen- tation of artificial chemistries on an FPGA-based hardware. At the same time, we provide an abstraction for designing runtime-programmable hardware controllers.

(8)

Funding:This doctoral work has been supported by the Swiss National Science Foundation (SNSF) under the grant #132525.

Co-tutelle:This doctoral work was regulated by the co-supervision agreement between the University of Basel (Switzerland) and University of Pisa (Italy).

(9)

This work would not have been possible without the support of many people.

First, I would like to thank my advisers Prof. Christian Tschudin and Prof.

Marco Luise for their respectful support, and the possibility they gave me to conduct my own research in complete freedom.

A sincere gratitude goes to Dr. Manolis Sifalakis and Dr. Thomas Meyer that co-supervised this project in its different stages. Discussions as well as collaborations with them have always revealed productive, and brought to works that later the research community has recognized as valid and promising.

I also thank all my colleagues at the Computer Network group, University of Basel, for their advice and suggestions during these years, in particular Dr.Pierre Imai.

A part of this thesis has been developed during my stay at the University of Pisa, Dept. Information Engineering. I am very grateful to all my colleagues at the DSP Communication Lab, particularly, to Dr.Giacomo Bacci, Dr.An- drea Emmanuele and Dr. Mario di Dio for their support, and to Dr. Luca Sanguinetti, who considerably helped me in part of this work.

A special thanks is reserved to my wife,Elena Puri, who has always supported my work and encouraged me in good and bad days. I thank her for the valid help she gave me in writing and revising all publications, including this thesis, and the help in everyday life in Basel.

Last but not least, I would like to thank my motherPierangela for her confi- dence in me, and my fatherMario for the continuous consultancy he gave me in the context of hardware design and implementation.

Basel, 2014 Massimo Monti

(10)
(11)

Abstract i

Acknowledgments iii

Contents v

List of Publications ix

List of Figures xiii

List of Tables xv

List of Algorithms xvii

List of Acronyms xix

List of Symbols and Operators xxiii

1 Introduction 1

1.1 Context and motivations . . . 1

1.2 Our approach . . . 3

1.3 Contributions of the thesis . . . 4

1.4 Thesis outline . . . 5

2 Artificial Chemistry (AC) for networking & communications 7 2.1 Introduction . . . 8

2.1.1 Related works . . . 8

2.1.2 Space and scope of our contribution . . . 10

2.2 Basics ofAC . . . 11

2.2.1 Chemical metaphor for networking . . . 12

2.2.2 Formal definition . . . 13

2.2.3 Law of Mass Action (LoMA) . . . 17

2.2.4 Stochastic chemical kinetics . . . 18

2.2.5 Reaction algorithm . . . 22

2.3 Analytical tools . . . 25

2.3.1 Deterministic approximation . . . 25

(12)

2.3.2 Steady-state analysis . . . 27

2.3.3 Transient (sensitivity) analysis . . . 29

2.3.4 Stability analysis . . . 35

2.3.5 Deficiency-Zero Theorem . . . 36

2.3.6 Randomness in chemical systems . . . 39

2.4 ParametrizingACs for communication engineering . . . 41

2.4.1 Simplified inter-reaction times . . . 42

2.4.2 Deterministic inter-reaction times . . . 43

2.4.3 Normally distributed inter-reaction times . . . 47

2.4.4 Normally distributed reaction rates . . . 49

2.4.5 Reaction algorithm for communication and networking . 52 2.5 From science to engineering . . . 52

2.6 Conclusion . . . 56

3 AC to shape the traffic in computer networks 59 3.1 Introduction . . . 60

3.1.1 Related works . . . 60

3.1.2 Space and scope of our contribution . . . 63

3.2 Flow interactions in queueing systems . . . 66

3.2.1 LoMA and classic work-conserving packet scheduling . . 66

3.3 Traffic rate control . . . 71

3.3.1 Token-Bucket . . . 71

3.3.2 Enzymatic traffic rate controller . . . 73

3.3.3 Analysis of an Enzymatic traffic controller . . . 75

3.3.4 Enzymatic control of traffic in real-world systems . . . . 81

3.4 Distributed Traffic Rate Controller (DTRC) . . . 86

3.4.1 Design of DTRCs . . . 88

3.4.2 Analysis of DTRCs . . . 90

3.4.3 DTRC: Simulations in OMNeT++ . . . 97

3.4.4 DTRC: Experiments in a real environment . . . 103

3.4.5 Insights on DTRCs . . . 105

3.5 Conclusion . . . 106

4 AC to solve the consensus problem in WSNs 109 4.1 Introduction . . . 110

4.1.1 Related works . . . 110

4.1.2 Space and scope of our contribution . . . 112

4.2 The average consensus problem . . . 114

4.3 A Chemistry-inspired consensus algorithm . . . 116

4.3.1 Chemical reversible model . . . 116

4.3.2 A chemical gossip-style model: The “Disperser” . . . 118

4.3.3 A Chemistry-inspired consensus algorithm for WSNs . . 119

4.4 Convergence and performance of chemical consensus algorithms 121 4.4.1 Steady state and convergence . . . 121

4.4.2 Sensitivity analysis and performance . . . 123

(13)

4.5 Simulating the chemical consensus algorithm in OMNeT++ . . 126

4.5.1 Simulation measurementsvs.analytical predictions . . . 126

4.5.2 Simulations for different topologies and sizes of networks 127 4.5.3 Simulations for time-varying measurements . . . 131

4.5.4 Comparisons with randomized and broadcast gossip . . 132

4.6 A chemical approach to practical issues . . . 133

4.6.1 Self-configuration: Estimating the neighborhood size . . 134

4.6.2 Self-stabilization: Recovering from erroneous states . . . 135

4.6.3 Simulations and comparisons in non-ideal scenarios . . . 138

4.7 Testing the chemical consensus algorithm under real conditions 142 4.7.1 Artificial chemistries on a hardware testbed . . . 142

4.7.2 Experiments on a four-node testbed . . . 144

4.8 Further insights on the Chemistry-inspired consensus . . . 145

4.8.1 AC for consensus in WSNs . . . 145

4.8.2 An implementation of ACin WSNs . . . 147

4.9 Conclusion . . . 148

5 AC to enable programmable control in hardware 151 5.1 Introduction . . . 152

5.1.1 Related works . . . 153

5.1.2 Space and scope of our contribution . . . 156

5.2 ACs on FPGA . . . 157

5.2.1 Defining the structure of the chemical model . . . 159

5.2.2 Defining the dynamics of the chemical model . . . 163

5.3 ACs on Xilinx Spartan-6 XC6SLX9 FPGA . . . 166

5.3.1 main-module . . . 167

5.3.2 AC-module . . . 167

5.3.3 time-Calculator-module . . . 173

5.4 Experimenting with Chemistry-inspired hardware controllers . 176 5.4.1 Enzymatic control of Internet traffic with FPGAs . . . . 176

5.4.2 Distributed computation with multiple FPGAs . . . 180

5.5 Further insights on hardware artificial chemistries . . . 182

5.5.1 Which logic device fits our need? . . . 183

5.5.2 Possible improvements and future works . . . 184

5.5.3 Chemistry-inspired abstraction for hardware design . . . 185

5.6 Conclusion . . . 186

6 Conclusion 189 6.1 Chemistry-inspired communication and networking engineering 189 6.2 Contributions and findings . . . 192

6.3 Future works . . . 194

(14)

A Supplementary material 197

A.1 A novel attraction-based law: LoPA . . . 197

A.1.1 Difference motif: LoPAvs. LoMA . . . 198

A.2 Further related works on traffic shaping . . . 200

A.2.1 End-to-end transport control . . . 200

A.2.2 In-network queueing/scheduling . . . 203

A.3 Step by step analysis of the Enzymatic traffic controller . . . . 207

A.4 Step by step analysis of the distributed traffic rate controller . 210 A.5 Enzymatic Media Access Control: E-MAC . . . 213

A.5.1 The ALOHA protocol . . . 213

A.5.2 The E-MAC protocol . . . 215

A.6 Distributed traffic rate controller: service-class differentiation . 218 A.7 Chemical consensus in clustered and inline networks . . . 220

A.8 Chemical consensus algorithm: collision estimation . . . 222

A.9 Chemical consensus algorithm: frequency-division approach . . 224

Bibliography 225

Index 249

Curriculum Vitae 257

(15)

International Journals

• Massimo Monti and Manolis Sifalakis and Christian F. Tschudin and Marco Luise, “Towards Programmable Network Dynamics: A Chemistry- inspired Abstraction for Hardware Design,” IEEE/ACM Transactions on Networking, submitted for review, May 2014.

• Massimo Monti and Luca Sanguinetti and Christian F. Tschudin and Marco Luise, “A Chemistry-Inspired Framework for Achieving Consensus in Wireless Sensor Networks,” IEEE Sensors Journal, vol. 14, no. 2, pp. 371–382, Feb 2014.

• Massimo Monti and Pierre Imai and Christian F. Tschudin, “Designing Run-time Environments to have Predefined Global Dynamics,” Interna- tional Journal of Computer Networks and Communications (IJCNC), vol. 5, no. 3, pp. 1–16, May 2013

• Massimo Monti and Thomas Meyer and Christian F. Tschudin and Marco Luise, “Stability and Sensitivity Analysis of Traffic-Shaping Algorithms inspired by Chemical Engineering,” IEEE Journal on Selected Areas of Communications (JSAC) Special Issue on Network Science, vol. 31, no. 6, pp. 1–11, Jun 2013

International Conferences and Workshops

• Manolis Sifalakis, Stefan Braun, Massimo Monti and Christian F.Tschudin,

“An Empirical Study of Receiver-based AIMD Flow-Control Strategies for CCN,” In Proc. of IEEE International Conference on Computer Com- munications and Networks (ICCCN) (NACSD-track), pp. 1–8, Nassau, Bahamas, Jul 2013.

• Massimo Monti and Luca Sanguinetti and Christian F. Tschudin and Marco Luise”, “Chemistry-Inspired Algorithm for Emergent Distributed Consensus in WSNs,” in Proc. of the IEEE International Conference on Distributed Computing in Sensor Systems (DCOSS), pp. 423–429, Cambridge (MA), USA, May 2013.

(16)

• Massimo Monti and Manolis Sifalakis and Thomas Meyer and Christian F. Tschudin and Marco Luise, “A Chemical-Inspired Approach to De- sign Distributed Rate Controllers for Packet Networks,” in Proc. of the IFIP/IEEE-IM International Workshop on Distributed Autonomous Net- work Management Systems (DANMS), pp. 1358–1364, Ghent, Belgium, May 2013.

(Best Paper Award)

• Stefan Braun, Massimo Monti, Manolis Sifalakis, Christian F. Tschudin

“CCN and TCP co-existence in the Future Internet: Should CCN be com- patible to TCP?,” in Proc. of the IFIP/IEEE-IM International Workshop on Management of the future Internet (ManFI), pp. 1109–1115, Ghent, Belgium, May 2013.

• Massimo Monti and Thomas Meyer and Christian F. Tschudin and Marco Luise, “Signal Processing Applied to Chemically Inspired Communication Protocols,” In proc. of IEEE International Conference On Communica- tions (ICC) (CQR-track), pp. 1144–1148, Ottawa, Canada, Jun 2012.

• Igor Talzi, Massimo Monti, Thomas Meyer and Christian F. Tschudin,

“Force-Based Navigation in Wireless Sensornets,” in Proc. of the IEEE International Conference on Distributed Computing in Sensor Systems (DCOSS), pp. 1–6, Barcelona, Spain, Jun 2011.

Others

• Stefan Braun and Massimo Monti and Manolis Sifalakis and Christian F. Tschudin, “CCN/TCP co-existence in the future Internet: E2E vs.

Receiver-based flow control,” Poster at the IEEE INFOCOM Workshop on Emerging Design Choices in Name-Oriented Networking (NOMEN), Turin, Italy, Apr 2013.

• Christian F. Tschudin and Manolis Sifalakis and Pierre Imai and Massimo Monti and Thomas Meyer, “CCN-lite - A minimal code base for CCNx,”

Poster at the CCNxCon12 community meeting, Nice, France, Sep 2012.

• Manolis Sifalakis and Massimo Monti and Christian F. Tschudin, “Em- bedding Cloud-Centric-Networking in CCN,” Presentation at the CCNx- Con12 community meeting, Nice, France, Sep 2012.

• Stefan Braun and Manolis Sifalakis and Massimo Monti and Christian F.

Tschudin, “Steaming up CCN against TCP,” Presentation at the CCNx- Con12 community meeting, Nice, France, Sep 2012.

• Massimo Monti and Thomas Meyer and Christian F. Tschudin and Marco Luise, “Simulating and Exploiting Physical Forces in Computer Network- ing,” Poster for the Student Competition at the International Workshop on Self-Organizing Systems, Karlsruhe, Germany, Feb 2011.

(17)

2.1 Chemical metaphor: unimolecular reaction . . . 14

2.2 Distributed artificial chemistry (DAC): unimolecular reaction . 15 2.3 Differences between chemical & communication network . . . . 16

2.4 Stochastic state evolution of a unimolecular reaction . . . 19

2.5 Rate-equation approximationvs.actual system trajectory . . . 26

2.6 Inaccuracy of the steady-state approximation . . . 28

2.7 A Law of Mass Action (LoMA) -served queue. . . 31

2.8 Low-pass filtering effect in a LoMA-served queue . . . 35

2.9 Example: complexes and linkage classes . . . 37

2.10 Unimolecular reaction dynamics for exponential reaction times 43 2.11 Unimolecular reaction dynamics for deterministic reaction times 46 2.12 Unimolecular reaction dynamics for Gaussian reaction times . . 48

2.13 Fed unimolecular reaction model . . . 49

2.14 Unimolecular reaction dynamics for Gaussian reaction rates . . 49

2.15 More complex reaction networks . . . 51

2.16 Dynamics of complex networks for Gaussian reaction rates . . . 51

2.17 Saturation phenomenon due to low computational performance 55 2.18 Low-resolution phenomenon due to low time granularity . . . . 56

3.1 Interacting flows in LoMA-served queues . . . 69

3.2 Dynamics of interacting flows through LoMA-served queues . . 69

3.3 Interacting LoMA-served queues . . . 69

3.4 Chemical metaphor for interacting queueing systems . . . 70

3.5 Token-Bucket scheme . . . 72

3.6 The Enzymatic model . . . 74

3.7 Chain of Enzymatic-controlled flows . . . 78

3.8 Merging Enzymatic-controlled flows . . . 79

3.9 Simulated and predicted dynamics of Enzymatic flows . . . 81

3.10 Enzymatic controller: real-world experiment setup . . . 83

3.11 Enzymatic-controlled UDP flows . . . 83

3.12 Enzymatic-controlled flows over the Internet (UDP) . . . 84

3.13 Enzymatic-controlled TCP flows . . . 85

3.14 Distributed rate control: scenario . . . 87 3.15 Reaction network for Distributed Traffic Rate Control (DTRC) 89

(18)

3.16 Chemical motifs for the adaptive DTRC. . . 89

3.17 DTRC: transfer functions . . . 95

3.18 DTRC: implementation scheme . . . 97

3.19 DTRC: Analytical predictionsvs.simulation measurements. . . 98

3.20 Simulation: tuning the DTRC in a highly delayed scenario . . . 100

3.21 Simulation: aggregate rates in 11 DTRC-control host network . 101 3.22 Simulation: local rates of 11 DTRC-controlled hosts . . . 102

3.23 DTRC: real-world experiment setup . . . 103

3.24 Real-world experiment: DTRC control of Internet traffic . . . . 104

4.1 Sensor node block diagram . . . 115

4.2 Chemical reversible model . . . 117

4.3 Chemical model for broadcast-based consensus . . . 120

4.4 Full and ring network topologies. . . 125

4.5 Consensus model: simulationsvs.analytical prediction . . . 127

4.6 Regular lattice and small-world network topologies. . . 128

4.7 Sensors’ state evolution in 25-node networks . . . 129

4.8 Sensors’ state evolution in 100-node networks . . . 130

4.9 Sensors’ state evolution in dynamical networks . . . 132

4.10 Comparing chemical, randomized, and broadcast gossip models 133 4.11 Chemical model for estimating the number of neighbors . . . . 135

4.12 Chemical model for self-stabilization . . . 137

4.13 Effects of the mechanism for self-stabilization . . . 139

4.14 Performance comparison in a perturbed simulation scenario . . 141

4.15 Performance comparison in a switching network . . . 141

4.16 Hardware testbed . . . 143

4.17 Results of the real-world experiment . . . 146

5.1 FPGA technology . . . 158

5.2 Stoichiometric reactant coefficient in hardware - 1 . . . 160

5.3 Stoichiometric reactant coefficient in hardware - 2 . . . 162

5.4 Stoichiometric reactant coefficient in hardware - 3 . . . 164

5.5 Chemical algorithms on Xilinx FPGAs: block diagram . . . 167

5.6 main-module scheme . . . 168

5.7 FPGA-configuration example . . . 170

5.8 AC-module scheme . . . 172

5.9 time-Calculatorscheme . . . 175

5.10 Setup of the experiment on hardware traffic rate control . . . . 177

5.11 FPGA-configuration for (Enzymatic) traffic rate control . . . . 178

5.12 Experiment results: hardware Enzymatic-control of UDP-traffic 179 5.13 Experiment results: programming the controller’s behavior . . 180

5.14 FPGA-configuration for distributed computation . . . 181 5.15 Setup of the experiment on distributed computation on FPGAs 183 5.16 Experiment results: distributed computation with three FPGAs 183

(19)

A.1 Difference motif via repulsion laws only (LoMA) . . . 199

A.2 Difference motif via attraction and repulsion laws . . . 199

A.3 Enzymatic traffic controller . . . 208

A.4 DTRC’s reaction network . . . 211

A.5 Throughput of the ALOHA protocol . . . 215

A.6 DTRC for Media Accessing: E-MAC . . . 216

A.7 Throughput of the E-MAC protocol . . . 217

A.8 Clustered and inline network topologies. . . 220

A.9 Sensors’ state evolution in several dynamical networks . . . 221

(20)
(21)

3.1 Comparison of M/M/1-modeled and LoMA-served queues . . . 68

3.2 Stationary average features of interacting LoMA-served queues 69 3.3 Stationary average features of the Enzymatic controller . . . . 77

3.4 Stationary average features of a chain of Enzymatic controllers 78 3.5 Stationary average features when merging Enzymatic flows . . 79

3.6 Stationary average features of the DTRC . . . 93

3.7 DTRC: parametrization . . . 97

4.1 Convergence times in different networks . . . 131

4.2 Dynamics of sensed data (input) in simulations . . . 132

4.3 Dynamics of sensed data (input) in the real-world experiment . 146 A.1 DTRC: class-differentiation experiment . . . 219

(22)
(23)

1 Next Reaction Method published by Gibson & Bruck . . . 24 2 Reaction algorithm for Chemistry-inspired communications . . 53

(24)
(25)

2MA two moment approximation

ACK acknowledgment

AIMD additive increase multiplicative decrease

ANN artificial neural network

AQM active queue management

ARP address resolution protocol

ASIC application-specific integrated circuit

AWGN additive white Gaussian noise

BDP bandwidth-delay product

BIBO bounded-input bounded-output

BIC binary increase congestion

BpMol bytes per molecule

BR broadcast gossip algorithm

CDF cumulative distribution function

CLE chemical Langevin equation

CME chemical master equation

CDN content delivery networks

CH chemical consensus algorithm

CLB configurable logic blocks

CoDel controlled delay

CW continuous wave

CSP content service provider

CPLD complex programmable logic devices

CPU central processing unit

DCCP datagram congestion control protocol

DCTCP data center TCP

CSMA carrier sense multiple access

DRAM dynamic RAM

DRED dynamic RED

DRR deficit round robin

DSACK duplicate selective ACK

(26)

DSL digital subscriber line

DTRC distributed traffic rate controller

ECN explicit congestion notification

EM electromagnetic

EMC EM compatibility

EMI EM interference

FCFS first come first served

FF flip-flop

FPGA field-programmable gate array

FPS flow proportional sharing

FQ fair queueing

GPS generalized processor sharing

GRED gentle RED

HDL hardware description language

HS-TCP high speed TCP

HULL high-bandwidth ultra-low latency architecture IEEE institute of electrical and electronics engineers i.i.d. independent and identically distributed

IP internet protocol suite

IP intellectual property cores

ISE integrated software environment

ISM industrial, scientific and medical radio bands

LoMA law of mass action

LNA linear noise approximation

LSB least significant bit

LTI linear time-invariant

LUT look-up table

MAC media access control

MCA metabolic control analysis

MSB most significant bit

MSE mean squared error

NIC network interface controller

NMSE normalized mean squared error

PCI peripheral component interconnect

PDF probability density function

PIE proportional integral controller enhanced

OSI open systems interconnection

ODE ordinary differential equation

QoS quality of service

R&D research and development

(27)

RAM random-access memory

RCP rate control protocol

RED random early detection

RN randomized gossip algorithm

ROM read-only memory

RR round robin

RR-TCP reordering-robust TCP

RTL register transfer level

RTO retransmission timeout

RTT round trip time

SACK selective ACK

SCTP the stream control transmission protocol

SFED selective fair early detection

SFQ stochastic fairness queueing

SHRED short-lived flow friendly RED

SNR signal-to-noise ratio

SRAM static RAM

SRED stabilized RED

TCP transmission control protocol

TB token bucket

TF transfer function

TM traffic management

UART universal asynchronous receiver/transmitter

UDP user datagram protocol

USB universal serial bus

UWB ultra-wide band

VHDL VHSIC HDL

VHSIC Very High Speed Integrated Circuit

WFQ weighted FQ

WLAN wireless local area network

WSN wireless sensor network

WRR weighted round robin

(28)
(29)

Chemistry-related symbols

artificial chemistry AC

distributed artificial chemistry DAC

reaction algorithm A

reaction set R

species set S

local species set at nodei Si

species set at nodeicomprehensive of species at neighbors Mi reaction coefficient (rate constant) of reactionr kr

reaction coefficient (rate constant) vector k

molecular concentration of speciess cs

steady state of speciess cs

molecular concentration vector c

propensity of reactionr ar

reaction propensity vector a

rate of reactionr vr

reaction rate vector v

stoichiometric matrix Ξ

stoichiometric matrix elements Ξs,r

stoichiometric reactant coefficient of speciessand reactionr αs,r

stoichiometric product coefficient ofsand reactionr βs,r

order of reactionr O(r)

chemical system’s state (vector of the amount of molecules) n stochastic process related to the chemical system’s state N(t)

chemical system’s state change vector x

deficiency value of a reaction network ℘

set of chemical complexes C

linkage class `

volume of the vessel Ω

(30)

Communication-networking symbols

communication network graph G

set of communication network edges E

set of communication network vertexes V

ithcommunication network vertex (network node) νi

communication network adjacency matrix ∆

(average) arrival or generation rate λ

sending rate vout

rate limit vmax

expected waiting time (delay) d

capacity of a media access system R

average scheduling process of MAC algorithms g capacity-normalized average scheduling process G

throughput of MAC algorithms µ

Transient (sensitivity) analysis symbols

Sensitivity function ε(t)

Dirac’s delta function δ(t)

transfer function (TF) matrix in Laplace domain H(s) transfer function (TF) in Laplace domain H(s) Laplace transform of functionf(t) L{f(t)} inverse Laplace transform of functionF(s) L1{F(s)}

state matrix of an LTI system A

input matrix of an LTI system B

output matrix of an LTI system C

feedforward matrix of an LTI system D

identity matrix I

Jacobian matrix J

Laplacian matrix L

State vector c

Parameter vector p

Input vector u

Perturbation vector x

Output vector y

(31)

Set operator

subset ⊆

strict subset ⊂

superset ⊇

strict superset ⊃

union ∪

element of ∈

exists ∃

for all ∀

size of setA |A|

Consensus-related symbols

set of neighboring nodes of nodeνi Ni

measured quantity at nodeνi zi

zi-difference between consecutive sampling δz,i

design parameter related to the estimation of neighborsνi α design parameter related to the self-stabilization mechanism β

local sensor’s state S

Other symbols and operators

uniform distribution U[a, b]

normal distribution N[η, σ]

exponential distribution exp[η]

mean of a random variablev ηv

standard deviation of a random variablev σv

expected value of random variablex E{x}

probability P

rank of matrixX rank(X)

minimum between two valuesxand y min(x, y)

proportional to ∝

relation |

number of #

(32)
(33)

Introduction

“Science is what you know. Philosophy is what you don’t know.”

Bertrand Russell

T

his thesispromotes the adoption of an unconventional approach for en- gineering communication and networking systems, which we believe can contribute to opening new directions in the research on this wide topic. We de- viate from traditional techniques to venture on a tour into Physical Chemistry in search of breakthroughs on the design and the analysis of communication and networking systems.

1.1 Context and motivations

Predicting and controlling the dynamics of communication and networking systems are difficult but important challenges in the engineering process. While in the early days of communication networks the researchers’ attention was on merely functional aspects, in the last three decades, the focus has shifted towards mastering system dynamics and designing stable solutions. The design process has thus been enriched by theoretical studies that care about predicting possible system’s behaviors (trajectories) induced by the adopted algorithms and protocols.

In the past, researchers and engineers often mastered a problem by decompo- sition – they broke a problem and its solution into parts, and analyzed and implemented them by further iterations of decomposition. They cared about the algorithmic functionality but rarely about analyzability. Such a modular (layered) controllable environment was easy to maintain but difficult to opti- mize (cross-layer optimization). Also, it made interactions among the entities that constitute the system, or between the system and the environment, hardly predictable and controllable. As a result, algorithms and protocols, which worked well under nominal conditions, produced instead behaviors not fully

(34)

understood and exhibited shortcomings in evolving scenarios and unexpected conditions.

Today, the design of communication and networking protocols follows different approaches that are, more or less, empirical, rigorous/formal, or mimicking natural phenomena.

Many protocols currently in use represent mere adaptations of former solutions

Empirical

design to newly faced problems, e.g. the progression of congestion-avoidance solutions in the Internet. Researchers and engineers have often patched and extended existing algorithms according to empirically-gained insights and without a theo- retical ground truth. With the rapid evolution of communication environments and infrastructures, these solutions often deal with conditions that are different from those they have been engineered for. As a result, they turn out to barely work and exhibit incomprehensible behavior.

Engineers have proposed to use analytical tools such as control theory to

Analysis-based

design understand critical aspects of algorithms and calibrate/configure them ac- cordingly. The use of control theory has been further advocated in early stages of the design process to plan corrective actions that keep the system stable. A central challenge in this approach is deriving a (fluid-)model that approximates sufficiently well the algorithms dynamics and then reducing it to an analytically tractable system. Another problem not easy to be tackled with control-theoretical tools is the need for autonomic (self-regulating) systems – systems must be able to automate their management and continuously self- optimize their behavior in order to accommodate to the continuous evolution of the operating environment. This is a feature that seems conflicting with the need for dynamics controllability.

Looking for self-* properties of systems, most recently, researchers resort to

Nature- inspired design

bottom-up (nature-inspired) design approaches. Nature-inspired algorithms are defined by simple (microscopic) interaction rules from which the behavior and functionality of the algorithm itself (naturally) emerges at the macroscopic level. Most of the time, these (distributed) algorithms tend to exhibit, and induce in the systems where they are implemented, stable dynamics that are easily predictable (at least in average terms); nature-inspired systems tend to be more robust against perturbations and to changes of nominal conditions.

Aspiring to develop systems as Mother Nature does, proposed communication solutions use specific models describing processes and mechanisms in living organisms. To this end, researchers have to properly engineer the (microscopic) implementation details that correctly embody the mimicked model, and that let (macroscopic) functional requirements emerge from interactions within the system and between the system and the environment. This process turns out to be not always simple but mostly, it is not automated and requires different ploys from case to case.

What is missing, and seems to us important for developing future communica- tion networks, is an intuitive design framework that offers analytical tools to

Aim understand, predict, and control network dynamics. We aim at an alternative to the classical finite-state-machine modeling of reactive systems that should

(35)

ease and make almost automated the design of stable interaction-systems;

systems where functionalities are not distinct from the system itself but rather embodied in it and its environment. Communications should be organized in a way to autonomously adapt and evolve according to the evolution of the environment and working conditions.

1.2 Our approach

In this thesis, we propose to approach the design and the analysis of algorithms and protocols for communications and networking by exploiting well-known principles and laws of Chemistry. Specifically, we model interactions among nodes in a communication network (e.g., computers, routers, single queues in a packet-switched network such as the Internet, but also sensors in a wireless network) as chemical reactions, and we metaphorically associate information (e.g., data packets, radio frequency pulses) to chemical molecules. Practically,

Use of chemical laws and principles

we implement in each node of the network a so-calledartificial chemistry[71], a man-made system that “behaves similarly” to a chemical system and has some constituent features in common with actual chemical reaction networks. The implemented artificial chemistry constitutes an underlying dynamical system that governs the behavior of the network’s node – the artificial chemistry shapes the node’s response to external events (e.g., packet arrival, radio frequency pulse reception, packet loss detection), orchestrates internal computations (e.g., computation of the next packet dequeueing time, reduction of the transmission rate), and triggers its actions (e.g., packet drop, transmission of radio frequency pulses, packet dequeueing). Chemical reactions occur both within the network node (this is how the state of the node evolves in response to external events and internal updates), and among spatially distributed entities, in the form of information exchanges. From this perspective, Artificial Chemistry can be used to model and performdistributed computations andprocessing tasks.

With the Chemistry-inspired approach, the design of algorithms and protocols for communication networks becomes “drawing” an opportune reaction net- work. Once the reaction network that performs the desired task is designed, it can be compiled to a program that “executes” chemical reactions on-line.

At this micro-level, each event in the communication network contributes to a state change of the chemical reaction network (the dynamical system governing the behavior of the network’s node). The state of the node evolves according to the designed reaction network and to well-defined timings, such that the expected system trajectory emerges at the macro-level.

We focus on the dynamical aspect and thus refer specifically to the branch of

Focus on network dynamics

Chemistry that studies dynamics of chemical reaction systems, i.e. Physical Chemistry. We import into communication network engineering laws and prin- ciples that define chemical kinetics. This allows enforcing a strict relationship between the performed functionality and the exhibited dynamics of Chemistry- inspired mechanisms.

(36)

Bothanalysisanddesign of algorithms/protocols for communication networks can benefit from the Chemistry-inspired approach – researchers can take ad-

Benefits to networking and communication systems...

vantage of the chemical theory to study traditional problems (e.g., consensus problem in wireless sensor networks [180]) or solve current open issues (e.g., emergent control to achieve a collective goal [135]). Two major improvements

..analysis

characterize the analysis process: (i) In the Chemistry-inspired engineering framework, the fluid model of the system can be generated automatically from the execution model (automaton) of the algorithm/protocol. (ii) The underly- ing chemical metaphor enables the direct use of new (in the field of communi- cations and networking) analytical tools (e.g., steady-state analysis, sensitivity analysis, Chemical-Organization theorems) to study equilibrium points, the dynamical behavior, the sensitivity, and the stability of the developed system.

Two major improvements also characterize the design process: (i) Designers

..design

can easily import chemical patterns, which are known to embody vital regula- tory mechanisms in living complex systems, to perform traditional tasks in a stable, robust, and self-regulatory way (e.g., adopting the chemical Enzymatic model to control the traffic in the Internet). (ii) Thanks to the applied chem- ical laws, Chemistry-inspired systems tend to exhibit smooth transitions and leverage stable attractors. That is, an intrinsic feature of Chemistry-inspired systems is the propensity to achieve equilibrium states and be robust against perturbations.

1.3 Contributions of the thesis

We identify the dynamical aspect as the main benefit of adopting the chemical metaphor in communication and networking engineering, and focus on pre- dicting and controlling dynamics of communication networks by applying rules and principles of Physical Chemistry. This approach is shown to improve the analysis and the design of communication and networking protocols and to originate deployable solutions.

The specific contributions of this thesis are as follows:

• We broaden part of the ideas published in [163]. We do not use the chemical metaphor only to model some communication aspects of com- puter networks. Rather, we design andimplement mechanisms forcom- munication and networking systems, which can be actually deployed in today’s infrastructures and do not rely on special (chemical) packets nor require the hypothetical replacement of existing infrastructures’ layers and elements.

• We extend Artificial Chemistry by relaxing the requirements deriving from the will to reproduce faithfully phenomena observed in real Chem- istry. This enhances both functionality and analyzability of the designed mechanism, in the communication and networking context.

(37)

• We show that applying laws and principles of (artificial) Physical Chem- istry to the design of communication algorithms is not a mere intellectual exercise – we implement Chemistry-inspired algorithms that improve state-of-the-art solutions in terms of stability and predictability.

• We derive a class of rate controllers that can be easily parameterized, ex- tended, and customized, for various purposes and in different operational environments.

• We analyze and implement a Chemistry-inspired solution for distributed computing in wireless sensor networks.

• We give evidence that Chemistry-inspired mechanisms can actually be de- ployed nowadays – we provide promising results from experiments where artificial chemistries are implemented at kernel and user space of com- puters, on embedded microprocessors, and on hardware.

• We develop a high-level abstraction for designing hardware control mod- ules, on Field-Programmable Gate Arrays (FPGA) technology.

1.4 Thesis outline

The thesis is structured as follows: We first introduce concepts, formal def- initions, laws, and analytical tools related to Artificial Chemistry, and start explaining the chemical metaphor for distributed computations and information exchanges (Chapter 2). We then take advantage of the introduced theory to analyze and design traffic shaping solutions for packet-switched networks, and specifically derive a class of distributed traffic rate controllers (Chapter 3). We adopt the Chemistry-inspired engineering approach to define a set of interaction rules that allow achieving distributively consensus in wireless sensor networks, and derive from them a simple communication protocol that lets nodes ex- change their data in an asynchronous admission-free manner, with no need for symbolically encoded information and for packet exchanges (Chapter 4).

We show how to guarantee high-speed performances of Chemistry-inspired algorithms and build them in hardware, and at the same time, we introduce a user-friendly high-level abstraction for the design of hardware controllers (Chapter 5). We conclude by summarizing the main features of Chemistry- inspired systems and our contributions in the context of communications and networking, and discussing possible future research directions (Chapter 6).

All chapters are both theoretical and practical, with aspects concerning the analysis and the background theory as well as details related to implementa- tions and experimental evaluations. After all, our ultimate belief is thatmod- eling, analysis, design, andimplementation of communication and networking solutions should be one and the same thing.

(38)

This thesis has a “self-similar” structure – it has approximatively the same structure of its chapters (i.e., introduction, main body, conclusion), and chap- ters’ sections are in line with this writing scheme (although not explicitly structured in this way). Each chapter treats different topics and different contexts. For this reason, all chapters start with a generic overview on the covered topic, which includes a thorough discussion of related works and on our specific contributions. All chapters end with a discussion of developed insights/open issues and a short summary that recalls the milestones of the treated argument. TheIntroductionand theConclusion(chapters1and6) are exceptions to these general rules.

(39)

Artificial Chemistry for

Networking and Communications

“Choosing which aspects of the system should be modeled and which aspects can be ignored is an art rather than science.”

Srinivasan Keshav

T

his chaptergives the reader all tools to understand the work presented in this thesis. We provide an introduction to Artificial Chemistry and start clarifying how one can look at communications and distributed computations from a chemical perspective. We identify the dynamical aspect as the main benefit of importing the chemical theory and using it in communication engi- neering. For this reason, we focus on analytical tools and theories concerning chemical kinetics, likely unfamiliar to most computer scientists and communica- tion engineers. For the sake of clarity, we support the introduced concepts with toy examples, then generalized and elaborated in the next chapters to support interesting applications in computer networks and communication systems.

This chapter is structured as follows: We first report historical notes in the field of Artificial Chemistry and specify the space and scope of our contribution in Section 2.1. We introduce the basics of Artificial Chemistry inSection 2.2and give formal definitions. We (i) introduce a fundamental law (law of mass action) that describes the emergent macro-behavior of chemical systems, (ii) clarify how to study chemical kinetics on the micro-level, and (iii) illustrate an efficient way to reproduce chemical dynamics on traditional computers. Then, we present in Section 2.3 all important analytical tools that we will use in the next chapters to study the equilibria of our Chemistry-inspired algorithms, their dynamical behavior, and if and how they converge. In Section 2.4, we show how to parametrize and extend Artificial Chemistry to realize Chemistry- inspired systems for communication and networking, abstracting away from requirements of actual Physics. Finally inSection 2.5, we point at some issues that possibly arise during the engineering phase, and we hint at general design aspects to overcome these issues.

(40)

2.1 Introduction

Artificial Chemistry (AC) represents a tool for modeling different types of natu- ral systems and investigating their (possibly complex) dynamics. In general, the AC-approach is based on a chemical metaphor, with molecules that collide and react according to certain rules (reactions). As we see later in detail,ACis used to study the origin, the evolution, and the maintenance of organizations, as well as a method to find solutions to optimization problems. Another interesting application ofACis to process information and perform computations by taking advantage of the computational properties of chemical systems. This can be done by using real molecules and chemical reaction systems, or rather can be done on traditional computers and machines by usingACas a design paradigm for new software and hardware architectures.

In the following, we give some historical notes onACs and review a few major works in this context. We focus mainly on the works that propose ACs as information processing systems, and that deal with Chemistry as a mere design paradigm for communication and networking solutions.

2.1.1 Related works

Research in the context of AChas been, and still is, characterized by a broad application spectrum. Mainly, it has been applied to modeling, information processing, and optimization. For a compact but complete review on the history and works in the context ofACs, refer to [71].

ACs have been used as a modeling system in different domains, such as bio- logical, evolutionary, social, and parallel-processing systems. Researchers have mainly aimed at understanding the “logic” of certain natural phenomena, such as examining the abstract problem of the emergence and organization inlife.

For example, in the fifties, Turing introduced an abstract chemical system2.1 to show how spatial patterns can be generated by simple chemical processes (e.g., he explained how “destabilization through diffusion” mechanism moti- vates “symmetry breaking and pattern formation” phenomena) [233]. Another famous example is the Algorithmic Chemistry “AlChemy”– refer to [90] and [91]

for further details – that showed how self-organizing sets (organizations2.2) naturally arise in a system of interacting elements.

Artificial chemical systems can also be seen as a generalization of many evolu- tionary algorithms. The reason lies in the ability ofACs to create evolutionary behavior (or self-evolution [69]). For example in [134], Koza introduced self- replicating computer programs that were self-improving and evolving. The in-

2.1Touring’s model was made of a few chemical species interacting according to a couple of reaction rules, and had the structure of a conventional chemical reaction model.

2.2An organization is a set of elements such that each element can be generated by the conjunct action of the others, and such that given any two elements in the system, their interaction will always generate only elements of the set.

(41)

troduced environment can be regarded as anACwhere molecules are computer programs and reactions take place while programs are executed. By exploiting the self-evolutionary feature, researchers have proposed ACs to find solutions to “difficult”, mostly combinatorial problems. As a consequence, many AC- based search and optimization algorithms have been introduced, such as the catalytic search to solve simple problems and find approximations for complex ones [258].

Most chemical processes in nature can be interpreted as processing information and performing computations. Every living entity can formally be seen as

ACs as...

an information processing system where the basic mechanism of information processing is Chemistry – i.e., an information processing system generates an

...information processing systems

output (in general, a certain behavior) as a result of processing the input

...distributed, adaptive computing systems

(the current internal state and the environmental inflow). Many works have exploitedACs both for “real chemical computing”, by the use of real molecules, and for “artificial chemical computing”, where the chemical metaphor is ap- plied as a design paradigm for new hardware and software architectures. For example, artificial chemical systems have been extensively used for control tasks in robotics – e.g., hormone systems have been used in [40] to achieve asynchronous information flow and coherent behavior in a distributed parallel control architecture for a humanoid robot torso; excitable lattices in [3] and simplified enzyme-substrate kinetics in [268] were used to control real mobile robots. Whereas in computer architectures, a relevant example of applying

γ-calculus

a chemical paradigm to perform distributed computations dates back to the eighties when Banˆatreet al. in [27] envisioned a highly abstract coordination model that aimed at autonomous, distributed, and dynamically adapting pro- gramming workflows. Their abstract rewriting model referred to the following chemical metaphor: A chemical reaction model describes computation in terms of chemical reactions; data (γ-abstractions) is represented by molecules (γ- expressions) that remain in the multiset at the end of the program; a set of “reaction” rules is given to combine elements in the multiset and produce new elements. The execution of a γ-program can be seen as the evolution of a solution of molecules, which react until the solution becomes inert. The main feature ofγ-programs is that they involve implicit parallelism – data is processed in parallel and thus computation should be easily performed on one as well as on multiple processors. However, the gap between aγ-program and any real computer on which it is assumed to run is large and thus, the design of reasonably efficient implementations of the model is a challenging task.

Since the introduction ofγ-calculus, later extended in [26], many other chemical formalisms have been proposed. The Cham [34] investigated more theoretical aspects and added new features to the chemical programming paradigm by considering solutions of multisets and allowing for the definition of membrane- like encapsulation of sub-solutions. Higher-order multiset rewriting [141] en- abled any configuration, made of multisets and a set of rewriting rules, to handle other configurations through their program. The hmm-calculus [57]

attempted to generalize the γ-model by introducing “one-shot and first-class

(42)

citizen” reactions. Finally, the P-system [193] interpreted as computations the processes happening in the compartmental structure of a living cell and based on this perspective provided an alternative and complementary approach to classical methods such as the ones that are based upon Ordinary Differential Equations (ODEs). All these chemical formalisms were built on the same basic paradigm but had different properties and different expressive powers as studied and summarized in [25].

A more recent proposal, which indirectly has inspired also the work presented in this thesis, is the work by Tschudin [230]; he proposed a Chemistry-inspired rewriting system that, by combining the γ-formalism and the tag-system in- troduced by Post in [197], is able to efficiently process headers of data packets.

Originally, the Fraglet-programming language was defined as “a molecular Biology-inspired execution model for computer communications”, as Fraglets (small elements that represent fragments of a distributed computation, either code or data) irreversibly interact with other Fraglets according to a few simple rules (string substitution patterns), similarly to Chemistry where molecules react with each other according to reaction rules.

The chemical metaphor has been strengthened by Meyeret al. in [166], where the Fraglet system has been extended by introducing the chemicalLaw of Mass Action (LoMA) as a scheduling policy for part of the string rewriting rules.

This has brought chemical kinetics into protocol programming languages and,

Chemical Networking Protocols...

...kinetics into protocol programming languages

de-facto represents a big step toward a generic approach to characterize the dynamics of computer networks with chemical laws and principles. Authors of [166] made explicit how Fraglet tag-matching systems can be mapped to an AC and can be used to design network protocols. They made use of the LoMA-extended Fraglet system to develop a networking protocol for load balancing, where the desired result emerges from the combination of distributed reactions, thanks to the applied laws and kinetics principles. Further, they

...rate-encoded information

exploited chemical kinetics as a tool to create computer network functionalities, which rely onrate-encoded information rather than the symbolic information, traditionally used in networking protocols.

2.1.2 Space and scope of our contribution

Our work is in line with those approaches that exploitACs in the context of information processing, and with those solutions that import laws, principles, and theories form Chemistry in order to achieve distributed adaptive computing systems.

For example, similarly to what Banˆatre et al. proposed in [27] or to the P- system [193] and other chemical formalisms such as [34,57,141], we adopt the chemical metaphor to solve parallel concurrent computations. And sim- ilarly to [28,64,230], we take advantage of the chemical metaphor in order to design algorithms for communication- and networking-related applications.

We focus on the dynamics and thus refer to specific principles and laws of Physical Chemistry. Such as in [157,163], we employ the chemical metaphor to

(43)

build information processing systems where computation emerges out of “an orchestrated interplay of many decentralized relatively simple components”.

Specifically, this chapter extends and broadens the scope of some ideas that Meyeret al.proposed [163,165,166]: the use of the chemical metaphor to model self-healing protocols for computer networks, whose dynamics are inspired by chemical reaction networks – Chemical Networking Protocols (CNPs). Follow- ing the CNP approach, we let algorithms “be driven” by underlying reaction models. The direct coupling between quantity and rate, which is enforced by the reaction law (i.e., law of mass action), permits to automatically build a deterministic ODE model that describes the algorithm’s dynamics. By allowing deviations from what happens in real chemistry and by sticking to the only constraint of implementing a mass-action scheduler, we enhance controllability and analyzability of networking and communication systems. We make use of the chemical metaphor to enable working withrate-encoded information rather than, as traditionally, with explicit numeric values. We recognize the dynamical

Focus on dynamics

aspect as the main benefit of importing Chemistry into information processing and communication engineering, and thus focus on the latter aspect only. We do not treat active (code-oriented) networking, and self-organizational aspects of “chemical software code”.

In general, in the context of protocol design, the idea of mimicking phenomena and mechanisms observed in nature is not new. The literature reports many trials (successful or not) that exploit biological models (e.g., swarm-based systems, firstly introduced in [212]), physical fields (e.g., EM, temperature, and other generic artificial force fields such as potentials in [31]) and bio-chemical models (e.g., reaction diffusion for epidemic routing in [131]). However, the majority of research takes care of the spatial distribution/diffusion of informa- tion (e.g., routing) and often overlooks the dynamics. Additionally, solutions usually rely on importing specific Nature-inspired models to fulfill specific tasks.

This profoundly differs from our new paradigm for the design and analysis of algorithms which (i) focuses on achieving stable and predictable dynamics, without directly caring about the spatial-aspect of the distribution of contents (information), (ii) adopts a whole theory (chemical theory), and (iii) is not confined to a specific application but rather has a wide utilization spectrum.

2.2 Basics of Artificial Chemistry

AC can be seen as a subfield of Artificial Life research that, by abstracting from natural molecular processes, tries to investigate the behavior of complex systems. In these systems, global properties emerge naturally from the local interactions between their subsystems. In this section, we start to make clear how to take advantage of this peculiarity in networking and communication systems.

After introducing colloquially the chemical metaphor inSection 2.2.1, we give its formal definition inSection 2.2.2. InSection 2.2.3, we introduce the law of

(44)

mass action which describes macroscopically how reactions occur in ACs and which represents the rule we, indirectly or directly, apply to schedule events in networking and communication systems. In Section 2.2.4, we look at the micro kinetics of actual chemical systems in order to grasp the reason behind implementation choices of existingACs. Finally, we show inSection 2.2.5how chemical kinetics can be reproduced on traditional CPUs.

2.2.1 The chemical metaphor for networking

Generally, we can look at networking protocols and the way how messages are exchanged from both a microscopic and a macroscopic level. At the microscopic level, a protocol implementation cares about the individual details: processing

Microscopic

level of data, the actions triggered when information (e.g., a packet) is received, the scheduling of consequent actions, and so forth. Protocols are traditionally implemented as state-machines where an asynchronous event (e.g., a packet reception) triggers an action and a state transition. Instead at the macroscopic level, individual events are not important, neither observable. Rather, the

Macroscopic

level macroscopic view deals with flows (e.g. packet streams), and focuses on the large-scale dynamics of protocols.

Surprisingly, we can refer to Chemistry and the related chemical laws and principles to obtain an alternative to design, execute, and analyze algorithms and protocols for networking. Thanks to the Chemistry-inspired framework, the designer does not have to care anymore about the microscopic details of the implementation in order to satisfy requirements at the macroscopic level.

According to the chemical metaphor, we can compare information/messages to molecules and let them “react” with each other akin to molecular reactions.

With this novel framework, the designer can program networking and com- munication algorithms at the macro-level by “drawing” reaction networks. At

A direct micro-macro mapping

the same time, the chemical approach provides an executable model for these reaction networks at the micro level, without the need for “programming”

the emergent algorithm. Once the reaction network that controls the flow is designed, it can be compiled to a program that “executes” chemical reactions on-line and one-by-one. At this micro level, there is a direct mapping between events in the communication network and those in the chemical reaction net- work, such that the expected flow trajectory emerges at the macro level.

This approach can be used to solve concurrent computations and to perform

ACs to...

...solve concurrent computations ...perform simultaneous communica- tions

simultaneous communications in a natural way [68]. Practically, we let a Chemistry-inspired dynamical system govern the behavior of each single entity of the communication system: We associate events in a communication network (e.g., packet arrivals, packet generations, reception of simple RF-pulse and so forth) to the production or destruction of virtual molecules in a chemical dynamical system, which represents a sort of control plane of the protocol’s dynamics (i.e., events in the chemical dynamical system, such as the execution of a specific reaction or the generation of a specific molecule, correspond to specific actions, such as packet transmission, packet dropping, and so forth).

(45)

Molecules react with other molecules and the obtained web of reactions can be used to perform computation. When several network nodes (e.g. hosts in a computer network, or sensors in a wireless sensor network) interact with each other and behave according to the chemical dynamical system, the overall system can be seen as a unique system (reaction network) that performs a distributed computation.

2.2.2 Formal definition

Formally, we can characterize each node (entity) of the communication system according to an Artificial Chemistry. An Artificial Chemistry is univocally defined as a triple

AC .

= (S,R,A) (2.1)

where S = [s1, s2, . . . , s|S|] is the set of molecular species that may appear in

Artificial Chemistry

a certain Chemistry,R= [r1, r2, . . . , r|R|] is the set of reactions that expresses which reactant molecules can collide and which product molecules are generated during this process, and A is the algorithm that defines which and when reactions occur [71]. In this section, we are going to comment on the topology of a reaction network (i.e., we explain the meaning of S and R terms). We leave to the next sections the discussion of its dynamics (i.e., we explain the third elementAnot sooner than Section 2.2.5).

A reaction ruler ∈ Roperates according to a given equation whose general form is as follows:

Reaction equation

r: X

s∈S

αr,ss−→kr X

s∈S

βr,ss (2.2)

where kr is a constant parameter (known as reaction coefficient) that con- tributes to regulating the average rate at which reactionr occurs, αr,s is the number of molecules of speciess consumed by reaction r (known as stoichio- metric reactant coefficient), and βr,s is the number of molecules of species s produced by ther-reaction (known as the stoichiometric product coefficient).

Basically, the above equation states that ther-reaction replaces an amountαr,s

of reactant moleculess (left-hand side) to produce an amountβr,s of product moleculess(right-hand side), with an average rate controlled by coefficientkr. The number of reactant speciesO(r) is called the order of the reaction.

For example, a simple unimolecular (order one) reaction (illustrated in Fig- ure 2.1(a))

r: 1·S−→ ∅1

describes the process that consumes one molecule of species S each time reac- tionr occurs. We neglect for the moment the role of the reaction coefficient, set to one in the example. Of course, the reaction can happen only when at least one S-molecule is present in the reactant vessel.2.3 When this condition is

2.3We call “reaction vessel” an instance of anACas defined in (2.1). A vessel thus contains a multiset of molecules; each molecule in it is an instance of one of the molecular speciess∈ S.

(46)

vout S

(a) Chemical model

vout

S

(b) Corresponding queuing network Figure 2.1: A unimolecular reaction “extracts” a molecule of chemical species S like a server extracts a packet from a traditional queue.

satisfied the reaction is said to be ”active”, otherwise it is called ”inert”. To call back concepts of communication system engineering (refer to Figure 2.1(b)), we can see the molecular species S as a traditional queue that stores packets.

In this context, the execution of the simple reactionr: S→ ∅ corresponds to the action of dequeueing a packet.

As a next step, we introduce the concept of Distributed Artificial Chemistry (DAC) by extending the formal definition of anACto a communication network whose interaction topology is represented by a directed graph (“digraph”)

Interaction graph of communication networks

G= (V,E). (2.3)

The set V ={ν1, ν2, . . . , ν|V|} contains all graph vertexes (i.e., computers in a computer network, sensors in a wireless sensor network, and so forth) whereas the setE ⊆ V ×V contains the edges, with the convention that (νi, νj)∈ Eif and only if there exists a connection from nodeνi to nodeνj (i.e., the information flows fromνitoνj). The structure of a digraph can be described by the|V|×|V|

adjacency matrix∆whose generic entry [∆]i,jis equal to 1 if (νi, νj)∈ Eand 0 otherwise.

In a DAC, molecules can be exchanged over the network links by executing reaction rules that generate remote actions. In particular, at each nodeνi∈ V, a reaction algorithm A (the same for all nodes) updates a local multiset of molecules according to a set of local reaction rules. That is, each node νi Distributed

Artificial Chemistry

defines a localDAC as the triplet DAC .

= (Mi,Ri,A) (2.4)

in whichMi =Si∪ Si(j). The set Si defines the species of all molecules that can possibly be found in the local multiset, whereasSi(j)⊆ ∪j∈NiSj is the set of species that can possibly be found in its neighbors. Each node also defines its own set of reaction rulesRi where a reactionri∈ Ri is specified as follows:

Interactions among spatially distributed nodes

ri : X

s∈Si

ari,sskri X

s∈Mi

bri,ss.

Note that all reactants are local species only whereas products may also be species located in the neighboring nodes. This is how transmission or exchange

Referenzen

ÄHNLICHE DOKUMENTE

Working Papers are interim reports on work of the International Institute for Applied Systems Analysis and have received only limited review. Views or opinions

Hence, in the worst case, according to our parameters with four branches that might yield the data and a cache hit ratio of 30/50 chunks, the amount of content initiated

o RTCP provides feedback to the all members of the RTP session by a periodic transmission of control packets using the same distribution as data (e.g., multicast). o RTCP

His fi elds of research include the relations between English, French and German literature from the eighteenth to the twentieth century; the history of literary translation

Outlook 83 seems that periodic orbits with “clustered” local stability properties, i.e., those with eigenvalues that are contained in as few small balls as possible in the

Virtual Networking sorgt für die Automatisierung auf genau dieser Geräte-Ebene: Router und andere Endgeräte werden zentral gesteuert, ergänzende Hardware wird in die

This report deals with the following questions: which dynamic models and which advanced methods of identification theory are used or could be used in urban

following node on this route also has an operational route that is not overloaded for passing the data packet on to a third node. 8) Data packets are never routed back over the same