Software Defined Networks
Software defined networking (SDN) is a rapidly emerging networking paradigm that facilitates the separation of control and data plane. The purpose of this course is to provide students the knowledge and skills necessary to use develop, manage, and secure software defined networks (SDN). The course will have the following elements, including software defined network (SDN) architectures/protocols, network functions virtualization (NFV), network virtualization technologies, and an introduction to programmable data planes. The course will use open-source software to create, deploy, manage, and secure SDNs. Numerous industry SDN solutions have emerged from companies such as Google, IBM, Facebook, AT&T, Cisco, Intel among others. SDN enables innovation, openness and helps reduce CAPEX and OPEX. The course covers the SDN foundations and building blocks; control plane abstractions; SDN controller design and data consistency guarantees; SDN scalability, security, and reliability. The course will also introduce new SDN-enabled networking capabilities, including traffic engineering, automation/orchestration, network virtualization, and verification/troubleshooting for both cloud-native and carrier networks.
Cloud Computing Infrastructure
The purpose of this course is to provide students the knowledge and skills necessary to build, secure and use an effective and efficient cloud computing system. The course will have the following elements, including cloud-native architectures, cloud networking, virtualization, microservices and infrastructure as code (IaC). The course will cover capabilities and features necessary for cloud-native technologies and cloud application development/deployment based on the use of open source software and commodity hardware. The course will also include an overview of cloud- native computing foundation (CNCF) and Linux foundation projects, as well as commercial cloud offerings. Cloud configuration/management, virtual network management and monitoring, microservices, cloud-native application development/deployment and techniques for securing cloud infrastructures will be covered in the course. Virtualization and microservice approach to application development, deployment and scaling will be covered, and students will use these techniques for projects using both commercial and private cloud systems. Students will build and use a cloud computing system and deploy microservices as a part of the class and learn to apply DevOps concepts.