Patents by Inventor Cheng-Chun Tu
Cheng-Chun Tu 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: 12192051Abstract: Some embodiments of the invention provide a method for implementing an edge device that handles data traffic between a logical network and an external network. The method monitors resource usage of a node pool that includes multiple nodes that each executes a respective set of pods. Each of the pods is for performing a respective set of data message processing operations for at least one of multiple logical routers. The method determines that a particular node in the node pool has insufficient resources for the particular node's respective set of pods to adequately perform their respective sets of data message processing operations. Based on the determination, the method automatically provides additional resources to the node pool by instantiating at least one additional node in the node pool.Type: GrantFiled: July 23, 2021Date of Patent: January 7, 2025Assignee: VMware LLCInventors: Yong Wang, Cheng-Chun Tu, Sreeram Kumar Ravinoothala, Yu Ying
-
Patent number: 12155576Abstract: Some embodiments provide a method for a forwarding element that receives a packet. The method determines whether the packet matches any flow entries in a first cache that uses a first type of algorithm to identify matching flow entries for packets. When the packet does not match any flow entries in the first cache, the method determines whether the packet matches any flow entries in a second cache that uses a second, different type of algorithm to identify matching flow entries for packets. The method executes a set of actions specified by a flow entry matched by the packet in one of the first and second caches.Type: GrantFiled: April 17, 2023Date of Patent: November 26, 2024Assignee: VMware LLCInventors: Cheng-Chun Tu, Yifeng Sun, Yi-Hung Wei, Benjamin L. Pfaff, Justin Pettit
-
Publication number: 20240231865Abstract: Described herein are systems, methods, and software to offload an eXpress Data Path (XDP) operation from a virtual machine to the hypervisor or smart network interface on the host. In one implementation, a method includes, in a virtual machine on a host, passing an XDP configuration for the virtual machine to a hypervisor on the host. The method further includes, in the hypervisor initiating a process to implement the XDP configuration, identifying a packet directed to the virtual machine, and applying the process to the packet to determine an action for the packet.Type: ApplicationFiled: January 5, 2023Publication date: July 11, 2024Inventors: Ronak Doshi, Cheng-Chun Tu, Guolin Yang, Boon Seong Ang, Peng Li
-
Patent number: 11838206Abstract: Some embodiments of the invention provide a system for implementing multiple logical routers. The system includes a Kubernetes cluster that includes multiple nodes, with each node executing a set of pods. The set of pods include a first pod for performing a first set of data message processing operations for the multiple logical routers and at least one respective separate pod for each respective logical router of the multiple logical routers. Each respective pod is for performing a respective second set of data message processing operations for the respective logical router.Type: GrantFiled: July 23, 2021Date of Patent: December 5, 2023Assignee: VMWARE, INC.Inventors: Yong Wang, Cheng-Chun Tu, Sreeram Kumar Ravinoothala, Yu Ying
-
Publication number: 20230262006Abstract: Some embodiments provide a method for a forwarding element that receives a packet. The method determines whether the packet matches any flow entries in a first cache that uses a first type of algorithm to identify matching flow entries for packets. When the packet does not match any flow entries in the first cache, the method determines whether the packet matches any flow entries in a second cache that uses a second, different type of algorithm to identify matching flow entries for packets. The method executes a set of actions specified by a flow entry matched by the packet in one of the first and second caches.Type: ApplicationFiled: April 17, 2023Publication date: August 17, 2023Inventors: Cheng-Chun Tu, Yifeng Sun, Yi-Hung Wei, Benjamin L. Pfaff, Justin Pettit
-
Patent number: 11726807Abstract: A hypervisor communicates with a guest operating system running in a virtual machine supported by the hypervisor using a hyper-callback whose functions are based on the particular guest operating system running the virtual machine and are triggered by one or more events in the guest operating system. The functions are modified to make sure they are safe to execute and to allow only limited access to the guest operating system. Additionally, the functions are converted to byte code corresponding to a simplified CPU and memory model and are safety checked by the hypervisor when registered with the hypervisor. The functions are executed by the hypervisor without any context switch between the hypervisor and guest operating system, and when executed, provide information about the particular guest operating system, allowing the hypervisor to improve operations such as page reclamation, virtual CPU scheduling, I/O operations, and tracing of the guest operating system.Type: GrantFiled: May 5, 2017Date of Patent: August 15, 2023Assignee: VMware, Inc.Inventors: Nadav Amit, Michael Wei, Cheng Chun Tu
-
Patent number: 11632332Abstract: Some embodiments provide a method for a forwarding element that receives a packet. The method determines whether the packet matches any flow entries in a first cache that uses a first type of algorithm to identify matching flow entries for packets. When the packet does not match any flow entries in the first cache, the method determines whether the packet matches any flow entries in a second cache that uses a second, different type of algorithm to identify matching flow entries for packets. The method executes a set of actions specified by a flow entry matched by the packet in one of the first and second caches.Type: GrantFiled: June 7, 2018Date of Patent: April 18, 2023Assignee: VMWARE, INC.Inventors: Cheng-Chun Tu, Yifeng Sun, Yi-Hung Wei, Benjamin L. Pfaff, Justin Pettit
-
Publication number: 20230028922Abstract: Some embodiments of the invention provide a system for implementing multiple logical routers. The system includes a Kubernetes cluster that includes multiple nodes, with each node executing a set of pods. The set of pods include a first pod for performing a first set of data message processing operations for the multiple logical routers and at least one respective separate pod for each respective logical router of the multiple logical routers. Each respective pod is for performing a respective second set of data message processing operations for the respective logical router.Type: ApplicationFiled: July 23, 2021Publication date: January 26, 2023Inventors: Yong Wang, Cheng-Chun Tu, Sreeram Kumar Ravinoothala, Yu Ying
-
Publication number: 20230028837Abstract: Some embodiments of the invention provide a method for implementing an edge device that handles data traffic between a logical network and an external network. The method monitors resource usage of a node pool that includes multiple nodes that each executes a respective set of pods. Each of the pods is for performing a respective set of data message processing operations for at least one of multiple logical routers. The method determines that a particular node in the node pool has insufficient resources for the particular node's respective set of pods to adequately perform their respective sets of data message processing operations. Based on the determination, the method automatically provides additional resources to the node pool by instantiating at least one additional node in the node pool.Type: ApplicationFiled: July 23, 2021Publication date: January 26, 2023Inventors: Yong Wang, Cheng-Chun Tu, Sreeram Kumar Ravinoothala, Yu Ying
-
Patent number: 10838762Abstract: A method for live migration of a virtual machine in a MR-IOV environment is provided. The method is used in a system, wherein the system includes a plurality of computing hosts, an MR-IOV device, and a management host including a physical function and configured to implement a plurality of virtual functions. Eand each computing host and the management host are coupled to the MR-IOV device. The method includes: migrating, by a source computing host of the computing hosts, a source virtual machine in the source computing host to a destination VM in a destination computing host of the computing hosts, wherein the source VM includes a source VF; transmitting, by the destination computing host, a request message to a management host and reassigning, by the management host, a first VF corresponding to the source VF in the management host to the destination VM according to the request message.Type: GrantFiled: December 21, 2017Date of Patent: November 17, 2020Assignee: Industrial Technology Research InstituteInventors: Chao-Tang Lee, Tai-Hua Hsiao, Cheng-Chun Tu, Peng-Kai Hsu
-
Publication number: 20190379606Abstract: Some embodiments provide a method for a forwarding element that receives a packet. The method determines whether the packet matches any flow entries in a first cache that uses a first type of algorithm to identify matching flow entries for packets. When the packet does not match any flow entries in the first cache, the method determines whether the packet matches any flow entries in a second cache that uses a second, different type of algorithm to identify matching flow entries for packets. The method executes a set of actions specified by a flow entry matched by the packet in one of the first and second caches.Type: ApplicationFiled: June 7, 2018Publication date: December 12, 2019Inventors: Cheng-Chun Tu, Yifeng Sun, Yi-Hung Wei, Benjamin L. Pfaff, Justin Pettit
-
Publication number: 20190163521Abstract: A method for live migration of a virtual machine in a MR-IOV environment is provided. The method is used in a system, wherein the system includes a plurality of computing hosts, an MR-IOV device, and a management host including a physical function and configured to implement a plurality of virtual functions. Eand each computing host and the management host are coupled to the MR-IOV device. The method includes: migrating, by a source computing host of the computing hosts, a source virtual machine in the source computing host to a destination VM in a destination computing host of the computing hosts, wherein the source VM includes a source VF; transmitting, by the destination computing host, a request message to a management host and reassigning, by the management host, a first VF corresponding to the source VF in the management host to the destination VM according to the request message.Type: ApplicationFiled: December 21, 2017Publication date: May 30, 2019Inventors: Chao-Tang Lee, Tai-Hua Hsiao, Cheng-Chun Tu, Peng-Kai Hsu
-
Publication number: 20190140983Abstract: Certain embodiments described herein are generally directed to configuring an extended Berkeley Packet Filter (eBPF) fast path. In some embodiments, a fixed-length array of actions is generated and loaded into the eBPF fast path, where each element of the array indicates a type of action for execution on a packet received by the eBPF fast path. In some embodiments, the eBPF fast path is loaded with a number of eBPF programs, each configured to execute a different type of action.Type: ApplicationFiled: November 9, 2017Publication date: May 9, 2019Inventors: Cheng-Chun TU, Jonathan STRINGER, Justin PETTIT
-
Publication number: 20180321963Abstract: A hypervisor communicates with a guest operating system running in a virtual machine supported by the hypervisor using a hyper-callback whose functions are based on the particular guest operating system running the virtual machine and are triggered by one or more events in the guest operating system. The functions are modified to make sure they are safe to execute and to allow only limited access to the guest operating system. Additionally, the functions are converted to byte code corresponding to a simplified CPU and memory model and are safety checked by the hypervisor when registered with the hypervisor. The functions are executed by the hypervisor without any context switch between the hypervisor and guest operating system, and when executed, provide information about the particular guest operating system, allowing the hypervisor to improve operations such as page reclamation, virtual CPU scheduling, I/O operations, and tracing of the guest operating system.Type: ApplicationFiled: May 5, 2017Publication date: November 8, 2018Inventors: Nadav AMIT, Michael WEI, Cheng Chun TU
-
Patent number: 9772868Abstract: An interrupt handling method and a system are provided. An exemplary embodiment of an interrupt handling method in a virtualized environment operable on a computer having one or more CPU cores, includes disabling a virtual machine exit triggers by an interrupt that destined to a virtual machine (VM), via a hypervisor of the virtualized environment. The exemplary method further includes delivering directly one or more interrupts from an I/O virtualization (IOV) device and a virtual device that destined to the VM, while the destined VM is running on one of the one or more CPU cores, otherwise delivering the one or more interrupts to the hypervisor to deliver corresponding one or more virtual interrupts to the destined VM.Type: GrantFiled: September 16, 2014Date of Patent: September 26, 2017Assignee: Industrial Technology Research InstituteInventors: Cheng-Chun Tu, Tzi-Cker Chiueh, Chao-Tang Lee
-
Patent number: 9760455Abstract: A Peripheral Component Interconnect Express (PCIe) network system with fail-over capability and an operation method thereof are provided. The PCIe network system includes a management host, a PCIe switch, a first non-transparent bridge, and a second non-transparent bridge. The upstream port of the PCIe switch is electrically coupled to the management host. The first non-transparent bridge is disposed in the PCIe switch for electrically coupling to the first PCIe port of a calculation host. The first non-transparent bridge can couple the first PCIe port of the calculation host to the management host. The second non-transparent bridge is disposed in the PCIe switch for electrically coupling to the second PCIe port of the calculation host. The second non-transparent bridge can couple the second PCIe port of the calculation host to the management host.Type: GrantFiled: December 30, 2015Date of Patent: September 12, 2017Assignee: Industrial Technology Research InstituteInventors: Chao-Tang Lee, Cheng-Chun Tu, Tzi-Cker Chiueh
-
Patent number: 9734096Abstract: In a method for SR-IOV Virtual Functions Sharing on Multi-Hosts, implemented in a management system, one or more fake devices are simulated in one or more hosts with each fake device corresponding to one of a plurality of SR-IOV virtual functions. Each of one or more configuration spaces is redirected from each SR-IOV virtual function to each fake device, respectively. Each of configuration space requests is redirected from a corresponding fake device to a corresponding SR-IOV virtual function when the configuration space request is received. And each of memory access operations is redirected from the corresponding SR-IOV virtual function to a mapped memory on a corresponding host with the corresponding fake device, and each of interrupts generated by one or more SR-IOV virtual machines is redirected to the corresponding fake device.Type: GrantFiled: May 6, 2013Date of Patent: August 15, 2017Assignee: INDUSTRIAL TECHNOLOGY RESEARCH INSTITUTEInventors: Chao-Tang Lee, Tzi-Cker Chiueh, Cheng-Chun Tu
-
Patent number: 9734115Abstract: A memory mapping method for coupling a plurality of servers with a PCI express bus is disclosed. The method comprises: configuring an extended memory address on a management host having a memory address; mapping the extended memory address of the management host corresponding to each of the servers to memory addresses of each of the servers respectively by a plurality of non-transparent bridges of the PCI express bus; configuring an extended memory address on each of the servers; and mapping the extended memory address of each of the servers to the memory address and the extended memory address of the management host by the non-transparent bridges, the extended memory address of each of the servers corresponding to the servers and the management host.Type: GrantFiled: November 18, 2014Date of Patent: August 15, 2017Assignee: Industrial Technology Research InstituteInventors: Chao-Tang Lee, Cheng-Chun Tu, Tzi-Cker Chiueh, Shu-Hao Hsu
-
Publication number: 20170147456Abstract: A Peripheral Component Interconnect Express (PCIe) network system with fail-over capability and an operation method thereof are provided. The PCIe network system includes a management host, a PCIe switch, a first non-transparent bridge, and a second non-transparent bridge. The upstream port of the PCIe switch is electrically coupled to the management host. The first non-transparent bridge is disposed in the PCIe switch for electrically coupling to the first PCIe port of a calculation host. The first non-transparent bridge can couple the first PCIe port of the calculation host to the management host. The second non-transparent bridge is disposed in the PCIe switch for electrically coupling to the second PCIe port of the calculation host. The second non-transparent bridge can couple the second PCIe port of the calculation host to the management host.Type: ApplicationFiled: December 30, 2015Publication date: May 25, 2017Inventors: Chao-Tang Lee, Cheng-Chun Tu, Tzi-Cker Chiueh
-
Publication number: 20160140074Abstract: A memory mapping method for coupling a plurality of servers with a PCI express bus is disclosed. The method comprises: configuring an extended memory address on a management host having a memory address; mapping the extended memory address of the management host corresponding to each of the servers to memory addresses of each of the servers respectively by a plurality of non-transparent bridges of the PCI express bus; configuring an extended memory address on each of the servers; and mapping the extended memory address of each of the servers to the memory address and the extended memory address of the management host by the non-transparent bridges, the extended memory address of each of the servers corresponding to the servers and the management host.Type: ApplicationFiled: November 18, 2014Publication date: May 19, 2016Inventors: Chao-Tang Lee, Cheng-Chun Tu, Tzi-Cker Chiueh, Shu-Hao Hsu