Nondominated k-coteries for multiple mutual exclusion

Nondominated k-coteries for multiple mutual exclusion

ELSEVIER Information Nondominated Processing Letters Information Processing Letters 50 (1994) 247-252 k-coteries for multiple mutual exclusion ...

533KB Sizes 8 Downloads 61 Views

ELSEVIER

Information

Nondominated

Processing

Letters

Information Processing Letters

50 (1994) 247-252

k-coteries for multiple mutual exclusion

Mitchell

L. Neilsen

*3a, Masaaki

Mizuno

**,b

’ Computer Science Department, Oklahoma State UniL’ersity,Stillwater, OK 74078, USA h Department of Computer and Information Science, Kansas State Unirlersiiy, Manhattan, KS 66506, USA Communicated

by F.B. Schneider

received

15 October

1993; revised 31 January

1994)

Abstract Quorum-based mutual exclusion algorithms are resilient to node and communication line failures. enter its critical section, a node must obtain permission from a quorum of nodes. A collection of quorums coterie. The most resilient coteries are called nondominated coteries. Recently, k-coteries were proposed in mutual exclusion algorithms that allow up to k entries to a critical section. In this paper, we introduce of nondominated k-coteries. Then, we show that the most resilient k-coteries arc nondominated. Finally, several simple methods to construct nondominated k-coteries. These methods include weighted composition. Key words: Coterie; Distributed

computing;

Mutual exclusion; Quorum; Fault-tolerance

1. Introduction In distributed systems, quorum-based protocols are an important class of protocols. They gracefully tolerate node and communication line failures, and can be used in a large number of applications, including mutual exclusion [l]. The classical example of a quorum-based mutual exclusion algorithm is Maekawa’s algorithm [7]. In order to enter its critical section, a node must obtain permission from at least a quorum of nodes. Since any two quorums intersect and each

* This work was supported in part by the National Foundation under Grant CCR-9201645. ** Corresponding author. 0020-0190/94/$07.00 0 1994 Elsevier SSDI 0020-0190(94)00039-2

Science

In order to is called a to be used the notion we present voting and

Science

node can only grant permission to at most one node at a time, mutual exclusion is guaranteed. A collection of quorums is called a coterie 131. The most resilient coteries are called nondominated coteries. A more general class of distributed mutual exclusion algorithms allow up to k nodes to simultaneously enter their critical sections [2,6,9, 10,111. We refer to these algorithms as multiple mutual exclusion algorithms. For example, suppose that there are k identical resources that are shared by nodes in a distributed system. Each resource may only be accessed by one node at a time, and each node may access at most one resource at a time. A multiple mutual exclusion algorithm can be used to control access to the resources.

B.V. All rights reserved

248

M. L. Neilsen, M. Mizuno /Information

Recently, Fujita, Yamashita, and Ae proposed a quorum-based multiple mutual exclusion algorithm based on k-coteries [2,6]. Informally, a quorum is a collection of nodes, and a k-coterie is a collection of quorums that contains k pairwise disjoint quorums, but no more [2,5]. In their algorithm, a node must receive permission from a quorum of nodes before accessing a resource. Since a k-coterie contains at most k pairwise disjoint quorums, at most k nodes will be able to simultaneously access the resources. Another approach is to simply try to reduce the multiple mutual exclusion problem to the mutual exclusion problem. For example, an independent mutual exclusion algorithm could be used to control access to each resource. A node would select a particular resource to access and use the algorithm for that resource. However, by using this approach, a node could be blocked for a long time waiting on a resource that has been requested by several other nodes, even though other resources are immediately available. Alternatively, a mutual exclusion algorithm could be modified to allow each node to grant permission to at most k nodes at a time. However, this approach may violate the safety property; that is, more than k nodes may be allowed access to the resources. Thus, it is more appropriate to use k-coteries instead of coteries for multiple mutual exclusion. In this paper, we introduce the notion of nondominated k-coteries. Then, we show that the most resilient k-coteries are nondominated. As with coteries, nondominated k-coteries provide a higher level of availability than the k-coteries which they dominate. As a final step, we present several simple methods to construct nondominated k-coteries. One method is based on weighted voting [4], and the other one is based on composition. The organization of this paper is as follows: Definitions are presented in Section 2. In particular, nondominated k-coteries are formally defined and properties satisfied by nondominated k-coteries are presented. Methods to construct nondominated k-coteries are presented in Section 3.

Processing Letters 50 (I 994) 247-252

2. Definitions

and properties

In this section, we briefly review previous work, including definitions of coteries [3] and k-coteries [2,5]. Then, we formally define nondominated k-coteries. 2. I. Coteries Let U denote a non-empty set of nodes. The term node refers to a process in a distributed system. The nodes are fully connected. A non-empty collection of sets, Q is a coterie under U if (1) (VG E Q> [G # 6 and G L Ul, (2) (Minima&y): (VG,H E Q) [G QLHI, (3) (Intersection property): (VG,H E Q> [G n H f til. For example, Q = {{a, b), (b, c)) is a coterie under U = (a, b, c, d). The sets G E Q are called quorums. Let Q, and Q, be coteries under U. Then, Q, dominates Q2 if (1) Q, + Qa (2) (VH E Q2> [3G E Q, such that G c HI. A coterie, Q under U, is dominated if there is another coterie under U that dominates Q. If there is no such coterie, then Q is a nondominated coterie. 2.2. k-coteries Independently, there have been definitions proposed for k-coteries. by presenting the more general Huang, Jiang, and Kuo [51.

two different We will start definition by

Definition 1. A non-empty collection of sets, Q, is a k-coterie under U if (1) (VG E Q> [G f fl and G c Ul. (2) (Minima&y): (VG,H E Q> [G c H]. (3) (Zntersection property): There are k pairwise disjoint quorums in Q, but no more than k. For example, Q, = {{a, bj, {c, d), {a, 4) is a 2coterie under U = (a, b, c, d}. The sets G E Q are called quorums. Note that a l-coterie is just a coterie.

M.L. Neilsen, M. M&no /Information

Now, we will present a more restrictive tion by Fujita, Yamashita, and Ae [21.

defini-

Definition 2. A non-empty collection of sets, Q, is a k-coterie under U if it satisfies all three properties in Definition 1, as well as the following property: (4) (Non-intersection property): For any m, such that 1 < m < k - 1, and for any collection of m pairwise disjoint quorums, {G,, . . . , G,,l c Q, there exists a quorum G E Q such that G f’ Gi = fl for all i, 1
under

(I) Q, + Q,, (2) (VH E Q2> [3G E Q, such that G c HI. A k-coterie, Q under U, is dominated if there is another k-coterie under U that dominates Q. If there is no such k-coterie, then Q is a nondominated k-coterie. For example, Q, = {(a>, (b, cl, (b, dl, Ic, 4) is a nondominated 2-coterie under U = (a, b, c, d). Furthermore, Q3 dominates Q,. In summary, Definition 1 is the least restrictive and Definition 3 is the most restrictive. Furthermore, no two definitions are equivalent. 2.3. Properties In this section, we present a simple method to determine if a k-coterie is dominated. Then, we show that nondominated k-coteries are more resilient to failures. Theorem 4. A k-coterie, Q under U, is dominated if and only if there exists a set H c U such that the following properties are satisfied: (1) GPHforallGEQ.

249

Processing Letters 50 (1994) 247-252

(2) For any collection of k pair-wise disjoint quorums (G,, G,, . . . , GJcQ, HnG,d for some 1
Qz SLQ,. (1) Suppose

that Q2 c Q,. Then any set H E Q, - Q2 will satisfy both properties (otherwise Q, would not be a k-coterie). (2) Suppose that Q2 g Q,. Then, there must exist a quorum G, E Q2 and a quorum HE Q, such that H c G,. We claim that such a set H satisfies both properties. (a) Assume that H does not satisfy the first property. Then, G z H for some G E Q,. Since G c H and H c G,, we obtain G c G,. Note that this violates minimality because both G and G, are in Q2. So, we have obtained a contradiction. (b) Assume that H does not satisfy the second property. Then, for some collection of pairwise disjoint sets (G,,...,G,)~Q,, HnG,=@ for each l
Q,

k-coteries be a k-

250

M.L. Neilsen, M. Mizuno /Information

coterie which is dominated by Q,. Then, any quorum in Q2 contains a quorum from Q,. So, if a quorum from Q2 can be formed, a quorum from Q, can also be formed. However, the converse is generally not true. For example, Huang, Jiang, and Kuo construct the following 2-coterie, for N = 6, using cohorts [S]:

Qz= ((1, 21, 11, 3), 12, 3), (1, 4, 5}, (1, 4, 6), 11, 5, 6},

Note that dominated

Q2 is dominated 2-coterie Q,:

by the following

non-

(4, 5) 3 14, 6) 7 {5, 6)). Furthermore, Q, is more resilient to failure. For example, if nodes 1, 2, and 3 all fail, then a quorum cannot be formed in Q2, but a quorum can still be formed in Q,. For this reason, nondominated k-coteries provide a higher level of availability than their dominated counterparts.

k-coteries

In this section, struct nondominated

we present k-coteries.

methods

Then,

Maj,

is a k-coterie

by Definition

[61.

By restricting the allowable values of q and N, we can use the same method to construct nondominated k-coteries. Choose N such that N + 1 = (k + 1)q for some positive integer q. Let Q = Maj,. Then, Q is nondominated k-coterie. For example, if k = 2 and N = 5, we obtain the following nondominated 2-coterie:

129 3) ,...,{4,5)).

6)).

Q, = (11, 21, (1, 3), (2, 3),

3. Constructing

elements. 2

Q= (11, 21, 11, 3), 11, 4), 11, 5),

(2, 4 5), (2, 4, 6), (2, 5, 6), 13, 4, 5) 3 13, 4, 6) 3 (5,5,

Processing Letters 50 (1994) 247-252

to con-

3.1. Weigh ted voting Coteries can be constructed by using weighted voting [4]. Each node is assigned a specific number of votes. A quorum is formed by obtaining at least a majority of votes. In the case of majority consensus, each node is assigned a single vote, and a quorum is formed by obtaining a majority of votes [12]. Recently, Kakugawa, Fujita, Yamashita, and Ae proposed a similar method to construct k-coteries 161. Let 17=(x,, x2 ,..., x,,,) denote a non-empty set of nodes. Set q = [(N + l)/(k + 1)l. Let Maj, = (G c U ) I G I = q); that is, Maj, is the collection of all subsets of U containing exactly q

To prove that Q is nondominated, following theorem.

we need

the

Theorem 5. Given a fixed positive integer k, let u= ix,, x2 ),..) xN} be a set of nodes such that N + 1 = (k + 1)q for some positive integer q. Let Q = {G c U 1 1G 1 = q}. Then, Q is a nondominated k-coterie. Proof. First, we show that Q is a k-coterie under U. Minimality is satisfied because all quorums are the same size. Since N + 1 = (k + l)q, we obtain kq < N < (k + 1)q. So, the intersection and nonintersection properties are also satisfied. Now, we show that Q is nondominated. Assume that Q is dominated. By Theorem 4, there must exist a set H c U such that G g H for all G E Q and for any collection of pairwise disjoint Gk) c Q, H n G, # fl for some quorums {G,,..., 1
M. L. Neilsen, M. Mizuno /Information

constructed by appending k nondominated coteries defined under pairwise disjoint sets. The following theorem presents a more general method. Theorem 6. Giuen a ftied positive integer k > 2, choose positive integers, k, and k,, such that k, + k, = k. Let U, and U, be non-empty sets of nodes such that U, n U, = @. Suppose that Q, is a nondominated k,-coterie under U,, and Q, is a nondominated k,-coterie under U,. Let Q = Q, U Q2 and U = U, U U,. Then, Q is a nondominated k-coterie under U. Proof. First, we show that Q is a k-coterie under U. Let G,, G, E Q. We show that minimality is satisfied. There are two cases to consider: (1) Suppose that G,,G,E Q, or G,,G, E Q2. Then, G, C G, because Q, and Q, satisfy minimality. (2) Suppose that G, E Q, and G, E Q,. Then, G, uG,=@ because U,n U2=@. So, G, CG, and G, C G,. Thus, minimality is satisfied. Next, we show that the intersection property is satisfied. For 1
251

Processing Letters 50 (1994) 247-252

k, pairwise disjoint quorums (G:, . . . , G&l c Q2 such that H, (7 Gj = 6 for 1
obtain

the

Corollary 7. Let U be a set of at least k nodes, and let (U,, U,, . . . , U,,,) be a partition of U into m non-empty sets. Choose some positiue integers, k,, kz,..., k, such that CT= Ikj = k. For 1 < i < m, let Q, be a nondominated k,-coterie under U,. Let Q = Q1 u Q2 u . . . U Q,. Then, Q is a nondominated k-coterie under U. q Since nondominated coteries are the same as nondominated l-coteries, we immediately obtain the following corollary that can be used to construct nondominated k-coteries using nondominated coteries. Corollary 8. Let U be a set of at least k nodes, and let (U,, U,,. .., U,) be a partition of U into k non-empty sets. For 1 < i < k, let Qj be a nondominated coterie under U;. Let Q = Q, U Q, U . . . U Qk. Then, Q is a nondominated k-coterie under U. cl For = ((4, under tively. nated

example, 5), (4, 6}, U, = (1, So, their 2-coterie

Q, = ((1, 3, (1, 3), (2, 3)) and Q2 (5, 6)) are nondominated coteries 2, 3) and U, = (4, 5, 6), respecunion, Q, U Q2, is a nondomiunder U, U U,.

4. Conclusion Quorum-based mutual exclusion algorithms are resilient to node and communication line failures. Recently, k-coteries were proposed to be used in multiple mutual exclusion algorithms that allow up to k entries to a critical section. In this paper, we defined nondominated k-coteries. In general, nondominated k-coteries are more resilient to

252

M.L. N&en,

M. Mizuno /Information

failures and provide a higher level of availability. Then, we presented several simple methods to construct nondominated k-coteries. The first method is based on weighted voting, and the second method is based on composition. Finally, we proved that our methods are correct.

References [ll D. Barbara

and H. Garcia-Molina, Mutual exclusion in partitioned distributed systems, Distributed Comput. 1 (1986) 119-132. PI S. Fujita, M. Yamashita and T. Ae, Distributed k-mutual exclusion problem and k-coteries, in: Proc. 2nd Znternat. Symp. on Algorithms, Lecture Notes in Computer Science 557 (Springer, Berlin, 1991) 22-31. and D. Barbara, How to assign votes in [31 H. Garcia-Molina a distributed system, J. ACM 32 (4) (1985) 841-860. voting for replicated data, in: [41 D.K. Gifford, Weighted Proc. 7th ACM Symp. on Operating Systems Principles (1979) 150-162.

Processing Letters 50 (1994) 247-252 for fault[51 S. Huang, J. Jiang and Y. Kuo, k-coteries tolerant k entries to a critical section, in: Proc. IEEE 13th Internat. Conf on Distributed Computing Systems (1993) 74-81. S. Fujita, M. Yamashita and T. Ae, Avail161 H. Kakugawa, ability of k-coterie, IEEE Trans. Comput. 42 (5) (1993) 553-558. A fi algorithm for mutual exclusion in [71 M. Maekawa, decentralized systems, ACM Trans. Comput. Systems 3 (21(1985) 145-159. k31M.L. Neilsen and M. Mizuno, Coterie join algorithm, IEEE Trans. Parallel Distributed Systems (19921 582-590. algorithm for multiple entries [91 K. Raymond, A distributed to a critical section, Inform. Process. Lett. 30 (1989) 189-193. A distributed solution to the k-out-of-m [lOI M. Raynal, resources allocation problem, in: Proc. Internat. Conf on Computing and Information, 1991. Dll P.K. Srimani and R.L.N. Reddy, Another distributed algorithm for multiple entries to a critical section, Inform. Process. Lett. 41 (1) (1992) 51-57. [121 R.W. Thomas, A majority consensus approach to concurrency control for multiple copy databases, ACM Trans. Database Systems 4 (2) (1979) 180-209.