Fault-Tolerant Computing Systems #7 Network Reliability 2 & Sum of Disjoint Products Pattara Leelaprute Computer Engineering Department Kasetsart University pattara.l@ku.ac.th
Review
Network Network is made up of network component Network component Nodes Links (arcs, edges) connecting by HW or software component States of Network component Operational Failed
Network Reliability Problems Network Model Input: Probability that each component can operates normally Output:Network Reliability Network Model Undirected graph G = (V, E) (V=vertices, E=edges) Edge:operational or failed Pe = Pr [edge e is operational] = reliability of e Unnecessary to think about time (=availability)
Fault Model Situation of Network Pe = Pr [edge e is operational] = reliability of e v2 pa =0.9 pb =0.8 pc =0.9 pd =0.9 pe =0.95 a b e v1 v4 c d v3 Situation of Network …
Network Reliability k-terminal reliability Two terminal reliability K = set of nodes V = all nodes k-terminal reliability Probability that there exist operating paths between every pair of nodes in K Two terminal reliability Probability that there exist operating path between 2 nodes (|K| = 2) All terminal reliability Probability that there exist operating paths between all nodes (K=V)
Minpaths Pathset Minpath A set of components (edges) whose operation implies (guarantees) system operation Minpath A minimal Pathset Ex.K={v1,v4} v1 v4
Mincuts Cutset A set of components (edges) whose failure implies (guarantees) system failure Mincut A minimal Cutset Ex.K={v1,v4} v1 v4
Quiz v2 Minpaths of the system that 3 successively connected nodes are operating normally a b v1 e v4 c d v3
Computation of Reliability Complexity for two-terminal reliability and all terminal reliability NP-hard (#P-complete) Algorithms Efficient Algorithms for Restricted Classes Exponential time algorithm for general networks
Transformations and Reductions R(G) = (multiplicative factor) * R(G’) G’ = contraction of G R(G) = reliability of G R(G’) = reliability of G’ Contraction G, G’ = (contraction of G, G•e) Multiplicative factor = pe When e is mandatory (mandatory = an edge that appears in every minpath) u v G: G’: e u (= v)
Transformations and Reductions Parallel Reduction G, G’ Multiplicative factor = 1 Series Reduction p1 1- (1- p1) (1- p2) G: G’: p2 p1 p1 p2 p2 G: G’:
Series-Parallel Graphs A graph that can be contracted to one edge by using Series and Parallel Replacement Series Replacement Parallel Replacement There exists that algorithm to calculate K-terminal reliability in polynomial time.
An Example Series Replacement Parallel Replacement
An Example 1-(1-pe)(1- pbpd) pb pa pa pbpd pa pa pe pe pc pc pd pc pc(1-(1-pe) (1- pbpd)) p1 p1 p2 p2 p1 1- (1- p1) (1- p2) 1-(1-pa)(1-pc(1-(1-pe)(1- pbpd))) p2
Algorithm to calculate K-terminal reliability There exists an algorithm to calculate K-terminal reliability in polynomial time. Factoring Sum of Disjoint Products (SDP)
Factoring A Naïve approach Reliability calculation costs too much. … papbpc pd pe + (1-pa)pbpc pd pe + pa(1-pb)pc pd pe + … pa pb pc pd pe
Factoring Concept G Select one edge (e) R(G) = pe*R(G•e)+(1-pe)*R(G-e) G•e = graph obtained by contracting edge e in G G-e = graph obtained by deleting edge e in G G•e When G − e is failed, any sequence of contractions and deletions results in a failed network Hence there is no need to factor G − e. G e G-e
Sum of Disjoint Products (SDP)
Sum of Disjoint Products (SDP) Approach implemented by using Boolean algebra Ex. Two terminal reliability between v1, v4 Minpath: ab, cd, ade, bce v2 a b e v1 v4 Can be expressed with the following Boolean expression: = AB ∨ CD ∨ ADE ∨ BCE c d v3
Sum of Disjoint Products (SDP) Reliability R(G) = Pr [AB ∨ CD ∨ ADE ∨ BCE = 1] Probability for each path which operates correctly can be simply calculated as follows: Pr[AB]=papb, Pr[CD]=pcpd, ... However, R(G) can not be directly calculated when there exists Pr of the paths which are not disjoint event (exclusive)
Sum of Disjoint Products (SDP) Reliability = Pr [AB ∨ CD ∨ ADE ∨ BCE] ¬A A ¬C C C ¬C ¬E E E ¬E ¬E E E ¬E papb ¬D B D D ¬B ¬D pcpd
Sum of Disjoint Products (SDP) SDP Algorithm Transform the Boolean expression so that each product term is exclusive for each other. AB ∨ CD ∨ ADE ∨ BCE = AB ∨ (¬A )CD ∨ (A¬B)CD ∨ (¬B)(¬C)ADE ∨(¬A)(¬D)BCE = AB ∨ (¬A ∨ A¬B)CD ∨ (¬B)(¬C)ADE ∨(¬A)(¬D)BCE Reliability = Sum of probability (Pr) of each product term Pr [AB ∨ (¬A ∨ A¬B)CD ∨ (¬B)(¬C)ADE ∨(¬A)(¬D)BCE] = papb + ((1-pa) + (pa(1-pb))pcpd + (1-pb)(1-pc)papdpe + (1-pa)(1-pd)pbpcpe
Sum of Disjoint Products (SDP) Reliability = Pr [AB ∨ CD ∨ ADE ∨ BCE] = Pr [AB ∨ (¬A ∨ A¬B)CD ∨ (¬B)(¬C)ADE ∨(¬A)(¬D)BCE] = papb + ((1-pa)+(pa(1-pb))pcpd + (1-pb)(1-pc)papdpe+(1-pa)(1-pd)pbpcpe ¬A A ¬C C C ¬C papb ¬E E E ¬E ¬E E E ¬E ¬D B D D ¬B ¬D