ProViNet - An Open Platform for Programmable Virtual Network Management Wanderson Paim de Jesus, Juliano Araujo Wickboldt, Lisandro Zambenedetti Granville Federal University of Rio Grande do Sul Porto Alegre, Brazil {wpjesus, jwickboldt, granville}@inf.ufrgs.br Abstract—The disheartening and thorny path followed while deploying new solutions in the core of current computer net- works, culminates in a low rate of emergence of innovation. Several researches proposed applying Software Defined Networks (SDN) and the Network Virtualization (NV) concepts to reverse this rate. However, many gaps and open challenges were observed in the application of these concepts together. In this paper, we propose the ProViNet platform, which merge the SDN and NV concepts to provide a fast and safe deployment of innovations in the existing network infrastructure. ProViNet advance the state- of-art introducing the concept of Network Programming as a Service, in which applications are built simply by composing control plane services. Such approach encourages End-Users to develop and share novel network solutions, fostering innovation. To prove concept and technical feasibility, we evaluate ProViNet with a prototype that allowed demonstrating virtual network infrastructure provisioning and programming. I. I NTRODUCTION Today, the core of computer networks is, when compared with servers, desktops, and mobile devices, an unfriendly environment for innovation. In the case of the Internet, this fact is often refereed to as the Internet ossification [1]. Solutions like IPv6 and IPSec, for example, proposed for over 10 years, have been struggling to be barely adopted. Among the factors that contribute to such hostile environment for innovation are: (i) the necessity of deep and global modifications in order to adopt new solutions, (ii) the slow standardization process required to grant interoperability with legacy protocols, (iii) the dependency on the profit-oriented interest of network equipment vendors, and (iv) the tendency of network core devices on using proprietary software and hardware, ruling out any possibility of customization from End-Users. With the promise to reverse this state of ossification, the research community is investing hard on the concepts of Network Virtualization [2] and Programmable Networks [3]. Both concepts are merged together to provide sets of virtual networks with different behaviors, forming the so- called Programmable Virtual Networks (PVN) [4]. One of the approaches adopted to deploy PVN follows the format of Software Defined Networking (SDN) [5], which defines the decoupling of control and data planes. Some implementations of the control plane employ the Service Oriented Architecture (SOA) to provide high level services through a standardized interface. Thus, network applications can be programmed in different languages, becoming less dependent on the technol- ogy used in the control plane. On the one hand, the decoupling of network applications, control plane, and data plane in SDN architectures, has shown to be flexible and scalable [6]. On the other, it induces a great management complexity. Management models used in common networks are not suitable for programmable virtual networks since they do not deal with the dynamic deployment of new network services. Moreover, once virtual networks tend to be more open and innovation friendly, in a near future End-Users may be able to implement and deploy their self- developed network applications in order to attend to their spe- cific demands. Nevertheless, harmonizing applications, users and virtual networks, while maintaining the reliability and scalability of services deployed is an open issue. PVN management proposals vary according to the de- ployment environment and the requirements of users. Shared experimental facilities (testbeds) usually employ proposals focused on slice provisioning, such as ProtoGENI [7] and OFELIA Control Framework [8]. However, the management of network programmability upon the slices is not provided or is limited. Similarly, market oriented solutions typically found in Cloud Computing environments, such as XenServer Dis- tributed vSwitch Controller (CITRIX) and OnePK (CISCO), are intended to provide network programmability control for Cloud providers, not for End-Users. Instead, we believe that in order to achieve higher rates of innovation attending to new virtual network specific demands, it is important to include the End-User in the process of creation and deployment of novel network applications, turning this process more democratic. This paper tackles the research problem of how to manage PVN infrastructure, leveraging its capabilities to provide pro- grammability to End-Users and fostering innovation in this context. With this in mind, we propose the Programmable Virtual Network (ProViNet) management platform. ProViNet introduces the concept of Network Programming as a Service, in which applications are graphically composed simply by dragging and dropping control plane services. Such approach encourages End-Users to develop and share novel network solutions, promoting innovation. We have implemented a pro- totype to demonstrate the feasibility of the concepts proposed within ProViNet platform. Also, a case study is presented in this paper to illustrate the applicability and benefits that can be achieved by employing the proposed approach. The rest of the paper is organized as follows. In Section II, we outline the main scientific papers that address PVN man- 2013 IEEE 37th Annual Computer Software and Applications Conference 0730-3157/13 $26.00 © 2013 IEEE DOI 10.1109/COMPSAC.2013.58 329