In 1982, Andy Bechtolsheim cofounded Sun Microsystems, and was its chief hardware designer. In 1995, David Cheriton cofounded Granite Systems with Bechtolsheim, a company that developed Gigabit Ethernet products, which was acquired by Cisco Systems in 1996.[7] In 2001, Cheriton and Bechtolsheim founded another start up, Kealia,[8] which was acquired by Sun in 2004. From 1996 to 2003, Bechtolsheim and Cheriton occupied executive positions at Cisco, leading the development of the Catalyst product line, along with Kenneth Duda who had been Granite Systems' first employee.[9]
In 2004, the three then went on to found Arastra (later renamed Arista[3]). Bechtolsheim and Cheriton were able to fund the company themselves.[10] In May 2008, Jayshree Ullal left Cisco after 15 years at the firm, and was appointed CEO of Arista in October 2008.[11]
In December 2014, Cisco filed two lawsuits against Arista alleging intellectual property infringement.,[13] and the United States International Trade Commission issued limited exclusion and cease-and-desist orders concerning two of the features patented by Cisco[14] and upheld an import ban on infringing products.[15] In 2016, on appeal, the ban was reversed following product changes and two overturned Cisco patents, and Cisco's claim of damages was ruled against.[16][17] In August 2018, Arista agreed to pay CiscoUS$400 million as part of a settlement that included a release for all claims of infringement by Cisco, dismissal of Arista's antitrust claims against Cisco, and a 5-year stand-down between the companies.[18]
In August 2018, Arista Networks acquired Mojo Networks.[19] In September 2018, Arista Networks acquired Metamako and integrated their low latency product line as the 7130 series.[20] In February 2020, Arista acquired Big Switch Networks.[21] In October 2020, Arista acquired Awake Security.[22]
Arista's CEO, Jayshree Ullal, was named to Barron's list of World's Best CEOs in 2018 and 2019.[23]
In August 2022, Arista Networks acquired Pluribus Networks, a unified cloud network company, for an undisclosed sum.[24]
EOS is Arista's network operating system, and comes as one image that runs across all Arista devices[25] or in a virtual machine (VM).[26] EOS runs on an unmodified Linux kernel under a Fedora-based userland.[27] There are more than 100 independent regular processes, called agents, responsible for different aspects and features of the switch, including drivers that manage the switching application-specific integrated circuit (ASICs), the command-line interface (CLI), Simple Network Management Protocol (SNMP), Spanning Tree Protocol, and various routing protocols. All the state of the switch and its various protocols is centralized in another process, called Sysdb. Separating processing (carried by the agents) from the state (in Sysdb) gives EOS two important properties. The first is software fault containment, which means that if a software fault occurs, any damage is limited to one agent.[28][29] The second is stateful restarts, since the state is stored in Sysdb, when an agent restarts it picks up where it left off.[29] Since agents are independent processes, they can also be upgraded while the switch is running (a feature called ISSU – In-Service Software Upgrade).
The fact that EOS runs on Linux allows the usage of common Linux tools on the switch itself, such as tcpdump or configuration management systems. EOS provides extensive application programming interfaces (APIs) to communicate with and control all aspects of the switch. To showcase EOS' extensibility, Arista developed a module named CloudVision[30] that extends the CLI to use Extensible Messaging and Presence Protocol (XMPP) as a shared message bus to manage and configure switches.[31] This was implemented simply by integrating an existing open-source XMPP Python library with the CLI.
Programmability
In addition to all the standard programming and scripting abilities traditionally available in a Linux environment, EOS can be programmed using different mechanisms:
Advanced Event Management[32] can be used to react to various events and automatically trigger CLI commands, execute arbitrary scripts or send alerts when state changes occur in the switch, such as an interface going down or a virtual machinemigrating to another host.
eAPI (External API)[34] offers a versioned JSON-RPC interface to execute CLI commands and retrieve their output in structured JSON objects.
Ethernet switches
Arista's product line can be separated into different product families:
7500R series: Modular chassis with a virtual output queueing (VOQ) fabric supporting from 4 to 16 store and forwardline cards delivering line-rate non-blocking 10GbE, 40GbE, and 100GbE[35] performance in a 150 Tbit/s fabric supporting a maximum of 576 100GbE ports with 384 GB of packet buffer.[36] Each 100GbE ports can also operate as 40GbE or 4x10GbE ports,[37] thus effectively providing 2304 line-rate 10GbE ports with large routing tables.
7300X, 7300X3 and 7320X series: Modular chassis with 4 or 8 line cards in a choice of 10G, 40G and 100G options with 6.4Tbit/s of capacity per line card, for a fabric totaling up to 50Tbit/s of capacity for up to 1024 10GbE ports.[38] Unlike the 7500 series, 10GBASE-T is available on 7300 series line cards.
7280R series: 1U and 2U systems with a common architecture[39] to the 7500R Series,[40] deep buffer VOQ and large routing tables. Many different speed and port combinations from 10GbE to 100GbE.[41]
7200X series: 2U low-latency high-density line-rate 100GbE and 40GbE switches, with up to 12.8Tbit/s of forwarding capacity.[42][43][44]
7170 Series: High Performance Multi-function Programmable Platforms,[45] a set of fixed 100G platforms based on Barefoot[46] Tofino[47] packet processor enabling the data plane to be customized using EOS and P4 profiles.
7160 series: 1U programmable high performance range of 10 GbE, 25 GbE and 100 GbE with the support for AlgoMatch[48] technology and a software upgradeable packet processor
7150S series: 1U ultra-low latency cut-through line-rate 10 Gb switches. Port-to-port latency is sub-380ns, regardless of the frame size.[49] Unlike the earlier 7100 series, the switch silicon can be re-programmed[50] to add new features that work at wire-speed, such as Virtual Extensible LAN (VXLAN) or network address translation (NAT/PAT).
7130 series (7130, 7130L, 7130E): 1U and 2U ultra-low latency Layer 1 switch and programmable switches.[51] Layer 1 switching enables mirroring and software-defined port routing with port-to-port latency starting from 4ns, depending on physical distance. The E and L variants allow running custom FPGA applications directly on the switch with a port-to-FPGA latency as low as 3ns. This series comes from the original Metamako product line acquired by Arista Networks in 2018 and runs a combination of MOS and Arista EOS operating systems.
7050X and 7060X series: 1U and 2U low-latency cut-through line-rate 10GbE/25GbE, 40GbE and 100GbE switches. This product line offers higher port density than the 7150 series, in a wider choice of port options and interface speeds at the expense of slightly increased latency (1µs or less). The 7050X and 7060X Series are based on Broadcom Trident and Tomahawk merchant silicon.[52]
7020R series: 1U store and forward line-rate with a choice of either a 1Gb top-of-rack switch, with 6x10Gb uplinks or a 10G with 100G uplinks. These switches use a Deep Buffer architecture, with 3GB of packet memory.[53]
7010 series: 1U low power (52W) line-rate 1Gb top-of-rack switch, with 4x10Gb uplinks.[54]
In November 2013, Arista Networks introduced the Spline network, combining leaf and spine architectures into a single-tier network, which aims to cut operating costs.[60]
In September 2015, Arista introduced the series 7060X, 7260X, and 7320X, refreshing the existing series 7050X, 7250X, and 7300X, with new, higher performance 100 GbE options.
↑"Arista Introduces The Industry's Fastest Data Center Switch" (Press release). Arista Networks. 1 May 2013. Retrieved 12 June 2014. triple-speed 10/40/100G line card with integrated MXP (multi-speed-port) optics that can be software configured on a per port basis