OpenDataPlane as the base technology for SDNs
OpenDataPlane (ODP, https://www.opendataplane.org
) is an open source API for network data plane applications, representing the abstraction between a network chip and an application. Now vendors, such as TI, Freescale, Cavium, are releasing an SDK with ODP support on their SoC chips. If we draw an analogy with the graphic stack, then ODP can be compared with the OpenGL API, but for network programming field. The idea of this presentation is to tell about the ODP API, internal structure and show some performance metrics. Using ODP as an abstraction of real hardware allows you to avoid vendor locks, get better performance and the most important - not to be involved into the details of the configuration and optimization of the device where application is launched. Software Defined Networks can be divided into 2 components: control plane - for configuration, and data plane - for data processing . Because the hardware of different manufacturers (network SoC) works differently, has different offload modules, implemented in different SDKs, has different i/o ports, and so on - a problem in writing high-performance applications that do not depend on the hardware platform and at the same time use hardware accelerators exists. The same application can run as bare metal, and in linux and inside the VM. The SoC hardware manufacturer knows all details of his device and can create implementation of ODP API for that platform. At the same time, developer who writes ODP application, simply uses the ODP API and gets the maximum performance.
Senior Software Engineer
Maxim Uvarov is a developer and a maintainer of OpenDataPlane networking API project in Linaro. Maxim has 10+ years experience developing commercial Linux operation system in MontaVista and Oracle. Recently maintainer of first 3 versions of Unbreakable Enterprise Linux Kernels. Expert in porting, compatibility, smp, boot code, kexec/kdump, locking, mm, networking and general Linux Kernel development for diverse architectures. Maxim holds ph.D. in Engineering of Moscow State University of Instrument Engineering and Computer Science. Interests are fast path algorithms, game theory, high speed networking and embedded device development.