A BINARY FOREST QUORUM STRATEGY FOR K-MUTUAL EXCLUSION IN DISTRIBUTED SYSTEMS
全文
(2) strategies [2, 6, 10, 11, 12, 13, 20], a node should collect enough permissions (votes) to form a quorum for entering the critical section. K-mutual exclusion is guaranteed if we can assure that at most k quorums can be formed at any instance. To make distributed k-mutual exclusion strategies fault-tolerant to node and communication failures, many strategies based on the replica control strategies, for example, coterie, have been proposed. In [11, 20], they extended the majority quorum strategy to k-majority quorum strategy; any permission from n+1 k+1 (= W ) nodes would form a quorum for k-mutual exclusion, when n is the number of nodes in the system. (Note that in the k-majority quorum strategy, the following conditions must hold: k × W ≤ n and (k + 1) × W > n.) In [10], they proposed a cohort quorum for k-mutual exclusion based on a cohort structure, Coh(k, l), which has l pairwise disjoint cohorts with the first cohort having k members and the others having more than (2k − 2) members. In [2], they partition n nodes into k classes with each class using any traditional approach to enforce 1-mutual exclusion. When the traditional approach is the majority quorum strategy, the constructed quorum will be called DIV of majority quorums. To reduce the overhead of achieving k-mutual exclusion while supporting fault tolerance, in this paper, we propose a strategy called binary forest quorums for k-mutual exclusion, which imposes a logical structure on the network. The proposed strategy is based on a logical binary forest structure. The quorum size conn in the best case structed from this strategy is 2lg2 2k n and is ( 2k + 1) in the worst case, where n is the number of nodes in the system. Moreover, this strategy can n be fault-tolerant up to (n − 2klg2 2k ) node failures in n the best case and 2k(lg2 2k − 1) in the worst case. From our performance analysis, we show that the binary forest strategy can provide a higher availability than k-majority, cohorts, and DIV strategies almost all the time. The rest of the paper is organized as follows. Section 2 describes the background in this paper. In Section 3, we give a survey of several non-token-based strategies for k-mutual exclusion. In Sections 4, we present the binary forest quorum. In Section 5, we make a comparison of the binary forest quorum strategy with k-majority, cohorts, and DIV strategies. Finally, Section 6 gives a conclusion.. nodes can simultaneously access their critical sections. Such strategies can be used to coordinate the sharing of a resource that can be allocated to no more than k nodes at a time [2, 10, 11, 20]. Definition 1. A k-coterie C is a family of nonempty subsets of an underlying set U , which is a set containing all system nodes 1, 2, ..., n. Each member Q in C is called a quorum, and the following properties should hold for the quorums [11, 20]. 1. The non-intersection Property. For any h(< k) pairwise disjoint quorums Q1 , ..., Qh in C, there exists one quorum Qh+1 in C such that Q1 , ..., Qh+1 are pairwise disjoint. 2. The intersection Property. There are no m, m > k, pairwise disjoint quorums in C (i.e., there are at most k pairwise disjoint quorums in C). 3. The minimality Property. There are no two quorums Qi and Qj in C such that Qi is a super set of Qj where i = j. By the non-intersection property, if there exists one unoccupied entry of the critical section, then some node that waits for entering the critical section can proceed. The intersection property assures that no more than k nodes can form quorums simultaneously, so no more then k nodes can access the critical section at the same time. Again, the minimality property for the k-coterie is for the enhancement of efficiency. Example 1: {{1, 2}, {3, 4}, {1, 3}, {2, 4}} is a 2coterie under U = {1, 2, 3, 4}.. 3. A SURVEY In this section, we give a survey of several strategies for k-mutual exclusion, including k-majority [11, 20], cohorts [10], and DIV [2] quorums.. 3.1 K-Majority Quorums Suppose there are n nodes in the system. Q is said to be k-majority quorum for k-mutual exclusion if Q contain at least n+1 k+1 (= W ) nodes, where k × W ≤ n and (k + 1) × W > n [11, 20]. For example, there are 1, 2, 3, 4 nodes in the system, the set R of 2-majority quorum is as follows: R = { {1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4}, {3, 4} }. Totally, R contains 6 quorums. The availability of a coterie is defined as the probability that a quorum can be successfully formed. For the rest of the paper, we assume that p is the probability that a node is up and there are n nodes in the systems. For the availability of the k-majority strategy, let AV (k, h) be the function evaluating the probability that h pairwise disjoint quorums can be formed. 2. BACKGROUND A distributed system is a collection of nodes that may communicate with each other by exchanging messages. K-mutual exclusion strategies concern themselves with controlling the nodes such that at most k 2.
(3) simultaneously. Function AV (k, h) has the following condition: AV (k, h) =. n. i=h× n+1 k+1 . quorum being formed successfully, the probability of two pairwise quorums being formed successfully, ... , and the probability of k pairwise disjoint quorums begin formed successfully. The (k, l)-availability, 1 ≤ l ≤ k, is defined to be the probability that l pairwise disjoint quorums of a k-coterie can be formed successfully; it is used as a measure for the fault-tolerant ability of a solution using k-coterie. Let AV (h, l) be the function evaluating the probability that h pairwise disjoint quorums under Coh(k, l) can be formed simultaneously. Function AV (h, l) has the following three conditions:. C(n, i) × pi × (1 − p)n−i .. 3.2 Cohorts. In this section, we describe a cohort quorum for kmutual exclusion, which is based on a cohort structure. The definition of a cohort structure is given as follows [10].. Definition 2. A Cohort Structure. A cohort structure Coh(k,l) = (C1 , C2 ,..., Cl ) is a list of pairwise disjoint sets; each set Ci is called a cohort. The cohort structure should observe the following two properties:. 1. AV (0, l) = 1. 2. AV (h, 1) = P R(S1 , h, S1 ). (Note that a quorum takes only one member from the first cohort to make it the primary cohort because S1 − k + 1 = k − k + 1 = 1. We also use Si to denote |Ci | for 1 ≤ i ≤ l, where Ci is the ith item of Coh(k, l) = (C1 , ..., Cl ) and we use P R(s, a, b) to denote b i s−i . i=a C(s, i) × p × (1 − p). 1. |C1 | = k. 2. ∀i : 1 < i ≤ l : |Ci | > max(2k − 2, k), where max(a, b) = a, if a ≥ b; otherwise, max(a, b) = b. To sum up, a cohort structure Coh(k, l) has l pairwise disjoint cohorts with the first cohort having k members and the other cohorts having more than (2k − 2) members. For example, ( {1, 2}, {3, 4, 5}, {6, 7, 8, 9, 10} ) is Coh(2, 3) since it has three pairwise disjoint cohorts with the first cohort and the other cohorts having 2 (= k) and more than 2 (= 2k − 2) members, respectively.. 3. AV (h, l) = AV (h − 1, l − 1) × P R(Sl , Sl − k + h, Sl ) + AV (h, l − 1) × P R(Sl , h, Sl − k + h − 1).. 3.3 DIV of Majority Quorums In the DIV strategy [2], the nodes in the network are partitioned into k classes with each class using any traditional approach to enforce 1-mutual exclusion. When the traditional approach is the majority, the constructed quorum is called DIV of majority quorum. For example, there are 1, 2, 3, 4, 5, 6 nodes in the system, and we divided nodes into two classes, (1, 2, 3) and (4, 5, 6). The set R of DIV of majority quorum for 2-mutual exclusion is as follows: R = { {1, 2}, {1, 3}, {2, 3}, {4, 5}, {4, 6}, {5, 6} }. For the availability of DIV of majority quorum, let AV (k, h) be the function evaluating the probability that h pairwise disjoint quorums can be formed simultaneously. Function AV (k, h) has the following two conditions: nk n i n k −i . 1. AV M = i= n +1 C( k , i) × p × (1 − p). Definition 3. A Cohorts Quorum. A set Q is said to be a quorum under Coh(k, l) if some cohort Ci in Coh(k, l) is Q’s primary cohort, and each cohort Cj , j > i, is Q’s supporting cohort, where 1. a cohort C is Q’s primary cohort if |Q ∩ C| = |C|− (k − 1) (i.e., Q contains all except k-1 members of C), and 2. a cohort C is Q’s supporting cohort if |Q ∩ C| = 1 (i.e., Q contains exactly one member of C). For example, the following sets are quorums under Coh(2, 2) = ( {1, 2}, {3, 4, 5} ): Q1 = {3, 4}, Q2 = {3, 5}, Q3 = {4, 5}, Q4 = {1, 3}, Q5 = {1, 4}, Q6 = {1, 5}, Q7 = {2, 3}, Q8 = {2, 4}, and Q9 = {2, 5}. Quorums Q1 , Q2 , and Q3 take {3, 4, 5} as their primary cohort and no supporting cohort is needed, and quorums Q4 , ..., Q9 take {1, 2} as their primary cohort and {3, 4, 5} as their supporting cohort. It is easy to check that these nine sets constitute a 2-coterie. For the availability of the cohorts strategy, since up to k pairwise disjoint quorums can be simultaneously formed in a k-coterie, we should discuss up to k cases for the availability of a k-coterie: the probability of a. 2k. 2. AV (k, h) =. k. i=h. C(k, i)×AV M i ×(1−AV M )k−i .. 4. BINARY FOREST QUORUMS In this section, we present a binary forest quorum for k-mutual exclusion, in which n nodes are divided into the 2k groups. Between groups, we apply the kmajority strategy, and inside each group, we apply the binary tree quorum for 1-mutual exclusion [1]. Therefore, the proposed strategy can be considered as a hybrid approach which contains the k-majority and the 3.
(4) S0. binary tree quorum for 1-mutual exclusion [11, 20]. Note that the availability of k-majority is good, when less than k2 nodes enter CS from our previous simulation study [8]. That is why we divide n nodes into 2k groups.. S1 S3. Level 0. 0. 1. 2. S. 4 4. 3. S5. S2. 5. Level 1. 6. S6. S 2 i-1. Level 2. S 2 i+1-2. Level i. 4.1 Definitions. Level i+1. In this section, we first define the logical binary tree and give the definition of the binary tree quorum for 1-mutual exclusion [1]. Next, based on the binary tree quorum for 1-mutual exclusion, we present the binary forest quorum for k-mutual exclusion.. S 2 h-1. S 2 h+1-2. Level h. Figure 1: A binary tree. Definition 4. A Binary Tree. A binary tree is a finite set of one or more nodes such that. 0. 1. there is a specially designated node called the root in level 0.. Level 0. 1 3. 2. the remaining nodes are partitioned into S1 , S2 , where each of these sets is a binary tree. S1 , S2 are called the subtrees of the nodes.. 2 4. Level 1. 5. 6. Level 2. Figure 2: A binary tree for 1-mutual exclusion with n =7. Therefore, there are 2i nodes in level i. Consequently, for a complete binary tree of level (h+1), there are totally (2h+1 − 1) nodes. Moreover, each node in the binary tree of level (h+1) is numbered from top to down and left to right as 0, 1, 2, ....., (2h+1 -2) as shown in Figure 1. For a node i, node ( i+1 2 − 1) is its parent.. each group Si , 0 ≤ i ≤ (2k − 1), let Ri be the binary tree quorum for 1-mutual exclusion. When k ≥ 1, a binary forest quorum Q contains any two quorums from R0 , R1 , R2 , ....., and R2k−1 . Example 3: For the binary forest as shown in Figure 3, the set R of binary forest quorums for 2mutual exclusion is as follows: R = { {1, 5, 2, 7}, {1, 5, 2, 8}, {1, 5, 7, 8}, {1, 5, 3, 9}, {1, 5, 3, 10}, {1, 5, 9, 10}, {1, 5, 4, 11}, {1, 5, 4, 12}, {1, 5, 11, 12}, {1, 6, 2, 7}, {1, 6, 2, 8}, {1, 6, 7, 8}, {1, 6, 3, 9}, {1, 6, 3, 10}, {1, 6, 9, 10}, {1, 6, 4, 11}, {1, 6, 4, 12}, {1, 6, 11, 12}, {5, 6, 2, 7}, {5, 6, 2, 8}, {5, 6, 7, 8}, {5, 6, 3, 9}, {5, 6, 3, 10}, {5, 6, 9, 10}, {5, 6, 4, 11}, {5, 6, 4, 12}, {5, 6, 11, 12}, {2, 7, 3, 9}, {2, 7, 3, 10}, {2, 7, 9, 10}, {2, 7, 4, 11}, {2, 7, 4, 12}, {2, 7, 11, 12}, {2, 8, 3, 9}, {2, 8, 3, 10}, {2, 8, 9, 10}, {2, 8, 4, 11}, {2, 8, 4, 12}, {2, 8, 11, 12}, {7, 8, 3, 9}, {7, 8, 3, 10}, {7, 8, 9, 10}, {7, 8, 4, 11}, {7, 8, 4, 12}, {7, 8, 11, 12}, {3, 9, 4, 11}, {3, 9, 4, 12}, {3, 9, 11, 12}, {3, 10, 4, 11}, {3, 10, 4, 12}, {3, 10, 11, 12}, {9, 10, 4, 11}, {9, 10, 4, 12}, {9, 10, 11, 12} }. Totally, R contains 54 quorums.. Definition 5. A Binary Tree Quorum [1]. The binary tree quorum strategy logically organizes the nodes in a system as a binary tree structure. A binary tree quorum (recursively) for 1-mutual exclusion consists of 1. the root and a binary tree quorum of the left subtree, or 2. the root and a binary tree quorum of the right subtree, or 3. a binary tree quorum of the left subtree and a binary tree quorum of the right subtree. Note that, here we let each node in the distributed system be mapped to a node in the logical binary forest, and the number of nods be denoted as n. Example 2: For a binary tree of level 3 as shown in Figure 2, the set R of binary tree quorums for 1mutual exclusion is as follows: R = { {0, 1, 3}, {0, 1, 4}, {0, 3, 4}, {0, 2, 5}, {0, 2, 6}, {0, 5, 6}, {1, 3, 2, 5}, {1, 3, 2, 6}, {1, 3, 5, 6}, {1, 4, 2, 5}, {1, 4, 2, 6}, {1, 4, 5, 6}, {3, 4, 2, 5}, {3, 4, 2, 6}, {3, 4, 5, 6} }.. 1. 5. Definition 6. Binary Forest Quorums. There are n nodes, which are divided into 2k groups, denoted as groups, S0 , S1 , S2 , ....., and S2k−1 . For the nodes in. 2. 6. 7. 3. 8. 9. 4. 10. 11. 12. Figure 3: A binary forest for 2-mutual exclusion with n = 12 4.
(5) 4.2 Correctness. contains any two subsets from R0 , R1 , ..., and R2k−1 , where Ri be a binary tree quorum under Si , 0 ≤ i ≤ 2k − 1. Consequently, the set of binary forest quorums for k-mutual exclusion is a k-coterie. 2. In this section, we prove that the set of the binary forest quorums for k-mutual exclusion is a k-coterie. Here, we will refer to such a k-coterie as the binary forest coterie.. 4.3 Availability of the Binary Forest Quorums. Lemma 1. The set of the K-majority quorums is a k-coterie [11, 20].. In this section, we first analyze the availability of the binary tree quorums for 1-mutual exclusion [1] and then the binary forest quorums for k-mutual exclusion. Here, we assume that all the nodes have the same upprobability p, which is the probability that a single node is up operational. For the binary tree quorum strategy, the availability of a binary tree is the probability that at least one binary tree quorum can be formed from the binary tree [1]. Thus, the availability of a binary tree is the probability that. Lemma 2. The set of the binary tree quorum is a 1coterie [1]. Lemma 3. Let U1 and U2 be two nonempty sets of nodes such that U1 ∩ U2 = ∅, and x ∈ U1 . Let U = (U1 − x) ∪ U2 . The coterie join operation ⊗x is defined ¯ ⊗x Y¯ = { CTx (X, Y ) | X ∈ X, ¯ Y ∈ Y¯ }, as Z¯ = X ¯ ¯ where X is a k-coterie under U1 , Y is a 1-coterie under U2 , and (X − {x}) ∪ Y if x ∈ X CTx (X, Y ) = X otherwise ¯ Then, Z is a k-coterie under U [9].. 1. the root is operational and a tree quorum can be formed from the left subtree, or 2. the root is operational and a tree quorum can be formed from the right subtree, or. Theorem 1. The set of the binary forest quorums for k-mutual exclusion is a k-coterie.. 3. a tree quorum can be formed from the left subtree and a tree quorum can be formed from the right subtree.. Proof. Based on the definition of binary forest quorums, there are n nodes, which are divided into 2k groups, denoted as groups, S0 , S1 , ..., and S2k−1 . Therefore, Si ∩ Sj = ∅, 0 ≤ i, j ≤ 2k − 1, and i = j. For the nodes in each group Si , 0 ≤ i ≤ (2k − 1), let Ri be the binary tree quorum under Si . When k ≥ 1, a binary forest quorum Q contains any two quorums from R0 , R1 , ..., R2k−1 . Let U1 = {g0 , g1 , ..., g2k−1 } ¯ be the set of the and U1 ∩ Si = ∅, 0 ≤ i ≤ 2k − 1; let X ¯ is k-majority quorums under U1 , the quorum size of X 2k+1 2 (= k+1 ). Moreover, let x = g0 ∈ U1 , U2 = S0 , and Y¯ be the set of the binary tree quorums under S0 , i.e., set R0 . Based on Lemma 3, we have that Z¯ is a k-coterie ¯ is a k-coterie based under (U1 - {g0 }) ∪ S0 , since X ¯ on Lemma 1, and Y is a 1-coterie based on Lemma 2. Note that, based on the definition of CTx (X, Y ) of Lemma 3, we have a binary tree quorum under S0 , ¯ with R0 and forms a which is R0 ; we replace g0 in X ¯ new quorum in Z under (U1 − {g0 }) ∪ S0 . Therefore, ¯ under U1 and g0 ∈ Qx ), we have a new ∀ (Qx ∈ X quorum (R0 ∪ (Qx − {g0 })) ∈ Z¯ under (U1 − {g0 }) ∪ S0 , where R0 is the binary tree quorum under S0 . That is, a quorum in Z¯ under (U1 − {g0}) ∪ S0 , contains any two subset from R0 , g1 , ..., and g2k−1 , where R0 is a binary tree quorum under S0 . In the same way, we can replace U2 with every Si , where 1 ≤ i ≤ 2k − 1. Therefore, a quorum in Z¯ under S0 ∪ S1 ∪ ... ∪ S2k−1 (=((U1 − {g0 , g1 , ..., g2k−1 }) ∪ S0 ∪ S1 ∪ ... ∪ S2k−1 )),. Let AV B(h) be the function evaluating the probability of a binary tree with (h + 1) level. If a binary tree consists of only one node, it degenerates to a central controller and the availability of the availability of itself, i.e., AV B(0) = p. Thus by the above conditions (1), (2), and (3), we can get the condition AV B(h) = 2p × AV B(h − 1) × (1 − AV B(h − 1)) + AV B(h − 1)2 . Next, for the availability of the binary forest quorum strategy, let (k,l)-availability, 1 ≤ l ≤ k, be the probability that l pairwise disjoint quorums of a k-coterie can be formed successfully; it is used as a measure for the fault-tolerant ability of a solution using k-coterie. Let AV(h, l) be the function evaluating the probability that l pairwise disjoint quorums under binary forest can be formed simultaneously. The function AV (h, l) has the following two boundary conditions: 1. AV B(0) = p and AV B(j) = 2p × AV B(j − 1) × (1 − AV B(j − 1)) + AV B(j − 1)2 . 2k 2. AV (h, l) = m=2∗l C(2k, m) × AV B(h)m × (1 − n . AV B(h))2k−m , where h = log2 2k. 5. A COMPARISON In this section, we make a comparison of the binary forest quorum, k-majority, cohorts, and DIV quorum strategies in terms of availability and quorum size, 5.
(6) 1.0. 1.0. 0.8. 0.8. 0.2. Availability 0.4 0.6. Availability 0.4 0.6 0.2. Binary forest k-majority Cohorts DIV. 0.0. 0.0. Binary forest k-majority Cohorts DIV 0.0. 0.1. 0.2. 0.3 0.4 0.5 0.6 0.7 0.8 Probability that a node is operational. 0.9. 1.0. 0.0. Figure 4: A comparison of the availability of the binary forest, k-majority, cohorts, and DIV strategies with n = 120 ( l = 1 ). 0.1. 0.2. 0.3 0.4 0.5 0.6 0.7 0.8 Probability that a node is operational. 0.9. 1.0. Figure 5: A comparison of the availability of the binary forest, k-majority, cohorts, and DIV strategies with n = 120 ( l = 2 ). 1.0. where we assume that the system has a fully connected network topology and no communication failure will occur. However, a node failure can occur. (Note that, here, we assume that a failed node simply stops execution (i.e., a fail-stop system). That is, no Byzantine failure occurs.) Figures 4, 5, 6, and 7 show a comparison of the availability of the binary forest, k-majority, cohorts, DIV quorums strategies with n = 120, and l = 1, 2, 3, and 4, respectively. For this comparison, there are 8 groups in binary forest quorum strategy and inside each group, the binary tree quorum is of level 4, and we let Coh(4, 15) = (C1 , C2 , ..., C15 ) where C1 = 4, Ci = 8, 2 ≤ i ≤ 11, and Cj = 9, 12 ≤ j ≤ 15. The observed results from Figures 4, 5, 6, and 7 are summarized in Table 1, where the binary forest quorum strategy is denoted as BF. From this table, we show that the availability of the binary forest quorum strategy is always better than that of the cohorts and DIV strategies, when l = 1; the availability of the binary forest quorum strategy is always the highest one among these four strategies, when l = 2; the availability of the binary forest quorum strategy is always better than that of the cohorts and k-majority strategies, when l = 3; the availability of the binary forest quorum strategy is always better than that of k-majority strategy, when l = 4. Table 2 shows a comparison of these four k-mutual exclusion strategies imposing logical structures. The first two criteria are the quorum sizes in the best and worst cases, respectively. The number of messages required to construct a quorum is proportional to the size of the quorums. The quorum size of binary forest varies n n to 2k +1 as the number of node failures from 2lg2 2k. 0.0. 0.2. Availability 0.4 0.6. 0.8. Binary forest k-majority Cohorts DIV. 0.0. 0.1. 0.2. 0.3 0.4 0.5 0.6 0.7 0.8 Probability that a node is operational. 0.9. 1.0. 1.0. Figure 6: A comparison of the availability of the binary forest, k-majority, cohorts, and DIV strategies with n = 120 ( l = 3 ). 0.0. 0.2. Availability 0.4 0.6. 0.8. Binary forest k-majority Cohorts DIV. 0.0. 0.1. 0.2. 0.3 0.4 0.5 0.6 0.7 0.8 Probability that a node is operational. 0.9. 1.0. Figure 7: A comparison of the availability of the binary forest, k-majority, cohorts, and DIV strategies with n = 120 ( l = 4 ) 6.
(7) is increased. Because in the binary forest quorums, n nodes are divided into 2k groups. Between groups, we apply the k-majority strategy, and inside each group, we apply the binary tree quorum for 1-mutual exclusion. No matter in the best case or the worst case, the quorum size of k-majority strategy with 2k groups is always 2 groups. In the best case, the quorum size inside n ; therefore, the quorum size of the each group is lg2 2k n binary forest is 2lg2 2k . In the worst case, the quon rum size inside each group is ( 2k + 1 ) / 2; therefore, n + 1. Note the quorum size of the binary forest is 2k that in the binary forest strategy, n nodes are divided into 2k binary trees. In the best case, the quorum size n ; therefore, the quorum in each binary tree is lg2 2k n size of the binary forest strategy is 2lg2 2k . In the worst case, which occurs when the node fails starting from the root to the leaf, and from the left to the right, n + 1 ) / 2; the quorum size in each binary tree is ( 2k therefore, the quorum size of the binary forest strategy n + 1. Note that in the binary forest strategy, n is 2k nodes are divided into the k binary trees. In each binary tree, the number of the terminal nodes is equal to (the number of nonterminal nodes +1). Therefore, the number of terminal nodes is equal to (the total number of the nodes of the binary trees + 1)/2. Moreover, in the worst case, the quorum size of the binary forest strategy is 2*(the sum of the number of the terminal nodes in every binary tree). Consequently, in the worst case, the quorum size of the binary forest strategy is (the total number of the nodes + 2k)/2k. The quorum size of cohort [10] varies from 2 (when k = 1) or k (when k > 1) to l = n−k s + 1, for a cohort structure Coh(k, l) =< k, s, ..., s >, l >> s. The quorum size of k-majority strategy is always n+1 k+1 [11], and the quorum size of DIV strategy is always n+k 2k [2].. Table 1: A comparison of the availability of the binary forest, k-majority, cohorts, and DIV strategies with n = 120 l 1 2 3 4. P p < 0.35 p ≥ 0.35 p < 0.59 p ≥ 0.59 p < 0.59 p ≥ 0.59 p < 0.51 0.51 ≤ p < 0.72 p ≥ 0.72. The Availability BF > k-majority > cohorts > DIV k-majority > BF > cohorts > DIV BF > k-majority > DIV > cohorts BF > k-majority > cohorts > DIV BF > DIV > cohorts > k-majority DIV > BF > cohorts > k-majority BF > DIV > cohorts > k-majority DIV > BF > cohorts > k-majority DIV > cohorts > BF > k-majority. Table 2: A comparison of four k-mutual exclusion strategies in terms of quorum size quorum size (best case) quorum size (worst case) fully distributed? fault tolerance (best case) fault tolerance (worst case). Cohorts∗ 2 or k ∗∗. n 2k +1. l. no n − 2klg2 2k(lg2. quorum size (best case) quorum size (worst case) fully distributed? fault tolerance (best case) fault tolerance (worst case) ∗. Binary Forest n 2lg2 2k . n 2k. n 2k. no k(k−1) n − ks + 2. − 1). s−k+1. K-majority n+1 k+1. DIV n+k 2k. n+1 k+1. n+k 2k. yes n − k n+1 k+1. yes n − k n+k 2k. n − k n+1 k+1. n − k n+k 2k. The third criteria in Table 2 is whether the strategy is a fully distributed one. All of these four strategies are fully distributed ones. The last two criteria are the number of failed nodes which does not halt the system and such that at most k nodes can simultaneously access their critical section in the best case and worst case. While in the best case, all these strategies can be fault-tolerant up to all node failure except those nodes which have already constructed k quorums. In the best case, the cohorts strategy can be fault) node failures when tolerant up to (n − ks + k(k−1) 2 Coh(k, l) = (C1 , C2 , ..., Cl ), |C1 | = k, and |Ci | = s, i > 1 [10]. Note that, in the best case, |Q1 | = s−(k−1), |Q2 | = s−(k−2), ..., |Qk−1 | = s−1, and |Qk | = s in the cohorts strategy. While in the worst case, the binary forest strategy can be fault-tolerant up to k(lg2 nk −1) node failures and the cohorts strategy can be faulttolerant up to (s − k + 1) node failures. While in the. Coh(k, l) = (C1 , C2 , ..., Cl ), |C1 | = k, |Ci | = s, i > 1. 2 when k = 1, or k when k > 1.. ∗∗. 7.
(8) 30. 30. Quorum size 15 20 10. 25. Binary forest 4-majority Cohorts DIV. 0. 5. Quorum size 15 20 0. 5. 10. 25. Binary forest 4-majority Cohorts DIV. 0. 10. 20. 30. 40. 50. 60 NS. 70. 80. 90. 100 110 120. 0. 5. 10. 15 20 25 30 35 40 45 Number of failed nodes ( NS = 120 ). 50. 55. Figure 8: A comparison of the quorum size of binary forest, 4-majority, cohorts, and DIV when no node failure occurs. Figure 9: A comparison of the quorum size of binary forest, 4-majority, cohorts, and DIV when node failures occur in the worst case N S = n = 120 ( l = 4 ). worst case, the k-majority strategy can not be faulttolerant to any node failure and the DIV strategy can be fault-tolerant up to (n − k n+k 2k ) node failures. Figure 8 shows a comparison of the quorum size of these four strategies for 4-mutual exclusion when no node failure occurs. From this figure, we observe that the quorum size of these four strategies in a decreasing order is 4-majority > cohorts > DIV > binary forest quorum, when n > 30. That is, the quorum size of the binary forest strategy is always the smallest one among these four strategies, when n > 30. Figure 9 shows a comparison of the quorum size of these four strategies for 4-mutual exclusion when node failures occur in the worst case with N S = 120 (l = 4). From this figure, we observe that the quorum size of these four strategies in a decreasing order is 4-majority > DIV > binary forest > cohorts, when the number of failed nodes is less than 40; the quorum size of these four strategies in a decreasing order is 4-majority > cohorts > DIV = binary forest, when the number of failed nodes is greater than 40. That is, in the worst case, the quorum size of the binary forest quorum strategy is always smaller than that of 4-majority and DIV strategies.. for 1-mutual exclusion. The quorum size constructed n in the best case and is from the strategy is 2lg2 2k n ( 2k + 1) in the worst case. From our performance analysis, we have shown that the binary forest quorum strategy can provide a higher availability than kmajority, cohorts, and DIV strategies almost all the time. How to extend the binary forest quorum strategy to tolerate even more node failures is the future research direction.. References [1] D. Agrawal and A. EL Abbadi, ”The Generalized Tree Quorum Protocol: An Efficient Approach for Managing Replicated Data,” ACM Trans. on Database Systems, Vol. 17, No. 4, pp. 689-717, Dec. 1992. [2] D. Agrawal, O. Egecioglu, and A. E. Abbadi, ”Analysis of Quorum-Based Protocols for Distributed (k+1)Exclusion”, IEEE Trans. on Computers, Vol. 8, No. 5, pp. 533-537, May 1997. [3] J. H. Anderson, Y. J. Kim, ”A New Fast-Path Mechanism for Mutual Exclusion,” Distributed Computing, Vol. 14, No. 1, pp. 17-29, 2001. [4] R. Baldoni and B. Ciciani, ”Distributed Algorithms for Multiple Entries to a Critical Section with Priority,” Information Processing Letters, Vol. 50, pp. 165-172, 1994.. 6. CONCLUSION In this paper, we have proposed a strategy called binary forest quorums for k-mutual exclusion, which imposes a logical binary forest structure on the network. In general, in the binary forest quorum strategy, n nodes are divided into the 2k groups. Between groups, we have applied the k-majority strategy, and inside each group, we have applied the binary tree quorums for 1-mutual exclusion. Therefore, the proposed strategy can be considered as a hybrid approach which contains the k-majority and the binary tree quorums. [5] A. Bouabdallah, ”On Mutual Exclusion in Faulty Distributed Systems,” ACM Operating Systems Reviews, Vol. 28, No. 1, pp. 80-87, Jan. 1994. [6] G. Cao, M. Singhal, Y. Deng, N. Rishe and W. Sun, ”A Delay-Optimal Quorum-Based Mutual Exclusion Scheme with Fault-Tolerance Capability,”Proc. of IEEE Int. Conf. on Data Engineering, pp. 444-451, 1998.. 8.
(9) [7] Y. I. Chang, ”A Simulation Study on Distributed Mutual Exclusion,” Journal of Parallel and Distributed Computing, Vol. 33, No. 2, pp. 107-121, March 1996. [8] B. H. Chen, ”Logical Structure-Based Strategies for K-Mutual Exclusion in Distributed Systems,” Master Thesis, Dept. of Applied Math., National Sun Yat-Sen Univ., Kaohsiung, Taiwan, R.O.C., June 1997. [9] J. R. Jiang and S. T. Huang, ”Obtaining Nondominated K-Coteries for Fault-Tolerant Distributed KMutual Exclusion,” Proc. of ICPAD, pp. 582-587, 1994. [10] J. R. Jiang, S. T. Huang, and Y. C. Kuo, ”Cohorts Structures for Fault-Tolerant K Entries to a Critical Section,” IEEE Trans. on Computers, Vol. 46, No. 2, pp. 222-228, Feb. 1997. [11] H. Kakugawa, S. Fujita, M. Yamashita,i and T. Ae, ”Availability of K-Coterie,” IEEE Trans. on Computers, Vol. 42, No. 5, pp. 553-558, May 1993. [12] N. Kobayashi, T. Tsuchiya and T. Kikuno, ”Minimizing the Mean Delay of Quorum-Based Mutual Exclusion Schemes,” The Journal of Systems and Software, Vol. 58, No. 1, pp. 1-9, 2001. [13] Y. C. Kuo and S. T. Huang, ”Recognizing Nondominated Coteries and wr-Coteries by Availability,” IEEE Trans. on Parallel and Distributed Systems, Vol. 9, No. 8, pp. 721-728, August 1998. [14] M. Naimi, ”Distributed Algorithm for K-Entries to Critical Section Based on the Directed Graphs”, ACM Operating Systems Reviews, Vol. 27, No. 4, pp. 67-75, Oct. 1993. [15] M. L. Neilsen and M. Mizuno, ”Nondominated kcoteries for multiple mutual exclusion,” Information Processing Letters, Vol. 50, pp. 247-255, 1994. [16] K. Raymond, ”A Distributed Algorithm for Multiple Entries to a Critical Section,” Information Processing Letters, Vol. 30, pp. 189-193, 1989. [17] M. Singhal, ”A Taxonomy of Distributed Mutual Exclusion,” Journal of Parallel and Distributed Computing, Vol. 18, pp. 94-101, 1993. [18] P. K. Srimani and R. L. N. Reddy, ”Another Distributed Algorithm for Multiple Entries to a Critical Section,” Information Processing Letters , Vol. 41, pp. 51-57, 1992. [19] S. Wang and S. D. Lang, ”A Tree-Based Distributed Algorithm for the K-Entry Critical Section Problem,” Proc. of ICPAD, pp. 592-597, 1994. [20] S. M. Yuan and H. K. Chang, ”Comments on Availability of k-Coterie,” IEEE Trans. on Computers, Vol. 43, No. 12, p. 1457, Dec. 1994.. 9.
(10)
數據
相關文件
The coordinate ring of an affine variety is a domain and a finitely generated k-algebra.. Conversely, a domain which is a finitely generated k-algebra is a coordinate ring of an
另外因為 Gal(L/F ) 是 Gal(L/K) 的 normal subgroup, 所以由 Second Fundamental Theorem 4.1.8 知 F/K 也是 Galois extension, 而且 Gal(F/K) isomorphic to Gal(L/K)/Gal(L/F )
A subgroup N which is open in the norm topology by Theorem 3.1.3 is a group of norms N L/K L ∗ of a finite abelian extension L/K.. Then N is open in the norm topology if and only if
• Given a direction of propagation, there are two k values that are intersections of propagation direction and normal surface.. – k values ⇒ different phase velocities ( ω /k)
3: Calculated ratio of dynamic structure factor S(k, ω) to static structure factor S(k) for "-Ge at T = 1250K for several values of k, plotted as a function of ω, calculated
The Hilbert space of an orbifold field theory [6] is decomposed into twisted sectors H g , that are labelled by the conjugacy classes [g] of the orbifold group, in our case
Let us suppose that the source information is in the form of strings of length k, over the input alphabet I of size r and that the r-ary block code C consist of codewords of
For R-K methods, the relationship between the number of (function) evaluations per step and the order of LTE is shown in the following