Hello! I’m Mauricio Vásquez Bernal, a research assistant at Polytechnic University of Turin, Italy. I work with eBPF (extended Berkley Packet Filter) and XDP (eXpress Data Path) tecnologies to implement high performance network functions. I am one of the main developers of polycube, an open source software framework that provides fast and lightweight network functions. I am of charge of the development of an eBPF based network plugin provider for kubernetes. I got a BS.c in Eletronic Engineering at University of Antioquia, Colombia and then I got a MS.c in Computer Engineering from Polytechnic University of Turin on 2015. Besides my work, I am an amateur MTB/road cyclist, I enjoy participating in amateur races, even though I haven't got any impresive results yet.
I completed my master's degree in the frame of a double degree agreement between Polytechnic University of Turin and University of Antioquia. I focused my master degree mainly in computer networks.
My thesis, Implementing a Direct vm2vm Channel Communication Prototype in Open vSwitch, proposed an architecture to improve the virtual machine communication by using a shared memory mechanishm based on DPDK and Open vSwitch.
Final degree mark: 108/110 - GPA: 3.93
I did my bachelor in Electronic Engineering focused on programming and computer networks. Additionally I acquired a quite good theoretical and practical knowledge on analogical and digital hardware development.
Final degree mark: 4.59/5.0 - GPA: 3.67
I am one of the two core developers of polycube, an open source framework to build fast and lightweight virtual network functions using eBPF and XDP. I do my work remotely from Medellin - Colombia.
I provided consultancy services for implementing high performant virtual network functions with eBPF.
This was my first touch with eBPF, we developed iovisor-ovn, a prototype to show the eBPF capabilities by providing an ovn replacement for virtual machines networking.
I continued to work on my master thesis topic, developing a transparent optimization for inter-VM communication for Open vSwitch. During this period I participated on the Unify Europen project.
This paper presents the most promising characteristics of eBPF, the main encountered limitations while implementing complex virtual network functions, and we envision some solutions that can mitigate the latter. We also summarize the most important lessons learned while exploiting eBPF to create complex network functions and, finally, we provide a quantitative characterization of the most significant aspects of this technology.Read the paper
This paper proposes an architecture that can optimize inter-VM communication in an NFV environment through the creation of direct channels between virtual machines. Particularly, our prototype can transparently optimize the data transfer between virtual machines running DPDK applications by dynamically recognizing the existence of point-to-point connections in the traffic steering rules, reverting back to the traditional VM-to-switch-to-VM approach when the optimization is no longer possible.Read the paper
This paper presents a software architecture that can dynamically and transparently establish direct communication paths between DPDK-based virtual network functions executed in virtual machines, by recognizing new point-to-point connections in traffic steering rules. We demonstrate the huge advantages of this architecture in terms of performance and the possibility to implement it with localized modifications in Open vSwitch and DPDK, without touching the VNFs.Read the paper
Polycube is an open source software framework that provides fast and lightweight network functions such as bridges, routers, firewalls, and others implemented using eBPF and XDP Linux kernel technologies. On top of polycube we built pcn-iptables, a much more efficient clone of iptables, and pcn-k8s, a network provider for kubernetes.
IOvisor-ovn was an experimental project that implemented the datapth for the Open Virtual Networking (OVN) using eBPF. We built a daemon that read info from the OVN North and SouthBound databases, and based on that a service topology that used eBPF in the datapath was deployed in the different servers to provide networking for different hypervisors.
Squadra Corse is the student racing team from the Polytechnic University of Turin. Each year a group of students for the different faculties design and build an electric car to compete against another university teams from all the world at the Formula SAE. I was part of the electronics and control system division, specifically I was the lead of the team that built a telemetry system for the car.
This is a photo of the SCXV presentation: