
a466b11ab3fa7e15bbfe71899992cbe9.ppt
- Количество слайдов: 26
Rule-based Service Level Agreements / Service Level Management A Logic Based SLA Management Framework A Rule Based Approach using Logic Programming Techniques Adrian Paschke, Jens Dietrich, Karsten Kuhla SWPW at ISWC´ 05 7. 11. 2005
Overview § § § SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 State of the Art and Challenges in SLA Management Our Approach: Rule Based SLA Management Contract. Log RBSLA RBSLM Key Findings
State of the Art Callenges 1. - Our Approach Contract. Log RBSLA RBSLM Natural language SLAs 2. Formal representation languages, e. g. XML based WSLA: - Need interpreter - Discussion - 3. Conventional imperative programming languages, e. g. Java Limited to simple Boolean logic to represent contract rules No variables, no complex terms, no quantifiers, no rule chaining Commercial monitoring tools mainly focus on IT systems/resources - SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 Large amounts of contracts Dynamic SOA environment (utility/on-demand computing) Different systems and people (roles) are involved Missing link between technical view and SLA view Contract/Business logic is buried in the code or database tiers Contract rules (logic) are adjusted by parameters Control flow must be completely implemented SLA Representation needs new levels of Flexibility and Automation
Rule Based Representation of SLAs Callenges Our Approach Contract. Log RBSLA RBSLM Discussion § Formalisation of contract rules in a logic based rule language § Derivation Rules: Body Head (If Body then Head) P 1 ٨ … ٨ Pn ٨ ~Pn+1 ٨ …٨ ~Pm C (Horn rules with Na. F „~“) § Example: If the turnover. Prerequesite of a customer is greater then 500$ then the customer Conlusion is Predicatecustomer. Term Constant a gold Predicate Variable Complex > get. Turnover(C) gold 500$ Customer If a customer is a gold customer then the customer qualifies for a discount of 15% on the service base price. Conclusion Prerequesite Predicate SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 Variable Predicate Variable Constant gold Customer discount Customer 15%
Architecture Callenges Management / Control Layer RBSLM Our Approach Rule Based Service Level Management Tool Contract. Log RBSLA RBSLM Discussion Dynamic Business / Contract Logic Layer Knowledge Representation Layer Static Execution Layer External System Layer SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 RBSLA Declarative Rule Based Service Level Agreement Language Contract Log Formal Logic Based Framework Mandarax Rule Engine with Prova Java Virtual Machine Existing Business Tools / Business Data / Business Objects • System and Quality Management Tools etc. • EJBs / Web Services / APIs etc. • Databases / Datawarehouses / Files etc.
Contract. Log Callenges Logic Usage Our Approach Horn Logic Derivation Rules (rule chaining) + Negation as Failure, Procedural Attachments, External Data Integration, Typed Logic Event-Condition-Action rules (ECA) Active behaviour (events, actions) + Update primitives for Active Rules Event Calculus Temporal reasoning over effects of events on fluents (contract tracking) Defeasible logic Conflict resolution, default rules and priority relations of rules. Deontic logic Rights and obligations with violations an exceptions of norms. Contract. Log RBSLA RBSLM Discussion SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
Event Condition Action Callenges Our Approach Contract. Log § ECA Rules: eca(time, event, condition, action) § Problem: Query-driven Backward Reasoning (simulate activity) Thread check time check event check cond. trigger action RBSLA RBSLM Discussion ECA rule: eca (every. Minute, ping. Service, not. Maintenance notify) Referenced Derivation Rules: (queried by daemon process) Time: every. Minute() … Event: ping. Service() … Condtion: not. Maintenance() … Action: notify() … § Active Rules rules) SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 (via update primitives in ECA § Assert “+” ; Retract/Retract. All “-” Example: - contact(L, P) - esc_lv(L), contact(L, P)
Event Calculus Callenges Our Approach Contract. Log RBSLA RBSLM Key Findings § Effects of Events/Actions § Rules for state transitions § Contract State Tracking § EC Basic Axioms: § § happens(E, T) initiates(E, F, T) terminates(E, F, T) holds. At(F, T) event E happens at time point T event E initiates fluent F for all time>T event E terminates fluent F for all time>T fluent F holds at time point T § EC Extensions: § value. At(P, T, X) parameter P has value X at time point T § planned(E, T) event E is believed to happen at time point T Example: SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 initiates(stop. Service, service. Unavailable, T) terminates(start. Service, service. Unavailable, T) happens(stop. Service, t 1); happens(start. Service, t 5) holds. At(service. Unavailable, t 3)? true holds. At(service. Unavailable, t 7)? false
Deontic Logic Callenges Our Approach Contract. Log RBSLA RBSLM Key Findings § Logic of normative concepts: oblige, permit, forbid § Normative propositions with truth values § Standard Deontic Logic (SDL) § OA , PA, FA … § Inference Rules OA PA; FA O¬A; PA ¬FA … Consequential Closure: A B / OA OB Valid Scheme: ¬(OA ٨ O¬A) § Shortcomings SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 § § Norms are not personalized / object oriented Norms are time-less Effects of events/actions are ignored Exceptions and Violations lead to Paradoxes, i. e. SDL is
Event Calculus based Deontic Logic Callenges Our Approach Contract. Log RBSLA RBSLM Key Findings § Norms are personalized, time-varying Fluents NS, OA (N=norm, S=Subject, O=Object, A=Action) § They are relative to their “context” § OA and O¬A might hold at the same time (or at different times) for different Subjects / Objects § Embedded in Event Calculus § Initially(oblige(S, O, A)) Norm holds initially § Initiates(E 1, oblige(S, O, A), T) Event E 1 initiates norm § Terminates(E 2, oblige(S, O, A), T) Event E 2 terminates norm § Authorization Control § Positive Authorization: “By default everything is forbidden” - holds. At (norm, T)? § Deontic Rules with conditional norms § A 1 OA 2 : happens(A 1, T) initiates(A 1, oblige(S, O, A 2), T) § Defeasible Obligations / Prima Facie Obligations (~ promised duties) SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 § Subject to Exceptions: OA and E O¬A (E=Exception Event) § Contrary to Duty Obligations (CTD)
Discussion on Deontic Logic Callenges Our Approach Contract. Log RBSLA RBSLM Key Findings § Large number of Paradoxes § sets of sentences that derive sentences with a counterintuitive reading. § Most norms in SLAs are time-based terminate primary norm and initiate secondary norm § Problem: time-less paradoxes (gentle murder) (1) The service provider must not violate an agreed service level. (2) But, if a service level is violated, the violation should be as small as possible. § Possible Solutions: § Concepts from Dyadic Deontic Logic with norm contexts § Concepts from Defeasible Logic § Primary norm and secondary norm are mutual exclusive (mutex) § Primary norm is defeated by secondary norm § Secondary norm has higher priority than primary norm (overriden) SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 Problem: Primary obligation should be still in force and any fine imposed for violating will have to be paid.
Defeasible Logic Callenges Our Approach § Reasoning with incomplete or inconsistent information § Defeasible rules: body ==> head § Superiority relations: overrides(r 1, r 2) Contract. Log RBSLA RBSLM Key Findings SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 § Transformation into meta-program in LP (ambiguity blocking with control literals) (A)definitely(p(x 1, x 2, …, xn)). // fact (B) definitely(p) : - definitely(q 1), …, definitely(qk). // strict rules (C) defeasible(X) : - definitely(X). // defeasible inference (D) translation defeasible rules defeasible(p) : - defeasible(q 1), …, defeasible(qk), not(definitely(neg(p))), ok(“this_rule_ID”, x 1, …, xn) : - ok_line(“this_rule_ID”, “s 1”, x 1, …, xn), …, ok_line(“this_rule_ID”, “sn”, x 1, …, xn). // rules with head neg(p) ok_line(“this_rule_ID”, “s”, x 1, …, xn) : - blocked(“s”, x 1, …, xn). ok_line(“this_rule_ID”, “s”, x 1, …, xn) : - defeated(“s”, x 1, …, xn). blocked(“s”, x 1, …, xn) : - not(defeasible(qi)). // for all qi of rule “s” defeated(“s”, x 1, …, xn) : - not(blocked(“si”, x 1, …, xn)), overrides(“this_rule_ID”, “si”). Logic Programs based on Antoniou, G. et. al. : Embedding Defeasible Logic into
Defeasible Logic Callenges Our Approach Contract. Log RBSLA RBSLM Key Findings § Generalized Courteous Logic Programs (GCLP) (Grosof, B. et. al. ) § Variant of defeasible logic § Mutex for mutal exclusive literals (mutex) § Conditional § Un-conditional § Discussion § Pros: +Simple rule-based approach +low computational complexity compared to mainstream nonmonotonic reasoning § Cons: - needs large meta-programs, not easy to write SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 Solution: Abstract syntax (RBSLA) + automated Transformation into Meta-program (compiler)
RBSLA Callenges Our Approach Contract. Log RBSLA RBSLM § Rule Based SLA Language (RBSLA) § Abtract declarative syntax Simplify authoring/writing of SLAs § Based on Rule. ML § Goals: § Machine-Readability and Execution (via Transformation) § Tool-Support § Interoperability with other languages Key Findings § Main extensions to Rule. ML: SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 § Typed Logic and Procedural Attachments § External Data Integration § Event Condition Action Rules with Sensing, Monitoring and Effecting § (Situated) Update Primitives § Complex Event Processing and State Changes (Fluents) § Deontic Norms and Norm Violations and Exceptions § Defeasible Rules and Rule Priorities § Built-Ins, Aggregate and Compare Operators, Lists
RBSLA Contract. Log Callenges Our Approach Contract. Log RBSLA RBSLM Key Findings § Refactoring of rules § Narrowing: A 1, . . , AN. →B and A 1, . . , AN. →C becomes A 1, . . , AN. →A ; A. . →B; A →C (eliminates redundancies) § Removing Disjunctions: A 1. . An , (B 1 B 2) → C becomes A 1. . An , B´ → C and B 1 → B´ and B 2 → B´ (clausal normal form) § Removing conjunctions from rule heads: B → (H ٨ H´) via Lloyd. Topor transformation into B → H and B → H`) § Other examples are removing function symbols from rule heads etc. § Type and Mode Checking § Static, e. g. p(+) p(-) § Dynamic via test cases § Defeasible Compiler § Translation into Metaprogram SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
RBSLM Callenges Our Approach Contract. Log § Rule Based Service Level Management Tool § Contract Manager (Contract Mgt. and Authoring) RBSLA RBSLM Key Findings § Service Dashboard (Monitoring and Contract Tracking) SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
Advantages Callenges § Rules (contract logic) are seperated from the application logic § Easier management and maintenance § Compact representation via rule chaining Our Approach Contract. Log RBSLA § Logic based formalisation § Automation and Execution in rule engine (+extension) § Verification and Validation RBSLM § Declarative test-driven validation and verification methods can be applied determining the correctness and completeness of contract specifications against user requirements. § Large rule sets can be automatically checked for consistency via static and dynamic structure checks testing types and modes (in-out parameter) of the arguments of rule predicates. § Explanatory reasoning chains provide means for debugging and explanation. Key Findings SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 § § Complex Event Processing (Pro-)active Monitoring and Contract State Tracking Time and Event-based Rights and Obligations Management Automated conflict detection and resolution (e. g. rule prioritization)
Thank you for attention !!!! Questions? SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
Backup SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
Challenges Callenges Our Approach Contract. Log RBSLA § Dependent Rules “If the average availability falls below 98% then the mean time to repair must be less than 10 min. ” § Graduated Rules § Monitoring Schedules RBSLM Schedule Time Availability Response Time Discussion Prime 8 -18 99% 4 sec. Standard 18 -8 95% 10 sec. Maintenance 0 -4 * 30% - § Escalation Levels with Role Model Level Time-to-Repair Rights / Obligations 1 Process Manager 10 Min. Start / Stop Service 2 SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 Role Chief Quality Manager Max. Time-to. Repair Change Service Levels 3 Control Committee - All rights
Callenges Our Approach Contract. Log RBSLA RBSLM § Dynamic Rules “There might be an unscheduled period of time which will be triggered by the customer. During this period bandwidth must be doubled. ” Discussion § Normative Rules with Violations and Exceptions “The provider is obliged to repair an unavailable SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 service in ttime-to-repair. If she fails to do so (violation) the customer is permitted to cancel the contract. ”
SLA Wish List Callenges Our Approach Contract. Log RBSLA RBSLM Discussion Base: 81 ASP clients; 15 were asked this question after answering “no” when asked if their ASPs’ SLAs met their needs; Source: Zona Research Inc. , Redwood City, Calif. , March 2000 SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
Typed Logic Callenges Our Approach Contract. Log RBSLA RBSLM Discussion § Three-valued logic: true / false or unknown § Negation as Failure (Cut-Fail Implementation) § Procedural Attachments § Om[p 1. . pn] [r 1. . rn] e. g. , java. lang. Integerparse. Int[1234] Integer(1234) § Un-typed / Typed Terms § Order-sorted Types (directed acyclic graph) Domain A Domain B Domain C Domain D Domain E SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 Member X Examples: Class hierarchies (Java) Semantic Web Taxonomies (RDFS/OWL) Unification: Un-Typed/Typed Variables/Constants Member Y
Typed Logic Callenges Our Approach Contract. Log RBSLA RBSLM Discussion § Description Logic Programs § Inference Rules, e. g. : a: C, i. e. , the individual a is an instance of the class C: C(a) C D, i. e. , class C is subclass of D: D(X) C(X) C D, i. e. , class C is equivalent to class D: D(X) C(X) D(X) (loop checker) § Example Role 2(X) Role 1(X) inform(X) escl(1, X), Role 2(X) // Role 1 is subclass of Role 2 // X is of type Role 2 § Input-Output Modes “+” The term is intended to be input (constant or bound variable) ”-“ The term is intended to be output (free variable) ”? ” The term is undefined/arbritary (input or output) § Example add(X 1, X 2, R) bound(X 1), bound(X 2), free(R) SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 // add(+, +, -)
Typed Logic Callenges Our Approach Contract. Log RBSLA RBSLM Discussion § Types / Modes § Instrumentation of a logic program, i. e. approximation of the intended interpretation § Static Type/Mode Checking § Type Failure: No Greatest Lower Bound of Types § Mode Failure: “+” and “-” conflicts § Dynamic Type/Mode Checking § Test Cases: Intended Model Restrict search space Safeguard authoring process SWPW at ISWC 05, Galway, Ireland © IBIS, 2005
Contract. Log Example Callenges Our Approach Contract. Log The service availability will be measured every tcheck by a ping on the service. If the service is unavailable, the SP is obliged to restore it within tdeadline. If SP fails to restore the service in tdeadline, SC is permitted to cancel the contract. RBSLA RBSLM Key Findings Monitoring results: t 0 t 2 SWPW at ISWC 05, Galway, Ireland © IBIS, 2005 service available service unvailable obligation(SP, Service, Start) t 4 deadline exceeded permission(SC, Contract, Cancel)
a466b11ab3fa7e15bbfe71899992cbe9.ppt