With the advent of cloud computing, different cloud providers with heterogeneous services and Application Programming Interfaces (APIs) have emerged. Hence, building an interoperable multi-cloud system becomes a complex task. Our idea is to design fclouds framework to achieve semantic interoperability in multi-clouds, i.e., to identify the common concepts between cloud APIs and to reason over them. In this paper, we propose to take advantage of the Open Cloud Computing Interface (OCCI) standard and the Alloy formal specification language to define the fclouds language, which is a formal language for specifying heterogeneous cloud APIs. To do so, we formalize OCCI concepts and operational semantics, then we identify and validate five properties (consistency, sequentiality, reversibility, idempotence and safety) that denote their characteristics. To demonstrate the effectiveness of our cloud formal language, we present thirteen case studies where we formally specify infrastructure, platform, Internet of Things (IoT) and transverse cloud concerns. Thanks to the Alloy analyzer, we verify that these heterogeneous APIs uphold the properties of fclouds and also validate their own specific properties. Then, thanks to formal transformation rules and equivalence properties, we draw a precise alignment between our case studies, which promotes semantic interoperability in a multi-cloud system.
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Specifying Semantic Interoperability between Heterogeneous Cloud Resources with the fclouds Formal Language (CLOUD'2018)
1. 11th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Specifying Semantic Interoperability between
Heterogeneous Cloud Resources with the fclouds
Formal Language
Stéphanie Challita, Faiez Zalila, Philippe Merle
2. Multi-clouds
211th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Deployment
Model
Management
Interface
Service
Model
Public SOAP
IaaS,
PaaS,
SaaS
Public REST
IaaS,
PaaS,
SaaS
Hybrid REST IaaS,
PaaS
Private REST IaaS
Aneka Hybrid SOAP PaaS
3. Multi-clouds engineering
311th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Programming
Libraries
Modeling
Space
Programming
Space GCP
SDK
AWS
SDK
Provider
Space
Public PrivateHybrid
Cloud
provider
AWS
API
Public
GCP
API
Services
Cloud
architect
Cloud
developer
Modeling languages (TOSCA, CloudML, etc.)
OCCI
API
OCCI
SDK
…
…
OS
SDK
Standards
4. Research questions
Is it possible to reason on cloud solutions and identify their
similarities and differences?
- How to better understand cloud solutions?
- How to make sure that the cloud solution reflects the
desired behaviour?
- How to ensure an accurate migration from a cloud solution
to another?
411th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
5. Semantic space
511th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Programming
Libraries
Modeling
Space
Programming
Space GCP
SDK
AWS
SDK
Provider
Space
Public PrivateHybrid
Cloud
provider
AWS
API
Public
GCP
API
Services
Cloud
architect
Cloud
developer
OCCI
API
OCCI
SDK
…
…
OS
SDK
Semantic
Space
Our approach: fclouds Framework
Cloud
architect
Modeling languages (TOSCA, CloudML, etc.)
Standards
6. ◊ Fclouds framework
◊ Semantics of the fclouds formal language
◊ Properties of the fclouds formal language
◊ Validation in various cloud domains
◊ Conclusion & Perspectives
611th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
7. Fclouds framework
Fclouds1 is a framework for semantic interoperability in multi-clouds
◊ Catalog of precise cloud models
◊ Based on a formal language
◊ Provides formal specifications of cloud APIs
- remove ambiguities
◊ Reasons on cloud APIs
- verify properties
1. Stéphanie Challita, Fawaz Paraiso, Philippe Merle. "Towards Formal-based Semantic Interoperability in Multi-Clouds: The fclouds
Framework." In 10th IEEE International Conference on Cloud Computing (CLOUD). Honolulu, Hawaii, USA, 2017, pp 710 -713.
711th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
8. Fclouds formal language
811th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Formalization of Open Cloud Computing Interface (OCCI) standard in Alloy
9. ◊ Fclouds framework
◊ Semantics of the fclouds formal language
◊ Properties of the fclouds formal language
◊ Validation in various cloud domains
◊ Conclusion & Perspectives
911th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
10. Static semantics
◊ Formalization of OCCI core concepts in Alloy
◊ Concepts are modeled as signatures
◊ Time concept is added to distinguish between mutable and immutable fields
1011th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Extension Configuration
Resource Link
KindAction
DataType
Attribute
Time
source
target
links
use
kinds
types
resources
action
sig Configuration {
use : set Extension ,
resources : set Resource -> Time }
1. R. Nyrén, A. Edmonds, A. Papaspyrou, T. Metsch and B. Paràk, “Open Cloud Computing Interface - Core,” Open Grid Forum, In
Specification Document GFD.221, Feb. 2016.
11. ◊ Formalization of OCCI behavioral specification1 in Alloy
◊ Operations are modeled as predicates
◊ Time concept is added to distinguish between pre-states and post-states
Operational semantics
1111th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
OCCIAPI
Create
Retrieve
Update
Delete
1. R. Nyrén, A. Edmonds, T. Metsch and B. Paràk, “Open Cloud Computing Interface - HTTP Protocol,” Open Grid Forum, In Specification
Document GFD.223, Feb. 2016.
12. 1211th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Operational semantics
pred CreateResource [ config : Configuration,
resourceId : String, kind : Kind , t, t ’ : Time ] {
… }
pred RetrieveResource [ config : Configuration,
resourceId : String, t, t ’ : Time ] {
… }
pred UpdateResource [ config : Configuration,
resourceId : String, attribute1, attribute2 : String,
t, t ’ : Time ] {
… }
pred DeleteResource [ config : Configuration,
resourceId : String, t, t ’ : Time ] {
… }
13. pred CreateResource [ config : Configuration, resourceId : String, kind : Kind , t, t ’ : Time ] {
/ / preconditions at instant t
no resource : config.resources.t |
resource.id = resourceId
kind in config.use.kinds
/ / postconditions at instant t ’
one resource : Resource {
resource.id = resourceId
resource . kind = kind
config.resources. t ’ = config.resources.t + resource }
}
Operational semantics
1311th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
14. ◊ Fclouds framework
◊ Semantics of the fclouds formal language
◊ Properties of the fclouds formal language
◊ Validation in various cloud domains
◊ Conclusion & Perspectives
1411th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
15. Consistency
Definition:
“ fclouds language is consistent if it does not contain any
contradictory constraints ”
◊ Concepts can be instantiated
◊ Each cloud API operation can be executable
1511th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
16. t1
Sequentiality
Definition:
“ Two cloud API operations are sequential when one cannot
happen if the other one did not happen at the time before ”
1611th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
t2
Update-VM
assert CreateResourceThenDeleteResource {
... }
t0
No counterexample
Cores: 2
Memory: 2 GB
Disk: 256 GB
Cores: 4
Memory: 2 GB
Disk: 256 GB
17. Pairs of sequential OCCI operations
Sequentiality
1711th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Create Retrieve Update Delete
Create
Retrieve
Update
Delete
18. t1
Reversibility
Definition:
“ Two cloud API operations are reversible when they contain
inverse mathematical logic ”
1811th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Delete-VM
t0
assert CreateResourceReverseDeleteResource {
... }
t2
No counterexample
19. Reversibility
1911th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Pairs of reversible OCCI operations
Create Retrieve Update Delete
Create
Retrieve
Update
Delete
20. Conformance to HTTP 2 protocol
Idempotence
Definition:
“ A method is idempotent when it
always produces the same server
external state even if applied several
times ”
Example
PUT Create Resource
Safety
Definition:
“ A method is safe when it does not
change the external server state ”
Example
GET Retrieve Resource
2011th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
21. ◊ Fclouds framework
◊ Semantics of the fclouds formal language
◊ Properties of the fclouds formal language
◊ Validation in various cloud domains
◊ Conclusion & Perspectives
2111th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
23. Catalog of cloud formal specifications
13 cloud formal specifications
2311th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Extension #Kind #Attribute #Action #DataType
IaaS
OCCI Infrastructure 5 31 9 20
OCCI CRTP 0 18 0 0
24 251 7 2
Google Cloud Platform 150 2348 985 398
6 19 0 1
PaaS
…
IoT
…
Transverse cloud concerns
…
24. ◊ Verification of fclouds properties via Alloy Analyzer
◊ Definition & validation of domain-specific properties
Example
In OCCI Infrastructure:
Verification of properties
2411th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Compute NetworkNetworkInterface
assert NetworkInterfaceBetweenComputeAndNetwork {
... }
25. Formal transformation rules
& equivalence properties
2511th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
26. Formal transformation rules
& equivalence properties
An instance at GCP is a compute at OCCI
pred ComputeMapInstance [ c : one Compute, i : one Instance ] {
i.name = c.occicomputehostname
i.machinetype.isSharedCpu = c.occicomputeshare
i.machinetype.memoryMb = mul [ 1024, c.occicomputememory ] }
2611th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Compute
GCP
configuration
OCCI
configuration
resources
resources
String
Integer
Boolean
Instance
27. ◊ Fclouds framework
◊ Semantics of the fclouds formal language
◊ Properties of the fclouds formal language
◊ Validation in various cloud domains
◊ Conclusion & Perspectives
2711th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
28. Conclusion & Perspectives
◊ Fclouds: a semantic solution for multi-clouds interoperability
◊ Reason about the common principles that cloud solutions must
adhere to
◊ Fclouds language formalizes OCCI concepts, operations and
properties with the Alloy formal specification language
◊ Validation on 13 cloud APIs
2811th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
29. Conclusion & Perspectives
◊ Extend our catalog of cloud formal APIs
◊ Enrich the fclouds language with additional properties
◊ Use formal techniques other than Alloy
◊ Allow the fclouds framework to be executable inside the first
formal-based real-world interoperability bridge
2911th IEEE International Conference on Cloud Computing (CLOUD) July 2-7, 2018, San Francisco, California, USA
Active Inactive
start
start
stop
Reachability