Patents by Inventor Hugh W. Holbrook

Hugh W. Holbrook has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20190028426
    Abstract: A method for transmitting MAC frames between remote and/or virtual machines, across network devices (i.e., switches, multilayer switches, and routers) that conventionally do not hold capacity to address MAC rewrites to any and all possible destinations within expanding data centers. More specifically, a network device retains MAC rewrite table entries corresponding to Top of Rack (ToR) switches versus to the hosts and virtual machines that reside under those ToR switches. This use of a ToR switch as an overlay routing intermediate point may reduce the number of required MAC addresses stored on a network device for the purposes of performing rewrites, thereby once again establishing the capability for packets to reach any arbitrary destination as data centers scale.
    Type: Application
    Filed: July 2, 2018
    Publication date: January 24, 2019
    Inventor: Hugh W. Holbrook
  • Publication number: 20180241673
    Abstract: A method and apparatus of a device that determines a match for a destination address using an exact match table and a longest prefix match table of a network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element generates a key for the destination address, wherein the key represents more addresses than the destination address. The network element further performs an address lookup using the key in an exact match table. Furthermore, a match in the address lookup indicates a first transmitting interface of the network element. The network element additionally performs an address lookup using the destination address with a longest prefix match table, wherein a match in the address lookup indicates a second transmitting interface of the network element.
    Type: Application
    Filed: April 23, 2018
    Publication date: August 23, 2018
    Inventors: Francois Labonte, Hugh W. Holbrook
  • Publication number: 20180234297
    Abstract: A method and apparatus of a network element that installs a control plane data rule from system memory to specialized hardware memory in a network element is described. In an exemplary embodiment, the network element receives control plane data processing statistics of control plane data that is received by the network element, where the control plane data is policed using a plurality of control plane data policing rules stored in the system memory. The network element further determines that a candidate policing rule is being utilized greater than a threshold based on at least the control plane data processing statistics, where the candidate policing rule is one of the plurality of control plane data policing rules stored in the system memory. The network element additionally installs the candidate policing rule in the specialized hardware memory, where the candidate policing rule is subsequently used by the network element to police the control plane data.
    Type: Application
    Filed: February 15, 2018
    Publication date: August 16, 2018
    Inventors: Michael Chih-Yen Wang, Hugh W. Holbrook, Adam James Sweeney, Zhong Xu
  • Patent number: 9996263
    Abstract: A method and apparatus of a device that includes a shared memory hash table that notifies one or more readers of changes to the shared memory hash table is described. In an exemplary embodiment, a device modifies a value in the shared memory hash table, where the value has a corresponding key. The device further stores a notification in a notification queue that indicates the value has changed. In addition, the device invalidates a previous entry in the notification queue that indicates the value has been modified. The device signals to the reader that a notification is ready to be processed.
    Type: Grant
    Filed: May 11, 2016
    Date of Patent: June 12, 2018
    Assignee: Arista Networks, Inc.
    Inventors: Hugh W. Holbrook, Duncan Stuart Ritchie, Sebastian Sapa, Simon Francis Capper
  • Patent number: 9979651
    Abstract: A method and apparatus of a device that determines a match for a destination address using an exact match table and a longest prefix match table of a network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element generates a key for the destination address, wherein the key represents more addresses than the destination address. The network element further performs an address lookup using the key in an exact match table. Furthermore, a match in the address lookup indicates a first transmitting interface of the network element. The network element additionally performs an address lookup using the destination address with a longest prefix match table, wherein a match in the address lookup indicates a second transmitting interface of the network element.
    Type: Grant
    Filed: May 2, 2017
    Date of Patent: May 22, 2018
    Assignee: Arista Networks, Inc.
    Inventors: Francois Labonte, Hugh W. Holbrook
  • Patent number: 9942149
    Abstract: A method and apparatus of a device that determines a match for a destination address using an exact match table and a longest prefix match table of a network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element generates a key for the destination address, wherein the key represents more addresses than the destination address. The network element further performs an address lookup using the key in an exact match table. Furthermore, a match in the address lookup indicates a first transmitting interface of the network element. The network element additionally performs an address lookup using the destination address with a longest prefix match table, wherein a match in the address lookup indicates a second transmitting interface of the network element.
    Type: Grant
    Filed: May 2, 2017
    Date of Patent: April 10, 2018
    Assignee: Arista Networks, Inc.
    Inventors: Francois Labonte, Hugh W. Holbrook
  • Publication number: 20180012633
    Abstract: A method and apparatus of a device that determines a cause and effect of congestion in this device is described. In an exemplary embodiment, the device measures a queue group occupancy of a queue group for a port in the device, where the queue group stores a plurality of packets to be communicated through that port. In addition, the device determines if the measurement indicates a potential congestion of the queue group, where the congestion prevents a packet from being communicated within a time period. If potential congestion exists on that queue group, the device further gathers information regarding packets to be transmitted through that port. For example, the device can gather statistics packets that are stored in the queue group and/or new enqueue packets.
    Type: Application
    Filed: August 31, 2017
    Publication date: January 11, 2018
    Inventors: Hugh W. Holbrook, Kenneth James Duda, Douglas Gourlay, Anshul Sadana
  • Publication number: 20170366476
    Abstract: A method and apparatus of a network element that processes a packet in the network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element receives a packet, with a packet switch unit, wherein the packet was received by the network element on an ingress interface. The network element further determines if the packet is to be stored in an external queue. In addition, the network element identifies the external queue for the packet based on one or more characteristics of the packet. The network element additionally forwards the packet to a packet storage unit, wherein the packet storage unit includes storage for the external queue. Furthermore, the network element receives the packet from the packet storage unit and forwards the packet to an egress interface corresponding to the external queue.
    Type: Application
    Filed: June 20, 2016
    Publication date: December 21, 2017
    Inventors: Adam James Sweeney, Hugh W. Holbrook
  • Patent number: 9817594
    Abstract: A method and apparatus of a device that broadcasts data to multiple hardware forwarding engines is described. In an exemplary embodiment, a central processing unit of the device receives the data to broadcast to the plurality of hardware forwarding engines. The device further writes the data to a broadcast log. In addition, the device transmits a signal to one or more co-processors that the data is available to be read, wherein each of the plurality of hardware forwarding corresponds to one of the one or more co-processors. Each of these co-processors reads the data in the broadcast log by receiving the signal that the data is ready to be read from the broadcast log. In addition, each co-processor determines a broadcast log entry for the data for that co-processor. Each co-processor further reads the data from the broadcast log entry via a direct memory access in memory that stores the broadcast log and the plurality of hardware forwarding engines use the data to process network traffic.
    Type: Grant
    Filed: October 4, 2016
    Date of Patent: November 14, 2017
    Assignee: Arista Networks, Inc.
    Inventors: Hugh W. Holbrook, Sriram Sellappa, Neal Thomas Nuckolls
  • Patent number: 9800485
    Abstract: A method and apparatus of a device that determines a cause and effect of congestion in this device is described. The device determines an effect of congestion in the device. The device measures a queue group occupancy of a queue group for a port in the device, where the queue group stores a plurality of packets to be communicated through that port. The device further determines if congestion exists on that queue group using the measurement, where the congestion prevents a packet of the plurality of packets from being communicated within a time period. If the congestion exists on that queue group, the device additionally gathers information regarding packets to be transmitted through that port. For example, the device can gather statistics packets that are stored in the queue group and/or new enqueue packets.
    Type: Grant
    Filed: July 29, 2013
    Date of Patent: October 24, 2017
    Assignee: Arista Networks, Inc.
    Inventors: Hugh W. Holbrook, Kenneth James Duda, Douglas Gourlay, Anshul Sadana
  • Patent number: 9794141
    Abstract: A method and apparatus of a device that determines a cause and effect of congestion in this device is described. In an exemplary embodiment, the device measures a queue group occupancy of a queue group for a port in the device, where the queue group stores a plurality of packets to be communicated through that port. In addition, the device determines if the measurement indicates a potential congestion of the queue group, where the congestion prevents a packet from being communicated within a time period. If potential congestion exists on that queue group, the device further gathers information regarding packets to be transmitted through that port. For example, the device can gather statistics packets that are stored in the queue group and/or new enqueue packets.
    Type: Grant
    Filed: July 29, 2013
    Date of Patent: October 17, 2017
    Assignee: Arista Networks, Inc.
    Inventors: Hugh W. Holbrook, Kenneth James Duda, Douglas Gourlay, Anshul Sadana
  • Publication number: 20170237663
    Abstract: A method and apparatus of a device that determines a match for a destination address using an exact match table and a longest prefix match table of a network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element generates a key for the destination address, wherein the key represents more addresses than the destination address. The network element further performs an address lookup using the key in an exact match table. Furthermore, a match in the address lookup indicates a first transmitting interface of the network element. The network element additionally performs an address lookup using the destination address with a longest prefix match table, wherein a match in the address lookup indicates a second transmitting interface of the network element.
    Type: Application
    Filed: May 2, 2017
    Publication date: August 17, 2017
    Inventors: Francois Labonte, Hugh W. Holbrook
  • Publication number: 20170237662
    Abstract: A method and apparatus of a device that determines a match for a destination address using an exact match table and a longest prefix match table of a network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element generates a key for the destination address, wherein the key represents more addresses than the destination address. The network element further performs an address lookup using the key in an exact match table. Furthermore, a match in the address lookup indicates a first transmitting interface of the network element. The network element additionally performs an address lookup using the destination address with a longest prefix match table, wherein a match in the address lookup indicates a second transmitting interface of the network element.
    Type: Application
    Filed: May 2, 2017
    Publication date: August 17, 2017
    Inventors: Francois Labonte, Hugh W. Holbrook
  • Publication number: 20170220659
    Abstract: A method and apparatus of a device that updates a key range in a database for a writer of a network element that replicates changes to the database to a plurality of readers. In an exemplary embodiment, the device receives a key deletion notification for a key, where the key deletion notification is a notification to delete a key from the database and the database stores data used by the network element. The device further locates the key in an ordered data structure, the ordered data structure stores a plurality of keys in an ordered fashion. The device additionally deletes the in the ordered data structure and determines an upper and lower bound key for the deleted key. In addition, the device creates an empty key range from the upper and lower bound keys and creates an empty key range notification from the empty key range.
    Type: Application
    Filed: August 11, 2016
    Publication date: August 3, 2017
    Inventor: Hugh W. Holbrook
  • Patent number: 9680749
    Abstract: A method and apparatus of a device that determines a match for a destination address using an exact match table and a longest prefix match table of a network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element generates a key for the destination address, wherein the key represents more addresses than the destination address. The network element further performs an address lookup using the key in an exact match table. Furthermore, a match in the address lookup indicates a first transmitting interface of the network element. The network element additionally performs an address lookup using the destination address with a longest prefix match table, wherein a match in the address lookup indicates a second transmitting interface of the network element.
    Type: Grant
    Filed: May 28, 2015
    Date of Patent: June 13, 2017
    Assignee: Arista Networks, Inc.
    Inventors: Francois Labonte, Hugh W. Holbrook
  • Publication number: 20170163547
    Abstract: Embodiments for communicating packets with a first port of a network element without the first port being communicatively coupled to another device (e.g., testing equipment) are described. In one embodiment, a packet is generated by testing equipment that is communicatively coupled to a second port of the network element. The packet includes a tag that uniquely identifies the first port. The network element communicates the packet from the second port to the first port based on the tag. The network element also removes the tag from the packet. The removal can occur before the packet is received at the first port or after the packet is received at an ingress module of the first port. In response to the removal of the tag, the network element enters the first port into a loopback mode that is internal to the first port.
    Type: Application
    Filed: August 25, 2016
    Publication date: June 8, 2017
    Inventors: Yunli Xiong, Hugh W. Holbrook, Xuanran Zong
  • Publication number: 20170093725
    Abstract: Improved utilization of connections that can be either available or blocked is provided by associating an atemporal connection state with each connection. If a connection is available, messages are transmitted on the connection normally. If a connection is blocked, the atemporal connection state is updated to reflect the changes that were made but not transmitted. In this manner, a record is kept that allows correct transmission of the information when the connection comes back up. More specifically, after a connection status changes from blocked to available, recovery messages are automatically generated from the atemporal connection state and transmitted on the connection.
    Type: Application
    Filed: December 7, 2016
    Publication date: March 30, 2017
    Inventors: David R. Cheriton, Hugh W. Holbrook
  • Patent number: 9594612
    Abstract: A method and apparatus of a device that uses a hardware shadow for a central processing unit failover is described. In an exemplary embodiment, a device receives a signal that the active central processing unit has failed, where the active central processing unit controls the processing functions of the network element and the network element includes a hardware forwarding engine and a hardware shadow. The hardware shadow additionally includes multiple shadow tables. For each shadow table, the device copies data from that shadow table to a corresponding table in the hardware forwarding engine, where the hardware shadow is a copy of the data stored in hardware tables for the hardware forwarding engine. In response to the copying, the device further switches control of the network element processing functions from the active central processing unit to a standby central processing unit.
    Type: Grant
    Filed: May 5, 2014
    Date of Patent: March 14, 2017
    Assignee: Arista Networks, Inc.
    Inventors: Hugh W. Holbrook, Sriram Sellappa
  • Patent number: 9584327
    Abstract: A method and apparatus of a network element that authenticates a transceiver and/or a field replaceable unit of the network element is described. The network element generates a stored transceiver signature using transceiver data stored in the removable transceiver and a nonce. In addition, the network element generates a hardware transceiver signature using data stored in secure storage of the network element and the nonce. If the stored transceiver signature and the hardware transceiver signature are equal, the network element uses the transceiver to communicate network data for the network element. Otherwise, the network element disables the transceiver.
    Type: Grant
    Filed: July 31, 2014
    Date of Patent: February 28, 2017
    Assignee: Arista Networks, Inc.
    Inventors: Alexander Channing Ho, Hugh W. Holbrook, Lorenz Wolfgang Redlefsen
  • Publication number: 20170024154
    Abstract: A method and apparatus of a device that broadcasts data to multiple hardware forwarding engines is described. In an exemplary embodiment, a central processing unit of the device receives the data to broadcast to the plurality of hardware forwarding engines. The device further writes the data to a broadcast log. In addition, the device transmits a signal to one or more co-processors that the data is available to be read, wherein each of the plurality of hardware forwarding corresponds to one of the one or more co-processors. Each of these co-processors reads the data in the broadcast log by receiving the signal that the data is ready to be read from the broadcast log. In addition, each co-processor determines a broadcast log entry for the data for that co-processor. Each co-processor further reads the data from the broadcast log entry via a direct memory access in memory that stores the broadcast log and the plurality of hardware forwarding engines use the data to process network traffic.
    Type: Application
    Filed: October 4, 2016
    Publication date: January 26, 2017
    Inventors: Hugh W. Holbrook, Sriram Sellappa, Neal Thomas Nuckolls