Author :
Ko, Steven Y. ; Gupta, Indranil ; Jo, Yookyung
Abstract :
This paper describes, and evaluates benefits of, a design methodology to translate certain mathematical models into the design of novel, self-adaptive, peer-to-peer (p2p) distributed computing algorithms ("protocols"). This methodology is potentially a good vehicle for translating natural phenomena, representable via mathematical models, into practical p2p protocols. Concretely, our first contribution is a set of techniques to translate certain discrete "sequence equations" rigorously into new p2p protocols called "sequence protocols". Sequence protocols are self-adaptive, scalable, and fault-tolerant, with applicability in p2p settings like grids. A sequence protocol is a set of probabilistic local and message-passing actions for each process. These actions are translated from terms in a set of source sequence equations. Without having each process simulate the source sequence equations, the emergent behavior of a sequence protocol in a p2p system is equivalent to, and predicted by, its source sequence equations. This paper\´s second contribution is a new self-adaptive grid computing protocol called "HoneyAdapt". HoneyAdapt is derived from sequence equations modeling adaptive bee foraging behavior in nature. HoneyAdapt is intended for grid applications that allow grid clients, at run-time, a choice of algorithms for executing chunks of the application\´s dataset. HoneyAdapt tells each grid client how to adaptively select at run-time, for each chunk it receives, a "good" algorithm for computing the chunk - this selection is based on continuous feedback from other clients. We present analysis, large-scale simulation results, and deployment results.
Keywords :
grid computing; mathematics computing; message passing; peer-to-peer computing; HoneyAdapt; discrete sequence equation; distributed computing; grid computing protocol; mathematical model; mathematics-inspired algorithm; message-passing; p2p protocol; self-adaptive peer-to-peer computing; sequence protocol; Algorithm design and analysis; Computational modeling; Design methodology; Distributed computing; Equations; Grid computing; Mathematical model; Peer to peer computing; Protocols; Runtime;