in 2018 and 2019. In August 2022, Arista Networks acquired Pluribus Networks, a unified cloud network company, for an undisclosed sum. Products Extensible Operating System EOS is Arista's network operating system, and comes as one image that runs across all Arista devices or in a virtual machine (VM). EOS runs on an unmodified Linux kernel under a Fedora-based userland. 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. The second is stateful restarts, since the state is stored in Sysdb, when an agent restarts it picks up where it left off. 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 that extends the CLI to use Extensible Messaging and Presence Protocol (XMPP) as a shared message bus to manage and configure switches. 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 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 machine migrating to another host. Event Monitor tracks changes made to the medium access control (MAC), Address Resolution Protocol (ARP), and routing table in a local SQLite database for later querying using standard Structured Query Language (SQL) queries. eAPI (External API) offers a versioned JSON-RPC