Model-Checking Cloud Systems Using BigMC

elements. Site Let us return to our running example and apply the bigraph based formalisation approach (Sahli et al., 2014) to give a well-defined semantics of its architectural aspect. Assuming that the two services are deployed in the same virtual machine and an end user is connected to the first service while the others are connected to the second service. The corresponding bigraphical model is shown in Figure 5. 28 Model-Checking Cloud Systems Using BigMC Hamza Sahli ● Faiza Belala ● Chafia Bouanaka Figure 5: The example’s Bigraphical model. As we can notice in Figure 5, there are two services actually deployed in the virtual machine VM1 and two end users connected to S2 service through the edge e3. Thus, the S2 service cannot be allocated to another end user and the virtual machine VM1 cannot deploy any other service instance. This is expressed in our model by the absence of a site in that virtual machine. The signature associated to a cloud bigraph is as follows: K = {L: (0, active), N :( 2, atomic)}, L and N represent controls associated to different nodes. The different nodes types used in the model and their associated controls are summarized in Table 4. Table 4: Nodes types of cloud architecture Node Control Attribute Arity Meaning EU N Atomic 2 End User DC L Active 0 Data center LB N Atomic 2 Load balancer SE L Active 0 Server VM L Active 0 Virtual machine S N Atomic 2 Service The cloud system initial configuration expression in BigMC tool appropriate grammar is shown in Figure 6. Figure 6: Implementing Bigraphical model in BigMC. We notice that each concept involved in the cloud system has a precise semantics. The conceived bigraphs do not specify just the graphical representation, but also the intended mathematical models. Furthermore, the proposed formalisation approach is general enough; it remains valid for any cloud architecture examples. To deal with the dynamic behaviour of cloud system at runtime, we enrich the proposed bigraph-based model with reaction rules. Hence, a set of reaction rules defining system configurations and their evolution at runtime is specified. 4.2 Modelling Cloud System Reconfiguration Albeit, bigraphs are sufficient to formally specify cloud systems static structure, they do not represent their dynamic behaviour. Our main contribution is to extend the proposed bigraph-based model for cloud system by a set of reaction rules expressing its possible reconfiguration. Table 5 illustrates how we graft behavioural models, based on reaction rules, to graph transformation ones, to deal in this case with Bigraphical Reactive Systems (BRS). Table 5: Modelling cloud system dynamics

[1]  Samir Tata,et al.  Formal Modeling of Elastic Service-Based Business Processes , 2013, 2013 IEEE International Conference on Services Computing.

[2]  Bing Zhang,et al.  Formal Discussion on Relationship between Virtualization and Cloud Computing , 2010, 2010 International Conference on Parallel and Distributed Computing, Applications and Technologies.

[3]  Søren Debois,et al.  A model checker for Bigraphs , 2012, SAC '12.

[4]  J. R. Vic Winkler Securing the Cloud: Cloud Computer Security Techniques and Tactics , 2011 .

[5]  E. Michael Maximilien,et al.  Towards a Formal Definition of a Computing Cloud , 2010, 2010 6th World Congress on Services.

[6]  Faiza Belala,et al.  Verifying Cloud Systems using a Bigraphical Maude-based Model Checker , 2014, ESaaSA@CLOSER.

[7]  Yike Guo,et al.  Principles of Elastic Processes , 2011, IEEE Internet Computing.

[8]  Robin Milner,et al.  The Space and Motion of Communicating Agents , 2009 .

[9]  Mariam Rady Formal Definition of Service Availability in Cloud Computing Using OWL , 2013, EUROCAST.

[10]  Guilherme Galante,et al.  A Survey on Cloud Computing Elasticity , 2012, 2012 IEEE Fifth International Conference on Utility and Cloud Computing.

[11]  Samir Tata,et al.  Formal Modeling and Evaluation of Service-Based Business Process Elasticity in the Cloud , 2013, 2013 Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises.

[12]  Chafia Bouanaka,et al.  Towards a Formal Model for Cloud Computing Elasticity , 2014, 2014 IEEE 23rd International WETICE Conference.

[13]  Robin Milner,et al.  Bigraphs and Their Algebra , 2008, LIX.

[14]  Ying Zhang,et al.  Cloud calculus: Security verification in elastic cloud computing platform , 2012, 2012 International Conference on Collaboration Technologies and Systems (CTS).

[15]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[16]  Samir Tata,et al.  Formal Modeling and Evaluation of Stateful Service-Based Business Process Elasticity in the Cloud , 2013, OTM Conferences.

[17]  Katina Michael Securing the Cloud: Cloud Computer Security Techniques and Tactics , 2012, Comput. Secur..

[18]  Paul Watson,et al.  Formalising Workflows Partitioning over Federated Clouds: Multi-level Security and Costs , 2012, 2012 IEEE Eighth World Congress on Services.

[19]  Schahram Dustdar,et al.  Iterative test suites refinement for elastic computing systems , 2013, ESEC/FSE 2013.

[20]  Samuel Kounev,et al.  Elasticity in Cloud Computing: What It Is, and What It Is Not , 2013, ICAC.