05

Networking

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.

  • IPv6
  • Snabb
  • LuaJIT
  • lwAFTR
  • Pflua

Featured Media

Carrier Grade Lightweight 4-over-6 with Juniper vMX and Snabb
Production high-performance networking with Snabb and LuaJIT (Linux.conf.au 2017)
Snabb Switch: Riding the HPC wave to simpler, better network appliances (FOSDEM 2016)
High-performance packet filtering with Pflua (FOSDEM 2015)
Property-based testing an open-source compiler (FOSDEM 2015)

Updates

Andy Wingo 26/06/2017

an early look at p4 for software networking

Happy midsummer, hackfriends!As you know at work we have been trying to find ways to apply compilers technology to the networking space. We will compile high-level configurations into low-level network processing graphs, search algorithms into lookup...

Diego Pino 05/06/2017

Dive into Lightweight 4over6

In the previous articles I took a look at the status of the IPv4 address exhaustion problem. I also reviewed the current state of IPv6 adoption as well as covering some of the transition technologies that could ease the adoption of IPv6. One of these...

Diego Pino 30/05/2017

IPv6 deployment status and transition technologies

IPv4 has served us well for the last 35 years. But in a world of already exhausted address space its future seems uncertain. Everyone knew it wouldn’t last forever. However, most ISPs didn’t start deploying IPv6 networks actively until the address...

Diego Pino 25/05/2017

A brief history of IPv4 address space exhaustion

IPv4 address space exhaustion was a hot topic in the 90s, when everyone started to foresee that inevitable future. However, we’re still relying on IPv4 today. So, what has actually happened? Did anyone find a vast range of unused IPv4 addresses locked...

Diego Pino 14/03/2017

Fosdem 2017

Fosdem is one of my favorite conferences. I guess this is true for many free software enthusiasts. It doesn’t matter how many editions it has been through, it still keeps the same spirit. Tons of people sharing, talking about their homebrew experiments,...

Commits

Improve the generate-binding-table test (#863)

Improve the generate-binding-table test (#863)

Nicola Larosa07/07/2017

Merge pull request #843 from dpino/xpath-printer

Merge pull request #843 from dpino/xpath-printer Print out snabb config get output in XPath format

Diego Pino06/07/2017

Remove trailing semicolon

Remove trailing semicolon

Diego Pino06/07/2017

Support print_default in scalar top_printer

Support print_default in scalar top_printer

Diego Pino06/07/2017

Top printers should print absolute path too

Top printers should print absolute path too

Diego Pino06/07/2017