Patents by Inventor Ronghua Zhang

Ronghua Zhang 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: 10235199
    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: January 4, 2017
    Date of Patent: March 19, 2019
    Assignee: NICIRA, INC.
    Inventors: Ronghua Zhang, Teemu Koponen, Pankaj Thakkar, Amar Padmanabhan, W. Andrew Lambeth, Martin Casado
  • Publication number: 20190075050
    Abstract: Some embodiments provide a network system. The network system includes a first set of host machines for hosting virtual machines that connect to each other through a logical network. The first set of host machines includes managed forwarding elements for forwarding data between the host machines. The network system includes a second set of host machines for hosting virtualized containers that operate as gateways for forwarding data between the virtual machines and an external network. At least one of the virtualized containers peers with at least one physical router in the external network in order to advertise addresses of the virtual machines to the physical router.
    Type: Application
    Filed: November 4, 2018
    Publication date: March 7, 2019
    Inventors: Ariel Tubaltsev, Ronghua Zhang, Benjamin C. Basler, Serge Maskalik, Rajiv Ramanathan, David J. Leroy, Srinivas Neginhal, Kai-Wei Fan, Ansis Atteka
  • Publication number: 20190036815
    Abstract: For a managed network, some embodiments provide a method for a set of service nodes in an active-active service node cluster in conjunction with a host computer hosting a destination data compute node (DCN) to improve the efficiency of directing a data message to a service node storing state information for the flow to which the data message belongs. a first service node receives a data message in a particular data message flow for which it does not maintain state information. The first service node then identifies a second service node to process the data message and forwards the data message to the second service node. The second service node sends state information for the particular data message flow to the first service node, for the first service node to use to process subsequent data messages in the particular data message flow.
    Type: Application
    Filed: July 31, 2017
    Publication date: January 31, 2019
    Inventors: Mani Kancherla, Ronghua Zhang
  • Publication number: 20190036819
    Abstract: For a managed network, some embodiments provide a method for a set of service nodes in an active-active service node cluster in conjunction with a host computer hosting a destination data compute node (DCN) to improve the efficiency of directing a return data message to a service node storing state information for the flow to which the data message belongs. A primary service node in some embodiments receives a data message in a particular data message flow addressed to a destination DCN, performs a service on the data message and forwards the data message, along with information identifying the primary service node, to a host computer on which the destination DCN executes. The host computer generates an entry in a reverse forwarding table including identifying information for the particular data message flow and the primary service node to use to forward data messages in the particular data message flow to the primary service node.
    Type: Application
    Filed: July 31, 2017
    Publication date: January 31, 2019
    Inventors: Mani Kancherla, Ronghua Zhang
  • Publication number: 20190036881
    Abstract: For a managed network, some embodiments provide a method for a set of service nodes in an active-active service node cluster in conjunction with a host computer hosting a destination data compute node (DCN) to improve the efficiency of directing a data message to a service node storing state information for the flow to which the data message belongs. a first service node receives a data message in a particular data message flow for which it does not maintain state information. The first service node then identifies a second service node to process the data message and forwards the data message to the second service node. The second service node sends state information for the particular data message flow to the first service node, for the first service node to use to process subsequent data messages in the particular data message flow.
    Type: Application
    Filed: July 31, 2017
    Publication date: January 31, 2019
    Inventors: Mani Kancherla, Ronghua Zhang
  • Publication number: 20190034220
    Abstract: Some embodiments provide a non-transitory machine readable medium of a first middlebox element of several middlebox elements to implement a middlebox instance in a distributed manner in several hosts. The non-transitory machine readable medium stores a set of instructions for receiving (1) configuration data for configuring the middlebox instance to implement a middlebox in a logical network and (2) a particular identifier associated with the middlebox in the logical network. The non-transitory machine readable medium stores a set of instructions for generating (1) a set of rules to process packets for the middlebox in the logical network and (2) an internal identifier associated with the set of rules. The non-transitory machine readable medium stores a set of instructions for associating the particular identifier with the internal identifier for later processing of packets having the particular identifier.
    Type: Application
    Filed: September 30, 2018
    Publication date: January 31, 2019
    Inventors: Amar Padmanabhan, Teemu Koponen, Ronghua Zhang, Pankaj Thakkar, Bruce Davie, Martin Casado
  • Patent number: 10193708
    Abstract: A network system that includes a first set of network hosts in a first domain and a second set of network hosts in a second domain. Within each of the domains, the system includes several edge switching elements (SEs) that each couple to the network hosts and forward network data to and from the set of network hosts. Within the first domain, the system includes (i) an interior SE that couples to a particular edge SE in order to receive network data for forwarding from the edge SE when the edge SE does not recognize a destination location of the network data and (ii) an interconnection SE that couples to the interior SE, the edge SE, and the second domain through an external network. When the edge SE receives network data with a destination address in the second domain, it forwards the network data directly to the interconnection SE.
    Type: Grant
    Filed: February 1, 2013
    Date of Patent: January 29, 2019
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, Martin Casado, Pankaj Thakkar, Ronghua Zhang, Daniel J. Wendlandt
  • Patent number: 10191763
    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: June 9, 2017
    Date of Patent: January 29, 2019
    Assignee: NICIRA, INC.
    Inventors: Teemu Koponen, Ronghua Zhang, Pankaj Thakkar, Martin Casado
  • Patent number: 10193828
    Abstract: A novel design of a gateway that handles traffic in and out of a network by using a datapath daemon is provided. The datapath daemon is a run-to-completion process that performs various data-plane packet-processing operations at the edge of the network. The datapath daemon dispatches packets to other processes or processing threads outside of the daemon. At least one of these other processes is a control plane process that consumes the packet.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: January 29, 2019
    Assignee: NICIRA, INC.
    Inventors: Ronghua Zhang, Yong Wang, Teemu Koponen, Michael Hu, Xinhua Hong
  • Publication number: 20190028389
    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: July 12, 2018
    Publication date: January 24, 2019
    Inventors: Ronghua Zhang, Teemu Koponen, Pankaj Thakkar
  • Publication number: 20190020600
    Abstract: Some embodiments provide a method for handling failure at one of several peer centralized components of a logical router. At a first one of the peer centralized components of the logical router, the method detects that a second one of the peer centralized components has failed. In response to the detection, the method automatically identifies a network layer address of the failed second peer. The method assumes responsibility for data traffic to the failed peer by broadcasting a message on a logical switch that connects all of the peer centralized components and a distributed component of the logical router. The message instructs recipients to associate the identified network layer address with a data link layer address of the first peer centralized component.
    Type: Application
    Filed: September 18, 2018
    Publication date: January 17, 2019
    Inventors: Ronghua Zhang, Ganesan Chandrashekhar, Sreeram Ravinoothala, Kai-Wei Fan
  • Publication number: 20190018701
    Abstract: Some embodiments provide method for implementing a logical router of a logical network. The method receives a configuration for a first logical router. The configuration includes a static route for the first logical router. The method defines several routing components with separate routing tables for the logical router. The method adds a first route, having a first static route type, for the static route to the routing tables of at least a first subset of the routing components. Based on the connection of a second logical router to the first logical router, adding a second route, having a second static route type, to the routing tables of at least a second subset of the routing components.
    Type: Application
    Filed: September 17, 2018
    Publication date: January 17, 2019
    Inventors: Ankur Dubey, Sreeram Ravinoothala, Ronghua Zhang, Xuan Zhang
  • Publication number: 20190014032
    Abstract: Some embodiments provide a system that allows for the use of direct host return ports (abbreviated “DHR ports”) on managed forwarding elements to bypass gateways in managed networks. The DHR ports provide a direct connection from certain managed forwarding elements in the managed network to remote destinations that are external to the managed network. Managed networks can include both a logical abstraction layer and physical machine layer. At the logical abstraction layer, the DHR port is treated as a port on certain logical forwarding elements. The DHR port transmits the packet to the routing tables of the physical layer machine that hosts the logical forwarding element without any intervening transmission to other logical forwarding elements. The routing tables of the physical layer machine then strip any logical context associated with a packet and forwarding the packet to the remote destination without any intervening forwarding to a physical gateway provider.
    Type: Application
    Filed: August 25, 2018
    Publication date: January 10, 2019
    Inventors: Ronghua Zhang, Jesse E. Gross, IV
  • Patent number: 10164881
    Abstract: Some embodiments provide a network system. The network system includes a first set of host machines for hosting virtual machines that connect to each other through a logical network. The first set of host machines includes managed forwarding elements for forwarding data between the host machines. The network system includes a second set of host machines for hosting virtualized containers that operate as gateways for forwarding data between the virtual machines and an external network. At least one of the virtualized containers peers with at least one physical router in the external network in order to advertise addresses of the virtual machines to the physical router.
    Type: Grant
    Filed: February 17, 2017
    Date of Patent: December 25, 2018
    Assignee: NICIRA, INC.
    Inventors: Ariel Tubaltsev, Ronghua Zhang, Benjamin C. Basler, Serge Maskalik, Rajiv Ramanathan, David J. Leroy, Srinivas Neginhal, Kai-Wei Fan, Ansis Atteka
  • Patent number: 10153987
    Abstract: A novel design of a gateway that handles traffic in and out of a network by using a datapath daemon is provided. The datapath daemon is a run-to-completion process that performs various data-plane packet-processing operations at the edge of the network. The datapath daemon dispatches packets to other processes or processing threads outside of the daemon. At least one of these other processes is a data plane process that returns a resulting packet to the datapath daemon.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: December 11, 2018
    Assignee: NICIRA, INC.
    Inventors: Ronghua Zhang, Yong Wang, Teemu Koponen, Michael Hu, Xinhua Hong
  • Publication number: 20180331954
    Abstract: Some embodiments provide a method of processing an incoming packet for a managed forwarding element that executes in a host to forward packets in a network. The method performs a lookup into a forwarding table to identify a flow entry matched by the incoming packet. The flow entry specifies a high-level action to perform on the incoming packet. The method provides packet data to a module executing separately from the managed forwarding element in the host. The module performs a set of processes in order to identify a set of low-level actions for the managed forwarding element to perform on the incoming packet without additional lookups into the forwarding table. The method receives data from the separate module specifying the set of low-level actions. The method performs the set of low-level actions on the incoming packet in order to further process the packet.
    Type: Application
    Filed: July 21, 2018
    Publication date: November 15, 2018
    Inventors: Ronghua Zhang, Teemu Koponen, Martin Casado
  • Publication number: 20180331948
    Abstract: For a managed network including multiple host machines implementing multiple logical networks, some embodiments provide a method that reduces the memory and traffic load required to implement the multiple logical networks. The method generates configuration data for each of multiple host machines including (i) data to configure a host machine to implement a set of logical forwarding elements that belong to a set of routing domains and (ii) identifiers for each routing domain in the set of routing domains. The method then receives data regarding tunnels endpoints operating on each of the host machines and an association with the routing identifiers sent to the host machines. The method then generates a routing domain tunnel endpoint list for each routing domain based on the data received from each of the host machines including a list of the tunnel endpoints associated with the routing domain which the host machines can use to facilitate packet processing.
    Type: Application
    Filed: May 15, 2017
    Publication date: November 15, 2018
    Inventors: Caixia Jiang, Jianjun Shen, Pankaj Thakkar, Anupam Chanda, Ronghua Zhang, Ganesan Chandrashekhar, Vicky Liu, Da Wan, Frank Pan, Hua Wang, Donghai Han
  • Patent number: 10129180
    Abstract: Some embodiments provide a method for handling failure at one of several peer centralized components of a logical router. At a first one of the peer centralized components of the logical router, the method detects that a second one of the peer centralized components has failed. In response to the detection, the method automatically identifies a network layer address of the failed second peer. The method assumes responsibility for data traffic to the failed peer by broadcasting a message on a logical switch that connects all of the peer centralized components and a distributed component of the logical router. The message instructs recipients to associate the identified network layer address with a data link layer address of the first peer centralized component.
    Type: Grant
    Filed: July 30, 2015
    Date of Patent: November 13, 2018
    Assignee: NICIRA, INC.
    Inventors: Ronghua Zhang, Ganesan Chandrashekhar
  • Publication number: 20180324088
    Abstract: Some embodiments provide a method for configuring a logical router that interfaces with an external network. The method receives a configuration for a logical network that includes a logical router with several interfaces that connect to at least one physical router external to the logical network. The method selects a separate host machine to host a centralized routing component for each of the interfaces. The method selects a particular one of the host machines for operating a dynamic routing protocol control plane that receives routing protocol data from each of the centralized routing components and updates routing tables of each of the centralized routing components.
    Type: Application
    Filed: June 21, 2018
    Publication date: November 8, 2018
    Inventors: Sreeram Ravinoothala, Ronghua Zhang
  • Publication number: 20180323891
    Abstract: The technology disclosed herein enables synchronization of routing information between at least two edge systems in an edge system cluster. In a particular embodiment, a method provides, in each of the edge systems, receiving network routing information from a plurality of routers that route outbound network traffic from the edge systems and synchronizing the network routing information between the edge systems. Additionally, in each of the edge systems, the method provides receiving outbound network traffic via a logical router spanning the edge systems and routing the outbound network traffic from the edge systems in accordance with the network routing information after synchronization.
    Type: Application
    Filed: May 2, 2017
    Publication date: November 8, 2018
    Inventors: Ankur Dubey, Sreeram Ravinoothala, Ronghua Zhang