Patents by Inventor Pankaj Thakkar

Pankaj Thakkar 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: 9887960
    Abstract: Some embodiments provide a method for a network controller that manages several logical networks. The method receives a specification of a logical network that includes at least one logical forwarding element attached to a logical service (e.g., DHCP). The method selects at least one host machine to host the specified logical service from several host machines designated for hosting logical services. The method generates logical service configuration information for distribution to the selected host machine. In some embodiments, the method selects a master host machine and a backup host machine for hosting logical service. In some embodiments, a particular one of the designated host machines hosts at least two DHCP services for two different logical networks as separate processes operating on the particular host machine.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: February 6, 2018
    Assignee: NICIRA, INC.
    Inventors: Anupam Chanda, Pankaj Thakkar, Igor Ganichev, Ronghua Zhang, Ansis Atteka
  • Publication number: 20180006880
    Abstract: Some embodiments provide a method for managing a set of forwarding elements. The method receives configuration information for a set of gateways specifying (i) multiple gateways for implementing logical router ports and (ii) a ranking order of the gateways in the set. The method configures a first gateway in the ranking order as a master gateway for the set of gateways. Upon receiving a first notification that the first gateway is not operational, the method configures a second gateway in the ranking order as the master gateway for the set of gateways. Upon receiving a second, subsequent notification that the first gateway has resumed operation, the method maintains the second gateway in the ranking order as the master gateway for the set of gateways and configures the first gateway in the ranking order as a first standby gateway.
    Type: Application
    Filed: June 29, 2016
    Publication date: January 4, 2018
    Inventors: Amre Shakimov, Igor Ganichev, Pankaj Thakkar, Ansis Atteka
  • Patent number: 9860151
    Abstract: Some embodiments provide a method for a first network controller that manages a set of logical forwarding elements implemented in several managed forwarding elements. The method receives a request to trace a specified packet having a particular source on a logical forwarding element. The method generates the packet according to the packet specification. The generated packet includes an indicator that the packet is for a trace operation. The method sends the packet to a second network controller that manages a managed forwarding element associated with the particular source. The method receives a first set of messages regarding operations performed on the packet from a set of network controllers that receives a second set of messages regarding operations performed on the packet from a set of managed forwarding elements that process the packet.
    Type: Grant
    Filed: April 12, 2016
    Date of Patent: January 2, 2018
    Assignee: NICIRA, INC.
    Inventors: Igor Ganichev, Pankaj Thakkar, Teemu Koponen, Mo Dong
  • Patent number: 9843476
    Abstract: A particular network controller receives a first set of inputs from the first controller and a second set of inputs from the second controller. The particular controller then starts to compute a set of outputs using the first set of inputs. After a failure of the first controller, the particular controller receives a third set of inputs from the second controller. The third set of inputs and the first or second set of inputs makes up a group of inputs for being processed together and separately from another group of inputs. The particular controller then receives an indicator from the second controller, which indicates that all inputs of the group of inputs have arrived at the particular controller. After receiving the indicator and after computing the set of outputs completely, the particular controller sends the set of outputs to a fourth controller or to a managed forwarding element.
    Type: Grant
    Filed: April 18, 2013
    Date of Patent: December 12, 2017
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, W. Andrew Lambeth, Pankaj Thakkar
  • Publication number: 20170318113
    Abstract: Some embodiments provide a method for a network controller that manages multiple managed forwarding elements (MFEs) that implement multiple logical networks. The method stores (i) a first data structure including an entry for each logical entity in a desired state of the multiple logical networks and (ii) a second data structure including an entry for each logical entity referred to by an update for at least one MFE. Upon receiving updates specifying modifications to the logical entities, the method adds separate updates to separate queues for the MFEs that require the update. The separate updates reference the logical entity entries in the second data structure. When the second data structure reaches a threshold size in comparison to the first data structure, the method compacts the updates in at least one of the queues so that each queue has no more than one update referencing a particular logical entity entry.
    Type: Application
    Filed: April 29, 2016
    Publication date: November 2, 2017
    Inventors: Igor Ganichev, Alexander Yip, Pankaj Thakkar, Teemu Koponen, Aayush Saxena
  • Publication number: 20170277557
    Abstract: Some embodiments provide a system for implementing a logical network that includes a set of end machines, a first logical middlebox, and a second logical middlebox connected by a set of logical forwarding elements. The system includes a set of nodes. Each of several nodes includes (i) a virtual machine for implementing an end machine of the logical network, (ii) a managed switching element for implementing the set of logical forwarding elements of the logical network, and (iii) a middlebox element for implementing the first logical middlebox of the logical network. The system includes a physical middlebox appliance for implementing the second logical middlebox.
    Type: Application
    Filed: June 9, 2017
    Publication date: September 28, 2017
    Inventors: Teemu Koponen, Ronghua Zhang, Pankaj Thakkar, Martin Casado
  • Publication number: 20170264483
    Abstract: Some embodiments provide a method for identifying a realization status of one or more logical entities of a logical network. In some embodiments the method is implemented by a controller that controls network data communications in a logical network. The method receives a request for realization status of a set of logical entities at a particular point of time that is associated with a particular value of a realization number. The method determines whether configuration data up to the particular point of time for each logical entity in the set has been processed and distributed to a set of local controllers that operates on a set of host machines. The method returns a realization reply that includes a successful realization message when the configuration data up to the particular point in time for each logical entity in the set has been processed and distributed to the set of local controllers.
    Type: Application
    Filed: March 14, 2016
    Publication date: September 14, 2017
    Inventors: W. Andrew Lambeth, James Joseph Stabile, Ganesan Chandrashekhar, Pankaj Thakkar, Peter J. Balland, III, Igor Ganichev
  • Publication number: 20170264489
    Abstract: Some embodiments provide a method for determining a realization status of one or more logical entities of a logical network. The method, each time a particular event occurs, increments the value of a realization number and publishes the incremented value to a set of controllers of the logical network. Upon receiving data that specifies the state of a logical entity of the logical network, the method publishes the logical entity state's data to the set of controllers. In some embodiments, the method queries the set of controllers for a realization status of the state data for a set of logical entities that is published to the set of controllers up to a particular point of time. The submitted query, in some embodiments, includes a particular value of the realization number associated with the particular point of time.
    Type: Application
    Filed: March 14, 2016
    Publication date: September 14, 2017
    Inventors: W. Andrew Lambeth, James Joseph Stabile, Ganesan Chandrashekhar, Pankaj Thakkar, Peter J. Balland, III, Igor Ganichev
  • Patent number: 9697033
    Abstract: Some embodiments provide a system for implementing a logical network that includes a set of end machines, a first logical middlebox, and a second logical middlebox connected by a set of logical forwarding elements. The system includes a set of nodes. Each of several nodes includes (i) a virtual machine for implementing an end machine of the logical network, (ii) a managed switching element for implementing the set of logical forwarding elements of the logical network, and (iii) a middlebox element for implementing the first logical middlebox of the logical network. The system includes a physical middlebox appliance for implementing the second logical middlebox.
    Type: Grant
    Filed: January 12, 2015
    Date of Patent: July 4, 2017
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, Ronghua Zhang, Pankaj Thakkar, Martin Casado
  • Patent number: 9697030
    Abstract: A controller of a network control system for configuring several middlebox instances is described. The middlebox instances implement a middlebox in a distributed manner in several hosts. The controller assigns a first set of identifiers to a first middlebox instance that associates an identifier in the first set with a first packet. The controller assigns a second set of identifiers to a second middlebox instance that associates an identifier in the second set with a second packet.
    Type: Grant
    Filed: November 20, 2014
    Date of Patent: July 4, 2017
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, Ronghua Zhang, Pankaj Thakkar, Martin Casado
  • Publication number: 20170163599
    Abstract: Some embodiments provide a method for a first managed forwarding element (MFE). The method receives a packet from a data compute node that connects to the MFE. The packet has a destination address that corresponds to a data compute node in a remote network. The method determines (i) a group of MFEs that form a bridge cluster for sending packets to the remote network and (ii) multiple tunnel endpoints for the group of MFEs, wherein each MFE in the group has at least one of the plurality of tunnel endpoints. The method selects one of the plurality of tunnel endpoints as a destination tunnel endpoint for the packet. The method encpasulates the packet with a source tunnel endpoint associated with the first MFE and the selected destination tunnel endpoint.
    Type: Application
    Filed: December 2, 2015
    Publication date: June 8, 2017
    Inventors: Jianjun Shen, Alexander Tessmer, Mukesh Hira, Pankaj Thakkar, Hua Wang
  • Publication number: 20170163442
    Abstract: Some embodiments provide a method for a network controller. The method identifies a data compute node for operation on a host machine that includes a managed forwarding element (MFE) having multiple tunnel endpoints. The data compute node belongs to a particular logical network. The method identifies multiple other data compute nodes belonging to the particular logical network. The method distributes, to the MFE, (i) a mapping of each data compute node of the other data compute nodes to an identifier for a group of tunnel endpoints associated with the data compute node and (ii) a mapping of each of the identifiers to a list of tunnel endpoints. the MFE uses the mappings to encapsulate packets sent from the data compute node for transmission to other MFEs.
    Type: Application
    Filed: December 2, 2015
    Publication date: June 8, 2017
    Inventors: Jianjun Shen, Alexander Tessmer, Mukesh Hira, Pankaj Thakkar, Hua Wang
  • Publication number: 20170163536
    Abstract: Some embodiments provide a method for a managed forwarding element (MFE). The method receives a packet from a data compute node for which the MFE performs first-hop processing. The data compute node is associated with multiple tunnel endpoints of the MFE. The method determines a destination tunnel endpoint for the packet. The method uses a load balancing algorithm to select one of the multiple tunnel endpoints of the MFE as a source tunnel endpoint for the packet. The method encapsulates the packet in a tunnel using the source and destination tunnel endpoints.
    Type: Application
    Filed: December 2, 2015
    Publication date: June 8, 2017
    Inventors: Jianjun Shen, Alexander Tessmer, Mukesh Hira, Pankaj Thakkar, Hua Wang
  • Publication number: 20170163598
    Abstract: Some embodiments provide a method for a managed forwarding element (MFE). At the MFE, the method receives a first packet from a particular tunnel endpoint. The first packet originates from a particular data compute node associated with multiple tunnel endpoints including the particular tunnel endpoint. Based on the first packet, the method stores an association of the particular tunnel endpoint with the particular data compute node. The method uses the stored association to encapsulate subsequent packets received at the MFE and having the particular data compute node as a destination address with the particular tunnel endpoint as a destination tunnel endpoint.
    Type: Application
    Filed: December 2, 2015
    Publication date: June 8, 2017
    Inventors: Jianjun Shen, Alexander Tessmer, Mukesh Hira, Pankaj Thakkar, Hua Wang
  • 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
  • Publication number: 20170126615
    Abstract: Some embodiments provide an ARP-offload service node for several managed hardware forwarding elements (MHFEs) in a datacenter in order to offload ARP query processing by the MHFEs. The MHFEs are managed elements because one or more network controllers (e.g., one or more management servers) send configuration data to the MHFEs to configure their operations. In some of these embodiments, the network controllers configure the MHFEs to create logical forwarding elements (e.g., logical switches, logical routers, etc.) each of which can span two or more managed forwarding elements.
    Type: Application
    Filed: November 3, 2016
    Publication date: May 4, 2017
    Inventors: Anupam Chanda, Pankaj Thakkar
  • Publication number: 20170126493
    Abstract: Some embodiments provide a method for configuring a logical middlebox in a hosting system that includes a set of nodes. The logical middlebox is part of a logical network that includes a set of logical forwarding elements that connect a set of end machines. The method receives a set of configuration data for the logical middlebox. The method uses a stored set of tables describing physical locations of the end machines to identify a set of nodes at which to implement the logical middlebox. The method provides the logical middlebox configuration for distribution to the identified nodes.
    Type: Application
    Filed: January 4, 2017
    Publication date: May 4, 2017
    Inventors: Ronghua Zhang, Teemu Koponen, IV, Pankaj Thakkar, Amar Padmanabhan, Martin Casado
  • Publication number: 20170116023
    Abstract: A controller of a network control system for configuring several middlebox instances is described. The middlebox instances implement a middlebox in a distributed manner in several hosts. The controller configures, in a first host, a first middlebox instance to receive a notification from a migration module before a virtual machine (VM) running in the first host migrates to a second host and to send middlebox state related to the VM to the migration module.
    Type: Application
    Filed: January 4, 2017
    Publication date: April 27, 2017
    Inventors: Ronghua Zhang, Teemu Koponen, Pankaj Thakkar, Amar Padmanabhan, W. Andrew Lambeth, Martin Casado
  • Publication number: 20170091004
    Abstract: Some embodiments of the invention provide a novel method for interfacing between a first tuple-based controller and a second controller using a message-based protocol. The method of some embodiments identifies a set of changed tuples stored in a set of output tables, generates a set of messages based on the changed tuples, and sends the generated set of messages to a second controller. In some embodiments, the first and second controllers are parts of a network control system that manages forwarding elements to implement a logical network.
    Type: Application
    Filed: February 16, 2016
    Publication date: March 30, 2017
    Inventors: Amre Shakimov, Su Wang, Anupam Chanda, Pankaj Thakkar
  • Publication number: 20170093618
    Abstract: A method for learning a MAC address of an end machine that is logically connected to a logical network is described. The method receives configuration data for implementing a distributed logical router having different logical ports each of which is associated with a logical port of a logical switch. The method receives a packet through a first logical port of the logical router that has a destination IP address associated with a particular logical switch that is associated with a second logical port of the logical router. In order to learn the MAC address of the end machine, the method sends a first broadcast packet with a first source MAC address to a first set of forwarding elements that implements the particular logical switch, and sends a second broadcast packet with a second source MAC address to a second set of forwarding elements that also implements the particular logical switch.
    Type: Application
    Filed: November 18, 2015
    Publication date: March 30, 2017
    Inventors: Anupam Chanda, Pankaj Thakkar