SLAng - SLA notation generator A language for defining SLAs Davide Lamanna, James Skene and Wolfgang Emmerich University College London Computer Science Department {d.lamanna | j.skene |
Agenda Goals Approach Structure of SLAng Example Conclusion and future work
Goals Producing a formal language, with a well defined syntax and semantics for describing service level specifications (SLSs) Specification of non functional features (service level) of contracts between independent parties to allow the integration with the functional design of a distribuited component system Parameterisation, compositionality, validation of service level agreements
Approach 1/3 To concentrate on specific, state-of-the-art application server technologies (J2EE) To associate performance targets with identifiable ASP components To use popular and standard information exchange formats (XML)
Approach 2/3 The semantics is not dependent on complete models of the ASP. It is instead defined in terms of the domains of the performance properties QoS properties are somewhat dependent on the system tier being described
Approach 3/3 We assume the use of components for assembly of distributed application services We require horizontal SLSs that govern interaction between components We also need vertical SLSs that govern the support components get from their infrastructure
Vertical and Horizontal SLAs Components Container Network Database UserComponents Container Network
SLAng SLAng - SLA notation generator XML schema Parameterisation of SLSs at different system tiers, including vertical and horizontal agreements Focuses on interfaces thus allowing compositionality XML format enables validation
Structure of SLAng (1/3)
Structures of SLAng (2/3)
Structure of SLAng (3/3)
What is a SLA? Service Level Agreement Service Level Specification Client Service Provider «instance» Legal Contract
General structure of a SLA contract
User (1/3)
User (2/3)
User (3/3)
Hosting (1/3)
Hosting (2/3)
Hosting (3/3)
Persistence (1/3)
Persistence (2/3)
Persistence (3/3)
Communication (1/3)
Communication (2/3)
Communication (3/3)
Service (1/3)
Service (2/3)
Service (3/3)
Container (1/3)
Container (2/3)
Container (3/3)
Networking (1/3)
Networking (2/3)
Networking (3/3)
An example: the auction scenario Auctioneer ASP ISPSSP Buyer n TTP Seller 1 Seller m Credit Rating Agency Retail Bank 1 Retail Bank j Service Level Agreement (SLA) Buyer 1
Actors and SLAs Auctioneer ASP ISP SSP TTP Seller Credit Rating Agency Retail Bank Buyer ASP Auctioneer Service Hosting CommunicationPersistenceUser
Parties ➔ Seller ➔ Auctioneer ➔ ASP ➔ SSP ➔ ISP Polish Philatelic Society Kracov Auction Today Los Angeles EuroTelecom Connect Newark (UK) Compaq.com Houston, Texas EarthLink Connecticut
Seller/auctioneer Polish Philatelic Society Kracov Auction Today Los Angeles
Auctioneer/ASP Auction Today Los Angeles 95% EuroTelecom Connect Newark (UK) 99.6%
Auctioneer/credit rating Auction Today Los Angeles 96% Fitch Ratings Hong Kong
ASP/SSP EuroTelecom Connect Newark (UK) 99.6% Compaq.com Houston, Texas 97% 90% 97% 75% 80%
ASP/ISP EuroTelecom Connect Newark (UK) 99.6% EarthLink Connecticut
Conclusion and future work SLAng can specify tier-specific horizontal and vertical SLAs between users and providers Easily extendable to increase expressivity Modeling and reasoning about SLAs Translating an SLA into a deployment descriptor Monitoring compliance to SLA Toolkit for service composition and analysis (assist ASP in determining what SLSs they can undertake to meet)
Questions ?