Patents by Inventor Boon S. Ang

Boon S. Ang 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: 12585489
    Abstract: Some embodiments provide a novel method for offloading firewall operations from a host computer executing a set of one or more virtual machines (VMs) to a physical network interface card (PNIC) connected to the host computer. The method configures, on the PNIC, a first firewall to determine actions to perform on flows associated with the set of VMs, and to offload processing of the flows to a flow-cache second firewall of the PNIC. The method configures, on the PNIC, the flow-cache second firewall to process a first set of flows based on a first set of actions determined by the first firewall, and to offload processing of a second set of flows to an embedded hardware switch of the PNIC. The method configures, on the PNIC, the embedded hardware switch to process the second set of flows based on a second set of actions determined by the first firewall.
    Type: Grant
    Filed: August 2, 2023
    Date of Patent: March 24, 2026
    Assignee: VMware LLC
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Patent number: 12585490
    Abstract: Some embodiments provide a novel method for migrating virtual machines (VMs) from a first host computer to a second host computer. The first host computer is connected to a physical network interface card (PNIC) that performs middlebox service operations for flows associated with the VMs. At the PNIC, the method receives a notification that a VM is to be migrated from the first to the second host computer. The method configures an embedded hardware switch of the PNIC to forward a set of flows associated with the VM to a firewall of the PNIC. The embedded hardware switch was initially programmed to process the set of flows instead of the firewall. The method synchronizes flow cache information regarding the set of flows from the embedded hardware switch to the firewall. The method processes the set of flows at the firewall until the VM is migrated to the second host computer.
    Type: Grant
    Filed: August 2, 2023
    Date of Patent: March 24, 2026
    Assignee: VMware LLC
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Publication number: 20250362949
    Abstract: Some embodiments provide a method of forwarding data messages to a machine that executes on a host computer and has an associated virtual network interface controller (VNIC) also executing on the host computer. The method retrieves data messages from a queue associated with the VNIC and stores these data messages in a first set of buffer data stores associated with the VNIC. When the first buffer set reaches a threshold congestion level, the method stores data messages subsequently retrieved from the VNIC queue in a second set of buffer data stores associated with the VNIC. In some embodiments, a set of one or more processes executing on the machine retrieves the data messages stored in the buffer sets for processing by these processes or other processes.
    Type: Application
    Filed: July 31, 2025
    Publication date: November 27, 2025
    Inventors: Peng Li, Ronak Doshi, Guolin Yang, Boon S. Ang
  • Patent number: 12379952
    Abstract: Some embodiments provide a method of forwarding data messages to a machine that executes on a host computer and has an associated virtual network interface controller (VNIC) also executing on the host computer. The method retrieves data messages from a queue associated with the VNIC and stores these data messages in a first set of buffer data stores associated with the VNIC. When the first buffer set reaches a threshold congestion level, the method stores data messages subsequently retrieved from the VNIC queue in a second set of buffer data stores associated with the VNIC. In some embodiments, a set of one or more processes executing on the machine retrieves the data messages stored in the buffer sets for processing by these processes or other processes.
    Type: Grant
    Filed: July 7, 2022
    Date of Patent: August 5, 2025
    Assignee: VMware LLC
    Inventors: Peng Li, Ronak Doshi, Guolin Yang, Boon S. Ang
  • Publication number: 20250147795
    Abstract: Some embodiments provide a method for a first smart NIC of multiple smart NICs of a host computer. Each of the smart NICs executes a smart NIC operating system that performs virtual networking operations for a set of data compute machines executing on the host computer. The method receives a data message sent by one of the data compute machines executing on the host computer. The method performs virtual networking operations on the data message to determine that the data message is to be transmitted from a port of a second smart NIC of the multiple smart NICs. The method passes the data message to the second smart NIC via a private communication channel connecting the plurality of smart NICs.
    Type: Application
    Filed: January 13, 2025
    Publication date: May 8, 2025
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo
  • Publication number: 20250106172
    Abstract: Some embodiments of the invention provide a method for configuring a physical network card or physical network controller (pNIC) to provide flow processing offload (FPO) for a host computer connected to the pNIC. The host computers host a set of compute nodes in a virtual network. The set of compute nodes are each associated with a set of interfaces that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator. The pNIC includes a set of interfaces that are assigned physical port identifiers (PPIDs) by the pNIC. The method includes providing the pNIC with a set of mappings between VPIDs and PPIDs. The method also includes sending updates to the mappings as compute nodes migrate, connect to different interfaces of the pNIC, are assigned different VPIDs, etc.
    Type: Application
    Filed: December 9, 2024
    Publication date: March 27, 2025
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo, Srividya Murali
  • Patent number: 12229578
    Abstract: Some embodiments provide a method for a first smart NIC of multiple smart NICs of a host computer. Each of the smart NICs executes a smart NIC operating system that performs virtual networking operations for a set of data compute machines executing on the host computer. The method receives a data message sent by one of the data compute machines executing on the host computer. The method performs virtual networking operations on the data message to determine that the data message is to be transmitted from a port of a second smart NIC of the multiple smart NICs. The method passes the data message to the second smart NIC via a private communication channel connecting the plurality of smart NICs.
    Type: Grant
    Filed: December 22, 2021
    Date of Patent: February 18, 2025
    Assignee: VMware LLC
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo
  • Publication number: 20250039139
    Abstract: Some embodiments provide a novel method for updating firewall rules for data message flows processed at a physical network interface card (PNIC) connected to a host computer. A firewall of the PNIC receives an update to a particular firewall rule. The firewall identifies a particular data message flow that is processed at an embedded hardware switch of the PNIC using the particular firewall rule. The firewall updates a flow record associated with the particular data message flow to reflect the received update to the particular firewall rule. The firewall provides the updated flow record to the embedded hardware switch for the embedded hardware switch to process the particular flow according to the received update.
    Type: Application
    Filed: August 2, 2023
    Publication date: January 30, 2025
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Publication number: 20250039140
    Abstract: Some embodiments provide a novel method for using connection tracking records to process data messages at a physical network interface card (PNIC) connected to a host computer. A first software firewall of the PNIC determines whether processing of a flow is passable to a second software firewall of the PNIC and to a third hardware firewall of the PNIC. The first software firewall creates a connection tracking record for the flow and data specifying whether processing of the flow is passable to the second software firewall and independently whether processing of the flow is passable to the third hardware firewall. The first software firewall provides the connection tracking record and said data to the second software firewall of the PNIC so that the second software firewall processes the flow or passes the connection tracking record and the data to the third hardware firewall if determination was that the flow is passable to the third hardware firewall.
    Type: Application
    Filed: August 2, 2023
    Publication date: January 30, 2025
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Publication number: 20250039128
    Abstract: Some embodiments provide a novel method for offloading firewall operations from a host computer executing a set of one or more virtual machines (VMs) to a physical network interface card (PNIC) connected to the host computer. The method configures, on the PNIC, a first firewall to determine actions to perform on flows associated with the set of VMs, and to offload processing of the flows to a flow-cache second firewall of the PNIC. The method configures, on the PNIC, the flow-cache second firewall to process a first set of flows based on a first set of actions determined by the first firewall, and to offload processing of a second set of flows to an embedded hardware switch of the PNIC. The method configures, on the PNIC, the embedded hardware switch to process the second set of flows based on a second set of actions determined by the first firewall.
    Type: Application
    Filed: August 2, 2023
    Publication date: January 30, 2025
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Publication number: 20250039129
    Abstract: Some embodiments provide a novel method for processing flows at an embedded hardware switch of a physical network interface card (PNIC) connected to a host computer. A firewall of the PNIC detects an end of a particular data message flow associated with a particular VM of the host computer. Processing of the particular data message flow was offloaded from the firewall to an embedded hardware switch of the PNIC. After detecting the end of the particular data message flow, the firewall ends offloading of the particular data message flow by deleting a first flow record stored at the embedded hardware switch for the particular data message flow. The firewall deletes a second flow record stored at the first firewall for the particular data message flow.
    Type: Application
    Filed: August 2, 2023
    Publication date: January 30, 2025
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Publication number: 20250036439
    Abstract: Some embodiments provide a novel method for migrating virtual machines (VMs) from a first host computer to a second host computer. The first host computer is connected to a physical network interface card (PNIC) that performs middlebox service operations for flows associated with the VMs. At the PNIC, the method receives a notification that a VM is to be migrated from the first to the second host computer. The method configures an embedded hardware switch of the PNIC to forward a set of flows associated with the VM to a firewall of the PNIC. The embedded hardware switch was initially programmed to process the set of flows instead of the firewall. The method synchronizes flow cache information regarding the set of flows from the embedded hardware switch to the firewall. The method processes the set of flows at the firewall until the VM is migrated to the second host computer.
    Type: Application
    Filed: August 2, 2023
    Publication date: January 30, 2025
    Inventors: Pierluigi Rolando, Peng Li, Boon S. Ang, Guolin Yang, Wenyi Jiang, Yuxiao Zhang, Raju Koganty, Subrahmanyam Manuguri, Kok Pyng Liew, Jin Heo, Srinath Suriyanarayanan Thillaisthanam
  • Patent number: 12192116
    Abstract: Some embodiments of the invention provide a method for configuring a physical network card or physical network controller (pNIC) to provide flow processing offload (FPO) for a host computer connected to the pNIC. The host computers host a set of compute nodes in a virtual network. The set of compute nodes are each associated with a set of interfaces that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator. The pNIC includes a set of interfaces that are assigned physical port identifiers (PPIDs) by the pNIC. The method includes providing the pNIC with a set of mappings between VPIDs and PPIDs. The method also includes sending updates to the mappings as compute nodes migrate, connect to different interfaces of the pNIC, are assigned different VPIDs, etc.
    Type: Grant
    Filed: August 20, 2023
    Date of Patent: January 7, 2025
    Assignee: VMware LLC
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo, Srividya Murali
  • Publication number: 20240348561
    Abstract: Some embodiments of the invention provide a method for configuring multiple hardware offload units of a host computer to perform operations on packets associated with machines (e.g., virtual machines or containers) executing on the host computer and to pass the packets between each other efficiently. For instance, in some embodiments, the method configures a program executing on the host computer to identify a first hardware offload unit that has to perform a first operation on a packet associated with a particular machine and to provide the packet to the first hardware offload unit. The packet in some embodiments is a packet that the particular machine has sent to a destination machine on the network, or is a packet received from a source machine through a network and destined to the particular machine.
    Type: Application
    Filed: June 24, 2024
    Publication date: October 17, 2024
    Inventors: Yong Wang, Boon S. Ang, Guolin Yang, Wenyi Jiang
  • Patent number: 12021759
    Abstract: Some embodiments of the invention provide a method for configuring multiple hardware offload units of a host computer to perform operations on packets associated with machines (e.g., virtual machines or containers) executing on the host computer and to pass the packets between each other efficiently. For instance, in some embodiments, the method configures a program executing on the host computer to identify a first hardware offload unit that has to perform a first operation on a packet associated with a particular machine and to provide the packet to the first hardware offload unit. The packet in some embodiments is a packet that the particular machine has sent to a destination machine on the network, or is a packet received from a source machine through a network and destined to the particular machine.
    Type: Grant
    Filed: November 6, 2020
    Date of Patent: June 25, 2024
    Assignee: VMware LLC
    Inventors: Yong Wang, Boon S. Ang, Guolin Yang, Wenyi Jiang
  • Patent number: 11995024
    Abstract: Some embodiments provide a method for synchronizing state between multiple smart NICs of a host computer that perform operations using dynamic state information. At a first smart NIC of the plurality of smart NICs, the method stores a set of dynamic state information. The method synchronizes the set of dynamic state information across a communication channel that connects the smart NICs so that each of the smart NICs also stores the set of dynamic state information.
    Type: Grant
    Filed: December 22, 2021
    Date of Patent: May 28, 2024
    Assignee: VMware LLC
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo
  • Patent number: 11928502
    Abstract: Some embodiments provide a method for scheduling networking threads associated with a data compute node (DCN) executing at a host computer. When a virtual networking device is instantiated for the DCN, the method assigns the virtual networking device to a particular non-uniform memory access (NUMA) node of multiple NUMA nodes associated with the DCN. Based on the assignment of the virtual networking device to the particular NUMA node, the method assigns networking threads associated with the DCN to the same particular NUMA node and provides information to the DCN regarding the particular NUMA node in order for the DCN to assign a thread associated with an application executing on the DCN to the same particular NUMA node.
    Type: Grant
    Filed: April 29, 2021
    Date of Patent: March 12, 2024
    Assignee: VMware LLC
    Inventors: Rishi Mehta, Boon S. Ang, Petr Vandrovec, Xunjia Lu
  • Patent number: 11863376
    Abstract: Some embodiments provide a method for a first smart NIC of multiple smart NICs of a host computer. Each of the smart NICs is for performing virtual networking operations for a set of data compute machines executing on the host computer. The method determines that the first smart NIC is elected to communicate with a network management and control system that configures the virtual networking operations. The method receives a set of configuration data for the virtual networking operations from the network management and control system. The method provides the received set of configuration data to the other smart NICs of the host computer.
    Type: Grant
    Filed: December 22, 2021
    Date of Patent: January 2, 2024
    Assignee: VMWARE, INC.
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo
  • Publication number: 20230396563
    Abstract: Some embodiments of the invention provide a method for configuring a physical network card or physical network controller (pNIC) to provide flow processing offload (FPO) for a host computer connected to the pNIC. The host computers host a set of compute nodes in a virtual network. The set of compute nodes are each associated with a set of interfaces that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator. The pNIC includes a set of interfaces that are assigned physical port identifiers (PPIDs) by the pNIC. The method includes providing the pNIC with a set of mappings between VPIDs and PPIDs. The method also includes sending updates to the mappings as compute nodes migrate, connect to different interfaces of the pNIC, are assigned different VPIDs, etc.
    Type: Application
    Filed: August 20, 2023
    Publication date: December 7, 2023
    Inventors: Boon S. Ang, Wenyi Jiang, Guolin Yang, Jin Heo, Srividya Murali
  • Publication number: 20230370429
    Abstract: Some embodiments of the invention provide a method of upgrading a firewall module executing on a host computer to process traffic sent to and from machines executing on the host computer. While a first version of the firewall module executes on the host computer to process the traffic to and from the machines, the method loads a second version of the firewall module alongside the first version of the firewall module. For each of multiple ports associated with machines executing on the host computer for which the firewall module processes traffic sent to and from the port, the method saves a runtime state of the first version that relates to the port, transfers association of a firewall filter associated with the port from the first version to the second version, and restores the saved runtime state for the port to the second version.
    Type: Application
    Filed: July 28, 2023
    Publication date: November 16, 2023
    Inventors: Vignesh Raghuraman, Guolin Yang, Boon S. Ang, Prerit Rodney, Rajeev Nair, Ashwin Mahesh Shroff