Patents by Inventor Ethan J. Jackson

Ethan J. Jackson 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: 9667556
    Abstract: Some embodiments provide a method for reducing the transmission of connection validating control signals when they are not needed. Network entities transmit connection validating control signals over network connections at regular intervals to validate that the network connections and the network entities remain functional. The method monitors data traffic fluctuations on the network connections to determine when connection validating control signals may not be needed. The method reduces unnecessary connection validating control signals in order to optimize the usage of network resources.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: May 30, 2017
    Assignee: NICIRA, INC.
    Inventors: Ethan J. Jackson, Keith E. Amidon, Andy Zhou
  • Publication number: 20170142012
    Abstract: Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that comprises a logical router with a logical port that connects to an external network. The method selects several host machines to host a L3 gateway that implements the connection to the external network for the logical router from a set of host machines designated for hosting logical routers. The method generates data tuples for provisioning a set of managed forwarding elements that implement the logical network to send data packets that require processing by the L3 gateway to the selected host machines. The data tuples specify for the managed forwarding elements to distribute the data packets across the selected host machines.
    Type: Application
    Filed: January 31, 2017
    Publication date: May 18, 2017
    Inventors: Pankaj Thakkar, Ethan J. Jackson, Benjamin C. Basler
  • Patent number: 9602398
    Abstract: Some embodiments of the invention provide a switching element that receives a packet and processes the packet by dynamically generating a flow entry with a set of wildcard fields. The switching element then caches the flow entry and processes any subsequent packets that have header values that match the flow entry's non-wildcard match fields. In generating the flow, the switching element initially wildcards some of all of match fields and generates a new flow entry by un-wildcarding each match field that was consulted or examined to generate the flow entry.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: March 21, 2017
    Assignee: NICIRA, INC.
    Inventors: Justin Pettit, Ethan J. Jackson, Jesse E. Gross, IV, Andy Zhou
  • Patent number: 9577845
    Abstract: Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that comprises a logical router with a logical port that connects to an external network. The method selects several host machines to host a L3 gateway that implements the connection to the external network for the logical router from a set of host machines designated for hosting logical routers. The method generates data tuples for provisioning a set of managed forwarding elements that implement the logical network to send data packets that require processing by the L3 gateway to the selected host machines. The data tuples specify for the managed forwarding elements to distribute the data packets across the selected host machines.
    Type: Grant
    Filed: January 28, 2014
    Date of Patent: February 21, 2017
    Assignee: NICIRA, INC.
    Inventors: Pankaj Thakkar, Ethan J. Jackson, Benjamin C. Basler
  • Patent number: 9569368
    Abstract: Some embodiments provide a physical forwarding that installs flows in a flow table cache and uses the flows to process packets. In addition, the physical forwarding element iterates through each flow and validates the flow. In some embodiments, the physical forwarding element performs the installation and validation operations in a multi-threaded manner. The physical forwarding element in some such embodiments includes a set of one or more upcall handlers to install flows in the cache, and a set of one or more revalidators to validate the flows in the cache. In its own thread, an upcall handler may run independently of each revalidator in the set of revalidators. In another thread, a revalidator may run independently of each upcall handler and each other revalidator.
    Type: Grant
    Filed: December 13, 2013
    Date of Patent: February 14, 2017
    Assignee: NICIRA, INC.
    Inventor: Ethan J. Jackson
  • Patent number: 9503371
    Abstract: Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that includes a logical router. The method selects at least two host machines to implement a routing table for the logical router from several host machines designated for hosting logical routers. The selected host machines include a designated master host machine for the routing table. The method generates data tuples for provisioning a set of managed forwarding elements that implement the logical network to send data packets that require processing by the routing table to the selected host machines. The data tuples specify an order for the selected host machines with the designated master host machine as the first host machine in the specified order.
    Type: Grant
    Filed: January 28, 2014
    Date of Patent: November 22, 2016
    Assignee: Nicira, Inc.
    Inventors: Pankaj Thakkar, Ethan J. Jackson, Benjamin C. Basler, Joseph A. Garcia
  • Patent number: 9485185
    Abstract: Some embodiments provide a method for reducing the transmission of connection validating control signals when they are not needed. Network entities transmit connection validating control signals over network connections at regular intervals to validate that the network connections and the network entities remain functional. The method monitors data traffic fluctuations on the network connections to determine when connection validating control signals may not be needed. The method reduces unnecessary connection validating control signals in order to optimize the usage of network resources.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: November 1, 2016
    Assignee: Nicira, Inc.
    Inventors: Ethan J. Jackson, Keith E. Amidon, Andy Zhou
  • Publication number: 20150281125
    Abstract: Some embodiments provide a method for processing a packet received by a managed forwarding element. The method performs a series of packet classification operations based on header values of the received packet. The packet classifications operations determine a next destination of the received packet. When the series of packet classification operations specifies to send the packet to a network service that performs payload transformations on the packet, the method (1) assigns a service operation identifier to the packet that identifies the service operations for the network service to perform on the packet, (2) sends the packet to the network service with the service operation identifier, and (3) stores a cache entry for processing subsequent packets without the series of packet classification operations. The cache entry includes the assigned service operation identifier. The network service uses the assigned service operation identifier to process packets without performing its own classification operations.
    Type: Application
    Filed: December 17, 2014
    Publication date: October 1, 2015
    Inventors: Teemu Koponen, Ethan J. Jackson
  • Publication number: 20150169457
    Abstract: Some embodiments provide a physical forwarding that installs flows in a flow table cache and uses the flows to process packets. In addition, the physical forwarding element iterates through each flow and validates the flow. In some embodiments, the physical forwarding element performs the installation and validation operations in a multi-threaded manner. The physical forwarding element in some such embodiments includes a set of one or more upcall handlers to install flows in the cache, and a set of one or more revalidators to validate the flows in the cache. In its own thread, an upcall handler may run independently of each revalidator in the set of revalidators. In another thread, a revalidator may run independently of each upcall handler and each other revalidator.
    Type: Application
    Filed: December 13, 2013
    Publication date: June 18, 2015
    Applicant: Nicira, Inc.
    Inventor: Ethan J. Jackson
  • Publication number: 20150169451
    Abstract: Some embodiments provide a physical forwarding element that dynamically adjusts the number of flows allowed in a flow table cache. In adjusting, the physical forwarding element initially sets the maximum number of flows allowed in the cache. From the flow table cache, the physical forwarding then iterates through the set maximum number of flows and records the length of time it took to iterate through the flows. Based on the duration, the physical forwarding element then automatically adjusts the size of the flow table cache by increasing or decreasing the number of flows allowed in the cache. Alternatively, the physical forwarding element may choose to keep the cache size the same based on the duration.
    Type: Application
    Filed: December 13, 2013
    Publication date: June 18, 2015
    Applicant: Nicira, Inc.
    Inventor: Ethan J. Jackson
  • Publication number: 20150092778
    Abstract: Some embodiments provide a method for a forwarding element that forwards packets. The method receives a packet. The method consults a tree structure to generate a wildcard mask. The consulting includes traversing the tree structure by tracing a set of bits from the packet header and un-wildcarding the corresponding set of bits from the wildcard mask. The method identifies a matching rule for the packet. The method generates a flow based on the matching rule and the wildcard mask. The flow is used to process each other packet that matches each un-wildcarded bit of the flow.
    Type: Application
    Filed: September 15, 2014
    Publication date: April 2, 2015
    Inventors: Ethan J. Jackson, Jarno Rajahalme, Nicholas Shelly, Teemu Koponen
  • Publication number: 20150085655
    Abstract: Some embodiments provide a method for reducing the transmission of connection validating control signals when they are not needed. Network entities transmit connection validating control signals over network connections at regular intervals to validate that the network connections and the network entities remain functional. The method monitors data traffic fluctuations on the network connections to determine when connection validating control signals may not be needed. The method reduces unnecessary connection validating control signals in order to optimize the usage of network resources.
    Type: Application
    Filed: October 31, 2013
    Publication date: March 26, 2015
    Applicant: Nicira, Inc.
    Inventors: Ethan J. Jackson, Keith E. Amidon, Andy Zhou
  • Publication number: 20150089048
    Abstract: Some embodiments provide a method for reducing the transmission of connection validating control signals when they are not needed. Network entities transmit connection validating control signals over network connections at regular intervals to validate that the network connections and the network entities remain functional. The method monitors data traffic fluctuations on the network connections to determine when connection validating control signals may not be needed. The method reduces unnecessary connection validating control signals in order to optimize the usage of network resources.
    Type: Application
    Filed: October 31, 2013
    Publication date: March 26, 2015
    Applicant: Nicira, Inc.
    Inventors: Ethan J. Jackson, Keith E. Amidon, Andy Zhou
  • Publication number: 20150078385
    Abstract: Some embodiments provide a method for a forwarding element that forwards packets. The method receives a packet and performs a hash lookup operation on one or more hash tables to find a matching rule for a packet. The method consults a common match data set to generate a wildcard mask. The method generates a flow based on the matching rule and the wildcard mask. The flow is used to process other packets that match each bit which is un-wildcarded.
    Type: Application
    Filed: September 15, 2014
    Publication date: March 19, 2015
    Inventors: Nicholas Shelly, Ethan J. Jackson, Teemu Koponen
  • Publication number: 20150078384
    Abstract: Some embodiments provide a method for a forwarding element that forwards packets. The method receives a packet and consults a tree structure to identity a prefix length associated with an IP address in the packet header. The method skips lookup of each subtable with a set of IP addresses that have a different prefix length than the identified prefix length. The method identifies a matching rule from a particular subtable. The method generates a flow based on the matching rule. The flow is used to process packets that have the same prefix.
    Type: Application
    Filed: September 15, 2014
    Publication date: March 19, 2015
    Inventors: Ethan J. Jackson, Jarno Rajahalme
  • Publication number: 20150081833
    Abstract: Some embodiments of the invention provide a switching element that receives a packet and processes the packet by dynamically generating a flow entry with a set of wildcard fields. The switching element then caches the flow entry and processes any subsequent packets that have header values that match the flow entry's non-wildcard match fields. In generating the flow, the switching element initially wildcards some of all of match fields and generates a new flow entry by un-wildcarding each match field that was consulted or examined to generate the flow entry.
    Type: Application
    Filed: October 31, 2013
    Publication date: March 19, 2015
    Applicant: Nicira, Inc.
    Inventors: Justin Pettit, Ethan J. Jackson, Jesse E. Gross, IV, Andy Zhou
  • Publication number: 20150078386
    Abstract: Some embodiments provide a method for a forwarding element that forwards packets. The method receives a packet. The method performs a first stage lookup of a hash table for a first hash of a first set of header fields and un-wildcards bits of a wildcard mask that corresponds to the first set of header fields. If a matching hash is found in the first stage lookup, the method performs a second stage lookup of the hash table for a second hash of a second set of header fields and un-wildcards bits of the wildcard mask that corresponds to the second set of header fields. The method identifies a matching rule for the packet. The method generates a flow based on the matching rule and the wildcard mask, wherein the flow is used to process each other packets that match each bit which is un-wildcarded.
    Type: Application
    Filed: September 15, 2014
    Publication date: March 19, 2015
    Inventors: Ethan J. Jackson, Jarno Rajahalme
  • Publication number: 20150063364
    Abstract: Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that comprises a logical router with a logical port that connects to an external network. The method selects several host machines to host a L3 gateway that implements the connection to the external network for the logical router from a set of host machines designated for hosting logical routers. The method generates data tuples for provisioning a set of managed forwarding elements that implement the logical network to send data packets that require processing by the L3 gateway to the selected host machines. The data tuples specify for the managed forwarding elements to distribute the data packets across the selected host machines.
    Type: Application
    Filed: January 28, 2014
    Publication date: March 5, 2015
    Applicant: Nicira, Inc.
    Inventors: Pankaj Thakkar, Ethan J. Jackson, Benjamin C. Basler
  • Publication number: 20150063360
    Abstract: Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that includes a logical router. The method selects at least two host machines to implement a routing table for the logical router from several host machines designated for hosting logical routers. The selected host machines include a designated master host machine for the routing table. The method generates data tuples for provisioning a set of managed forwarding elements that implement the logical network to send data packets that require processing by the routing table to the selected host machines. The data tuples specify an order for the selected host machines with the designated master host machine as the first host machine in the specified order.
    Type: Application
    Filed: January 28, 2014
    Publication date: March 5, 2015
    Applicant: NICIRA, INC.
    Inventors: Pankaj Thakkar, Ethan J. Jackson, Benjamin C. Basler, Joseph A. Garcia
  • Patent number: 8913483
    Abstract: In a hierarchical switching architecture that includes at least one lower level managed switching element that connects to several higher level managed switching elements, some embodiments provide a method of identifying a higher level managed switching element to which the lower level managed switching element forwards a packet for further processing. The method computes a value based on a set of attributes of the packet. The method identifies a record from a hierarchy traversal table based on the computed value. The record specifies (1) a first higher level managed switching element as a primary higher level managed switching element and (2) a second higher level managed switching element as a secondary higher level managed switching element. The primary and secondary higher level managed switching elements are for forwarding the packet for further processing. The method forwards the packet to one of the higher level managed switching elements.
    Type: Grant
    Filed: August 26, 2011
    Date of Patent: December 16, 2014
    Assignee: Nicira, Inc.
    Inventors: Benjamin L. Pfaff, Ethan J. Jackson, Teemu Koponen, Pankaj Thakkar