In some sense the current state of the art in cloud computing resembles the one in the early to mid 1970s when the Internet was a data network expected only to transport data files from one site to another. Since then the Internet hardware and the software had undergone a dramatic evolution allowing this complex communication system to became a critical element of the infrastructure of the society; today the Internet supports the Web, electronic commerce, data streaming, and countless other applications including cloud computing.
The clever design of the Internet, the fact that it was conceived as a network of networks and that in the early stages of development it was not constrained by a plethora of standards and regulations allowed it to evolve to what it is today; all networks were only required to use the IP protocol and IP addresses.
Today, we are far from a coherent framework that would support clouds of autonomous computer clouds and tear down the barriers between the three cloud delivery models, SaaS, PaaS, and IaaS.
There is a substantial gap between the academic research and the community of CSPs. Very little information about the accuracy and the limitations of existing tools is available in the literature because CSPs are unwilling to share internal data. Each cloud service provider attempts to protect its proprietary technology and protocols which ensure the commercial success of the organization. The practical realization of interoperability seems to be fairly remote possibility under these circumstances; thus, we expect that for the foreseeable future, vendor lock-in will continue to be a very troubling issue for cloud users.
What key trends can we expect to shape the future of cloud computing?
The many challenges faced by cloud computing hint that computer clouds are indeed complex systems. A complex system is one with a very large number components, each with distinct characteristics, and with many interaction channels among individual components.
Four main groups of actors are involved in cloud computing:
- the CSP infrastructure consisting of possibly millions of compute and storage servers and an interconnection network
- a very large population of individual and corporate users
- the regulators, the government agencies that enforce the rules governing the business
- the physical environment, including the networks supporting user access and the power grid supplying the energy for powering the systems and for heating and cooling.
Today's clouds are designed and engineered using techniques suitable for small-scale deterministic systems rather than complex systems with non-deterministic behavior.
Disruptive technologies such as self-organization could support effective and robust mechanisms for implementing the most desirable cloud management policies. Self organization can also support a user-centric approach whose main goal is to assemble dynamically a subset of cloud resources tailored to the needs of each application and, when the application is completed, reconfigure the systems for a new task
The intuitive meaning of self-organization is captured by the observation of Alan Turing "global order can arise from local interactions."