The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Jan. 06, 2015
Filed:
Jul. 17, 2012
Yue Zuo, Redmond, WA (US);
Daniel M. Firestone, Seattle, WA (US);
Albert Gordon Greenberg, Seattle, WA (US);
Hoyuen Chau, Bellevue, MA (US);
Yimin Deng, Redmond, WA (US);
Bryan William Tuttle, Newcastle, WA (US);
Pankaj Garg, Bellevue, WA (US);
Yue Zuo, Redmond, WA (US);
Daniel M. Firestone, Seattle, WA (US);
Albert Gordon Greenberg, Seattle, WA (US);
HoYuen Chau, Bellevue, MA (US);
Yimin Deng, Redmond, WA (US);
Bryan William Tuttle, Newcastle, WA (US);
Pankaj Garg, Bellevue, WA (US);
Microsoft Corporation, Redmond, WA (US);
Abstract
The present invention extends to methods, systems, and computer program products for offloading packet processing for networking device virtualization. A host maintains rule set(s) for a virtual machine, and a physical network interface card (NIC) maintains flow table(s) for the virtual machine. The physical NIC receives and processes a network packet associated with the virtual machine. Processing the network packet includes the physical NIC comparing the network packet with the flow table(s) at the physical NIC. When the network packet matches with a flow in the flow table(s) at the physical NIC, the physical NIC performs an action on the network packet based on the matching flow. Alternatively, when the network packet does not match with a flow in the flow table(s) at the physical NIC, the physical NIC passes the network packet to the host partition for processing against the rule set(s).