Barefoot Networks Mission:

Barefoot is a merchant chip company, and sells programmable switch ASICs - this is where the lion's share of its revenue comes from. We also sell production-quality switches in low volume for use in evaluations and trials. And we sell software licenses for novel applications that run on our programmable switches. Email info@barefootnetworks.com for more details.

Barefoot Networks Programmability:

No. ASIC cost is determined by die size. The Tofino die size is identical to the die of legacy fixed function ASICs running at the same speed.

No. In fact, in many cases they consume less. For equivalent features and protocols, the power consumption is identical. In a programmable switch you can turn off features you don't need and reduce power, or use smaller tables.

No. The fastest chip in the world in 2016 and 2017 is the Barefoot 6.5Tb/s Tofino chip, which can be fully programmed by users, using the P4 programming language.

What is P4:

P4 is an Apache-licensed open-source language owned by P4.org, an independent non-profit organization. Any company, university or individual can join P4.org for free and contribute to the language, compiler and tools. Barefoot is one of over 70 members of P4.org, including companies from all across our industry, from AT&T to ZTE, and some of the world's top universities. The P4.org Board of Directors is Amin Vahdat (Google), Jen Rexford (Princeton) and Nick McKeown (Stanford/Barefoot). The language was designed by world experts in programming language design, from Princeton, Cornell, Stanford, VMware, Intel, Microsoft, Xilinx, Barefoot and Google. P4 is open-source and owned by everyone. The language is carefully designed to be target-independent and can be used to program any programmable forwarding device. So far, it has been used to program a variety of software and hardware switches and NICs from different sources. See P4.org for more details.

P4 is more general than OpenFlow, allowing users to define exactly how the forwarding plane processes packets. OpenFlow can be expressed in the P4 language, and there even exists openflow.p4 to get started. This blog post explains more.

Barefoot use-cases:

This is a very valid question for a switch that is based on a fixed function ASIC. Barefoot ASIC is highly programmable consisting of multiple pipelines and Match Action Units (MAU) inside each pipeline. A Match Action Unit contains a flexible parsing logic and multiple SRAM and TCAM table blocks that can be carved to accommodate a specific deployment. Barefoot can provide a sample verified scalability numbers based on a reference P4 program and under NDA. However they should never be interpreted as maximum theoretical scalability values of the chip.

Programmability enables limitless flexibility and multiple use-cases, ranging from the customization of the switch table sizes for efficient scale to the enhancement of the existing networking functions and the addition of new capabilities such as Telemetry, security and load-balancing. See the use case page for some examples and ideas.

How do I get started with Barefoot: