Software Defined Networking represents a big opportunity for ISPs and telecommunication companies as it allows them to customize and to extend hardware in new ways never imagined before. It also represents a big opportunity for network-appliances vendors to offer more flexibility to their customers. Igalia's networking team applies rock-solid compilers knowledge to solve novel networking problems. Snabb, a high-performance networking toolkit, is our preferred choice for building next-generation networking software.
We develop and deploy real NFV solutions built with Snabb today.
Snabb works similarly to other high-performance networking toolkits such as DPDK. It relies on kernel-bypass to squeeze the maximum performance of off-the-shell high-speed network cards, mostly Intel. Snabb is built on top of LuaJIT, an ultra-fast JIT compiler and interpreter. That allow us to develop new network-functions quickly without losing performance power.
We are longtime contributors to Snabb. Some of our work include the implementation of an IPv6-transition mechanism and the contribution of a pure-Lua packet filtering library:
- lwAFTR. It's our largest piece of NFV software contributed to Snabb. lwAFTR is the routing technology of the lw4o6 standard (RFC 7596). lw4o6 is a brand-new IPv4-to-IPv6 transition technology that aims to substitute other technologies such as Dual-Stack or Carrier-Grade NAT. Our data-plane solution is RFC compliant and highly excels in performance.
- Pflua. It's a high-performance packet-filtering tool similar to tcpdump. At its core, pflua is a compiler. It translates packet-filtering expressions to native Lua code, which is later run by LuaJIT. We have applied our extensive compilers knowledge to build an outstanding packet-filtering tool, which is now integrated in Snabb.
Snabb is aimed to run on commodity hardware (Xeon) powered by 10G, 25G or 100G cards. You can build a high-performance network appliance at a fraction of the cost of conventional solutions. All these features make Snabb an ideal tool for Network Function Virtualization.
If you need to implement a new RFC, would like to deploy lw4o6 or you are considering extending your expensive networking equipment by adopting Snabb, Igalia has the best team to talk to.
A while back, I wrote a blog post explaining some of the basics of writing plugins for the VPP networking toolkit. In that previous post, I explained a few mechanisms for hooking a plugin into VPP’s graph architecture so that your code can process...
Alarm management is a fundamental part of network monitoring. The motivation for defining a standard alarm interface for network devices isn’t new. In the early 90s, ITU-T standardized X.733 (OSI model). This continued in mobile networks with the...
An Internet packet generally includes two checksums: a TCP/UDP checksum and an IP checksum. In both cases, the checksum value is calculated using the same algorithm. For instance, IP header checksum is computed as follows: Set the packet’s IP header...
Recently, my teammate Jessica wrote an excellent intro blog post about VPP. VPP is an open source user-space networking framework that we’re looking into at Igalia. I highly recommend reading Jessica’s post before this post to get aquainted...
Merge pull request #1187 from dpino/skip-memory-binding Skip memory bindingDiego Pino16/10/2018
Allow to blacklist kernel versions that are greater or equals than a certain versionDiego Pino16/10/2018
Skip memory binding in blackisted kernelsDiego Pino16/10/2018
Merge pull request #1182 from dpino/show-nexthop-mac Show nexthop MAC in top and yang modelDiego Pino15/10/2018
Show nexthop MAC in top It's desirable to be able to retrieve nexthop information via `snabb config get-state` too. According to the state information of the schema, information about queues, interfaces and resolved-macs should also be printed....Diego Pino15/10/2018