Patents by Inventor Simon Francis Capper
Simon Francis Capper 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).
-
Patent number: 11310095Abstract: A method and apparatus of a network element that manages a network interface controller on a device coupled to a network element is described. In an exemplary embodiment, the network element detects that the network interface controller is manageable, wherein the network interface controller is coupled to the network element by a link. In addition, the network element transmits a command packet to the network interface controller in-band, where the network interface controller determines a response to the command packet using the resources of the network interface controller and without communicating data between the network interface controller and the device. The network element receives the response from the network interface controller.Type: GrantFiled: January 17, 2018Date of Patent: April 19, 2022Assignee: ARISTA NETWORKS, INC.Inventor: Simon Francis Capper
-
Patent number: 11301231Abstract: Embodiments disclosed herein relate to method and systems for updating hardware tables. Such methods may include receiving a flexible pipeline definition from a controller at a compiler; generating, by the compiler, a hardware table update initial instruction set; and transmitting the hardware table update initial instruction set to a network device. The network device may use the hardware table initial instruction set to configure the network device to implement the flexible pipeline definition for a network chip.Type: GrantFiled: April 5, 2019Date of Patent: April 12, 2022Assignee: Arista Networks, Inc.Inventors: Prasanna Parthasarathy, Kenneth James Duda, Simon Francis Capper
-
Patent number: 11044197Abstract: In general, embodiments of the invention relate to processing network traffic data units (NTDUs). More specifically, embodiments of the invention relate to processing NTDUs transmitted between client device and the one or more protected resources. The protected resources are logically surrounded by a perimeter, which is implemented as a set of network devices that manage the flow of NTDUs between client devices and the protected resources. The perimeter works in conjunction with a set of filtering devices to determine whether a given NTDU can ultimately be transmitted to, and processed by, a protected resource.Type: GrantFiled: July 15, 2019Date of Patent: June 22, 2021Assignee: Arista Networks, Inc.Inventors: Simon Francis Capper, Kenneth James Duda, Hugh Holbrook
-
Publication number: 20210021515Abstract: In general, embodiments of the invention relate to processing network traffic data units (NTDUs). More specifically, embodiments of the invention relate to processing NTDUs transmitted between client device and the one or more protected resources. The protected resources are logically surrounded by a perimeter, which is implemented as a set of network devices that manage the flow of NTDUs between client devices and the protected resources. The perimeter works in conjunction with a set of filtering devices to determine whether a given NTDU can ultimately be transmitted to, and processed by, a protected resource.Type: ApplicationFiled: July 15, 2019Publication date: January 21, 2021Inventors: Simon Francis Capper, Kenneth James Duda, Hugh Holbrook
-
Patent number: 10832370Abstract: A method and apparatus of a network element that processes data using a data processing pipeline with standby memory is described. In one embodiment, the network element prepares a new image for the data processing pipeline of the network element, where the data processing pipeline processes incoming network data received by the network element and the new image modifies a current set of functionalities of the data processing pipeline. The network element further writes the new image into a standby memory of the data processing pipeline, where the network element includes an active memory that programs the current set of functionalities of the data processing pipeline. In addition, the network element programs the data processing pipeline using the new image. The network element additionally processes the incoming network data received by using the data processing pipeline using modified current set of functionalities.Type: GrantFiled: March 27, 2018Date of Patent: November 10, 2020Assignee: Arista Networks, Inc.Inventors: Simon Francis Capper, Sebastiano Borgione, Navdeep Bhatia
-
Publication number: 20200319875Abstract: Embodiments disclosed herein relate to method and systems for updating hardware tables. Such methods may include receiving a flexible pipeline definition from a controller at a compiler; generating, by the compiler, a hardware table update initial instruction set; and transmitting the hardware table update initial instruction set to a network device. The network device may use the hardware table initial instruction set to configure the network device to implement the flexible pipeline definition for a network chip.Type: ApplicationFiled: April 5, 2019Publication date: October 8, 2020Inventors: Prasanna Parthasarathy, Kenneth James Duda, Simon Francis Capper
-
Publication number: 20200322276Abstract: Certain embodiments disclosed herein relate to method for egress maximum transmission unit (MTU) enforcement. The method may include receiving a protocol packet at an ingress interface of a network device; make a first determination of a protocol packet payload length; performing an ingress MTU identifier lookup in an ingress MTU identifier table using the protocol packet payload length to obtain an ingress MTU identifier; performing a packet propagation lookup to obtain an egress MTU identifier; performing an MTU enforcement lookup in an MTU enforcement table using the ingress MTU identifier and the egress MTU identifier to obtain an egress action; and performing the egress action.Type: ApplicationFiled: April 5, 2019Publication date: October 8, 2020Inventors: Prashanth Krishnamurthy, Simon Francis Capper, Tula Kraiser
-
Patent number: 10798014Abstract: Certain embodiments disclosed herein relate to method for egress maximum transmission unit (MTU) enforcement. The method may include receiving a protocol packet at an ingress interface of a network device; make a first determination of a protocol packet payload length; performing an ingress MTU identifier lookup in an ingress MTU identifier table using the protocol packet payload length to obtain an ingress MTU identifier; performing a packet propagation lookup to obtain an egress MTU identifier; performing an MTU enforcement lookup in an MTU enforcement table using the ingress MTU identifier and the egress MTU identifier to obtain an egress action; and performing the egress action.Type: GrantFiled: April 5, 2019Date of Patent: October 6, 2020Assignee: Arista Networks, Inc.Inventors: Prashanth Krishnamurthy, Simon Francis Capper, Tula Kraiser
-
Patent number: 10789059Abstract: A method and apparatus of a device that updates a software image for a network element is described. In an exemplary embodiment, a device receives a signal to update the network element with the new software image, where the network element includes a plurality of hardware forwarding engines and a control plane. The device further boots the control plane with the new software image, where the booting is accomplished without restarting the control plane. In one embodiment, the device boots the control plane by chain booting from a current software image to the new software image. The device additionally restarts and reconfigures the plurality of hardware forwarding engines. In a further embodiment, the device additionally prefills one or more queues in the hardware forwarding engines with keep-alive messages. These keep-alive messages are transmitted during the time that the control plane is being restarted. In a further embodiment, the hardware forwarding engines are reconfigured without restarting them.Type: GrantFiled: August 18, 2015Date of Patent: September 29, 2020Assignee: Arista Networks, Inc.Inventor: Simon Francis Capper
-
Publication number: 20200304368Abstract: In some implementations, a method is provided. The method includes receiving, by an agent of a first container of a network device from a second container of the network device, a request for a forwarding engine of the network device to perform an operation. The first container and the second container are located on a control plane of the network device. The first container comprises a set of drivers to support multiple types of forwarding engines. The first container further comprises an operating system. The method also includes providing the request to the operating system. The operating system uses a first driver of the set of drivers to communicate with the forwarding engine. The method further includes performing the operation requested by the second container. The method further includes providing a result of the operation to the second container in response to determining that the result should be provided to the second container.Type: ApplicationFiled: March 20, 2019Publication date: September 24, 2020Inventors: Aparna Karanjkar, Ashwin Deepak Swaminathan, Vidya Kirupanidhi, Simon Francis Capper
-
Patent number: 10585725Abstract: A method and apparatus of a network element that processes data by a network element with a data processing pipeline is described. In an exemplary embodiment, the network element prepares a new image for the data processing pipeline of the network element, where the data processing pipeline processes network data received by the network element and the new image modifies one or more functionalities of the data processing pipeline. In addition, the network element puts the data processing pipeline into a non-forwarding mode. Furthermore, the network element writes the new image into memory of the data processing pipeline. The network element additionally puts the data processing pipeline into a forwarding mode, where the data processing pipeline processes network data received by the network element using the new image.Type: GrantFiled: March 27, 2018Date of Patent: March 10, 2020Assignee: Arista Networks, Inc.Inventors: Simon Francis Capper, Sebastiano Borgione, Navdeep Bhatia
-
Patent number: 10546018Abstract: A method and apparatus of a network element that stores a lookup entry in a hardware table of a network element is described. In an exemplary embodiment, the network element receives a notification of a dirty lookup entry to be processed for a hardware table of a network element, where the hardware table includes a plurality of lookup entries. In addition, the network element determines a location for a table modification associated with the dirty lookup entry in the hardware table. Furthermore, the network element performs, with a hardware writer of the network element, the table modification associated with the lookup entry in a non-disruptive manner, where the hardware writer performs the table modification associated with the lookup entry in response to determining that the table modification associated with the lookup entry does not leave one of the plurality of lookup entries inconsistent after the table modification is performed.Type: GrantFiled: October 31, 2017Date of Patent: January 28, 2020Assignee: Arista Networks, Inc.Inventors: Peter Lam, Navdeep Bhatia, Simon Francis Capper
-
Publication number: 20190303220Abstract: A method and apparatus of a network element that processes data by a network element with a data processing pipeline is described. In an exemplary embodiment, the network element prepares a new image for the data processing pipeline of the network element, where the data processing pipeline processes network data received by the network element and the new image modifies one or more functionalities of the data processing pipeline. In addition, the network element puts the data processing pipeline into a non-forwarding mode. Furthermore, the network element writes the new image into memory of the data processing pipeline. The network element additionally puts the data processing pipeline into a forwarding mode, where the data processing pipeline processes network data received by the network element using the new image.Type: ApplicationFiled: March 27, 2018Publication date: October 3, 2019Inventors: Simon Francis Capper, Sebastiano Borgione, Navdeep Bhatia
-
Publication number: 20190304047Abstract: A method and apparatus of a network element that processes data using a data processing pipeline with standby memory is described. In one embodiment, the network element prepares a new image for the data processing pipeline of the network element, where the data processing pipeline processes incoming network data received by the network element and the new image modifies a current set of functionalities of the data processing pipeline. The network element further writes the new image into a standby memory of the data processing pipeline, where the network element includes an active memory that programs the current set of functionalities of the data processing pipeline. In addition, the network element programs the data processing pipeline using the new image. The network element additionally processes the incoming network data received by using the data processing pipeline using modified current set of functionalities.Type: ApplicationFiled: March 27, 2018Publication date: October 3, 2019Inventors: Simon Francis Capper, Sebastiano Borgione, Navdeep Bhatia
-
Publication number: 20190222468Abstract: A method and apparatus of a network element that manages a network interface controller on a device coupled to a network element is described. In an exemplary embodiment, the network element detects that the network interface controller is manageable, wherein the network interface controller is coupled to the network element by a link. In addition, the network element transmits a command packet to the network interface controller in-band, where the network interface controller determines a response to the command packet using the resources of the network interface controller and without communicating data between the network interface controller and the device. The network element receives the response from the network interface controller.Type: ApplicationFiled: January 17, 2018Publication date: July 18, 2019Inventor: Simon Francis Capper
-
Publication number: 20190005148Abstract: A method and apparatus of a network element that stores a lookup entry in a hardware table of a network element is described. In an exemplary embodiment, the network element receives a notification of a dirty lookup entry to be processed for a hardware table of a network element, where the hardware table includes a plurality of lookup entries. In addition, the network element determines a location for a table modification associated with the dirty lookup entry in the hardware table. Furthermore, the network element performs, with a hardware writer of the network element, the table modification associated with the lookup entry in a non-disruptive manner, where the hardware writer performs the table modification associated with the lookup entry in response to determining that the table modification associated with the lookup entry does not leave one of the plurality of lookup entries inconsistent after the table modification is performed.Type: ApplicationFiled: October 31, 2017Publication date: January 3, 2019Inventors: Peter Lam, Navdeep Bhatia, Simon Francis Capper
-
Patent number: 10110474Abstract: A method and apparatus of a network element that updates an interface list of a multi-link group of a network element is described. In an exemplary embodiment, a network element receives an indication that the interface list for the multi-link group on a network element is to change. In addition, the interface list includes a first set of interfaces. The network element further includes an address table having a plurality of address entries, where each of the plurality of address entries includes an address, a multi-link nexthop, and a tag group reference. The tag group reference references an entry in a tag group table, where a tag group entry includes a tag group identifier and a tag group set of interfaces. The network element further receives a second set of interfaces. The network element additionally updates the interface list for the tag group entry to include a second set of interfaces. Furthermore, the network element transmits data with the multi-link group using the second set of interfaces.Type: GrantFiled: September 21, 2016Date of Patent: October 23, 2018Assignee: Arista Networks, Inc.Inventors: Feng Zhu, Di Wang, Simon Francis Capper, Kartik Chandran, Sriram Chidambaram, Hemanth Murthy
-
Patent number: 9996263Abstract: 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: GrantFiled: May 11, 2016Date of Patent: June 12, 2018Assignee: Arista Networks, Inc.Inventors: Hugh W. Holbrook, Duncan Stuart Ritchie, Sebastian Sapa, Simon Francis Capper
-
Publication number: 20180083863Abstract: A method and apparatus of a network element that updates an interface list of a multi-link group of a network element is described. In an exemplary embodiment, a network element receives an indication that the interface list for the multi-link group on a network element is to change. In addition, the interface list includes a first set of interfaces. The network element further includes an address table having a plurality of address entries, where each of the plurality of address entries includes an address, a multi-link nexthop, and a tag group reference. The tag group reference references an entry in a tag group table, where a tag group entry includes a tag group identifier and a tag group set of interfaces. The network element further receives a second set of interfaces. The network element additionally updates the interface list for the tag group entry to include a second set of interfaces. Furthermore, the network element transmits data with the multi-link group using the second set of interfaces.Type: ApplicationFiled: September 21, 2016Publication date: March 22, 2018Inventors: Feng Zhu, Di Wang, Simon Francis Capper, Kartik Chandran, Sriram Chidambaram, Hemanth Murthy
-
Publication number: 20160253098Abstract: 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: ApplicationFiled: May 11, 2016Publication date: September 1, 2016Inventors: Hugh W. Holbrook, Duncan Stuart Ritchie, Sebastian Sapa, Simon Francis Capper