Automatic Synthesis of Fault-Tolerance.ppt
《Automatic Synthesis of Fault-Tolerance.ppt》由会员分享,可在线阅读,更多相关《Automatic Synthesis of Fault-Tolerance.ppt(43页珍藏版)》请在麦多课文档分享上搜索。
1、Automatic Synthesis of Fault-Tolerance,Ali Ebnenasir Software Engineering and Network Systems Laboratory Computer Science and Engineering Department Michigan State UniversityAdvisor: Dr. Sandeep Kulkarni,2,Problem,Given a program p and a class of faults f,Question: How do we add desired fault-tolera
2、nce properties to p in order to create a new program p such that:Requirements:In the absence of f, the resulting fault-tolerant program p behaves similar to p In the presence of f, the resulting fault-tolerant program p satisfies the desired fault-tolerance property.,3,Solution Strategies,Two possib
3、le approachesRedesign p and verify its correctness w.r.t problem requirements Expensive approachAutomatically synthesize p from p Correct by construction,4,Previous Work on Automated Synthesis,5,Synthesis: Specification-Based,Specification of p (Temporal Logic Expressions/ Automata),Synthesis Algori
4、thm (prove the satisfiabilityof the specification),Faults,Fault-tolerancerequirements (Temporal Logic Expressions),Fault-tolerant program p,Program synthesis: Fault-Tolerance synthesis:EmersonClarke 1982 AroraAttieEmerson 1998 AttieEmerson 2001 KupfermannVardi 2001,6,Synthesis: Calculational,Kulkarn
5、iArora 2000 KulkarniAroraChippada 2001,Fault-intolerant program p (Transitions),Synthesis Algorithm (Calculate the set of transitions),Fault-tolerant program p (Transitions),Fault-tolerance requirements,Faults (Transitions),7,The Complexity of Calculational Synthesis,High atomicity model: processes
6、can atomically read/write all program variables Polynomial in the state space of the fault-intolerant program p KA00Low atomicity model (distributed programs): processes have read/write restrictions with respect to program variablesExponential in the state space of the fault-intolerant program p for
7、 synthesizing masking fault-tolerance KA00,KA00 S.S. Kulkarni and A. Arora, Automating the addition of fault-tolerance, FTRTFT 2000.,Propose techniques for the synthesis of fault-tolerant distributed programs,8,Outline,Preliminary concepts Synthesis problem Current results Theoretical issues Step-wi
8、se automation Polynomial-time boundary Heuristics Pre-synthesized fault-tolerance components Practical issues A framework for the synthesis of fault-tolerant programs Contributions Open problems,9,Preliminary Concepts: Programs and Faults,Program Finite number of variables with finite domains Finite
9、 number of processes State: a valuation of program variables Finite state space Sp State predicate X X Sp Program p, Fault f (s0, s1) | (s0, s1) Sp Sp Closure: X is closed in p,Sp,10,Preliminary Concepts: Specifications and Fault-Tolerance,Safety specification: something bad never happens Representa
10、tion (s0, s1) | (s0, s1) Sp Sp E.g., transitions that change the value of a counter from non-zero values to zero Liveness specification: something good will eventually happen In the absence of faults, fault-tolerant program p satisfies the liveness specification of the fault-intolerant program p Inv
11、ariant S, fault-span T Sp Fault-tolerance: Failsafe, Nonmasking, Masking,Sp,Program,Fault,11,Preliminary Concepts: Distribution Model,Read/Write restrictions (low atomicity model) Assumption: a process cannot write a variable that it cannot read. Example: program p Two processes j, k Two Boolean var
12、iables a and b Process j cannot read b, but can read and write a Write restrictions Can we include the following transition in the set of transitions of process j?,Write restrictions identify the set of transitions of each process.,j,k,a,b,12,Preliminary Concepts: Distribution Model Continued,Read r
13、estrictions Can we include the following transition in the set of transitions of process j?,Groups of transitions (instead of individual transitions) must be chosen.,13,Outline,Preliminary concepts Synthesis problem Current results Theoretical issues Step-wise automation Polynomial-time boundary Heu
14、ristics Pre-synthesized fault-tolerance components Practical issues A framework for the synthesis of fault-tolerant programs Contributions Open problems,14,Synthesis Problem,Synthesis Algorithm,Fault-intolerantprogram p,Specification Spec,Invariant S,(Masking/Nonmasking/Failsafe)Fault-tolerantprogra
15、m p,Invariant S,Faults f,Distribution restrictions,Requirements No new behaviors are added in the absence of faults. In the presence of faults, p provides desired level of fault-tolerance.,Desired level of Fault-intolerance(Masking/Nonmasking/Failsafe),15,Outline,Preliminary concepts Synthesis probl
16、em Current results Theoretical issues step-wise automation Polynomial-time boundary Heuristics Pre-synthesized fault-tolerance components Practical issues A framework for the synthesis of fault-tolerant programs Contributions Open problems,16,Theoretical Issues: Step-Wise Automation,Intolerant Progr
17、am,Masking fault-tolerant,Failsafe,KA00,17,Outline,Preliminary concepts Synthesis problem Current results Theoretical issues step-wise automation Polynomial-time boundary Heuristics Pre-synthesized fault-tolerance components Practical issues A framework for the synthesis of fault-tolerant programs C
18、ontributions Open problems,18,Theoretical Issues: Polynomial-Time Boundary,Complexity: reduction from 3-SAT to the problem of synthesizing failsafe fault-tolerant distributed programs In general, the problem of synthesizing failsafe fault-tolerant distributed programs from their fault-intolerant ver
19、sion is NP-complete. Intuitively, the exponential complexity is due to the inability of a process to safely estimate unreadable variables even in the absence of faults (grouping issue).What are the necessary and sufficient conditions for polynomial synthesis of failsafe fault-tolerant distributed pr
20、ograms? Restrictions on The transitions of the fault-intolerant programs Specifications,19,Theoretical Issues: Monotonicity of Specifications,Definition: A specification spec is positive monotonic with respect to a Boolean variable x iff: For every (s0, s1) and (s0, s1) grouped together due to inabi
21、lity of reading x,20,Theoretical Issues: Monotonicity of Programs,Definition: Program p with invariant S is positive monotonic with respect to a Boolean variable x iff: For every (s0, s1) and (s0, s1) grouped together due to inability of reading x,Monotonicity requirements capture the notion that sa
22、fe assumptions can be made about variables that cannot be read,21,Theoretical Issues: Monotonicity Theorem,Sufficiency: if Program is negative monotonic, and Spec is positive monotonic Or Program is positive monotonic, and Spec is negative monotonic Then Synthesis of failsafe fault-tolerance can be
23、done in polynomial time Necessity: If only one of these conditions is satisfied then synthesizing failsafe fault-tolerance remains NP-complete. For many problems, these requirements are easily met (e.g., Byzantine agreement, consensus, atomic commit),22,Theoretical Issues: An Example for Monotonicit
24、y Theorem,Dijkstras guarded commands (actions) Guard Statement (s0, s1) | Guard holds at s0 and atomic execution of Statement yields s1 Example: Byzantine agreement Safety Specification of Byzantine agreement:Agreement: No two non-Byzantine non-generals can finalize with different decisions Validity
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AUTOMATICSYNTHESISOFFAULTTOLERANCEPPT
