• Blog

 
 

Why Java APIs and Industry-Standard CLIs are Different

In the past few years, the tech industry has watched with increasing concern as various entrenched participants have brandished copyright law as a weapon to stifle competition and innovation. Recently, we have been treated to yet another novel claim: that after over a decade of broad adoption, the industry-standard set of commands that a user types into a command line interface (or CLI) to configure a network device is subject to copyright. This startling claim raises many questions, but today I want to address one in particular: What effect, if any, does the recent decision in Oracle v. Google have...
Continue reading →

IGMP Host-proxy

Interfaces on the switch can be configured to serve as IGMP host proxies. An IGMP host proxy exchanges IGMP reports (joins/leaves) between networks whose connection does not support PIM along network boundaries. Let’s take the example shown below: The customer network connects to the sender network through the edge switch’s Ethernet 1 interface, which is configured as an IGMP host proxy. PIM is enabled within the publisher and customer networks but not on the connection between the networks.   When only “ip igmp host-proxy” is configured on the interface, IGMP reports will be sent for any (*,G) or (S,G) entry...
Continue reading →

Configuring the Campus Voice VLAN

ContentsOverviewIntroductionTo provision a VLAN-unaware IP PhoneTo provision a VLAN-aware IP PhoneLLDP’s Role Overview This article is intended to discuss how to configure the Voice VLAN (phone VLAN) on a 720X Arista switch. Introduction In the Campus environment, there are myriad devices which can connect wirelessly or wired. Switches need to be able to classify these devices and forward the traffic appropriately. For IP phones, this is of utmost importance as Voice traffic and Voice signaling need to be treated with priority over generic data traffic to ensure quality of service and minimum to no loss. This article focuses on how...
Continue reading →

Troubleshooting Dequeue deletes on 7280/7500 devices

ContentsOverviewKnown CausesSyslogTroubleshooting DeqDeletePktCnt DropsRecommendations Overview On a 7280 / 7500 devices, any known unicast packet which arrives on an ingress port is classified by the ingress processor based on priority level and egress port, and enqueued in the Virtual Output Queue (VOQ). The same would apply for BUM traffic if ingress only replication is enabled. The packet is enqueued on the ingress chip buffers until the egress packet scheduler issues a credit grant for the given packet. DeqDelete drops indicate stale packets in VOQ, i.e, packets which have been in the VOQ for more than 500ms without getting credits. These...
Continue reading →

ZTP with Arista Switches

ContentsOverviewIntroductionTo provision the switch through Zero Touch ProvisioningActions performed by the switch in ZTP modeCanceling Zero Touch ProvisioningFailure scenario(s)Things to be aware of while using ZTPUse any of the following commands to calculate the MD5 checksum Overview This article is intended to discuss zero to one of ZTP. Introduction Zero Touch Provisioning(ZTP) is a feature that allows users to initially provision Arista network switches without user interaction. The switch enters ZTP mode whenever the device comes up without a start-up configuration in flash. It remains in ZTP mode until a user cancels ZTP mode, or until the switch retrieves a...
Continue reading →

Replacement of MLAG peer switch

ContentsObjectiveIntroductionProcedureKey Points to rememberLimitations Objective The aim of this document is to describe the procedure assisting in the physical replacement of one of the MLAG devices (for example in RMA scenarios where one device has a hardware fault and requires a replacement with a new one). Minimal traffic disruption during the time of this replacement is desired from an MLAG setup due to peer redundancy. It would not ensure zero loss as during the replacement, loss of in flight packets (going towards the switch being replaced) is inevitable. Introduction MLAG by Arista is a method to provide an active-active device...
Continue reading →

Buffer tuning for output discard mitigation

ContentsPlatform : 7050 Series,  7060, 7260 Series and 7304 Series.How to determine if the drops are due to congestion :Solution to Congestion :Buffering on this platform :Tuning Buffers on this platform : Platform : 7050 Series,  7060, 7260 Series and 7304 Series. This document explains how to mitigate the output discards that are caused on the following platforms, due to congestion. How to determine if the drops are due to congestion : If the rate of traffic is nearing / exceeding the link bandwidth, it is pretty easy to understand that the drops are happening due to congestion. If the...
Continue reading →

PTP Best Master Clock Algorithm (BMCA)

ContentsScopeBMCAPTP port-statesBMCA- GM election orderBMCA- GM election attributesPriority 1 and Priority 2ConfigurationClock classClock AccuracyClock offsetScaledLogVariance“show ptp clock”PTP DomainAnnounce MessagesL3 announce MessagesL2 announce Messages“show ptp interface”BMCA-GM election exampleTopologyConfigurationsObservationsConverged PTP topologySlave/passive port-election Scope This article describes the “Best Master Clock Algorithm”(BMCA) and the manner in which it’s carried out on Arista switches. BMCA BMCA is used for selecting a Grandmaster (GM) in a PTP domain. Additionally, it is also used to decide the PTP port-states on the Arista switches. PTP port-states Master It provides timing to a downstream clock. PTP master ports send out announce messages. Slave It retrieves timing from an...
Continue reading →

Routing Context – Management VRF and Logs backup

ContentsI. OverviewII. IntroductionIII. Steps to Identify the Management VRF and backup the logsA. Identify the VRF:B. Switch Routing Context and backup logsIV. Summary I. Overview The following article describes the functionality of routing context mode and how to use the functionality to export the logs and files from the device to the Desktop machine or to the backup/storage server. II. Introduction In most of the networking infrastructure, the networking devices are being administered or accessed in non-default vrf (Management VRF). The non-default will have access to the Network orchestration tools, Backup servers, Desktop machines depending upon the network infrastructure policy....
Continue reading →

Troubleshooting EVPN IRB with VXLAN

ContentsOverviewIntroductionPlatform CompatibilityTopologyAsymmetric/Symmetric IRBPre-checksTroubleshooting ScenariosEVPN routes are not received or not advertisedFlood list not populatedData-plane issueSub-optimal forwarding or High peer-link utilizationLimitations (Updated till EOS 4.21.6F ) Data collection for Arista SupportUseful Resources Overview This article provides a brief introduction to EVPN IRB with VXLAN along with basic debugging methods for the same. Introduction Ethernet VPN (EVPN) is an extension of the MP-BGP protocol introducing a new address family. EVPN is used as a control-plane for VXLAN environments to exchange information such as MAC addresses and ARP bindings along with VTEP flood list. Additionally,  IP prefixes can be exchanged in the overlay using...
Continue reading →

Dot1q tagged LACPDU

Introduction This document provides details on how 802.1Q tagged LACP packets are handled on our Arista device. 802.1Q tagged LACP PDUs The LACP PDU frames were ingressing from other vendors into an Arista switch with an 802.1Q tag and designated as VLAN 0. 10:03:58.521076 58:ac:78:f2:8c:05 > 01:80:c2:00:00:02, ethertype 802.1Q (0x8100), length 128: vlan 0, p 0, ethertype Slow Protocols, LACPv1, length 110 10:03:59.421028 58:ac:78:f2:8c:05 > 01:80:c2:00:00:02, ethertype 802.1Q (0x8100), length 128: vlan 0, p 0, ethertype Slow Protocols, LACPv1, length 110 Natively, EOS discards tagged LACP PDUs as they are out of spec. These discards can be observed using the...
Continue reading →

LACP Rate Fast

ContentsIntroductionHow it worksCLI show commandsWireshark output of LACPDU FlagsRecommendation Introduction The LACP rate fast feature is used to set the rate (once every second) at which the LACP control packets are sent from partner. The normal rate at which LACP packets are sent is 30 seconds. This document provides workflow of the LACP rate fast feature including the packet capture and some recommendations/concerns in MLAG setup. How it works When LACP is synchronizing between two device LACP PDUs are sent at a rate of 1 per second until both sides are synchronized. Once this is complete they are sent at...
Continue reading →

Troubleshooting sFlow

ContentsOverviewIntroductionDefault SettingsTroubleshooting1. Not all ingress packets are sampled 2. Higher CPU utilization 3. sFlow traffic is not being sent to the collector Overview This document aims at providing the basic checks that can be performed for troubleshooting sFlow. Introduction Arista switches provide an sFlow agent that samples only ingress traffic from all Ethernet and port-channel interfaces. This agent combines the interface counters and flow samples into sFlow datagrams that are sent to a sFlow collector. A sFlow collector is a server that runs software which analyzes and reports network traffic. Arista switches do not include sFlow collector software. The switch sends sFlow...
Continue reading →

Console Troubleshooting Guide

ContentsObjectiveIntroductionInitial Manual Provisioning:Console is not working post deployment:SSH and Console both are not accessible: Objective The objective of this document is to outline the common issues faced while using a console cable/server to access an Arista Switch. This document lists the troubleshooting steps to isolate the issue with these connections. Introduction In order to access the device, we use either an SSH or a Console connection. Normally, the console port is used for serial access to the switch and is used in the following cases: • initial provisioning of the device manually (when the management ports are not assigned IP...
Continue reading →

Supervisor replacement procedure

ContentsObjectiveVerification prior supervisor replacementRedundancy Protocol: Stateful Switchover (SSO)Redundancy Protocol: Route Processor Redundancy (RPR)Steps to be followed during replacementScenario 1. Chassis has only one supervisor, redundant supervisor is not present1. The active supervisor is partially functional and needs a replacement2. Switch is unresponsive via management or console, forwarding across the chassis is brokenScenario 2. The chassis has two supervisor modules1. Active supervisor is malfunctioning and needs to be replaced2. The standby supervisor is malfunctioning and needs to be replaced Objective The aim of this document is to outline the procedure when replacing a supervisor in a modular chassis. Currently, Arista chassis...
Continue reading →

Understanding subscription paths for Open-source Telemetry streaming

ContentsIntroductionChecking the paths1) Using TerminAttr2) Using the Telemetry browser in CVPMetric ExplorerMetric path structuringInterfaces countersDOM values QSFP RX Power on Modular boxesHow it looks like on the server sideExample 1 – Rx Power for QSFP on Fixed systemsExample 2 – Rx/Tx Power for SFPs on Fixed SystemsExample 3 – interface countersGraph examples on Grafana Data streamed from octsdb to GraphiteData streamed from ocprometheus to PrometheusSample ConfigsTerminAttrOcprometheusOckafkaOctsdbUseful Links: Introduction   The purpose of this document is to understand how the subscription paths are constructed for our openconfig connector apps (ocprometheus, ockafka, octsdb, etc.) that communicate with TerminAttr and send telemetry data to 3rd...
Continue reading →

Streaming EOS telemetry states to Prometheus

ContentsIntroductionPrerequisitesInstalling Prometheus and GrafanaInstalling PrometheusAdd new targetsOption 1:Option 2Option 3Installing GrafanaInstalling and configuring ocprometheusGit Clone the Arista GO libraryCompile ocprometheus in GOOption 1) Using the binaryOption 2) Install it as a swixFlags cheat sheetSample EOS Configuration No VRF and streaming to both CVP and PrometheusNo VRF and only PrometheusVRF management and streaming to both CVP and PrometheusVRF and only PrometheusVRF and only Prometheus using authenticationPDP: VRF and only PrometheusCreating dashboards in GrafanaHow to graph data only for specific interface?Pre-defined dashboardUsing rule records in Prometheus for EOS pathsOcprometheus.yml on EOSPrometheus.yml on the serverKernel_rules.yml on the serverTroubleshooting tipsChecking Logs and troubleshootingCommon issuesContext_deadline_exceededNot seeing...
Continue reading →

Resilient load-sharing using Nexthop Groups

ContentsIntroductionNexthop GroupsResiliency in Nexthop GroupsEven flow distributionAdding NexthopsCombining Addition of Nexthops and Even Flow DistributionHashingMuti-switch designAdvertising VIP addressSummary Introduction Load-sharing of traffic flows towards a specific prefix in a L3 topology is usually achieved with Equal-Cost Multi-Path (ECMP) routing. With ECMP, multiple nexthops of equal preference are available for the prefix. Traffic is distributed towards the different next-hops based on a hashing algorithm and packets belonging to the same traffic flow are by default hashed to the same nexthop. A problem with ECMP is that if one of the nexthops is removed all flows are affected as a new hash...
Continue reading →

PTP slave-passive port election

ContentsScopeSlave-Passive port election orderSteps removedParent clock identitySelf Port-IDExampleTopologyConfigurationsOutputsElection based on the “steps removed” valueTopologyObservationsElection based on the parent clock identityTopologyObservationsElection based on the self port-IDTopologyObservations Scope 1. This article takes account of how the slave-passive port election for PTP is done on Arista switches. Slave-Passive port election order The below sequence of comparison occurs in order to decide if a port should take slave or passive state: 1. Steps removed 2. Parent clock identity 3. Self Port-ID Steps removed “Steps removed” is the number of hops separating a PTP clock from the GM. The port that has a lower “steps removed”...
Continue reading →

cEOS-lab in GNS3

GNS3 is a great tool to visualize your (home-)lab environment and simulate all kinds of network topologies using different virtualization and isolation technologies. It has been widely used to create environments using vEOS-lab, but because vEOS-lab requires quite some resources (e.g. 2GB of RAM is required) the scale of these labs was often quite limited, especially on low-memory devices. Arista’s cEOS-lab is a new way of packaging the EOS-lab suite. Using the Docker container daemon, it is possible to use the kernel of the host machine and to only run the EOS processes that are required on the machine, making...
Continue reading →

How to FTP/SCP/WinSCP

In this document we will look at tools for quickly uploading and downloading files between hosts and Arista switches. 1) SCP On a Linux or Mac, scp is a CLI tool already built in and can be invoked by using the scp command. SCP or secure copy allows secure transferring of files between a local host and a remote host or between two remote hosts. It uses the same authentication and security as the Secure Shell (SSH) protocol from which it is based. Before we look at the commands and examples, please make sure steps given below are followed:  ...
Continue reading →

Follow

Get every new post on this blog delivered to your Inbox.

Join other followers: