We propose an algorithm to allocate critical resources (mutual exclusion problem) in a computer network composed of N nodes that communicate by message exchanges. The algorithm uses a logical structure in the form of wraparound two-dimensional array which is imposed on the network. In this algorithm some nodes know the token-holding node and lead critical section requests to the token-holding node directly. Usually, a request is sent vertically down in the array, and eventually sent to the token-holding node with the assistant of an informed-node (common node between the row consisting of the token-holding node and the column consisting of the requester node). Therefore, the nodes invoking the critical section can obtain the token with fewer message exchanges in comparison with more other algorithms. Typically the number of message exchanges is 4√N +1 under light demand and reduces to approximately 2 message exchanges under heavy demand. A correctness proof is provided.
Published in:
Computer Science and Software Engineering (CSSE), 2011 CSI International Symposium on
Date of Conference: 15-16 June 2011