A Logic Based SLA Management Framework

About This Presentation
Title:

A Logic Based SLA Management Framework

Description:

SWPW at ISWC05, Galway, Ireland IBIS, 2005. Overview ... SWPW at ISWC05, Galway, Ireland IBIS, 2005. State of the Art. Natural language SLAs ... – PowerPoint PPT presentation

Number of Views:706
Avg rating:3.0/5.0

less

Transcript and Presenter's Notes

Title: A Logic Based SLA Management Framework


1
A Logic Based SLA Management Framework
  • A Rule Based Approach using Logic Programming
    Techniques

Adrian Paschke, Jens Dietrich, Karsten Kuhla
SWPW at ISWC05 7.11.2005
2
Overview
  • State of the Art and Challenges in SLA
    Management
  • Our Approach Rule Based SLA Management
  • ContractLog
  • RBSLA
  • RBSLM
  • Key Findings

3
State of the Art
  • Natural language SLAs
  • Large amounts of contracts
  • Dynamic SOA environment (utility/on-demand
    computing)
  • Different systems and people (roles) are involved
  • Formal representation languages, e.g. XML based
    WSLA
  • Need interpreter
  • 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
  • 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

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
4
Rule Based Representation of SLAs
  • Formalisation of contract rules in a logic based
    rule language
  • Derivation Rules
  • Body ? Head (If Body then Head)
  • P1 ? ? Pn ? Pn1 ? ? Pm ? C (Horn rules
    with NaF )
  • Example
  • If the turnover of a customer is greater then
    500 then the customer is a gold customer.

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
Conlusion
Prerequesite
Predicate
Variable
Predicate
Complex Term
Constant
gold
Customer
gt
getTurnover(C)
500
If a customer is a gold customer then the
customer qualifies for a discount of 15 on the
service base price.
Conclusion
Prerequesite
Predicate
Variable
Predicate
Variable
Constant
gold
Customer
discount
Customer
15
5
Architecture
Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
Rule Based Service Level Management Tool
Management / Control Layer
RBSLM
Declarative Rule Based Service Level Agreement
Language
Dynamic Business / Contract Logic Layer
RBSLA
Knowledge Representation Layer
Formal Logic Based Framework
Contract Log
Mandarax Rule Engine with Prova
Static Execution Layer
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.

External System Layer
6
ContractLog
Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
7
Event Condition Action
  • ECA Rules eca(time,event,condition,action)
  • Problem Query-driven Backward Reasoning
    (simulate activity)
  • ECA rule eca (everyMinute, pingService,notMain
    tenance notify)
  • Referenced Derivation Rules (queried by daemon
    process)
  • Time everyMinute()?
  • Event pingService()?
  • Condtion notMaintenance() ?
  • Action notify() ?
  • Active Rules (via update primitives in ECA
    rules)
  • Assert Retract/RetractAll -
  • Example - contact(L, P) ? - esc_lv(L),
    contact(L,P)
  • Ensure Confluence (procedural execution) /
    Termination (loops)

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
Thread
check time
check event
trigger action
check cond.
8
Event Calculus
  • Effects of Events/Actions
  • Rules for state transitions
  • Contract State Tracking
  • EC Basic Axioms
  • happens(E,T) event E happens at time point T
  • initiates(E,F,T) event E initiates fluent F for
    all timegtT
  • terminates(E,F,T) event E terminates fluent F for
    all timegtT
  • holdsAt(F,T) fluent F holds at time point T
  • EC Extensions
  • valueAt(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
  • initiates(stopService,serviceUnavailable,T)termi
    nates(startService,serviceUnavailable,T)happens(s
    topService,t1) happens(startService,t5)holdsAt(s
    erviceUnavailable,t3)? ? trueholdsAt(serviceUna
    vailable,t7)? ? false

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
9
Deontic Logic
  • Logic of normative concepts oblige, permit,
    forbid
  • Normative propositions with truth values
  • Standard Deontic Logic (SDL)
  • OA , PA, FA
  • Inference RulesOA ? PA FA ? OA PA ? FA
    Consequential Closure A ? B / OA ? OBValid
    Scheme (OA ? OA)
  • Shortcomings
  • 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 inconsistent.

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
10
Event Calculus based Deontic Logic
  • Norms are personalized, time-varying
    Fluents NS,OA (Nnorm, SSubject, OObject,
    AAction)
  • They are relative to their context
  • OA and OA 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(E1,oblige(S,O,A),T) Event E1 initiates
    norm
  • Terminates(E2,oblige(S,O,A),T) Event E2
    terminates norm
  • Authorization Control
  • Positive Authorization By default everything is
    forbidden - holdsAt (norm,T)?
  • Deontic Rules with conditional norms
  • A1 ? OA2 happens(A1,T) initiates(A1,oblige(S,O
    ,A2),T)
  • Defeasible Obligations / Prima Facie Obligations
    ( promised duties)
  • Subject to Exceptions OA and E? OA (EException
    Event)
  • Contrary to Duty Obligations (CTD)
  • Subject to Violations (A1 ? OA1) ? V ? OA2 (V
    Violation OA2CTD)

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
11
Discussion on Deontic Logic
  • 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)
  • Problem Primary obligation should be still in
    force and any fine imposed for violating will
    have to be paid.

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
12
Defeasible Logic
  • Reasoning with incomplete or inconsistent
    information
  • Defeasible rules body gt head
  • Superiority relations overrides(r1,r2)
  • Transformation into meta-program in LP (ambiguity
    blocking with control literals)
  • (A)definitely(p(x1,x2,,xn)). // fact
  • (B) definitely(p) - definitely(q1), ,
    definitely(qk). // strict rules
  • (C) defeasible(X) - definitely(X). // defeasible
    inference
  • (D) translation defeasible rules
  • defeasible(p) - defeasible(q1),,
    defeasible(qk), not(definitely(neg(p))),
  • ok(this_rule_ID, x1,,xn).
  • ok(this_rule_ID, x1,,xn) - ok_line(this_rule_
    ID, s1, x1,,xn),,
  • ok_line(this_rule_ID, sn, x1,,xn). // rules
    with head neg(p)
  • ok_line(this_rule_ID, s, x1,,xn) -
    blocked(s, x1,,xn).
  • ok_line(this_rule_ID, s, x1,,xn) -
    defeated(s, x1,,xn).
  • blocked(s, x1,,xn) - not(defeasible(qi)). //
    for all qi of rule s
  • defeated(s, x1,,xn) - not(blocked(si,
    x1,,xn)),overrides(this_rule_ID, si).
  • based on Antoniou, G. et.al. Embedding
    Defeasible Logic into Logic Programs

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
13
Defeasible Logic
  • 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 approachlow
    computational complexity compared to mainstream
    non-monotonic reasoning
  • Cons- needs large meta-programs, not easy to
    writeSolution Abstract syntax (RBSLA)
    automated Transformation into Meta-program
    (compiler)

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
14
RBSLA
  • Rule Based SLA Language (RBSLA)
  • Abtract declarative syntax ? Simplify
    authoring/writing of SLAs
  • Based on RuleML
  • Goals
  • Machine-Readability and Execution (via
    Transformation)
  • Tool-Support
  • Interoperability with other languages
  • Main extensions to RuleML
  • 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

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
15
RBSLA ? ContractLog
  • Refactoring of rules
  • Narrowing A1,..,AN.?B and A1,..,AN.?C becomes
    A1,.., AN.?A A..?B A ?C (eliminates
    redundancies)
  • Removing Disjunctions A1 .. An , (B1?B2) ? C
    becomes A1 .. An , B ? C and B1 ? B and B2 ? 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

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
16
RBSLM
  • Rule Based Service Level Management Tool
  • Contract Manager (Contract Mgt. and Authoring)
  • Service Dashboard (Monitoring and Contract
    Tracking)

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
17
Advantages
  • Rules (contract logic) are seperated from the
    application logic
  • Easier management and maintenance
  • Compact representation via rule chaining
  • Logic based formalisation
  • Automation and Execution in rule engine
    (extension)
  • Verification and Validation
  • 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.
  • 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)

Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
18
  • Thank you for attention !!!!
  • Questions?

19
  • Backup

20
Challenges
  • Dependent RulesIf the average availability
    falls below 98 then the mean time to repair must
    be less than 10 min.
  • Graduated Rules
  • Monitoring Schedules
  • Escalation Levels with Role Model

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
21
Callenges
  • Dynamic RulesThere might be an unscheduled
    period of time which will be triggered by the
    customer. During this period bandwidth must be
    doubled.
  • Normative Rules with Violations and
    ExceptionsThe provider is obliged to repair an
    unavailable service in ttime-to-repair. If she
    fails to do so (violation) the customer is
    permitted to cancel the contract.

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
22
SLA Wish List
Callenges Our Approach ContractLog 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
23
Typed Logic
  • Three-valued logic true / false or unknown
  • Negation as Failure (Cut-Fail Implementation)
  • Procedural Attachments
  • Omp1..pn ? r1..rn e.g., java.lang.Integerpa
    rseInt1234?Integer(1234)
  • Un-typed / Typed Terms
  • Order-sorted Types (directed acyclic graph)

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
Domain A
Examples Class hierarchies (Java) Semantic Web
Taxonomies (RDFS/OWL) Unification Un-Typed/Typed
Variables/Constants
Domain B
Domain C
Domain D
Domain E
Member X
Member Y
24
Typed Logic
  • Description Logic Programs
  • Inference Rules, e.g.aC, 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)
    C(X) ? D(X) (loop checker)
  • ExampleRole2(X) ? Role1(X) // Role 1 is
    subclass of Role2 inform(X) ? escl(1,X),
    Role2(X) // 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)
  • Exampleadd(X1,X2,R) ? bound(X1), bound(X2),
    free(R) // add(,,-)

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
25
Typed Logic
  • 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

Callenges Our Approach ContractLog RBSLA RBSLM
Discussion
26
ContractLog Example
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.
Callenges Our Approach ContractLog RBSLA RBSLM
Key Findings
Monitoring results t0 service
availablet2 service unvailable ?
obligation(SP,Service,Start)t4 deadline exceeded
? permission(SC,Contract,Cancel)
Write a Comment
User Comments (0)