Cloud-native systems are emerging as programmable and connected applications, designed and developed intrinsically to operate as cloud environments. They are: deployed as virtual and containerised environments; increasingly connected by softwarized networks that can be dynamically (re)configured to adapt to system change; and automatically managed by cloud orchestration platforms, such as Kubernetes and OpenStack to maintain their reliable and healthy operation.
This module will begin with the definition and description of converged networks and services and identify current and emerging cloud services and network architectures. The introduction will also include an overview of the key next-generation network architectures that are being deployed today. The course will dive into programable and virtualized networks, as key enablers in connecting the cloud-native systems. To this end, the course will introduce principles of software-defined networking and network function virtualization. It will then introduce principles of service cloudification and networking, including service mesh.
In order to understand the design of any network, it is important to understand the service characteristics in terms of customer usage patterns and traffic behaviour; these fundamentally determine the desired Service Level Agreements (SLAs) and ultimately the network and service architectures. Ensuring satisfactory user experience for multiple services will be addressed in detail by means of various Quality-of-Service (QoS) mechanisms.
Last but not least, cloud-native systems are composed of multiple interconnected virtual components, continually increasing in number and complexity. Practical deployment and maintenance of such systems require dedicated cloud orchestration and management platforms. The module will conclude by introducing principles of cloud orchestration, focusing on example orchestration platforms: OpenStack for orchestrating Virtual Manchines (VMs) and Kubernetes for orchestrating containers and their scheduling methods, along with Application Programming Interfaces (APIs) and their application in these platforms.
The content of this module is relevant to IP Networking Principles covered in CE707. If CE707 is an option in your course structure then we strongly recommend choosing this option to take in conjunction with CE709.