A couple of weeks ago SDxCentral learned that Marvell was discontinuing the Xpliant programmable chip line it got through its acquisition of Cavium. And the news provoked readers to ask: “What does that mean for Barefoot Networks’ programmable networking switch chip - Tofino?”
Marvell determined that hyperscale players such as Amazon and Google were not interested in programmability at the switch. Eric Hayes, SVP and general manager of networking at Marvell, said that programmable switches were being relegated to niche applications such as network monitoring, packet brokering, load balancing, and prototyping of new technologies.
But Ed Doe, VP of product and marketing at Barefoot Networks, said Barefoot’s chips are being used for functions such as enhanced tunnel scale, application telemetry, and large-scale access control lists (ACLs). “Enhanced tunnel scale is not a niche application,” said Doe. “As virtual machines and containers grow, I don’t think that’s a niche application. I don’t think telemetry is a niche.”
Doe also said that when you have a programmable chip, it’s important to also have a widely-accepted language to program that chip. Barefoot’s Tofino chip works with the P4 programming language. “It’s key having an active ecosystem with a programming language,” he said. “That P4 programming language is one of our key things. This allows us to scale and adapt to everyone’s individual needs. P4 is a mature organization with over 1,500 developers and thousands of commits.” He said Tofino supports the latest version of P4: P4-16.
Apparently, the programming language for Marvell’s Xpliant chip had not received as strong of a focus. Hemant Singh, president of MNK Consulting, said, “My company made the Xpliant ASIC programmable with P4 during the past year. Before P4, the Xpliant was programmed with typical ASIC programming tools in scripts, SAI, etc.”
SAI stands for switch abstraction interface. In 2015, the SAI was officially accepted by the Open Compute Project (OCP) as a standardized C API to program ASICs.
Singh said, “Besides Barefoot, my company is the only other company which has background to add P4 to an ASIC. We developed the P4 compiler for Xpliant. Since I am in Massachusetts, I work with MIT research faculty and students. I am guiding students with their research in P4 software.”
Programmable Chip MonetizationMarvell had to make a decision about keeping or killing the Xpliant chip line, and obviously monetization played into that decision. Hayes said hyperscalers with real purchasing power don’t need programmable switches because they can move functions onto network interface cards (NICs) and get many of the same benefits.
Singh said that it’s imperative for a programmable chip company to win a deal with a major cloud provider. Cavium — before it was purchased by Marvell — didn’t specify quarterly revenue for its Xpliant chip. But Singh speculated that if a single hyperscaler had chosen Xpliant for all its switches, that would have translated into $1 billion in sales.
For its part, Barefoot seems to have a close relationship with Google. Its CEO Craig Barratt was previously senior vice president at Google and CEO of Alphabet’s Access business. And about a year ago, Barefoot and Google Cloud jointly announced that they had created an open source runtime application programming interface (API) for P4 — P4 Runtime.
But Barefoot is not currently allowed to say whether Google or any other hyperscalers are deploying its technology. “All we can do is point to public things,” said Doe. Those public announcements include:
- In June 2016 Google participated in a $57 million Barefoot round.
- In November 2016 Alibaba and Tencent participated in an $23 million funding round for Barefoot.
- In May 2017 Barefoot scored deals with a trio of China-based technology companies to deploy its Tofino programmable switch. The companies include Alibaba, Baidu, and Tencent.
“Both Arista (7170) and Cisco (3400) have shipped switches with Tofino, but the switch operating system in EOS and NXOS does not allow the user to program the switch with P4,” said Singh.
The result is that end customers get switches with Barefoot's Tofino, but the Cisco and Arista operating systems currently prevent Tofino from being programmed.
"These operating systems were designed ages back and do not support an interface to allow the switch to be programmed in P4 yet," said Singh. "It’s their switch OS that needs changed to allow direct P4 programming of the switch. Such changes take time."
And yet they are shipping Tofino-based switches.
“Companies like Arista or Cisco that know data planes, it gives them an avenue to innovate at their speed,” said Doe. “Certainly, the operating system is not fully there, but hyperscalers are moving at hyper-speed. New operating systems are coming out quickly.”
A programmable switch gives them the ability to continuously provide new features on the same hardware, and it gives them future-proofing. “Day one they’re already offering new features they weren’t able to offer before and be able to adapt the platform down the road,” he said.
He said both Arista and Cisco like the immediate benefits of the Barefoot switch because it gives them better telemetry along with improved power efficiency. “It does more with the potential for future-proofing,” he said.
In summary, Barefoot has three main arguments why the demise of Marvell's Xpliant chip is not relevant for it. First, Barefoot has built its Tofino chip from the ground-up with the P4 programming language. And P4, along with its offspring P4 Runtime, have been widely embraced. Secondly, Barefoot has existing relationships with major cloud providers. And lastly, Arista and Cisco are shipping switches with the Tofino chip, even though their own operating systems aren't yet fully compatible — an indication they see future value in programmability.