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 .
Response to Arguments
1. Applicant's arguments have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Specifically, Gong et al. (US 20220121473 A1) and Akl et al. (US 20220225166 A1) addresses running the virtual machine on a virtualization layer of a host machine (Gong, ¶0130) and mapping element (Akl, ¶0095-¶0096). Furthermore, Examiner as notes that Park would already teach the virtual machine manager. (Park, FIG. 10, PSA UPF 110-3, wherein this would be a virtual machine manager as it manages the virtual machines, i.e. the virtual gateways).
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
2. Claims 1-2 and 7-12 are rejected under 35 U.S.C. 103 as being unpatentable over Park et al. (US 20220345928 A1) in view of Gong et al. (US 20220121473 A1) and Akl et al. (US 20220225166 A1).
Claim 1 Park teaches a packet communication system, comprising:
a packet source that outputs a data packet; (FIG. 14, ¶0271, UE wireless device) and
a first host machine, (FIG. 14, ¶0271, a first host machine comprising Host A) the first host machine comprising:
a first virtual gateway (¶0271, the host machine implementing a gateway as it directs the packets from the UE to the network) implemented as a virtual machine (¶0472, wherein the gateway is implemented virtually) and communicatively coupled to the packet source to receive the data packet, (¶0271, wherein the host communicatively receives the data packet from the data source, i.e. the UE)
the first virtual gateway generating two or more packet copies of the data packet (¶0271, the host generating two or more copies of the data packet; ¶0341, duplicate packets by adding sequence numbers to the packet headers. A duplicate/copy/replica of the packets may be sent/forwarded via disjoint paths (e.g. different access nodes, different UPFs, and/or different tunnels) in the network) and associating a different guest flow label with each of the packet copies (Examiner interprets a “associating a different guest flow label” as merely being a form of identifier, either implicit or explicit, enabling distinction between them; ¶0271, wherein the packets are given different paths, i.e. guest flow labels, for each of the packet copies) and a sequence number with each of the packet copies (¶0292, assigning the packet copies sequent numbers) to generate a first modified packet copy having a first guest flow label and a second modified packet copy having a second guest flow label; (¶0271, wherein the packet copies have a guest flow label being their respective path that the respective packet copies flow through) and
a virtual machine manager (FIG. 10, PSA UPF 110-3; Examiner notes that as these are used to manage the virtual machines, these would comprise virtual machine managers) communicatively coupled to the first virtual gateway, the virtual machine manager adding a first cloud flow label to the first modified packet copy and a second cloud flow label to the second modified packet copy. (¶0338-¶0340, PSA UPF may update or modify the transport header of packets, i.e. adding a cloud flow label to modified packets)
However, Park does not explicitly teach wherein the virtual machine runs on the first host machine at a virtualization layer; and
based on the first and second guest flow labels, associating mapping the first modified packet copy to a first tunnel based on the first cloud label and the second modified packet copy to a second tunnel different than the first tunnel, based on the second cloud flow label, the first and second tunnels used to communicate traffic between the first host machine and a second host machine.
From a related technology, Gong teaches wherein the virtual machine runs on the first host machine at a virtualization layer. (FIG. 2, ¶0130, where a virtual machine runs on a host machine at a virtualization layer)
It would be obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Park to incorporate the teaching of Gong regarding virtual machine technology in order to more effective utilize computing resources.
However, Park in view of Gong does not explicitly teach based on the first and second guest flow labels, associating mapping the first modified packet copy to a first tunnel based on the first cloud label and the second modified packet copy to a second tunnel different than the first tunnel, based on the second cloud flow label, the first and second tunnels used to communicate traffic between the first host machine and a second host machine.
From a related technology, Akl teaches based on the first and second guest flow labels, mapping (¶0095-¶0096, mapping of received packets) the first modified packet copy to a first tunnel based on the first cloud label (¶0095-¶0096, wherein the mapping is to the first tunnel endpoint and is based upon first flow field label) and the second modified packet copy to a second tunnel different than the first tunnel, based on the second cloud flow label, (¶0095-¶0096, wherein the mapping is to the second tunnel endpoint and is based upon second flow field label) the first and second tunnels used to communicate traffic between the first host machine and a second host machine. (Examiner notes that “used to communicate traffic” is an intended use element that does not have patentable weight)
It would be obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Park to incorporate the teachings of Akl in order to more effective manage quality of service mapping information and improve network efficiency.
Claim 2 Park in view of Gong and Akl teach Claim 1, and further teaches wherein a guest flow label is used to maintain a sequential flow of packets that belong to a communication between two virtual gateways. (Examiner notes that “used to maintain…” comprises an intended use statement and does not have patentable weight)
Claim 7 Park in view of Gong and Akl teach Claim 1, and further teaches wherein the first virtual gateway comprises a first virtual machine. (Park, ¶0472, wherein the gateway is implemented virtually)
Claim 8 Park in view of Gong and Akl teach Claim 1, and further teaches wherein the two or more packet copies generated comprise IPv4 data packets. (Park, ¶0112, wherein the packet comprises IPv4 data packets)
Claim 9 Park in view of Gong and Akl teach Claim 8, and further teaches wherein the first computing resource encapsulates the first modified packet copy and the second modified packet copy in respective IPv6 packets that respectively include the first cloud flow label and the second cloud flow label. (Park, ¶0244, wherein packets are copied to PDU type IPv6 packets that would include the labels of their copied versions)
Claim 10 Park in view of Gong and Akl teach Claim 10, and further teaches comprising a second virtual gateway that receives the first modified packet copy and the second modified packet copy and uses the sequence number to discard the first modified packet copy or the second modified packet copy. (Park, ¶0277, wherein wireless devices, i.e. the second virtual gateway receives the redundant packets and disposes a redundant packet)
Claim 11 Park in view of Gong and Akl teach Claim 10, and further teaches wherein the second virtual gateway uses a sliding window to determine whether the first modified packet copy or the second modified packet copy is redundant. (Park, ¶0277, wherein wireless devices, i.e. the second virtual gateway receives the redundant packets and determines whether the packet is redundant)
Claim 12 Park in view of Gong and Akl teach Claim 1, and further teaches wherein the first and second tunnels comprise tunnels that are keyed to an IPv6 Flow Label. (Park, ¶0244, wherein the tunnels are keyed to the PDU type IPv6)
3. Claim 3-6 and 14-20 are rejected under 35 U.S.C. 103 as being unpatentable over Park et al. (US 20220345928 A1) in view of Gong et al. (US 20220121473 A1) and Akl et al. (US 20220225166 A1) and in further view of Singh (US 20180270139 A1).
Claim 3 Park in view of Gong and Akl teach Claim 1, and does not explicitly teach wherein the first computing resource associating the first modified packet copy with the first tunnel comprises hashing the first guest flow label associated with the first modified packet copy to produce a first hash value and associating the first hash value with the first tunnel.
From a related technology, Singh teaches hashing a first guest flow label associated with a first modified packet copy to produce a first hash value and associating the first hash value with the first tunnel. (¶0250-¶0252, hashing a label for the packet to produce a hash value wherein the hash value is associated with a first tunnel)
It would be obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Park to incorporate the hashing techniques of Singh in order to more effectively utilize network resources.
Claim 4 Park in view of Singh teaches Claim 3, and further teaches wherein associating the first hash value with the first tunnel comprises bucketing, based on the first hash value, the first modified packet copy in a table identifying tunnels between the first virtual host and a second virtual host used for transporting data between the first and second host machines. (Singh, ¶0217, wherein the hash function is bucketed based on the modified data packets between the machines)
Claim 5 Park in view of Singh teaches Claim 4, and further teaches wherein the first cloud flow label is used to generate an IPv6 packet encapsulating the first modified packet copy. (Park, ¶0244, wherein generating in IPv6 packet encapsulating the packet copy)
Claim 6 Park in view of Singh teaches Claim 3, and further teaches wherein the first hash value is different than a second hash value associated with a hash of the second guest flow label. (Singh, ¶0250-¶0252, hashing a label for the packet to produce a hash value wherein the hash value is different based on their associated flows)
Claim 13 Park teaches a packet processing method, comprising:
generating a first copy and a second copy of a data packet at a virtual machine layer of a source host machine configured to support virtual machines; (Park, ¶0271, the host generating two or more copies of the data packet; ¶0472, wherein the gateway is virtual)
appending, at the virtual machine layer, a sequence number (Park, ¶0292, assigning the packet copies sequent numbers) and a first flow label to the first copy of the data packet to create a first modified data packet (Park, ¶0271, wherein the packet copies have a guest flow label being their respective path that the respective packet copies flow through)and the sequence number (Park, ¶0292, assigning the packet copies sequent numbers) and a second flow label to the second copy of the data packet to create a second modified data packet, the first flow label being different than the second flow label; (Park, ¶0271, wherein the packet copies have a guest flow label being their respective path that the respective packet copies flow through) and
encapsulating the first modified data packet in a first transmission data packet having a first network layer flow label and the second modified data packet in a second transmission data packet having a second network layer flow label, wherein the first network layer flow label identifies packets for transmission on the first tunnel and the second network layer flow label identifies packets for transmission on the second tunnel.
However, Park in view of does not explicitly teach creating a first hash value based on the first flow label and a second hash value based on the second flow label;
associating, based on the first hash value, the first flow label with a first tunnel used for data transmissions from the source host machine; and
associating, based on the second hash value, the second flow label with a second tunnel used for the data transmissions from the source host machine, the second tunnel being different than the first tunnel.
From a related technology, Sigh teaches creating a first hash value based on the first flow label and a second hash value based on the second flow label; (¶0250-¶0252, creating a first and second hash value based on the flow data)
associating, based on the first hash value, the first flow label with a first tunnel used for data transmissions from the source host machine; (¶0250-¶0252, wherein the flow data and tunnel are associated by the hash values; Examiner notes that “used for…” comprises an intended use statement that does not have patentable weight) and
associating, based on the second hash value, the second flow label with a second tunnel used for the data transmissions from the source host machine, the second tunnel being different than the first tunnel. (¶0250-¶0252, wherein the flow data and tunnel are associated by the hash values; Examiner notes that “used for…” comprises an intended use statement that does not have patentable weight)
It would be obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Park to incorporate the hashing techniques of Singh in order to more effectively utilize network resources.
Claim 14 Park in view of Gong, Akl, and Singh teaches Claim 13, and further teaches wherein the first and second flow labels comprise IPv6 Flow Labels. (Park, ¶0244, the labels comprise PDU type IPv6)
Claim 15 Park in view of Gong, Akl, and Singh teaches Claim 14, and further teaches wherein the first and second network layer flow labels comprise IPv6 Flow Labels. (Park, ¶0244, the labels comprise PDU type IPv6)
Claim 16 Park in view of Gong, Akl, and Singh teaches Claim 13, and further teaches wherein associating the first flow label with a tunnel comprises bucketing, based on the first hash value, the first modified data packet in a table identifying one or more tunnels between the source host machine and a destination host machine. (Singh, ¶0217, wherein the hash function is bucketed based on the modified data packets between the machines)
Claim 17 Park in view of Gong, Akl, and Singh teaches Claim 13, and further teaches wherein the data packet comprises an IPv4 data packet. (Park, ¶0112, wherein the packet comprises IPv4 data packets)
Claim 18 Park in view of Gong, Akl, and Singh teaches Claim 13, and further teaches wherein the steps of creating, associating, and encapsulating are performed by a virtual machine manager. (Park, ¶0472, wherein the gateway is implemented virtually)
Claim 19 Park in view of Gong, Akl, and Singh teaches Claim 13, and further teaches comprising generating the first flow label and the second flow label. (Park, ¶0271, wherein the packets are given different paths, i.e. guest flow labels, for each of the packet copies)
Claim 20 Park in view of Gong, Akl, and Singh teaches Claim 13, and further teaches wherein the virtual machine layer comprises a guest layer in a virtual computing environment. (Park, ¶0472, wherein the machine layer is implemented virtual guest layer)
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRISTOPHER PALACA CADORNA whose telephone number is (571)270-0584. The examiner can normally be reached M-F 10:00-7:00.
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, John Follansbee can be reached at (571) 272-3964. 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.
/CHRISTOPHER P CADORNA/Examiner, Art Unit 2444
/JOHN A FOLLANSBEE/Supervisory Patent Examiner, Art Unit 2444