Prosecution Insights
Last updated: April 19, 2026
Application No. 18/295,430

INVALIDATING CACHED FLOW INFORMATION IN A CLOUD INFRASTRUCTURE

Final Rejection §103§DP
Filed
Apr 04, 2023
Examiner
MAHMUD, GOLAM
Art Unit
2458
Tech Center
2400 — Computer Networks
Assignee
Oracle International Corporation
OA Round
4 (Final)
61%
Grant Probability
Moderate
5-6
OA Rounds
3y 3m
To Grant
92%
With Interview

Examiner Intelligence

Grants 61% of resolved cases
61%
Career Allow Rate
157 granted / 258 resolved
+2.9% vs TC avg
Strong +31% interview lift
Without
With
+30.7%
Interview Lift
resolved cases with interview
Typical timeline
3y 3m
Avg Prosecution
46 currently pending
Career history
304
Total Applications
across all art units

Statute-Specific Performance

§101
8.6%
-31.4% vs TC avg
§103
59.1%
+19.1% vs TC avg
§102
13.7%
-26.3% vs TC avg
§112
12.1%
-27.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 258 resolved cases

Office Action

§103 §DP
Response to an Amendment This office action is a response to a communication made on 08/28/2025. Claims 1-5, 10-13 and 16-17 are currently amended. Claims 1-20 are pending for this application. Response to Arguments Applicant: Applicant’s arguments, see remarks on page 10-14, filed 08/28/2025, applicant argues that, “ Pizzo fails to remedy of version information about the configuration information, store, in the network virtualization device version information about the flow information, transmit, to the network interface service an update request to receive updated flow information, receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information ; and store the updated flow information and the updated version information” recited in claims 1, 11 and 16. Examiner: Applicant's arguments filed 08/28/2025 have been fully considered but they are not persuasive. Examiner respectfully disagrees. Ang teaches a set of servers connected with the substrate network hosting a virtual network, the set of servers hosting a network interface service because abstract, teaches the host computers host a set of compute nodes in a virtual network, ¶0033, teaches the host computers host a set of compute nodes (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, the set of compute nodes are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator (i.e. Ang teaches two separate systems in which the set of nodes host the interface network service and the network virtualization device host the virtual network interface card), ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network)… perform flow processing for the VMs (i.e. computing instance of the virtual network) 111 a-n and vNICs 112 a-n. The FPO hardware 140 includes a flow entry table 143 that stores a set of flow entries (i.e. flow information) for performing flow processing (i.e. routing of traffic), ¶0045, teaches a set of physical functions 434 a-i through a PCIe bus 432, to multiple servers 410 a-n each hosting a set of compute nodes (e.g., VMs 411 a-x), ¶0054, teaches the flow processing and action generator processes (at 715) the data message through a processing pipeline to determine an action to take for subsequent data messages in the same data message flow. However, Ang remain silent on version information about the configuration information, store, in the network virtualization device version information about the flow information, transmit, to the network interface service an update request to receive updated flow information, receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information ; and store the updated flow information and the updated version information. Pizzo teaches version information about the configuration information because ¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed, ¶0048, teaches identifies a current version of a data table, ¶0058, teaches version comparisons required in order to maintain cache entries (i.e. flow information), see ¶0074. Pizzo also teaches Store, in the network virtualization device, version information about the flow information because ¶0016, teaches a number of server computer systems (i.e. set of servers) each access dynamic content from the same database, ¶0021-¶0022, teaches server computer systems can be the network virtualization device, ¶0020, teaches versioning information for monitored data tables with outstanding cache dependencies, ¶0048, teaches identifies a current version of a data table, ¶0058, teaches version comparisons required in order to maintain cache entries (i.e. flow information). Pizzo further teaches transmit, to the network interface service, an update request to receive updated flow information because ¶0016, teaches a number of server computer systems (i.e. set of servers) each access dynamic content from the same database, ¶0034, teaches the server computer system (e.g., in response to user input) configures a data table in the database to provide a change notification table with updated versioning information (e.g., change IDs) when content in the data table is altered (e.g., inserted, deleted, updated). The server computer system queries the change notification table from time to time or in response to a request to retrieve cached content to request updated versioning information for corresponding data tables. Pizzo teaches receive, from the network interface service, and in response to the update request, an updated flow information, and updated version information because ¶0110, teaches computer system 520 includes network interface 553, through which computer system 520 receives data from external sources and/or transmits data to external sources, ¶0034, teaches in response to a request to retrieve cached content to request updated versioning information for corresponding data tables, ¶0061, teaches received versioning information to update appropriate key entries within cache, wherein entries within cache is flow information, ¶0020, teaches based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed) Pizzo also teaches wherein the updated flow information and updated version information is based on configuration information because ¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed, ¶0061, teaches received versioning information to update appropriate key entries within cache, wherein entries within cache is flow information, ¶0071, teaches returning the updated versioning information to a requesting server computer system such that the updated versioning information can be used to determine the validity of content in a cache entry (i.e. flow information) at the server computer system, ¶0074, teaches updated versioning information is returned form the database to the server computer system. Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed. Pizzo further teaches store the updated flow information and the updated version information because ¶0071, teaches returning the updated versioning information to a requesting server computer system such that the updated versioning information can be used to determine the validity of content in a cache entry (i.e. flow information) at the server computer system, ¶0074, teaches updated versioning information is returned form the database to the server computer system. Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed. For additional clarification, please review the rejection below. Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13. The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer. Claims 1-2, 8, 11-12, 15-17 and 20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-3, 8 and 14 of U.S. Patent No. US 11637770B2 in view of Ang et al. (US 2022/0103487), hereinafter “Ang”, and further in view of Pizzo et al. (US 2004/0267824), hereinafter “Pizzo”. Instant application # 18295430 US Patent # US 11637770B2 1. A system comprising: 1. A system comprising: a substrate network hosting a virtual network; a set of servers connected with a substrate network hosting a virtual network, the set of servers hosting a network interface service, the network interface service storing configuration information about a configuration of the virtual network and version information about the configuration information; a set of servers connected with a substrate network and hosting a network interface service; a network virtualization device hosting a virtual network interface card, connected with the substrate network; and a network virtualization device hosting a virtual network interface card, connected with the substrate network, and wherein the virtual network interface card is configured to: store in the network virtualization device, flow information usable by the virtual network interface card for determining routing of traffic associated with a virtual network, storing flow information usable by the virtual network interface card for traffic associated with a virtual network; and a host machine hosting a compute instance of the virtual network, wherein the host machine is connected with the network virtualization device, and wherein the compute instance is associated with the virtual network interface card; a host machine connected with the network virtualization device and hosting a compute instance from the virtual network, wherein the network interface service hosted on the set of servers is configured to: store configuration information about a configuration of the virtual network; Store, in the network virtualization device, version information about the flow information; store version information about the configuration information; receive, from the host machine of a compute instance, a packet for traffic associated with the computer instance; determine that a portion of the flow information applying to the packet is outdated; determine that the virtual network interface card is associated with the flow information; determine, based on the version information, that the flow information on the network virtualization device is outdated; transmit, to the network interface service, an update request to receive updated flow information; generate, based on the configuration information and the version information, an update to the flow information; and send, to the network virtualization device, the update. receive, from the network interface service, and in response to the update request, updated flow information and updated version information, wherein the updated flow information and updated version information is based on configuration information about the virtual network stored on the set of servers hosting the network interface service; and store, in the network virtualization device, the updated flow information and the updated version information. 8, 15 and 20, The system of claim 7, wherein the configuration information comprises security policies, overlay-to-substrate internet protocol (IP) address mappings, and route rules for one or more packet flows, and wherein the updated flow information comprises at least one of a security policy, an overlay-to-substrate IP address mapping, or a route rule. 2. The system of claim 1, wherein the configuration information comprises security policies, overlay-to-substrate internet protocol (IP) address mappings, and route rules for one or more packet flows, and wherein the flow information comprises at least one of a security policy, an overlay-to-substrate IP address mapping, or a route rule included in the configuration information. Claims 2, 12 and 17 Claim 3 Claim 11 Claim 8 Claim 16 Claim 14 However, US 11637770B2 remain silent on a substrate network hosting a virtual network; a set of servers connected with a substrate network hosting a virtual network, the set of servers hosting a network interface service, the network interface service storing configuration information about a configuration of the virtual network and version information about the configuration information; store version information about the flow information, receive, from the host machine of a compute instance, a packet for traffic associated with the computer instance; receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information about the virtual network stored on the set of servers of the network interface service; and store the updated flow information and the updated version information. Ang discloses a substrate network hosting a virtual network (¶0033, teaches 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 (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network); a set of servers connected with the substrate network hosting a virtual network, the set of servers hosting a network interface service (abstract, teaches The host computers host a set of compute nodes in a virtual network, ¶0033, teaches the host computers host a set of compute nodes (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, the set of compute nodes are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network), ¶0045, teaches a set of physical functions 434 a-i through a PCIe bus 432, to multiple servers 410 a-n each hosting a set of compute nodes (e.g., VMs 411 a-x), the network interface service storing configuration information about a configuration of the virtual network (¶0033, teaches the set of compute nodes are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator, ¶0042, teaches the slow path processing may indicate that a particular forwarding rule (i.e. configuration information) applies to the data message flow and supplies a set of criteria that uniquely identify the flow to which the data message belongs and an action to take for future data messages belonging to that flow, ¶0044, teaches the local controller 365, in some embodiments, configures the slow path processor 263 with forwarding rules and additional policies (e.g., firewall policies, encryption policies, etc.) necessary to implement a data message processing pipeline defined for the SDN (or a set of logical forwarding elements of the SDN). The local controller 365, in some embodiments, also provides information received from the pNIC 120 and the SDN controllers 366 to the mapping generator 368 to identify the VPIDs and PPIDs of the different interfaces and the connections between the interfaces to generate VPID to PPID mappings. Additionally, the local controller 365 notifies the mapping generator 368 when a configuration change affects the VPID to PPID mappings (i.e. mappings as configuration information) to allow the mapping generator 368 to generate a new or updated VPID to PPID mapping); Therefore, it would be obvious to one of ordinary skill in the art before the effective filing date of the invention to modify ’s US 11637770B2’ s system with a substrate network hosting a virtual network; a set of servers connected with a substrate network hosting a virtual network, the set of servers hosting a network interface service, the network interface service storing configuration information about a configuration of the virtual network of Ang, in order to maintain integrity, reliability and manageability of virtual networks within set of servers (Ang, ¶0047). However, US 11637770B2 in view of Ang remain silent on version information about the configuration information, store, in the network virtualization device version information about the flow information, transmit, to the network interface service an update request to receive updated flow information, receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information ; and store the updated flow information and the updated version information. Pizzo discloses version information about the configuration information (¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed, ¶0048, teaches identifies a current version of a data table, ¶0058, teaches version comparisons required in order to maintain cache entries (i.e. flow information), see ¶0074), Store, in the network virtualization device, version information about the flow information (¶0016, teaches a number of server computer systems (i.e. set of servers) each access dynamic content from the same database, ¶0021-¶0022, teaches server computer systems can be the network virtualization device, ¶0020, teaches versioning information for monitored data tables with outstanding cache dependencies, ¶0048, teaches identifies a current version of a data table, ¶0058, teaches version comparisons required in order to maintain cache entries (i.e. flow information). transmit, to the network interface service, an update request to receive updated flow information (¶0016, teaches a number of server computer systems (i.e. set of servers) each access dynamic content from the same database, ¶0034, teaches the server computer system (e.g., in response to user input) configures a data table in the database to provide a change notification table with updated versioning information (e.g., change IDs) when content in the data table is altered (e.g., inserted, deleted, updated). The server computer system queries the change notification table from time to time or in response to a request to retrieve cached content to request updated versioning information for corresponding data tables). receive, from the network interface service, and in response to the update request, an updated flow information, and updated version information (¶0110, teaches computer system 520 includes network interface 553, through which computer system 520 receives data from external sources and/or transmits data to external sources, ¶0034, teaches in response to a request to retrieve cached content to request updated versioning information for corresponding data tables, ¶0061, teaches received versioning information to update appropriate key entries within cache, wherein entries within cache is flow information, ¶0020, teaches based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed), wherein the updated flow information and updated version information is based on configuration information (¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed, ¶0061, teaches received versioning information to update appropriate key entries within cache, wherein entries within cache is flow information, ¶0071, teaches returning the updated versioning information to a requesting server computer system such that the updated versioning information can be used to determine the validity of content in a cache entry (i.e. flow information) at the server computer system, ¶0074, teaches updated versioning information is returned form the database to the server computer system. Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed). store the updated flow information and the updated version information (¶0071, teaches returning the updated versioning information to a requesting server computer system such that the updated versioning information can be used to determine the validity of content in a cache entry (i.e. flow information) at the server computer system, ¶0074, teaches updated versioning information is returned form the database to the server computer system. Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed). Therefore, it would be obvious to one of ordinary skill in the art before the effective filing date of the invention to modify US 11637770B2’s system in view of Ang’s VM as virtualization device with version information about the configuration information, store, in the network virtualization device version information about the flow information, transmit, to the network interface service an update request to receive updated flow information, receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information ; and store the updated flow information and the updated version information of Pizzo, in order to ensure that the flow information is consistent across different components in the network, efficient updates and robust communication in network systems (Pizzo, ¶0020 and ¶0055). However, Ang in view of Pizzo remain silent on receive, from the host machine of a compute instance, a packet for traffic associated with the computer instance. Nunes discloses receive, from the host machine of a compute instance (¶0076, teaches virtual machines 211 and 212 (i.e. compute instance) operate on host 221 (i.e. host machine)), a packet for traffic associated with the computer instance (¶0025, teaches Dropping a packet (i.e. packet for traffic) may result when a given packet is associated with a communication or flow no longer being processed. A packet may also be dropped because a virtual device lacks sufficient instructions for handling a packet of a type received. Alternatively, a device may be unable to successfully route a given packet to a specified destination, ¶0080, teaches a virtual router created by a tenant to route traffic between the tenant's virtual machines (i.e. computer instance), ¶0141, teaches when an egress host receives a return packet from a virtual machine (VM) (i.e. compute instance) hosted on the physical host associated with the egress host. The return process or reverse flow establishes the return tunnel that returns traffic of a connection, see ¶0134). Therefore, it would be obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Ang’s a DROP for packets that are not to be forwarded in view of Pizzo’s system with receive, from the host machine of a compute instance, a packet for traffic associated with the computer instance of Nunes, in order to host machine acts as intermediary, receiving traffic and forwarding it to the correct VM instance (Nunes, ¶0085). Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 1, 2 and 4-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ang et al. (US 2022/0103487), hereinafter “Ang” in view of Pizzo et al. (US 2004/0267824), hereinafter “Pizzo”, and further in view of Nunes et al. (US 2016/0105471A1), hereinafter “Nunes”. With respect to claim 1, Ang discloses a system comprising: a substrate network hosting a virtual network (¶0033, teaches 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 (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network); a set of servers connected with the substrate network hosting a virtual network, the set of servers hosting a network interface service (abstract, teaches The host computers host a set of compute nodes in a virtual network, ¶0033, teaches the host computers host a set of compute nodes (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, the set of compute nodes are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network), ¶0045, teaches a set of physical functions 434 a-i through a PCIe bus 432, to multiple servers 410 a-n each hosting a set of compute nodes (e.g., VMs 411 a-x), the network interface service storing configuration information about a configuration of the virtual network (¶0033, teaches the set of compute nodes are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator, ¶0042, teaches the slow path processing may indicate that a particular forwarding rule (i.e. configuration information) applies to the data message flow and supplies a set of criteria that uniquely identify the flow to which the data message belongs and an action to take for future data messages belonging to that flow, ¶0044, teaches the local controller 365, in some embodiments, configures the slow path processor 263 with forwarding rules and additional policies (e.g., firewall policies, encryption policies, etc.) necessary to implement a data message processing pipeline defined for the SDN (or a set of logical forwarding elements of the SDN). The local controller 365, in some embodiments, also provides information received from the pNIC 120 and the SDN controllers 366 to the mapping generator 368 to identify the VPIDs and PPIDs of the different interfaces and the connections between the interfaces to generate VPID to PPID mappings. Additionally, the local controller 365 notifies the mapping generator 368 when a configuration change affects the VPID to PPID mappings (i.e. mappings as configuration information) to allow the mapping generator 368 to generate a new or updated VPID to PPID mapping); a network virtualization device (see Fig.1, step 115, virtual switch as network virtualization device) hosting a virtual network interface card, connected with the substrate network (¶0037, teaches each VM 111 a-n has a virtual NIC (e.g., vNIC 112 a-n) that connects to virtual functions (VFs) 133 a-n of a physical function (PF) 134 a of the pNIC 120 through a PCIe bus 131, ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network)); a host machine hosting a compute instance of the virtual network (¶0033, teaches the host computers host a set of compute nodes (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, wherein virtual machines are compute instance), wherein the host machine is connected with the network virtualization device (¶0038, teaches Host computer 110 also includes a second set of VMs 113 a-m that connect to a virtual switch 115 (i.e. network virtualization device) of the host computer 110.), and wherein the compute instance is associated with the virtual network interface card (¶0033, teaches the set of compute nodes ((e.g., virtual machines (VMs) as compute instance, Pods, containers, etc.) are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator, ¶0037, teaches FIG. 1, each VM 111 a-n has a virtual NIC (e.g., vNIC 112 a-n) that connects to virtual functions (VFs) 133 a-n of a physical function (PF) 134 a of the pNIC 120 through a PCIe bus 131.); and wherein the virtual network interface card ((¶0037, teaches each VM 111 a-n has a virtual NIC (e.g., vNIC 112 a-n) that connects to virtual functions (VFs) 133 a-n of a physical function (PF) 134 a of the pNIC 120 through a PCIe bus 131) is configured to: store, in the network virtualization device (see Fig.1, step 115, virtual switch as network virtualization device), flow information usable by the virtual network interface card for determining routing of traffic associated with the computing instance of the virtual network (¶0039, teaches perform flow processing for the VMs (i.e. computing instance of the virtual network) 111 a-n and vNICs 112 a-n. The FPO hardware 140 includes a flow entry table 143 that stores a set of flow entries (i.e. flow information) for performing flow processing (i.e. routing of traffic), ¶0054, teaches the flow processing and action generator processes (at 715) the data message through a processing pipeline to determine an action to take for subsequent data messages in the same data message flow), determine that a portion of the flow information applying to the packet is outdated (¶0009, teaches the flow processing and action generator can identify the flow entries (i.e. portion of the flow information) associated with the invalidated (i.e. packet is outdated) VPID and instruct the pNIC to remove the identified flow entries from the set of flow entries stored by the network processing hardware, ¶0065, teaches each flow entry, in some embodiments, includes an action associated with a data message that matches that flow entry. The actions, in some embodiments, include: a forwarding operation (FWD), a DROP for packets that are not to be forwarded, modifying the packet's header and a set of modified headers, replicating the packet (along with a set of associated destinations, ¶0079, teaches Process 1500 begins by receiving (at 1505) a data message that matches a flow entry specifying an invalidated VPID as a destination, see ¶0074-¶0075), However, Ang remain silent on version information about the configuration information, store, in the network virtualization device version information about the flow information, transmit, to the network interface service an update request to receive updated flow information, receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information ; and store the updated flow information and the updated version information. Pizzo discloses version information about the configuration information (¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed, ¶0048, teaches identifies a current version of a data table, ¶0058, teaches version comparisons required in order to maintain cache entries (i.e. flow information), see ¶0074), Store, in the network virtualization device (¶0016, ¶0021-¶0022, teaches server computer systems can be the network virtualization device), version information about the flow information (¶0020, teaches versioning information for monitored data tables with outstanding cache dependencies, ¶0048, teaches identifies a current version of a data table, ¶0058, teaches version comparisons required in order to maintain cache entries (i.e. flow information)). transmit, to the network interface service, an update request to receive updated flow information (¶0034, teaches the server computer system (e.g., in response to user input) configures a data table in the database to provide a change notification table with updated versioning information (e.g., change IDs) when content in the data table is altered (e.g., inserted, deleted, updated). The server computer system queries the change notification table from time to time or in response to a request to retrieve cached content to request updated versioning information for corresponding data tables); receive, from the network interface service (¶0110, teaches Computer system 520 includes network interface 553, through which computer system 520 receives data from external sources and/or transmits data to external sources), and in response to the update request, an updated flow information (¶0034, teaches in response to a request to retrieve cached content to request updated versioning information for corresponding data tables, ¶0061, teaches received versioning information to update appropriate key entries within cache, wherein entries within cache is flow information), and updated version information (¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed), wherein the updated flow information and updated version information is based on configuration information (¶0020, teaches Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed, ¶0061, teaches received versioning information to update appropriate key entries within cache, wherein entries within cache is flow information, ¶0071, teaches returning the updated versioning information to a requesting server computer system such that the updated versioning information can be used to determine the validity of content in a cache entry (i.e. flow information) at the server computer system, ¶0074, teaches updated versioning information is returned form the database to the server computer system. Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed.); store the updated flow information and the updated version information ((¶0071, teaches returning the updated versioning information to a requesting server computer system such that the updated versioning information can be used to determine the validity of content in a cache entry (i.e. flow information) at the server computer system, ¶0074, teaches updated versioning information is returned form the database to the server computer system. Based on the configuration of the query, the database can return, for example, versioning information for all monitored data tables, versioning information for monitored data tables with outstanding cache dependencies, or versioning information for monitored data tables that have changed). Therefore, it would be obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Ang’s VM as virtualization device with version information about the configuration information, store version information about the flow information, send, to the network interface service an update request to receive updated flow information, receive, from the network interface service, an updated flow information and updated version information, the updated flow information and updated version information based on configuration information, store the updated flow information and the updated version information of Pizzo, in order to ensure that the flow information is consistent across different components in the network, efficient updates and robust communication in network systems (Pizzo, ¶0020 and ¶0055). However, Ang in view of Pizzo remain silent on receive, from the host machine of a compute instance, a packet for traffic associated with the computer instance. Nunes discloses receive, from the host machine of a compute instance (¶0076, teaches virtual machines 211 and 212 (i.e. compute instance) operate on host 221 (i.e. host machine)), a packet for traffic associated with the computer instance (¶0025, teaches dropping a packet (i.e. packet for traffic) may result when a given packet is associated with a communication or flow no longer being processed. A packet may also be dropped because a virtual device lacks sufficient instructions for handling a packet of a type received. Alternatively, a device may be unable to successfully route a given packet to a specified destination, ¶0080, teaches a virtual router created by a tenant to route traffic between the tenant's virtual machines (i.e. computer instance), ¶0141, teaches when an egress host receives a return packet from a virtual machine (VM) (i.e. compute instance) hosted on the physical host associated with the egress host. The return process or reverse flow establishes the return tunnel that returns traffic of a connection see ¶0134). Therefore, it would be obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Ang’s a DROP for packets that are not to be forwarded in view of Pizzo’s system with receive, from the host machine of a compute instance, a packet for traffic associated with the computer instance of Nunes, in order to host machine acts as intermediary, receiving traffic and forwarding it to the correct VM instance (Nunes, ¶0085). With respect to claim 11, Ang discloses a method comprising: storing, by a network virtualization device (see Fig.1, step 115, virtual switch as network virtualization device), flow information usable by a virtual network interface card for determining routing of traffic associated with a compute instance of a virtual network (¶0039, teaches perform flow processing for the VMs 111 a-n (i.e. compute instance) and vNICs 112 a-n. The FPO hardware 140 includes a flow entry table 143 that stores a set of flow entries (i.e. flow information) for performing flow processing (i.e. routing of traffic), ¶0054, teaches the flow processing and action generator processes (at 715) the data message through a processing pipeline to determine an action to take for subsequent data messages in the same data message flow), wherein: a substrate network hosting a virtual network (¶0033, teaches 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 (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, ¶0039, teaches the pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network); a set of servers connected with the substrate network hosts a network interface service (abstract, teaches The host computers host a set of compute nodes in a virtual network, ¶0033, teaches the host computers host a set of compute nodes (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, the set of compute nodes are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network), ¶0045, teaches a set of physical functions 434 a-i through a PCIe bus 432, to multiple servers 410 a-n each hosting a set of compute nodes (e.g., VMs 411 a-x), the network virtualization device (see Fig.1, step 115, virtual switch as network virtualization device) hosts the virtual network interface card and is connected with the substrate network ((¶0037, teaches each VM 111 a-n has a virtual NIC (e.g., vNIC 112 a-n) that connects to virtual functions (VFs) 133 a-n of a physical function (PF) 134 a of the pNIC 120 through a PCIe bus 131, ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network)); a host machine hosts a compute instance of the virtual network (¶0033, teaches the host computers host a set of compute nodes (e.g., virtual machines (VMs), Pods, containers, etc.) in a virtual or logical network, wherein virtual machines are compute instance), wherein the host machine is connected with the network virtualization device (¶0038, teaches Host computer 110 also includes a second set of VMs 113 a-m that connect to a virtual switch 115 (i.e. network virtualization device) of the host computer 110.), and wherein the compute instance is associated with the virtual network interface card (¶0033, teaches the set of compute nodes ((e.g., virtual machines (VMs) as compute instance, Pods, containers, etc.) are each associated with a set of interfaces (virtual NICs, ports, etc.) that are each assigned a locally-unique virtual port identifier (VPID) by a flow processing and action generator, ¶0037, teaches FIG. 1, each VM 111 a-n has a virtual NIC (e.g., vNIC 112 a-n) that connects to virtual functions (VFs) 133 a-n of a physical function (PF) 134 a of the pNIC 120 through a PCIe bus 131.), and determining that a portion of the flow information applying to the packet is outdated (¶0009, teaches the flow processing and action generator can identify the flow entries (i.e. portion of the flow information) associated with the invalidated (i.e. packet is outdated) VPID and instruct the pNIC to remove the identified flow entries from the set of flow entries stored by the network processing hardware, ¶0065, teaches each flow entry, in some embodiments, includes an action associated with a data message that matches that flow entry. The actions, in some embodiments, include: a forwarding operation (FWD), a DROP for packets that are not to be forwarded, modifying the packet's header and a set of modified headers, replicating the packet (along with a set of associated destinations ¶0079, teaches Process 1500 begins by receiving (at 1505) a data message that matches a flow entry specifying an invalidated VPID as a destination, see ¶0074-¶0075), transmitting, by the virtual network interface card, to the network interface service (see Fig. 1, step 115 virtual switch with step 113a vNIC, ¶0039, teaches The pNIC 120 also includes a physical network port 121 that connects the pNIC 120 and the VMs 111 a-n and vNICs 112 a-n to a physical network (i.e. substrate network), ¶0045, teaches a set of physical functions 434 a-i through a PCIe bus 432, to multiple servers 410 a-n each hosting a set of compute nodes (e.g., VMs 411 a-x)). Ang teaches transmitting, by the network virtualization device to the network interface service (see Fig. 1, step 115 virtual switch (i.e. network virtualization device) with step 113a vNIC, ¶0037 teaches the virtual machines (111 a-n and 113 a-m) and virtual switch 115 are shown executing within virtualization software 114), storing, by the network virtualization device (see Fig.1, step 115, virtual switch as network virtualization device). Ang, ¶0047 also teaches “configuration information about the virtual network stored on the set of servers hosting the network interface service” because communicates with a set of network management computers that manage the virtual network to identify the set of compute nodes and VPIDs associated with the set of compute nodes, ¶0073, teaches FIG. 13 illustrates selected elements of a system 1300 in which a change to a configuration of a vNIC 1312 a of VM 1311 a at a time “T1” causes the VPID of the vNIC 1312 a to change. However, Ang remain silent on version information about the flow information in the network virtualization device, transmitting, by the virtual network interface card to the network interface service, an update request to receive updated flow information associated with flow information, receiving, by the virtual network interface card, from the network interface service, and in response to the update request, updated flow information and updated version information based on configuration information, storing, by the virtual network interface card, the updated flow information and the updated version information in the network virtualization device. Pizzo discloses version information about the configuration information in the network virtualizat
Read full office action

Prosecution Timeline

Apr 04, 2023
Application Filed
Oct 04, 2023
Non-Final Rejection — §103, §DP
Apr 18, 2024
Response Filed
Apr 30, 2024
Applicant Interview (Telephonic)
Apr 30, 2024
Examiner Interview Summary
Aug 23, 2024
Final Rejection — §103, §DP
Feb 24, 2025
Applicant Interview (Telephonic)
Feb 24, 2025
Examiner Interview Summary
Feb 26, 2025
Request for Continued Examination
Mar 05, 2025
Response after Non-Final Action
May 23, 2025
Non-Final Rejection — §103, §DP
Aug 14, 2025
Interview Requested
Aug 21, 2025
Applicant Interview (Telephonic)
Aug 21, 2025
Examiner Interview Summary
Aug 28, 2025
Response Filed
Nov 04, 2025
Final Rejection — §103, §DP (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12587442
INFORMATION PROCESSING APPARATUS, METHOD OF REGISTERING DEVICE CONNECTED TO INFORMATION PROCESSING APPARATUS IN SERVER, AND STORAGE MEDIUM
2y 5m to grant Granted Mar 24, 2026
Patent 12563008
CAPTURING AND UTILIZING CONTEXT DATA IN CROSS-CHANNEL CONVERSATION SERVICE APPLICATION COMMUNICATION SESSIONS
2y 5m to grant Granted Feb 24, 2026
Patent 12556478
BGP Segment Routing optimization by packing multiple prefixes in an update
2y 5m to grant Granted Feb 17, 2026
Patent 12537741
TEMPLATE XSLT BASED NETCONF DATA COLLECTOR
2y 5m to grant Granted Jan 27, 2026
Patent 12531775
ROOT CAUSING NETWORK ISSUES USING CHAOS ENGINEERING
2y 5m to grant Granted Jan 20, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

5-6
Expected OA Rounds
61%
Grant Probability
92%
With Interview (+30.7%)
3y 3m
Median Time to Grant
High
PTA Risk
Based on 258 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month