Patents by Inventor Harold Vinson C. Lim

Harold Vinson C. Lim 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: 11258669
    Abstract: Certain embodiments described herein are generally directed to techniques for computing grouping object memberships in a network. Embodiments include receiving a plurality of network configuration updates. Embodiments include identifying delta updates to a plurality of grouping objects based on the plurality of configuration updates. Embodiments include determining a parallel processing arrangement for the delta updates based on dependencies in a directed graph comprising representations of the plurality of grouping objects. Embodiments include processing the delta updates according to the parallel processing arrangement in order to determine memberships of the plurality of grouping objects. Embodiments include distributing one or more updates to one or more endpoints based on the memberships of the plurality of grouping objects.
    Type: Grant
    Filed: July 14, 2020
    Date of Patent: February 22, 2022
    Assignee: VMWARE, INC.
    Inventors: Aayush Saxena, Aravinda Kidambi Srinivasan, Harold Vinson C. Lim, Shekhar Chandrashekhar
  • Publication number: 20220021584
    Abstract: Certain embodiments described herein are generally directed to techniques for computing grouping object memberships in a network. Embodiments include receiving a plurality of network configuration updates. Embodiments include identifying delta updates to a plurality of grouping objects based on the plurality of configuration updates. Embodiments include determining a parallel processing arrangement for the delta updates based on dependencies in a directed graph comprising representations of the plurality of grouping objects. Embodiments include processing the delta updates according to the parallel processing arrangement in order to determine memberships of the plurality of grouping objects. Embodiments include distributing one or more updates to one or more endpoints based on the memberships of the plurality of grouping objects.
    Type: Application
    Filed: July 14, 2020
    Publication date: January 20, 2022
    Inventors: Aayush SAXENA, Aravinda Kidambi SRINIVASAN, Harold Vinson C. LIM, Shekhar CHANDRASHEKHAR
  • Patent number: 11175969
    Abstract: Disclosed is a technique for communicating message objects from a first process to a second process in transport node of a virtualized network, the message objects specifying a change to status of a virtualized network object in the virtualized network. In technique, message objects are separated from operation objects, which have fields corresponding to the fields of the message objects, a field of the operations object being capable of specifying a change to or a status of a field of the message object to which it corresponds. Yet another object combines a message object and an operation object so that the protocol for communication between the first and second process is the same regardless of the contents of the actual message.
    Type: Grant
    Filed: January 26, 2018
    Date of Patent: November 16, 2021
    Assignee: Nicira, Inc.
    Inventors: Harold Vinson C. Lim, Risi Thonangi, Igor Ganichev
  • Patent number: 11121946
    Abstract: Described herein are systems, methods, and software to capture packets of interest in a virtual switch. In one implementation, a method of capturing packets of interest in a virtual switch includes identifying a request to capture packets associated with first packet attributes. The method further includes, in response to the request, assigning a virtual port for forwarding the packets associated with the first packet attributes, and implementing a forwarding rule in the virtual switch to forward the packets associated with the first packet attributes to at least the virtual port. The method further provides for directing traffic over the virtual switch using the forwarding rule.
    Type: Grant
    Filed: December 9, 2016
    Date of Patent: September 14, 2021
    Assignee: Nicira, Inc.
    Inventor: Harold Vinson C. Lim
  • Patent number: 10798048
    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: Grant
    Filed: December 3, 2015
    Date of Patent: October 6, 2020
    Assignee: NICIRA, INC.
    Inventors: Harold Vinson C. Lim, Mart Haitjema, Srinivas Neginhal, Pankaj Thakkar, Teemu Koponen, Anupam Chanda, Benjamin L. Pfaff
  • Patent number: 10754832
    Abstract: A composite database containing virtualized objects of a transport node in a virtualized network, and methods pertaining thereto is disclosed. The composite database supports each of many clients having their own database values. The composite database is formed by augmenting a key-value database to have an augmented key that comprises an original key, indicating the type of object stored, concatenated with a list of database identifiers. The composite database stores at the augmented key, values of objects in the database that pertain to each database identifier in the augmented key, where each object is in serialized form. Accessing the database includes scanning the database for a list of augmented key-value pairs containing a given key. Getting a database record includes specifying a key and a database identifier. The list of augmented key-value pairs is searched for the record having the specified database identifier.
    Type: Grant
    Filed: January 26, 2018
    Date of Patent: August 25, 2020
    Assignee: Nicira, Inc.
    Inventors: Risi Thonangi, Harold Vinson C. Lim
  • Patent number: 10511487
    Abstract: Some embodiments provide a novel method for installing flows of a desired network state in an actualized network state of a managed forwarding element. In some embodiments, the method maintains a flow output table based on flow events received from a computation engine for computing desired state, and from a set of managed forwarding elements on which the computed desired state is installed. The method of some embodiments then installs flows on the set of managed forwarding elements based on the flow output table.
    Type: Grant
    Filed: March 25, 2019
    Date of Patent: December 17, 2019
    Assignee: NICIRA, INC.
    Inventors: Harold Vinson C. Lim, Natasha Gude
  • Patent number: 10404276
    Abstract: The present disclosure generally relates to an encoding scheme, and more specifically to a stable encoding scheme that is both variable-length and order-preserving. The present disclosure further describes a decoding scheme to decode and encoding generated by the encoding scheme. The encoding scheme may be parameterized by a single parameter k which remains constant across encoding and corresponding decoding operations. The output encodings generated by the encoding scheme are variable-length while maintaining order.
    Type: Grant
    Filed: April 27, 2018
    Date of Patent: September 3, 2019
    Assignee: Nicira, Inc.
    Inventors: Risi Thonangi, Harold Vinson C. Lim, Igor Ganichev
  • Patent number: 10374874
    Abstract: Described herein are systems, methods, and software to reduce data plane disruption during a startup event for a virtual switch controller. In one example, during a startup event, applications are initiated on a virtual switch controller to configure the virtual switch. Once initiated, an application, which depends on one or more other applications, may hold configuration operations until notifications are received from the one or more other applications operating on the virtual switch controller. Once the notifications are received, the application may resume the required configuration operations.
    Type: Grant
    Filed: October 18, 2016
    Date of Patent: August 6, 2019
    Assignee: Nicira, Inc.
    Inventor: Harold Vinson C. Lim
  • Publication number: 20190235937
    Abstract: Disclosed is a technique for communicating message objects from a first process to a second process in transport node of a virtualized network, the message objects specifying a change to status of a virtualized network object in the virtualized network. In technique, message objects are separated from operation objects, which have fields corresponding to the fields of the message objects, a field of the operations object being capable of specifying a change to or a status of a field of the message object to which it corresponds. Yet another object combines a message object and an operation object so that the protocol for communication between the first and second process is the same regardless of the contents of the actual message.
    Type: Application
    Filed: January 26, 2018
    Publication date: August 1, 2019
    Inventors: Harold Vinson C. LIM, Risi THONANGI, Igor GANICHEV
  • Publication number: 20190236170
    Abstract: A composite database containing virtualized objects of a transport node in a virtualized network, and methods pertaining thereto is disclosed. The composite database supports each of many clients having their own database values. The composite database is formed by augmenting a key-value database to have an augmented key that comprises an original key, indicating the type of object stored, concatenated with a list of database identifiers. The composite database stores at the augmented key, values of objects in the database that pertain to each database identifier in the augmented key, where each object is in serialized form. Accessing the database includes scanning the database for a list of augmented key-value pairs containing a given key. Getting a database record includes specifying a key and a database identifier. The list of augmented key-value pairs is searched for the record having the specified database identifier.
    Type: Application
    Filed: January 26, 2018
    Publication date: August 1, 2019
    Inventors: Risi THONANGI, Harold Vinson C. LIM
  • Publication number: 20190222482
    Abstract: Some embodiments provide a novel method for installing flows of a desired network state in an actualized network state of a managed forwarding element. In some embodiments, the method maintains a flow output table based on flow events received from a computation engine for computing desired state, and from a set of managed forwarding elements on which the computed desired state is installed. The method of some embodiments then installs flows on the set of managed forwarding elements based on the flow output table.
    Type: Application
    Filed: March 25, 2019
    Publication date: July 18, 2019
    Inventors: Harold Vinson C. Lim, Natasha Gude
  • Patent number: 10250449
    Abstract: Some embodiments provide a novel method for installing flows of a desired network state in an actualized network state of a managed forwarding element. In some embodiments, the method maintains a flow output table based on flow events received from a computation engine for computing desired state, and from a set of managed forwarding elements on which the computed desired state is installed. The method of some embodiments then installs flows on the set of managed forwarding elements based on the flow output table.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: April 2, 2019
    Assignee: NICIRA, INC.
    Inventors: Harold Vinson C. Lim, Natasha Gude
  • Patent number: 10243850
    Abstract: A method of collecting statistics for a set of logical entities associated with a flow-based managed forwarding element. A statistics collection flow table is created for collecting statistics for logical entities. For each pair of logical entity and collected statistics type, a flow entry is added to the statistics collection flow table and includes a matching criteria for matching the identification the logical entity and the type of the statistics collected by the flow entry. When a particular statistics for a logical entity is to be updated during the processing of a packet by a flow table, the packet is submitted by the flow table to the statistics collection flow table. The statistics are updated for the logical entity by matching the identification of the logical entity and the particular statistics type with the matching criteria of a flow entry in the statistics collection flow table.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: March 26, 2019
    Assignee: NICIRA, INC.
    Inventor: Harold Vinson C. Lim
  • Patent number: 10038622
    Abstract: Described herein are systems, methods, and software to enhance inline processing of data packets by a virtual switch. In at least one implementation, a virtual switch receives a data packet and initiates a flow process with a plurality of flow operations on the data packet. In a flow operation of the plurality of flow operations, the virtual switch will determine whether the data packet qualifies for a learn action and, if the packet fails to qualify, forwards the data packet to a next flow operation in the plurality of flow operations, and if the packet does qualify, applies the learn action and forwards the data packet to a next flow operation.
    Type: Grant
    Filed: September 29, 2016
    Date of Patent: July 31, 2018
    Assignee: Nicira, Inc.
    Inventors: Anupam Chanda, Harold Vinson C. Lim
  • Publication number: 20180167287
    Abstract: Described herein are systems, methods, and software to capture packets of interest in a virtual switch. In one implementation, a method of capturing packets of interest in a virtual switch includes identifying a request to capture packets associated with first packet attributes. The method further includes, in response to the request, assigning a virtual port for forwarding the packets associated with the first packet attributes, and implementing a forwarding rule in the virtual switch to forward the packets associated with the first packet attributes to at least the virtual port. The method further provides for directing traffic over the virtual switch using the forwarding rule.
    Type: Application
    Filed: December 9, 2016
    Publication date: June 14, 2018
    Inventor: Harold Vinson C. Lim
  • Publication number: 20180109416
    Abstract: Described herein are systems, methods, and software to reduce data plane disruption during a startup event for a virtual switch controller. In one example, during a startup event, applications are initiated on a virtual switch controller to configure the virtual switch. Once initiated, an application, which depends on one or more other applications, may hold configuration operations until notifications are received from the one or more other applications operating on the virtual switch controller. Once the notifications are received, the application may resume the required configuration operations.
    Type: Application
    Filed: October 18, 2016
    Publication date: April 19, 2018
    Inventor: Harold Vinson C. Lim
  • Publication number: 20180091415
    Abstract: Described herein are systems, methods, and software to enhance inline processing of data packets by a virtual switch. In at least one implementation, a virtual switch receives a data packet and initiates a flow process with a plurality of flow operations on the data packet. In a flow operation of the plurality of flow operations, the virtual switch will determine whether the data packet qualifies for a learn action and, if the packet fails to qualify, forwards the data packet to a next flow operation in the plurality of flow operations, and if the packet does qualify, applies the learn action and forwards the data packet to a next flow operation.
    Type: Application
    Filed: September 29, 2016
    Publication date: March 29, 2018
    Inventors: Anupam Chanda, Harold Vinson C. Lim
  • Publication number: 20170264497
    Abstract: A method of collecting statistics for a set of logical entities associated with a flow-based managed forwarding element. A statistics collection flow table is created for collecting statistics for logical entities. For each pair of logical entity and collected statistics type, a flow entry is added to the statistics collection flow table and includes a matching criteria for matching the identification the logical entity and the type of the statistics collected by the flow entry. When a particular statistics for a logical entity is to be updated during the processing of a packet by a flow table, the packet is submitted by the flow table to the statistics collection flow table. The statistics are updated for the logical entity by matching the identification of the logical entity and the particular statistics type with the matching criteria of a flow entry in the statistics collection flow table.
    Type: Application
    Filed: March 8, 2016
    Publication date: September 14, 2017
    Inventor: Harold Vinson C. Lim
  • Publication number: 20170264494
    Abstract: Some embodiments provide a novel method for installing flows of a desired network state in an actualized network state of a managed forwarding element. In some embodiments, the method maintains a flow output table based on flow events received from a computation engine for computing desired state, and from a set of managed forwarding elements on which the computed desired state is installed. The method of some embodiments then installs flows on the set of managed forwarding elements based on the flow output table.
    Type: Application
    Filed: March 8, 2016
    Publication date: September 14, 2017
    Inventors: Harold Vinson C. Lim, Natasha Gude