Network Programmability as a Cloud Service
Network virtualization and programability
- Mentor: Somaya Arianfar email: nessa.arian-at-gmail dot com
- Min-max team size: 2-4
- Expected project hours per week (per team member): 6-8
- Will the project be open source? Yes.
Preferred past experience
- Programming competency in both Java and Python (Very important)
- with concepts and protocols of computer networks (Ethernet, IP, transport protocols) and Software-Defined Networking (SDN) (Valuable)
- OpenStack and Neutron (nice to have)
Massachusetts Open Cloud (MOC) envisions an open cloud exchange model in which customers can rent out hardware resources and cloud services from a number of different hardware and cloud providers. Networking plays an important role in realizing this model. Several networking challenges arise when multiple providers are involved in serving a customer. Some of these challenges include: supporting interoperability for services that span different HW providers and cloud providers, and allowing customers to have the same kinds of control that they have over the network when they own the HW.
In this project we use Software Defined Networking (SDN) to address some of the MOC networking challenges. Our main tools to achieve this goal are OpenVirtex to support network virtualization, and the available MOC platforms e.g. HaaS and OpenStack to provide network programmability as a cloud service.
The goals of this project are:
- Add multi–domain network virtualization support to OpenVirtex
- Support interoperability between the Multi-domain OpenVirtex and the rest of the MOC platform, e.g. HaaS or/and OpenStack
- Evaluate various aspects of the resulting system, and
- Explore novel networking services enabled by providing full network control to the customers
Some Technologies you will learn/use:
- Mininet (virtual network emulator) and OVS
- OpenStack and neutron