16.01.2014 Views

Merging of TOSCA Cloud Topology Templates - IAAS

Merging of TOSCA Cloud Topology Templates - IAAS

Merging of TOSCA Cloud Topology Templates - IAAS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2 Fundamentals<br />

2 Fundamentals<br />

This chapter provides the fundamentals necessary for this thesis. In Section 2.1 the definitions<br />

from Graph Theory used throughout this work are provided. Section 2.2 gives a brief<br />

introduction to <strong>Cloud</strong> Computing and Section 2.3 presents the syntax <strong>of</strong> the <strong>TOSCA</strong> specification<br />

in detail. Finally, Section 2.4 defines the fundamentals and the approach for designing<br />

extendable frameworks.<br />

2.1 Graph Theory<br />

One <strong>of</strong> the underlying theoretical principles <strong>of</strong> this thesis is graph theory. This section introduces<br />

the terms and definitions used throughout the rest <strong>of</strong> the thesis.<br />

Informally a graph or general graph is a set <strong>of</strong> nodes, also called vertices, and a set <strong>of</strong> edges.<br />

There exist many slightly different formal definitions and notations <strong>of</strong> graphs. The formal<br />

definitions in this master thesis are based on [47], [8] and [48].<br />

Definition 2.1 (Undirected graph): An undirected graph G = (V, E) consists <strong>of</strong> a set V <strong>of</strong> vertices<br />

and a set E <strong>of</strong> edges and every e ∈ E <strong>of</strong> G connects two, not necessarily distinct, vertices <strong>of</strong><br />

V. For every graph G, the following holds true: V ∩ E = ∅. A graph G is called simple if it has<br />

no edge ending at the same vertex (loop) or parallel edges.<br />

Note: It is assumed that the sets and <strong>of</strong> a graph are finite.<br />

Definition 2.2 (Incidence and adjacency): Given a graph G = (V, E) and an edge e ∈ E, one<br />

can write e = {u, v} whereas u, v ∈ V are vertices that are called the ends <strong>of</strong> e. If v is an end <strong>of</strong><br />

e, we say v is incident to e. Two vertices that are the ends <strong>of</strong> an edge e, are called adjacent to<br />

each other. The same holds true for two edges that are incident with a common vertex.<br />

Definition 2.3 (Subgraph): Given a graph G = (V, E), a graph H = (W, F) is a subgraph <strong>of</strong> G,<br />

if W ⊆ V and F ⊆ E. We say G contains H or H is contained in G and write G ⊇ H or H ⊆ G<br />

respectively.<br />

Definition 2.4 (Path and cycle): Given a graph G = (V, E) a path is a linear sequence <strong>of</strong> vertices<br />

that are adjacent if they are consecutive in the sequence and nonadjacent otherwise. No<br />

vertex is repeated in the sequence. A cycle is a closed sequence where u = u and u , u ∈ V,<br />

i.e. the starting and ending vertex are identical.<br />

Definition 2.5 (Connected graph and components): A graph G = (V, E) is connected if there<br />

exists a path from every u ∈ V to every v ∈ V. Otherwise G is called disconnected. A maximum<br />

connected subgraph is called a component.<br />

Definition 2.6 (Directed graph): A directed graph, or short digraph, = (, ) consists <strong>of</strong> a<br />

set <strong>of</strong> vertices and a set <strong>of</strong> directed edges (arcs) such that to every ∈ a unique ordered<br />

pair (, ) ∈ has been assigned. The vertex u is called tail and the vertex v is called head <strong>of</strong><br />

the arc = (, ). A loop is an arc = (, ) where head and tail are the same vertices. Two<br />

5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!