Arista Networks Outpaces Cisco with FPGA Switch
Applications and initiatives like private cloud computing, virtualization and mobility are placing increasing pressure on network infrastructure to be faster and more capable. Initiatives like (SDN) Software Defined Networking and protocols such as OpenFlow can make the network more flexible and manageable, but they don’t really solve the problem of application performance where high-speed, low-latency requirements are the rule. Only by removing hops and their attendant latency from the network will we continue to see performance gains. Arista’s 7124FX switch uniquely puts field-programmable gate array (FPGA) at the edge of the network for microsecond application processing.
The 7124FX is a 24-port 1/10-Gbps switch with hot-swappable redundant power supplies and fans packed into a 1RU box. The 7124FX is priced starting at $49,995, and will be available in the second quarter. What makes the 7124FX interesting is the FPGA containing 6.2 million gates that are truly field programmable. Arista is making it clear that the switch is not meant to be a super box that will replace your servers and storage. Rather, it’s targeted at applications that can make use of high-capacity, low-latency logic in FPGAs at the network level, such as high-frequency trading and cloud computing enterprise applications.
"This announcement is a big deal for Arista and the markets they are serving," says Andres Kindness, a senior analyst with Forrester Research. "It separates them from their competitors that are focusing on data center networking and flattening of network. It bolsters Arista’s credibility with financial services. Cisco tried to respond to Arista’s switches with the Nexus 3000, a low-latency cut-through switch, but the 7124FX leapfrogs that." However, the 7124FX opens up possibilities to other vendors, as well.
Many vendors have used, and have talked about their use of, FPGAs in networking products. However, in most cases, the FPGA was a tightly controlled component that was only updated with new software revisions. The 7124FX FPGA is designed to be programmed by the customer or an Arista partner. Ports 1 through 16 are regular 1/10-Gbps SFP/SPF+ ports, while ports 17 through 24 are directly attached to the FX ports that connect to the FPGA subsystem. The FX ports can bypass the FPGA subsystem and act like straight Ethernet ports.
Arista is initially targeting financial services and cloud computing environments that can benefit from data processing close to the network stack. This isn’t the first time that Arista has provided programmatic access to its switches. In 2009, the company announced a partnership with Citrix to run NetScalar VPX on the Arista 7048 switch. In 2011, Arista opened up its Extensible Operating System (EOS) to developers to run applications on the switch CPU. While you are not going to move your Apache Web servers to EOA, running code natively on the switch does open up the possibilities to automate configurations based on changing conditions.
The 7124FX, however, may signal a change in flexible networking. You wouldn’t run an entire application on the FPGA. Rather, the control plane would be based on whatever software is being run on a server in the data center, but the functions that can be executed in the FPGA would be pushed down to the switch for processing. A trading application runs on the server, but the rules to make automated trades based on the market feeds are pushed into the FPGA. The application functionality is split across both the server and switch.
Arista has developed an SDK that developers can use to create FPGA code that can be loaded on the switch, and also has partners like Impulse C and Enyx that can write the FPGA code. Admittedly, few companies are going to write their own FPGA code, and they would need a very compelling use case, such as the need to execute a trade before their competitors, to do so. It does allow third parties to run their FPGA applications on Arista’s switch. For example, a firewall or load balancer vendor could integrate with the 7124FX, with the control plane being a server and pushing firewall or traffic processing rules into the FPGA.
In-line processing would make network designs simpler because IT would no longer have to worry about putting another appliance in-line or using some out-of-band protocol like WCCP or policy-based routing to direct the traffic to a specific processing engine.
The 7124FX is not a fit for everyone. The leading requirement is an application that uses, or can use, FPGAs for data processing. The potential applications are fairly wide, however. Video distributors could use the FPGAs for transcoding. Carriers could use them to process flows across their networks. Cloud companies could offer line-rate firewalling and load balancing across all of their customers.