THEORETICAL STUDY OF CLOUD TECHNOLOGIES

One of the main objectives of the smart city is to improve the quality of life. The information and communication technology (ICT) components are used as vital parts of the system. Increasing efficiency is the base of the smart city’s sustainability. Therefore to increase the efficiency of ICT is crucial. Although cloud technology is just one possible building block of the ICT infrastructure its theoretical study used by the smart city is important because the cloud building technologies can be extended to the use of other ICT technologies. Because of these possibilities, one should study the potential regularities of cloud operation which affects among other things, the availability, capacity, flexibility and scalability topics as well.


INTRODUCTION
The cloud technology in information and communication technology (ICT) is a young and cutting-edge area. This is due to the fact that from the individual mobile to a full realization of virtual data centers it is possible to provide service over the network. Many people do not know that their communication device uses such a service. Users do not use these facilities consciously.
Most people who have heard about cloud think of clouds provided by the telecommunications and information technology service providers. Although anyone can use these services nowadays, the first clouds were used at companies in a closed way. These were private systems with unique implementation. Over time development enabled the standard usage and economic services could appear. Later the advance of technology has provided some management solutions that allowed the measurability of this technology. This enabled the cloud as a service to external partners. Today the conscious use of clouds affects the flow of information. Thus, cloud usage indirectly affects also the rankings in the academic sphere [1,2].
Documents that are found on topic [3] of cloud computing do not provide sufficient insight into the technologies used for cloud construction. These technologies themselves are used separately and solutions of manufacturers are well documented. The synthesis of implementations and a combination of technologies, namely technologies of cloud building are less documented. This study will cover the definitions, requirements and the main building technologies of the cloud. These technologies are based on the recommendations of the principal component-manufacturers.

DEFINITIONS
The internationally agreed definition of cloud by the National Institute of Standards and Technology (NIST) is based on the cloud's requirements. The organization provides only an indirect definition and this definition does not include the goal of the cloud. The system without a goal looks like a system that only exists for its own sake. Therefore the definition should be made more applicable which contains the goal to be achieved.
The cloud service has three actors: the customer, the vendor, and the legislator. Because of this, the definition is possible from more aspects. The purpose of the user who is the official customer of the service is other than the purpose of the vendor who is the manufacturer of the technology. Furthermore, the legislator has independent control. The different interests of the actors justify the conclusion of a service contract in which the parties should jointly formulate what they mean for services.
The proliferation of cloud systems and the increasing number of disputes that are likely to appear require the definition of formal cloud service. Legislators can use this definition to statutory interpretation and dispute settlement. Furthermore, the robust cloud service providers are multinational companies nowadays who have taken into account disaster tolerance issues and have formed their systems in several countries or continents. So harmonization and internationally accepted interpretation are needed. Definition of the cloud is possible from the following aspects:

INDEPENDENT ASPECT
From an independent perspective, the cloud definition, identification and classification types by NIST mentioned above can be the base in the legal systems of individual nations and the international alignment. According to this definition "cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction" [4].
This definition seems wordy and not exactly defined. This applies in general to an independent approach. The aspects of these definition types are to describe the behavior of the system and the system is determined by its behavior. From a special aspect, by contrast, the definition can have a more closed shape.

USER ASPECT
From the user approach, the cloud can be defined as such: the cloud is a combination of flexible computing services that can take over the interface of the service provider in order to implement more cost-effective business processes.
The economic interests of the customer are dominant at this definition. The goal is the longterm cost-effectiveness [5]. It does not need a large IT operation to be maintained in case of recourse cloud services as a customer uses their infrastructure. Furthermore, the introduction of individual systems can be more flexible to manage.

CONTRACTUAL ASPECT
From the aspect of the customer and supplier cloud can be defined as the following: the cloud is a flexible information and communication technology service system that is made possible through an interface specified in the contract and agreed by both parties in quantity and quality.
This definition is based on the parameters specified in the contract. This contract is an interface interpretation which is served between the supplier and the customer.

TECHNOLOGICAL ASPECT
From the topic relevant technological aspect, the cloud can be defined as the cloud is a flexible and measurable information and communication technology system in which the services behind the interface are as far as possible independent of the faults and limitations of physical and logical devices.
This definition is based on the technology. Intrinsic properties of the cloud appear here which arise from the technologies used for building [5]. Before the introduction of technologies in order to increase transparency, one should discuss some of the basic concepts and requirements.

REQUIREMENTS
The analysis of cloud building technologies shows that the most important characteristics of the cloud include reliability, component variability, flexibility and the measurability of the services. The technical requirements of the components can be grouped according to the following topics:  availability (existence),  virtualization of necessary resources (structural and energy knowledge),  virtualization of implemented services (validation),  flexibility (control and change management).

AVAILABILITY
The cloud is always possible to operate because business-critical subsystems can be realized in it. The increase of the system's reliability can be achieved using a reproduction of physical and logical components. It is also known as redundancy. One of the features of reliability is availability [6,7]. This is a percentage to the scanned object which is the working percentage of the time interval in question.
Generally, automation has to be introduced in the system management layer up above 90% planned availability. The finances spent on the degree of automation are growing rapidly to increase designed availability. The curve's asymptote is at 100% planned availability. This is analogous that 100% safety could be achieved neither with risk assessment nor with risk reduction.
The level of availability assumed by the service provider is often recorded in the contract. A value above 95% is called high availability (HA) [5]. The big cloud providers take "fiveniner" uptime, which is 99,999%.

RESOURCE VIRTUALIZATION
The cloud works to the extent possible regardless of the individual resources. Its availability and capacity are higher than the individual processing units' ones [8]. The used cloud building technologies make this property possible, among which virtualization is highlighted. This means that the virtualized architecture layer's real resources are covered, and only the required quantity and quality capacity are presented to the higher layer in a necessary way.
This technology enables the services' measurability, too.

SERVICE VIRTUALIZATION
The implementation of cloud services must be measurable. An implementation of service may affect several devices and several components of services may be present on one device. Because of this, the concept of virtual service was introduced.
The service to be detected is displayed as such. The relevant system components' relationships are modeled for compiling virtual services and these components' dedicated availability and capacity data are used to measure the service being provided [9]. These metrics are usually included in the contracts.
The use of virtual services is essential to establish the appropriate cloud management layer.

FLEXIBILITY
The system components which implement cloud services have to be flexibly parameterized. The virtualization has to be implemented in such a way that the presentation of resources can be properly granulated. The additional requirement is that dedicated capacity can be flexibly assigned to the services. If the operating processes permit these system parameters can be changed on the fly [10]. Adequate performance of individual subsystems can easily be formed, thereby enabling cost-effective operation.

BUILDING TECHNOLOGIES
Several manufacturers' realization came to light about the previously mentioned increase in availability. Considering the principle of operation it can be grouped around a few core technologies.
Each technology is based on redundancy registered in the system. The strongest method is the complete duplication of the components (2n redundancy). The simplest case means that one more than necessary components are deployed in the system (n + 1 redundancy). Passive and active operation modes are possible in both cases [5].
In a passive operational mode, only one component serves the users and another component takes over the role of a faulty component. In an active mode, all the components serve the users and the faulty component's load will be transferred to other elements.
Most outlined building technologies below can be found in all the architectural layers of the cloud. For many, some technologies are more or less familiar. However, they are not always aware of its logical system and the manifestation of these technologies in the cloud layers.
The core technologies:  cluster Technology,  grid technology,  virtualization,  split technology.

CLUSTER TECHNOLOGY
Clustering means that more components can perform the same activity but it seems a single service looking from outside. The primary goal is to increase availability.
This building technology has democratic governance. This means that the cluster elements maintain an equal relationship with each other. In case of failure the components still being used jointly decide on the inner constellation to continue providing the service. This democratic governance has the condition that a very fast communication channel has to be established between the members. This channel can be a shared channel or device [11,12]. Figure 1 shows the working schema of the cluster.
The clusters can be passive (fail-over). In this case, if one member implements the feature and an error occurs, another member will continue. The cluster can be active (load-balance) when each member is involved in implementing and in case of failure the load of the failed member takes over [12]. Disadvantages:  disadvantage stems from the need for fast communication because long distance could not be between members,  because of the predictability of charges cluster should be implemented by physical devices with the same parameters.

GRID TECHNOLOGY
The Grid technology means that more components perform the same activity but looking from outside it seems a single service. The primary goal is to reduce the processing time.
In contrast to the cluster, it has autocratic governance. A controller component controls the operation of the grid and manages its internal administration, directs the faulty member's failover, performs the presentation of services. The most important task is to divide the operations between members related to its capacitive possibilities [13]. The grid does not need fast communication between the members. Figure 2 shows the working schema of the grid. Due to the operating principle of the grid, it always works in active mode (load balance). If the controller continuously administers the capacity and processing capability of the members, the use of a variety of infrastructure is accessible. In the absence of administration, however, only the same building blocks could be used for building the same instruments.
Advantages:  the grid can be built on a large distance,  building blocks with different parameters may also be utilized.
Disadvantage:  due to the task-oriented working method, it has very slow error handling.

VIRTUALIZATION
As previously mentioned the virtualized architecture layer covers the real resources and presents only the required quantity and quality of capacity to the higher layer in a necessary way. This technology made possible the further development of cluster and grid technologies and cloud formation [14]. Figure 3 shows the virtualization's schema.
The virtualization first appeared on servers as a new layer under the layer of the operating system. Later this technology appeared in the network topology, in the storage's data allocation layer, then in the cloud management layer. It is now up to the entire data storage layer, to the entire server layer, to the total manifestation of network with minimal exceptions and the system management layer.

SPLIT TECHNOLOGY
The emergence of large data centers and thus increasing availability intention formulated new needs. The risks associated with the site becoming unusable must be reduced to a minimum. This demand continued to grow with the appearance of clouds.
Many manufacturers have developed solutions but the principle is similar. The basic element of the implementation is a splitter component which typically works in the low level data storage layer of the architecture. This feature controls the communication traffic of the higher layers and directs it to multiple directions. This method enables data replication to other sites [15]. Figure 4 shows the split technology.
The replication can be synchronous, asynchronous or dynamical. In the synchronous method, the system waits for the write-through of the other side's data. In the asynchronous method, there is no waiting only a communication journal is used for following the primary site. In the dynamic method, the result of waiting depends on the actual performance. If a site fails then another site executes the components of the system. Furthermore, the sites could be the disaster site of each other. The manufacturer's platform and the implementation are carried out within the expected influence on the switching time (from a few minutes to a few hours) and cost requirements of the solution as well.
Nowadays there are new solutions where the splitter component is situated in the virtual layer. The storage layer is controlled from this layer through a logged communication channel.

CONCLUSIONS
The cloud can be approached from multiple aspects. Independent, user, contractual and technological angles can be tested in the definition. The independent definition includes the system's behavior. The user definition includes cost-effectiveness. The contractual aspect specifies the parameters of the system. The wording from the technological aspect implies that the most important requirements are availability, independence, flexibility, and service orientation.
The cluster, grid, virtualization and split technologies enabled to satisfy the discussed requirements of the cloud. The cluster is used to increase availability. The Grid is used for faster processing time. Virtualization is used to carry out flexibility. Split technology is used to implement disaster tolerance.
These technologies are in use today in all architectural layers of the cloud. The technologies are not pure but mixed and complementing each other. Furthermore, these technologies can be used for ICT components that are not part of the cloud. The application of these technologies can increase availability and flexibility. This is in terms of sensor and actuator components of the smart city infrastructure. These are also important requirements if the components' possibilities of failure have to be eliminated.