DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 7-13 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being incomplete for omitting essential structural cooperative relationships of elements, such omission amounting to a gap between the necessary structural connections. See MPEP § 2172.01. The omitted structural cooperative relationships are:
Claims 7-13 recite the circuitry and the process carried out by the egress pipeline circuitry 120 of figure 1C (from the applicant’s specification). The egress pipeline circuitry 120 includes, parser circuitry 122, lookup circuitry 124, action circuitry 126, deparser circuitry 128. However the claims in question recite a single “circuitry configurable to…”. The cooperating structural relationships between the various circuitries of the egress pipeline circuitry 120 of figure 1C are not recited.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s) 1, 7 and 13-14 and 20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Shah et al. (US Publication 2018/0176183 A1).
In regards to claims 1, 7 and 14 Shah et al. (US Publication 2018/0176183 A1) a method performed by a network Input/Output (I/O) device, the method comprising: when an outgoing packet is transmitted on a transmit (TX) queue by a central processing unit (CPU) core to the network I/O device, performing a flow-based lookup in at least one of an initiator flow table and a reverse flow table stored in the network I/O device to match one or more values of N-tuples of the outgoing packet (see paragraph 38; The distributed firewall tries to match the received packets' identifiers (e.g., five-tuple identifiers extracted from the packet header) with the associated identifiers (e.g., five-tuple identifiers) of the firewall rules associated with the vNIC that is the destination of an incoming packet or the source of an outgoing packet); in response to the one or more values of the N-tuples of the outgoing packet matching a flow entry in the initiator flow table or the reverse flow table, determining whether a receive (RX) queue ID stored in the flow entry is pinned to a TX queue ID of the TX queue on which the outgoing packet is transmitted (see paragraph 39; The distributed firewall generates firewall flow records associated with communication sessions over a particular vNIC. The firewall flow records are generated by the packets passing through an Internet Protocol (IP) based forwarding engine of the distributed firewall at the hypervisor level. For example, a packet engine on the hypervisor collects the firewall flow records for transmission to the SDN manager. A firewall flow record represents packets transmitted through the distributed firewall and includes information such as packet count and byte count for the flow session allowed by the firewall rule); and in response to the RX queue ID not being pinned to the TX queue ID, updating the RX queue ID and the TX queue ID in the initiator flow table and the reverse flow table such that the updated RX queue ID is pinned to the TX queue ID of the TX queue on which the outgoing packet is transmitted by the CPU core (see figure 5a, see paragraph 90; At procedure 530, the SDN manager processes the firewall flow records received at a firewall flow record collection queue (e.g., firewall flow record collection queue 320), such that the SDN manager prepares the received firewall flow records for storage at a flow record data store. In one embodiment, as shown at procedure 532, the SDN manager decompresses received firewall flow records into an uncompressed format. In one embodiment, as shown at procedure 534, the SDN manager decrypts the received firewall flow records. In one embodiment, as shown at procedure 536, the SDN manager pushes received firewall flow records to the firewall flow record data store).
In regards to claim 13, Shah teaches, wherein the programmable network I/O device comprises at least one of a network interface card (NIC) (see figure 2, vNIC 240, 242 in figure 2) or a data processing unit (DPU).
In regards to claim 20, Shah teaches, wherein at least one of the plurality of CPU cores is configured to execute instructions to perform a virtual network function (see figure 7, the processors 706 and the virtual network 200 of figure 2).
Allowable Subject Matter
Claims 2-6 and 15-19 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Claims 8-13 would be allowable if rewritten to overcome the rejection(s) under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), 2nd paragraph, set forth in this Office action and to include all of the limitations of the base claim and any intervening claims.
In regards to claims 2, 8 and 15, the cited prior art fails to teach, in addition to the additional limitations of the claim, in response to the one or more values of the N-tuples of the outgoing packet not matching a flow entry in the initiator flow table and the reverse flow table, adding a new flow entry to the initiator flow table and a new flow entry to the reverse flow table to store the one or more values of the N-tuples of the outgoing packet, a TX queue ID of the TX queue on which the outgoing packet is transmitted, and an RX queue ID that is mapped to the TX queue ID based on a TX-RX queue mapping table.
In regards to claims 3, 9 and 16, the cited prior art fails to teach, wherein: in response to the RX queue ID being pinned to the TX queue ID, retaining the RX queue ID and the TX queue ID in the initiator flow table and the reverse flow table.
In regards to claims 4, 10 and 17, the cited prior art fails to teach, when an incoming packet is received by the network I/O device on a front panel port, performing another flow-based lookup in at least one of the initiator flow table and the reverse flow table to match one or more values of N-tuples of the incoming packet.
Prior art Baruah et al. (US Publication 2025/0106150 A1) teaches in figure 7, a diagram 700 showing example flow tables and flow information entries that may be recorded within the flow table (e.g., flow table 508) by the hub node 506. In particular, FIG. 7 shows an outgoing flow table 702 that shows a first outgoing flow table entry 706a and a second outgoing flow table entry 706b, and a returning flow table 704 that shows a first returning flow table entry 708a and a second returning flow table entry 708b (see paragraph 92).
Prior art Arkko et al. (WO 2021/014204 A1) teaches, a client application on a computing device being identified by a 5-tuple identifying the DoH session from the client application (see paragraph 82).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JAY P PATEL whose telephone number is (571)272-3086. The examiner can normally be reached M-F 9:30-6.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Faruk Hamza can be reached at 571-272-7969. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/JAY P PATEL/ Primary Examiner, Art Unit 2466