An Automated Semantic Negotiation for Cloud Service Level Agreements

Mostly, cloud agreements are signed between the consumer and the provider using online clickthrough agreements. Several issues and conflicts exist in the negotiation of cloud agreement terms due to the legal and ambiguous terms in Service Level Agreements (SLA). Semantic knowledge applied during the formation and negotiation of SLA can overcome these issues. Cloud SLA negotiation consists of numerous activities such as formation of SLA templates, publishing it in registry, verification and validation of SLA, monitoring for violation, logging and reporting and termination. Though these activities are interleaved with each other, semantic synchronization is still lacking. To overcome this, a novel SLA life cycle using semantic knowledge to automate the cloud negotiation has been formulated. Semantic web platform using ontologies is designed, developed and evaluated. The resultant platform increases the task efficiency of the consumer and the provider during negotiation. Precision and recall scores for Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) SLAs were calculated. And it reveals that applying semantic knowledge helps the extraction of meaningful answers from the cloud actors.


Introduction
In the present competent IT industry environment, it is inevitable to focus on cost-cutting technologies in procurement and maintenance of expensive systems.Cloud adoption reduces the operation costs and the upgrada-tion costs in a great deal.Cloud leverages its predecessor models such as collaborative computing, grid model, web services, on-demand autonomous computing, virtualization, ubiquitous computing and many more.There are five major actors identified by National Institute of Standards and Technology (NIST) in the cloud reference architecture [1].Each actor performs a specific set of activities, and also the roles of these actors are interchangeable depending on the configuration of the particular cloud model.
Cloud services are provisioned by cloud provider, negotiated by cloud broker, connected via cloud carrier, assessed by cloud auditor and accessed by the cloud consumer [1] [2].Cloud provider is primarily responsible for creating and advertising the SLA.Based on the competent services they offer, the consumer approaches the respective provider for negotiation.They can modify the SLA for service optimization.Continuous provisioning of the services to fulfil the parameters specified in the SLA as well as carefully examining the SLA for any changes or violations is integral part of the provider.They can amend the SLA for any valid reason.In the competitive cloud market, many providers offer the same services from SaaS through PaaS to IaaS, but they use different service definitions and metrics [3].Cloud consumer is the core entity that takes part in the SLA life cycle.They initiate the negotiation with the desired provider based on price and service.In most cases, monitoring the service capabilities using SLA metrics is the liability of the consumer.They can initiate and escalate penalty claim in case of service disruption.Ultimately, they can terminate the agreement for their convenience by following the exit procedures.SLA management is the umbrella activity that comes through the entire cloud life cycle.It should cover both the proactive (pre-negotiation) and reactive (post-negotiation) measurements.This paper is organized into five sections.Section 1 & 2 give the introduction about cloud SLA along with related works in life cycle activities.Section 3 illustrates the semantic negotiation model and Section 4 demonstrates the results with quantitative analysis.Finally, Section 5 concludes with future direction.

Related Work
There are several supporting frameworks proposed for the automation/semi-automation of the SLA life cycle activities.Such frameworks were examined and compared [2] and their automation level (manual/semi-automatic/ automatic) based on the negotiation.Ontology provides [4] common vocabulary for domain knowledge and defines the meaning of the concepts and the relations between them with different levels of hierarchy of nodes in ontology structure.The classes, sub classes, object property and data type property and instances can be defined in the ontology tree.Protégé is an integrated development environment tool [5] which is used to develop ontologies and semantic processing.It provides capability for specifying logical relationships between classes and individuals and for generating and debugging ontologies and translation into several base notations.
Semantic annotation based cloud service repository [6] has been created to facilitate consumers to search for the indexed cloud services that they entail.Hani et al. [7] indicated that continuous improvement and optimized performance of cloud services can be attained by the renegotiation of agreements.Cloud 4 SOA [8] supports dynamicity in SLA by allowing the consumers and providers for designing flexible SLA.As cloud SLA is still evolving and yet to be standardized, vague terms appear in the service definitions making it more complex.Besides the planned downtime, there are exclusions (unplanned maintenance and force majeure) beyond the control of the providers.But, only few consumers knew these penalty exclusions, e.g.22% reported in the ENISA survey [9].Moreover, service credits are given only for baseline services affected in unplanned downtime, not for the planned outages and exclusions category.Torode [10] stated that currently the cloud SLA indirectly forces the consumers to be dependent on the vendor i.e. cloud provider.
As the SLA negotiation in cloud model is involved with various problems described above, this paper focussed on dealing with automating the sequence of activities in the SLA life cycle.Though some frameworks currently exist, coherence between the activities is missing.To overcome this problem, a novel life cycle methodology is proposed with semantic knowledge representation.

Automated Semantic Negotiation
The cloud SLA life cycle is divided into three phases: Pre-Negotiation, Negotiation and Post-Negotiation [2] [11].Ontologies for each phase of activities are developed to represent the concepts and relationships in the negotiation model.Based on the extraction from this semantic knowledge, interaction is made between the primary cloud actors i.e. the consumer and the provider.Auto negotiation of cloud SLA is developed using web based application.Figure 1 represents the SLA life cycle with cloud negotiation activities.
The aim of this implementation is to develop an automated and interactive web SLA platform for consumerprovider negotiation.The actors involved are: domain expert, cloud consumer and cloud provider.Besides, ontology for each phase (pre-negotiation, negotiation and post-negotiation) is constructed using protégé tool.Further, semantic knowledge is extracted in the form of questionnaire to collate the negotiation details and automate the SLA life cycle.

Users of the Sla Life Cycle
Domain expert: It is an entity to represent the domain knowledge in the cloud SLA.There are various people involved such as business management, finance authorities, clients of the consumer, software architects, development and maintenance team, legal experts, security and privacy experts and many more.As cloud SLA spans with many domain concepts, forming ontology is necessary to gather the knowledge.Three SLA ontologies indicating the service domains such SaaS, PaaS and IaaS are developed using protégé editor.
Cloud Consumer: In the pre-negotiation phase, consumer attempt to learn the Cloud Standards Customer Council-CSCC [2] [12] ten step process by answering the sequence of questions, thus matching the provider SLA in the registry.Monitoring and validation activities require the consumer participation.
Cloud provider: It starts with the creation of SLA templates and registering into the repository.Provider is the core actor involved in almost all the activities in the life cycle.

Semantic Knowledge Formation and Extraction
Ontology is used to represent the SLA negotiation concepts and the relationship between the cloud actors in the negotiation.Three owl ontologies to denote each phase in the SLA life cycle are implemented.OWL DL (Ontology Web Language Description Logic) is used for maximum expressiveness of the language constructs.Reasoning support in OWL DL is used to compute the inferred ontology class hierarchy and consistency checking.It is very tough to develop evolutionary ontologies [13] without a reasoner and maintain logically in correct state.OWL parser is used to extract the semantic knowledge and formulating questionnaires.Ontologies are stored either in RDF (Resource Description Framework) or OWL language format.Apache Jena, java based parser, is used to scanning and retrieving the classes, attributes, properties in the OWL documents.The numbers of classes, sub classes, individuals, object properties and data type properties are counted by parsing the OWL.There are seven metric elements derived from OWL documents which are given in Table 1.There are totally 417 classes and 1325 sub classes used to describe the concepts in the ontologies.

Semantic Negotiation-RESULTS Analysis
The aim of this implementation is to develop an automated and interactive web SLA platform for consumer-Figure 1. Cloud SLA life cycle [1].provider negotiation.The actors involved are: domain expert, cloud consumer and cloud provider.Besides, ontology for each phase (pre-negotiation, negotiation and post-negotiation) is constructed using protégé tool.Further, semantic knowledge is extracted in the form of questionnaire to collate the negotiation details and automate the SLA life cycle.The ontologies developed are used to auto-generate the questions for the various template formations.These questions are given to the consumers and the providers for effective interaction and negotiation, and answers are received and stored in the repository.These answers should be relevant and match with the requirements.Hence, it is essential to measure the accuracy of the relevant answers given by the consumer and the provider.To achieve this, precision and recall method [14] is used.
Precision is calculated from the total number of relevant answers divided by the total number of answers gathered using web platform.Similarly, recall is calculated from the total number of relevant answers divided by the total number of questions generated from the ontology.Precision and recall score are computed for three types of SLA documents taken from SaaS, PaaS and IaaS service providers and are depicted in Tables 2-4 respectively.From Figures 2-4, it is evident that the number of relevant answers given by the consumer and the provider is always more than in case of recall score and 90% in case of precision score, which prove that relevant answers are retrieved from the cloud actors.
The SLA profiler [15] is implemented based on the provider compliance with the already existing services.SLA profile score is used to capture the competitive past metrics of the providers.Here, five SLA compliance metrics are analysed such as non-SLA breaches, successful negotiation, service availability, I/O data rate and certification standards.Profile score is calculated by dividing the sum of the profile value of the specific SLA compliance by the number of SLA documents in the registry.
Profile value is normalized with the range from minimum of 1 to maximum of 10.For instance, service availability of the provider may have the profile value of 9, which means that 90% availability is assured from the existing services.Five SLAs are taken from each service (SaaS, PaaS and IaaS) and profiler value for them is computed by taking mean value of it.Figure 5 represents the profiler meter for the five SLA compliances.It is interesting to note that certification standards of the cloud providers are having low profile score of 4, which indicates that providers are still hesitant to register for cloud certification.
As the last step in the pre-negotiation phase, matching of consumer requirements with the provider SLA is done.If the match is found for the customer metrics in the SLA registry, negotiation is enabled.The consumer requirements are captured via the CSCC guidelines [12] [16] web form, and conversely the provider service metrics are stored in the SLA registry.To evaluate the performance, different sets of consumer requirements are used to find the exact match in the provider SLA.For each service model such as SaaS, PaaS and IaaS, 5 sets of consumer requirements (5, 8, 13, 17 and 20) are identified and the evaluation is done.From the results indicated in Figure 6, it is observed that the number of consumer requirements is indirectly proportional to the number of matched SLA.For example, if the consumer requirements are 20 or more, then matched SLA will be one or two.Filtering of provider SLA further helps to accurately match the consumer desire for negotiation.
The auto negotiation platform implemented here reduces many tasks of both the negotiators-the consumer and the provider.Configuration is done for auto-renewal, auto-debit and credit, auto-trigger email notification of events such as claim, renewal, and log reports activities without human intervention.Also, automatic matching of consumer requirements and provider SLA, auto-verification of SLA with template are made using the web platform.
This semantic platform makes significant difference in the task completion during negotiation with the help of automated configured services.The number of tasks performed by consumer and provider in the three phases of SLA life cycle are analysed through different experimentation.It is derived from the test results that greater level of task efficiency is achieved.From the graph results in Figure 7, Figure 8, it is explicit that consumer and provider can efficiently perform the negotiation tasks.Overall, consumer tasks are reduced to 31 from 54 with 57% task efficiency.Likewise, provider tasks are reduced to 26 from 51 with 51% efficiency.

Conclusion
Three phased SLA life cycle is implemented by automating the activities such as template drafting, registry formation, matching of SLAs with consumer requirements, profiler, report generation, penalty claim initiation, validation of consumer claims and termination initiation.Besides, auto-trigger notification by email is       configured for better interaction between the consumer and the provider.By employing the semantic knowledge, meaningful questions and answers are gathered for the various negotiation activities.The implemented web platform was evaluated using precision and recall for the semantic question answering extraction.It is proved that accuracy for relevant answers received from the templates is significantly increased for different SLA types, i.e. precision accuracy for SaaS SLA and PaaS SLA is 94% and IaaS SLA is 95%.Also, automatic matching of provider SLAs with the consumer requirements metrics indicates that inverse relationship exists between the number of consumer requirements and the matched SLAs.This platform reduces the trade-off between the consumer and the provider.The performance of the web platform is assessed by the task efficiency of the consumer and the provider which has resulted in 57% for the consumer and 51% for the provider.This automated web platform can be provisioned "Negotiation as a Service" in the future work.

Figure 6 .
Figure 6.Matching of SLA with consumer requirements.