b27888fe20169fed3dc7a1c2198c0b9e.ppt
- Количество слайдов: 15
Cost Control in Service Composition Environments NGMAST 2008 Jörg Niemöller, Raphaël Quinet, Roman Levenshteyn and Ioannis Fikouras Ericsson Corporate Research
Content § § Service Composition Analysis of Business Relations Usage based price prediction Example NGMAST'08 2 Cost Control in Service Composition Environments 2008 -09 -15
Dynamic composition at run-time § Service Composition – – Decoupling of application logic and enabling functionality Reduces design complexity by taking decisions at run-time Enables event-driven logic Enables automated re-use of services and application logic NGMAST'08 3 Cost Control in Service Composition Environments 2008 -09 -15
IMS Service Composition Applications A use case for model based service composition CEA SIP Application Server CEA WS WS CEA HTTP Application Server Control Plane Service Database Multi-Service Composition Engine HSS P-CSCF § § S-CSCF I-CSCF 3 GPP proposes a SCIM (Service Capabilities Interaction Manager) as layer within the SIP application server for flexible application routing Model based service composition is our proposal for implementing a SCIM NGMAST'08 4 Cost Control in Service Composition Environments HTTP 2008 -09 -15
Composite Services § § § The composition environment implements an inference engine Service Skeletons steer the inference engine Composite services are deigned in terms of constraints for service selection Service Skeletons are a graphical representation of constraints start_call_nearest_friend Constraints define conditions for the selection of services based on the service model Skeleton: start_call_closest_friend – Constraints result in queries to the service database – Which particular service is selected depends only on the data in the database. – Services implemented with different technologies are equal as long as they match the constraints § High abstraction level in composite service design supports re-use of components Is. Invite $(sip_request. method)=‘INVITE’ TRU E get. My. Position Constraints: (Function=‘positioning’) Parameters: SUBSCRIBER: ’sip: ’+$(sip_request. from. user_at_host ) Save Data caller_position=$(ws_response) Service DB get_nearest_friend@this Change. Call. Setup Constraints: (srv=Call. Setup) Parameters: DESTINATION: Nearest. Friend Get. Service
Parties and Business Relations • Marketing for services • Special subscription to services Service User Charging Billing Accounting Distibution • Is a subscriber in the operator’s network • Gets telecommunication services from the operator • Pays the operator for services Network Operator • Provides own and 3 rd party telecommunication services to the subscribers • Marketing for services • Charges and bills for service usage NGMAST'08 6 Service Provider • Publishes his service on the operator’s network • Is paid for service usage • Provides a platform for 3 rd party service offers towards his subscribers • Calls the 3 rd party service • Pays out the fees for service usage Cost Control in Service Composition Environments 2008 -09 -15
Service Usage and Billing Relations § Decoupled income and spending for the composite service operator NGMAST'08 7 Cost Control in Service Composition Environments 2008 -09 -15
Charging Aware Service Selection § Allows service selection criteria (constraints) based on the service price (e. g. max price limit, select cheapest service, …) § Service Price Information (or link to it) added to service description. Price tag attached to service. § Service prices in general depend on service usage details (duration, data volume, number of invocations, …) § The price can in general not be calculated in advance. § Constraint evaluation does not yet support service selection logic that needs additional functions (price calculation) NGMAST'08 8 Cost Control in Service Composition Environments 2008 -09 -15
Service Usage Profiles § § Express the expected or average service usage per service type Example: User Profiles User 001 Usage Profiles: Service Type voice: 18: 00 -20: 00 10 min, else 5 min Between 18: 00 and 20: 00 each voice call of this user is expected to be 10 minutes long otherwise a duration of 5 minutes is expected. § § voip tv … Usage Profile UPv 001 UPtv 003 User Category: Voice. Platinum UPv 001, service type: voice User or user group specific, linked from the user profile Can be derived for example from usage statistics NGMAST'08 9 Service Usage Profiles Cost Control in Service Composition Environments 08: 00 – 18: 00 -> 20 min 18: 00 – 22: 00 -> 5 min else -> 10 min UPtv 003, service type: tv 18: 00 – 22: 00 -> 20 min, 4 MB else -> 10 min 2008 -09 -15
Service Prediction Charging System Aided § § Price calculation function introduced at service selection Price Information from the Charging System – – – § § Service Database User Database Charging system is the reference regarding service prices. Applies same logic in price predictions as in “real” charging Considers temporary special conditions like promotions Service, User, Usage Profile, … Extension of Diameter CCA or new Diameter application protocol NGMAST'08 10 Ask Charging System! Service Selection New function in the Charging System New Interface for price calculation requests – Service Usage Profiles Tariffs and Charging Models Cost Control in Service Composition Environments Expected Price Charging System 2008 -09 -15
Service Prediction Local Charging Model Definition § Local Definition of charging models – Extensive definition using tree of linked tables DAY of week User. Subscription Service Database Sat, Sun other Platinum flat Gold other flat 0. 2 EUR/min DAY of week Sat, Sun other 0. 1 EUR/min Time 08: 00 – 18: 00 – 22: 00 other 0. 4 EUR/min 0. 2 EUR/min 0. 1 EUR/min – Simple formula for calculation of an estimate price Price = t*0. 2[EUR] § Evaluated at service selection § Link to price information is attached to the service description NGMAST'08 11 Cost Control in Service Composition Environments 2008 -09 -15
Charging Aware Service Selection Service Database User Profiles Service Usage Profiles $? $? $? Get. Service
Example: Family Chat Family. Chat 0. 5 EUR per invocation + 1 EUR per h Is. Invite Pos. A: $(sip_request_method) = ‘INVITE’ Yes No Pos. B: END Get. Caller. Position constraints: parameters: return value: (function=Positioning)&(price<=0. 1 EUR) &(price=min) SUBSCRIBER: ‘sip: ’+$(sip_request. from. user_at_host) caller_pos Get. Family. List constraints: (srv=Family. List) parameters: SUBSCRIBER: ‘sip: ’+$(sip_request. from. user_at_host) return values: contact_list Get. Nearest. Contact constraints: parameters: return value: (srv=Get. Nearest. Contact) CONTACT_LIST: $(contact_list) REFERENCE_POSITION: $(caller_pos) found_contact Contact. Found 0. 05 EUR per invocation price tag stored in Service DB 0. 2 EUR between 08: 00 and 20: 00 free between 20: 00 and 08: 00 Pricing defined by script in service DB Expected usage: 1 h + 100 messages 4 family members registered Actual usage: 2 h + 200 messages Income: 2. 5 EUR Spendings min/max: 1. 20 EUR / 3 EUR Selected according to usage prediceion at 10 am: Pos. A (0. 25 EUR), Chat. D (1. 20 EUR) $(found_contact) = ‘ ’ Yes No Chat. C: Reply. Error Start. Chat constraints: (srv=Error. Sender) parameters: ERROR: ‘no contact found’ constraints: (function=Chat)&(price is min) parameters: CONTACT: $(found_contact) END NGMAST'08 13 Chat. D: 0. 01 EUR per chat message free in case of promotion Ask charging system 0. 5 EUR per h + 0. 01 EUR for 10 Messages Ask charging system Cost Control in Service Composition Environments 2008 -09 -15
Conclusion and Outlook § Predicted prices are not most accurate, but they allow a relative comparison of services. § Further work could investigate algorithms that lead to accurate usage profiles. § Besides the price other dynamic of “soft” selection parameters could be considered, e. g. service quality. NGMAST'08 14 Cost Control in Service Composition Environments 2008 -09 -15
NGMAST'08 15 Cost Control in Service Composition Environments 2008 -09 -15