Alessandro (Alex) De Marco, Ferhat Khendek Dept. of Electrical & Computer Engineering

24
eSERL Feature Interaction Management in Parlay/OSA Using Composition Constraints and Configuration Rules Alessandro (Alex) De Marco, Ferhat Khendek Dept. of Electrical & Computer Engineering Concordia University Montreal, Canada

description

eSERL Feature Interaction Management in Parlay/OSA Using Composition Constraints and Configuration Rules. Alessandro (Alex) De Marco, Ferhat Khendek Dept. of Electrical & Computer Engineering Concordia University Montreal, Canada. Outline. Introduction eSERL Language Enhancements - PowerPoint PPT Presentation

Transcript of Alessandro (Alex) De Marco, Ferhat Khendek Dept. of Electrical & Computer Engineering

Page 1: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

eSERLFeature Interaction Management in Parlay/OSA Using Composition Constraints and Configuration Rules

Alessandro (Alex) De Marco, Ferhat Khendek

Dept. of Electrical & Computer EngineeringConcordia University

Montreal, Canada

Page 2: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Outline

1. Introduction2. eSERL Language Enhancements3. Validation Algorithms4. Implementation + Case Study5. Conclusion

Page 3: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

IntroductionTrends Personalization Added-value through service composition

Next-generation Networks “Everything over IP”; IP Everywhere Enhanced Multimedia & Signaling Capabilities

Parlay/OSA 3GPP API for secure, open access to NG Networks Technology-agnostic

SERL Service Execution Rule Lang. & Framework No FI detection; Only application of resolutions

Section: Introduction (1/3)

Page 4: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Parlay/OSA

Framework User Location Call Control Etc.

Application Server

Service …

SIP INAP TCAP …

Gateways

Framework User Location Call Control Etc.

Application Server

SIP INAP TCAP …

Gateways

Open Service Access standard adopted by 3GPP Access to core networks through secure framework Not just Call Control, but Mobility, IM, more Technology-agnostic

Section: Introduction (2/3)

Page 5: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

SERLService Execution Rule

Language

3 Internet Drafts in 2001 (Ericsson)

FIM intercepts events, matches & applies rules to trigger services

No FI detection or avoidance capabilities

No known implementations

S1 S2

Terminating SERL nodeEvent: INCOMING_CALL

Context:From: AliceTo: Bob…

Bob

1. invoke

S1 at Processing-

Point 1 invoked firstdownstream

S2 at Processing-

Point 3invoked last downstream

2. <feature instruction>

4. <feature instruction>3. invoke

Section: Introduction (3/3)

Page 6: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

eSERL: Enhanced SERL

Language Extensions Service Objects (named with I/O params) Composition Constraints Configuration Rules

Feature Grouping Criteria Distinguish between routing & screening

Section: eSERL (1/5)

Page 7: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Composition Constraints

SUSC context: 1 user, 1 app server Service interactions are known/detected a

priori Use any detection techniques

Experts define service composition and inter-working constraints

Explicit vs. implicit constraints Mutex, Order, Data Inter-working

Section: eSERL (2/5)

Page 8: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Configuration Rules

End-user requirements for their service behavior

Expressed as condition-action rules Conditions relate to events Actions affect services, or events

Backwards-compatible with SERL

Section: eSERL (3/5)

Page 9: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Operational Context Experts

Define constraints for all services in a system

End-users Write configurations to compose and

personalize services Deploy configurations

System Validates* configuration (offline tool) Intercepts events, matches & applies rules

(runtime Feature Interaction Manager*)

Section: eSERL (4/5)

Page 10: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Abstract ExampleParticipants: Julie (the driver) and her car

If (INCOMING_CALL or OUTGOING_CALL) {Invoke CS(screening party: car) If (response from car: Julie is AVAILABLE) {

Invoke ID(“warn that call may be disconnected”)}

}If (Session.CallExists(Julie)) {

If (INCOMING_CALL from car and car says Julie is BUSY) {Invoke ACB // which terminates call, re-

establishes later}

}

High-speed, heavy traffic

Section: eSERL (5/5)

Page 11: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Abstract Example

Is this user-defined configuration “valid”?

Section: eSERL (5/5)

Page 12: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Validation

Check configurations against constraints

Guaranteed behavior To the degree with which the expert is

confident with the completeness and consistency of constraints

Section: Validation (1/6)

Page 13: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Acceptable Compositions ‘Acceptable’ = All compositions except

those in violation of constraints Completeness Assumption

Approaches a “complete-set” Consistency

Worst-case: no compositions allowed Approach depends on expert

experience, tools, maintenance of rule-base

Section: Validation (2/6)

Page 14: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Detect Constraint Violations Simple: 1 rule, several actions

Order or mutex violation (composition) I/O params set (data inter-working)

Complex: n rules, >0 actions for each Rules satisfied simultaneously by event?

i.e. Do conditions overlap? If overlap, then

compose the actions, andcheck for violations as for simple case

Section: Validation (3/6)

Page 15: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Pair-wise Rule Comparison

For rule1, where rule1 is a Configuration Rule

For rule2, where rule2 is a Configuration Rule and not rule1

If rule1.condition and rule2.condition overlap then

If rule1.action composed with rule2.action is not in set of acceptable compositions then

Configuration Rule Module is invalid

Section: Validation (4/6)

Page 16: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Rule OverlapCalculating overlap Polynomial time solution, O(nk), if values for variables are

discrete, finite, and ordered (D. Wang et al., IP firewall study)

Parlay/OSA API methods, events meet criteria

Example 1: Overlap: YesC1 := {“my location is home”}C2 := {“caller is [email protected]”}

Example 2: Overlap: Maybe … syntax vs. semantics

C1 := {“my location is school” AND “caller is [email protected]”}C2 := {“my location is office” AND “caller is [email protected]”}

Section: Validation (5/6)

Page 17: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Rule-Action Composition Composing Actions, order is important

Compare Processing Points Compare priorities of rule actions

A single configuration may specify many compositions. If one is invalid, the whole configuration is

rejected.

Section: Validation (6/6)

Page 18: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Implementation

S1 S2 S3

Parlay API (client) CORBA idl

CORBA idl

Parlay API (server) SIP Glue

Parlay Interface

Application

Server

Services

SIM Rules

FIM data Provisioning Interface

FIM Interface

FIM data Provisioning Interface

FIM Interface

Interface Parlay Interface

Service Capability Server

FIM rule engine

Positioning of a FIM in the architecture

Section: Implementation, Case Study (1/4)

Page 19: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Session & Proxy Objects(+ Event Translation)

SCS

Application Server

Service1

IpCallLeg

IpMultiPartyCall

IpMultiPartyCallControlManager

IpCallLeg

IpAppMultiPartyCallControlManager

IpAppMultiPartyCall

IpAppCallLeg IpAppCallLeg

Service2

IpAppMultiPartyCall

IpAppCallLeg IpAppCallLeg

FIM Call Session

IpAppCallLegProxy

IpCallLegProxy

IpAppCallLegProxy

IpCallLegProxy

IpAppMultiPartyCallProxy

IpMultiPartyCallProxy

Section: Implementation, Case Study (2/4)

Page 20: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Julie Jones and the Family Car

Incoming/Outgoing calls to/from driver - Julie Jones Screening by car (CS) If screening passed, warning (ID)Call in-session Julie becomes BUSY, save & disconnect (ACB)ACB waiting Julie becomes AVAILABLE, retry (ACB, [CS, ID])Location too far from home Instant message to Mom (ID)

Section: Implementation, Case Study (3/4)

Page 21: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Results

Hand-written rules in terms of Parlay/OSA events.

Implemented tools to validate rules against the system constraints.

Implemented test architecture, including FIM.

Section: Implementation, Case Study (4/4)

Page 22: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Contributions Generic framework for service

personalization and composition while managing FI

Guarantee, to a certain degree, on composed service behavior provided there are no constraint violations

Design & implementation in Parlay/OSA context

Section: Conclusion (1/2)

Page 23: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Future Work Multiple users, Multiple Servers Activation Rules Non-monotonic extensions due to

system constraint changes Framework for writing rules with 3rd

party “theme-based” rule templates and wizards

Composition Constraints = 3rd party services

Section: Conclusion (2/2)

Page 24: Alessandro (Alex) De Marco, Ferhat Khendek  Dept. of Electrical & Computer Engineering

Thank you.

Questions ?