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).

  • 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
  • Publication number: 20170093617
    Abstract: Some embodiments provide a novel method for a network control system (or controllers of the network control system) to manage a set of hardware Virtual Tunnel End Points (VTEPs) used to implement a logical network. Many network devices or entities (such as interfaces or transport nodes) have a functionality to mark the device or entity as “administratively down”. In that mode, such a device does not participate in any further forwarding in the dataplane, until it is marked as administratively up. This feature is often used to troubleshoot networks, and/or to remove misbehaving or faulty devices.
    Type: Application
    Filed: February 16, 2016
    Publication date: March 30, 2017
    Inventors: Anupam Chanda, Pankaj Thakkar
  • Publication number: 20170093636
    Abstract: A method for configuring a managed forwarding element (MFE) to perform logical routing operations in a logical network on behalf of a hardware switch is described. The method of some embodiments receives data that defines a logical router that logically connects several different end machines operating on several different host machines to different physical machines that are connected to the hardware switch. The method, based on the received data, defines a number of routing components for the logical router. In some embodiments, the method then configures the MFE to implement the routing components in order to enable the MFE to perform logical routing operations on behalf of the hardware switch.
    Type: Application
    Filed: November 18, 2015
    Publication date: March 30, 2017
    Inventors: Anupam Chanda, Pankaj Thakkar
  • Publication number: 20170085395
    Abstract: A network controller for managing several managed switching elements that forward data in a network that includes the managed switching elements. The network controller is further for creating a logical switching element to be implemented in a set of managed switching elements. The network controller includes a set of modules for receiving input data specifying a logical switching element and for creating, based on the received input data, a set of logical switch constructs for the logical switching element by performing a set of database join operations. At least one of the logical switch constructs is for facilitating non-forwarding behavior of the logical switching element.
    Type: Application
    Filed: November 22, 2016
    Publication date: March 23, 2017
    Inventors: Teemu Koponen, Pankaj Thakkar, Bryan J. Fulton
  • Patent number: 9584446
    Abstract: The present invention is directed to a method and system of memory management that features dual buffer rings, each of which includes descriptors identifying addresses of a memory space, referred to as buffers, in which portions of data packets are stored. Typically, the header segment of each data packet is stored at a first set of a plurality of buffers, and the portion of the payload segment that does not fit among the buffers of the first set is stored in the buffers of a second set. In this manner, the size of the individual buffers associated with the first buffer rings may be kept to the smallest size of useable storage space, and the buffers corresponding to the second buffer ring may be arbitrary in size.
    Type: Grant
    Filed: March 18, 2008
    Date of Patent: February 28, 2017
    Assignee: VMware, Inc.
    Inventors: Ronghua Zhang, Pankaj Thakkar
  • 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: 9558027
    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: Grant
    Filed: January 12, 2015
    Date of Patent: January 31, 2017
    Assignee: NICIRA, INC.
    Inventors: Ronghua Zhang, Teemu Koponen, Pankaj Thakkar, Amar Padmanabhan, Martin Casado
  • Patent number: 9552219
    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: Grant
    Filed: November 16, 2015
    Date of Patent: January 24, 2017
    Assignee: NICIRA, INC.
    Inventors: Ronghua Zhang, Teemu Koponen, Pankaj Thakkar, Amar Padmanabhan, W. Andrew Lambeth, Martin Casado
  • Publication number: 20160380812
    Abstract: Some embodiments provide a managed hardware forwarding element (MHFE) controller that serves as an intermediary between one or more central controllers in a central control plane (CCP) cluster and one or more third-party hardware devices (e.g., physical switches and routers, applicances such as firewalls, load balancers, etc.). The MHFE controller of some embodiments uses (i) a first protocol to communicate with the CCP cluster and (ii) a second protocol to communicate with the one or more third-party devices managed by the MHFE controller, thereby enabling the CCP cluster to distribute logical network configuration information to the physical workloads (e.g., third-party servers connected to a third-party Top of Rack (TOR) switch).
    Type: Application
    Filed: August 26, 2015
    Publication date: December 29, 2016
    Inventors: Anupam Chanda, Jianjun Shen, Hua Wang, Ziyou Wang, HsinYi Shen, Sarvani Vakkalanka, Pankaj Thakkar
  • Publication number: 20160373355
    Abstract: For a network controller for managing hosts in a network, a method for configuring a host to resolve network addresses is described. The method configures an address resolution module in a host to resolve a network address. The method configures a managed forwarding element in the host to (1) avoid sending a request to resolve the network address to another host by using the address resolution module to resolve the network address and (2) forward packets using the resolved network address.
    Type: Application
    Filed: September 2, 2016
    Publication date: December 22, 2016
    Inventors: Ronghua Zhang, Teemu Koponen, Pankaj Thakkar
  • Patent number: 9525647
    Abstract: A network controller for managing several managed switching elements that forward data in a network that includes the managed switching elements. The network controller is further for creating a logical switching element to be implemented in a set of managed switching elements. The network controller includes a set of modules for receiving input data specifying a logical switching element and for creating, based on the received input data, a set of logical switch constructs for the logical switching element by performing a set of database join operations. At least one of the logical switch constructs is for facilitating non-forwarding behavior of the logical switching element.
    Type: Grant
    Filed: October 7, 2011
    Date of Patent: December 20, 2016
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, Pankaj Thakkar, Bryan J. Fulton
  • Publication number: 20160359674
    Abstract: A network control system for managing a plurality of switching elements that implement a plurality of logical datapath sets. The network control system includes first and second controllers for generating requests for modifications to first and second logical datapath sets. The first controller is further for determining whether to make modifications to the first logical datapath set. The second controller is further for determining whether to make modifications to the second logical datapath set. Each controller is further for receiving logical control plane data that specifies logical datapath sets and for converting the logical control plane data to physical control plane data for propagating to the switching elements.
    Type: Application
    Filed: June 3, 2016
    Publication date: December 8, 2016
    Inventors: Teemu Koponen, Pankaj Thakkar, Martin Casado, W. Andrew Lambeth
  • Publication number: 20160344586
    Abstract: Some embodiments provide a method for a network controller. The method receives configuration data, for a logical router managed by the network controller, that specifies at least one logical port for the logical router. The method automatically generates connected routes for the logical router based on network address ranges specified for the logical ports of the logical router. The method receives a manually input static route for the logical router. The method generates data tuples, for distribution to several managed network elements, based on the connected and static routes for the logical router in order for the several managed network elements to implement the logical router.
    Type: Application
    Filed: August 1, 2016
    Publication date: November 24, 2016
    Inventors: Igor Ganichev, Ronghua Zhang, Teemu Koponen, Gleb Dubovik, Pankaj Thakkar
  • 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
  • Publication number: 20160308785
    Abstract: A non-transitory machine readable medium storing a program that configures managed forwarding elements to establish tunnels between the managed forwarding elements is described. From a particular managed forwarding element, the program receives information regarding coupling of a network element to the first managed forwarding element. Upon receiving the information, the program generates a set of universal flow entries for configuring another managed forwarding element to establish a tunnel to the particular managed forwarding element.
    Type: Application
    Filed: March 21, 2016
    Publication date: October 20, 2016
    Inventors: Amar Padmanabhan, Pankaj Thakkar, Ronghua Zhang, Teemu Koponen
  • Publication number: 20160301655
    Abstract: A method of suppressing ARP packets in a logical network comprising a set of data compute nodes (DCNs). The DCNs are hosted on a set of physical hosts. Each DCN has a protocol address and is connected to a forwarding elements (FE) on the corresponding host. Each FE has a set of flows that specifies a set of conditions to match a set of fields of each received packet and a set of actions to take on a packet that matches the set of conditions. An FE on a physical host receives a packet sent by a first DCN on the physical host and determines that the received packet is an ARP request packet by matching a set of fields in the packet with a set of conditions of a particular flow. The ARP request packet identifies a protocol address of a second DCN on the logical network.
    Type: Application
    Filed: December 3, 2015
    Publication date: October 13, 2016
    Inventors: Harold Vinson C. Lim, Mart Haitjema, Srinivas Neginhal, Pankaj Thakkar, Teemu Koponen, Anupam Chanda, Benjamin L. Pfaff
  • Publication number: 20160294680
    Abstract: Some embodiments provide a network control system with techniques for handling failover of network controllers with minimal churn in the network state distributed to the forwarding elements of the network. Specifically, in some embodiments, the local controller designates a waiting period before computing output network state data entries based on the new version of the input network state data entries. Alternatively, or conjunctively, the local controller of some embodiments calculates the changes between the new version of input state data entries and its stored existing version of the input state data entries, and only generates new output network state data entries based on the calculated changes, in order to minimize unnecessary recalculations of the output network state data entries. The new output network state data entries may then be used by the local controller to provision its managed forwarding element.
    Type: Application
    Filed: July 30, 2015
    Publication date: October 6, 2016
    Inventors: Amre Shakimov, Srinivas Neginhal, Anupam Chanda, Su Wang, Pankaj Thakkar
  • Publication number: 20160294604
    Abstract: Some embodiments provide a network control system with techniques for handling failover of network controllers with minimal churn in the network state distributed to the forwarding elements of the network. Specifically, in some embodiments, the local controller designates a waiting period before computing output network state data entries based on the new version of the input network state data entries. Alternatively, or conjunctively, the local controller of some embodiments calculates the changes between the new version of input state data entries and its stored existing version of the input state data entries, and only generates new output network state data entries based on the calculated changes, in order to minimize unnecessary recalculations of the output network state data entries. The new output network state data entries may then be used by the local controller to provision its managed forwarding element.
    Type: Application
    Filed: July 30, 2015
    Publication date: October 6, 2016
    Inventors: Amre Shakimov, Srinivas Neginhal, Anupam Chanda, Su Wang, Pankaj Thakkar
  • Patent number: 9444651
    Abstract: A network control system that includes a first set of network controllers for (i) receiving a logical control plane definition of a logical switching element that couples to both a first set of network hosts in a first domain and a second set of network hosts in a second domain, (ii) translating the logical control plane definition of the logical switching element into a first set of flow entries in a first logical forwarding plane, and (iii) translating the first set of flow entries into a second set of flow entries in a second logical forwarding plane. The network control system includes a second set of network controllers in the first domain for (i) receiving a portion of the second set of flow entries and (ii) translating the portion of the second set of flow entries into a third set of flow entries in a physical control plane.
    Type: Grant
    Filed: August 17, 2012
    Date of Patent: September 13, 2016
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, Martin Casado, Pankaj Thakkar, Ronghua Zhang, Daniel J. Wendlandt
  • Publication number: 20160226741
    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: Application
    Filed: April 12, 2016
    Publication date: August 4, 2016
    Inventors: Igor Ganichev, Pankaj Thakkar, Teemu Koponen, Mo Dong