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 § 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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claim(s) 1, 2, 5 - 8, and 10 - 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kasichainula, U.S. Patent Publication No. 2021/0014177 in view of Huawei, WO 2021/014180.
Kasichainula teaches a method of utilizing a high-speed queue and a best-effort queue to transmit packets onto a network. Kasichainula does not teach utilizing a cyclic queue. However, Huawei teaches utilizing a cyclic queue technique. It would have been obvious to one skilled in the art at the time of filing to modify the teachings of Kasichainula to incorporate the known technique of a cyclical queue as taught by Huawei in order to obtain the predictable result of more efficient use of memory.
The combination teaches:
1. (Original) A packet transmission method, being applied to a network device, wherein the network device at least comprises an output forwarding and processing unit and an output interface unit, and the method comprises:
after the output forwarding and processing unit obtains a packet, if the packet belongs to a deterministic flow, storing, by the output forwarding and processing unit, the packet into a deterministic flow input queue (NIC utilizes class based scheduling and DMA for deterministic packet transmissions, [0043], Kasichainula);
for each packet in the deterministic flow input queue, determining encapsulation information corresponding to the packet, wherein the encapsulation information at least comprises cyclic queue (CQ) queue information (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
encapsulating the packet based on the encapsulation information, and storing the encapsulated packet into a deterministic flow output queue (there are two output queues, best-effort for low priority and express for high priority packets, [0044], Kasichainula);
obtaining, by the output interface unit, a packet from the deterministic flow output queue and based on the CQ queue information corresponding to the packet, storing the packet into a CQ queue corresponding to the CQ queue information (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
determining, by the output interface unit, a target CQ queue corresponding to a current scheduling cycle, and sending a packet in the target CQ queue to an external device within the current scheduling cycle (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
2. (Original) The method of claim 1, further comprising: after the output forwarding and processing unit obtains a packet, if the packet belongs to a best-effort flow, storing, by the output forwarding and processing unit, the packet into a best-effort flow input queue;
for each packet in the best-effort flow input queue, performing hierarchical quality of service (HQOS) scheduling for the packet and storing the HQOS scheduled packet into a best-effort flow output queue;
obtaining, by the output interface unit, a packet from the best-effort flow output queue and storing the packet into a best-effort queue (BEQ) queue;
after the output interface unit sends a packet in the target CQ queue to the external device within the current scheduling cycle, the method further comprises: if sending of the packets in the target CQ queue is finished and the current scheduling cycle still has a remaining time slice, sending, by the output interface unit, a packet in the BEQ queue to the external device within the remaining time slice of the current scheduling cycle (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula).
5. (Currently Amended) The method of claim 1, wherein, the network device further comprises an input forwarding and processing unit and the method further comprises:
after the input forwarding and processing unit obtains a packet, if the packet belongs to the deterministic flow, storing, by the input forwarding and processing unit, the packet into the deterministic flow input queue; or,
if the packet belongs to the best- effort flow, storing the packet into the best-effort flow input queue;
wherein a queue priority corresponding to the deterministic flow input queue is higher than a queue priority corresponding to the best-effort flow input queue, such that the input forwarding and processing unit preferentially processes the packet in the deterministic flow input queue;
when the input forwarding and processing unit processes a packet in the deterministic flow input queue, if the packet comprises CQ queue indication information, determining, by the input forwarding and processing unit, a CQ queue corresponding to the CQ queue indication information, otherwise, determining a CQ queue corresponding to the packet based on a timestamp corresponding to the packet, wherein the timestamp refers to a timestamp that the network device receives the packet; adding CQ queue information corresponding to the CQ queue to the packet and sending the packet to the output forwarding and processing unit such that the output forwarding and processing unit obtains the packet (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
6. (Original) The method of claim 5, wherein determining, by the input forwarding and processing unit, the CQ queue corresponding to the packet based on the timestamp corresponding to the packet comprises:
querying for, by the input forwarding and processing unit, an egress interface based on forwarding information corresponding to the packet, and determining a plurality of CQ queues corresponding to the egress interface, wherein each of the CQ queues has a corresponding scheduling cycle;
based on the timestamp corresponding to the packet, selecting, by the input forwarding and processing unit, a scheduling cycle corresponding to the timestamp from all scheduling cycles, and determining a CQ queue corresponding to the scheduling cycle (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
7. (Original) The method of claim 5, wherein, the network device further comprises an internal exchange unit, and the method further comprises:
when the input forwarding and processing unit sends a packet in the deterministic flow input queue to the output forwarding and processing unit, adding a high priority mark to the packet, and sending the packet to the internal exchange unit, such that the internal exchange unit sends the packet to the output forwarding and processing unit based on the high priority mark (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
when the input forwarding and processing unit sends a packet in the best-effort flow input queue to the output forwarding and processing unit, adding a low priority mark to the packet, and sending the packet to the internal exchange unit, such that the internal exchange unit sends the packet to the output forwarding and processing unit based on the low priority mark (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
8. (Original) The method of claim 5, wherein, the network device further comprises an input interface unit, and the method further comprises:
after the input interface unit receives a packet from the external device, determining whether the packet belongs to the deterministic flow or the best-effort flow;
if the packet belongs to the deterministic flow, storing the packet into the deterministic flow output queue, and if the packet belongs to the best-effort flow, storing the packet into the best-effort flow output queue;
sending, by the input interface unit, a packet in the deterministic flow output queue to the input forwarding and processing unit through a third channel, such that the input forwarding and processing unit obtains the packet from the third channel; wherein the input forwarding and processing unit determines the packet obtained from the third channel belongs to the deterministic flow;
sending, by the input interface unit, a packet in the best-effort flow output queue to the input forwarding and processing unit through a fourth channel, such that the input forwarding and processing unit obtains the packet from the fourth channel;
wherein the input forwarding and processing unit determines the packet obtained from the fourth channel belongs to the best-effort flow (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
10. (Original) The method of claim 8, wherein sending, by the input interface unit, the packet in the deterministic flow output queue to the input forwarding and processing unit through the third channel and sending the packet in the best-effort flow output queue to the input forwarding and processing unit through the fourth channel comprise:
preferentially obtaining, by the input interface unit, a packet from the deterministic flow output queue, and sending the obtained packet to the input forwarding and processing unit through the third channel (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
after all packets in the deterministic flow output queue are obtained, obtaining a packet from the best-effort flow output queue and sending the obtained packet to the input forwarding and processing unit through the fourth channel (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
11. (Original) A network device, comprising an output forwarding and processing unit and an output interface unit;
wherein, the output forwarding and processing unit is configured to, after obtaining a packet, if the packet belongs to a deterministic flow, store the packet into a deterministic flow input queue (NIC utilizes class based scheduling and DMA for deterministic packet transmissions, [0043], Kasichainula);
for each packet in the deterministic flow input queue, determine encapsulation information corresponding to the packet, wherein the encapsulation information at least comprises cyclic queue (CQ) queue information (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei); and
perform encapsulation for the packet based on the encapsulation information and store the encapsulated packet into a deterministic flow output queue (there are two output queues, best-effort for low priority and express for high priority packets, [0044], Kasichainula);
the output interface unit is configured to obtain a packet from the deterministic flow output queue, and based on the CQ queue information corresponding to the packet, store the packet into a CQ queue corresponding to the CQ queue information (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
the output interface unit is configured to determine a target CQ queue corresponding to a current scheduling cycle and send a packet in the target CQ queue to an external device within the current scheduling cycle (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
12. (Original) The network device of claim 11, wherein, the output forwarding and processing unit is further configured to:
after obtaining a packet, if the packet belongs to a best-effort flow, store the packet into a best-effort flow input queue;
for each packet in the best-effort flow input queue, perform hierarchical quality of service (HQOS) scheduling for the packet and store the HQOS scheduled packet into a best-effort flow output queue (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula);
the output interface unit is further configured to obtain the packet from the best-effort flow output queue and store the packet into a best-effort queue (BEQ) queue (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula);
after the output interface unit sends a packet in the target CQ queue to the external device within the current scheduling cycle, the output interface unit is further configured to:
if sending of the packet in the target CQ queue is finished and the current scheduling cycle still has a remaining time slice, send a packet in the BEQ queue to the external device within the remaining time slice of the current scheduling cycle (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula).
13. (Currently Amended) The network device of claim 11, wherein, the network device further comprises an input forwarding and processing unit;
wherein, the input forwarding and processing unit is configured to, after obtaining a packet, if the packet belongs to the deterministic flow, store the packet into the deterministic flow input queue; or,
if the packet belongs to the best-effort flow, store the packet into the best- effort flow input queue;
wherein a queue priority corresponding to the deterministic flow input queue is higher than a queue priority corresponding to the best-effort flow input queue, such that the input forwarding and processing unit preferentially processes the packet in the deterministic flow input queue (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula);
the input forwarding and processing unit is configured to, when processing the packet in the deterministic flow input queue, if the packet comprises CQ queue indication information, determine a CQ queue corresponding to the CQ queue indication information, otherwise, determine a CQ queue corresponding to the packet based on a timestamp corresponding to the packet, wherein the timestamp refers to a timestamp that the network device receives the packet (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
the input forwarding and processing unit is also configured to add CQ queue information corresponding to the CQ queue to the packet and send the packet to the output forwarding and processing unit such that the output forwarding and processing unit obtains the packet (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
14. (Original) The network device of claim 13, wherein when determining the CQ queue corresponding to the packet based on the timestamp corresponding to the packet, the input forwarding and processing unit is specifically configured to:
query for an egress interface based on forwarding information corresponding to the packet, and determine a plurality of CQ queues corresponding to the egress interface, wherein each of the CQ queues has a corresponding scheduling cycle (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
based on the timestamp corresponding to the packet, select a scheduling cycle corresponding to the timestamp from all scheduling cycles, and determine a CQ queue corresponding to the scheduling cycle (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4).
15. (Original) The network device of claim 13, wherein, the network device further comprises an input interface unit;
wherein, the input interface unit is configured to, after receiving a packet from the external device, determine whether the packet belongs to the deterministic flow or the best-effort flow (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
if the packet belongs to the deterministic flow, store the packet into the deterministic flow output queue, and if the packet belongs to the best-effort flow, store the packet into the best-effort flow output queue (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
the input interface unit is configured to, send a packet in the deterministic flow output queue to the input forwarding and processing unit through a third channel, such that the input forwarding and processing unit obtains the packet from the third channel (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
wherein the input forwarding and processing unit determines the packet obtained from the third channel belongs to the deterministic flow (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
the input interface unit is configured to send a packet in the best-effort flow output queue to the input forwarding and processing unit through a fourth channel, such that the input forwarding and processing unit obtains the packet from the fourth channel (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei);
wherein the input forwarding processing unit determines the packet obtained from the fourth channel belongs to the best-effort flow (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
Claim(s) 3 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kasichainula in view of Huawei as applied to claim 2 above, and further in view of Allen, U.S. Patent No. 8,130,650.
The combination of Kasichainula in view of Huawei teaches utilizing a CQ sorting method for sorting packets across a network. The combination does not teach utilizing a threshold when packets should be manipulated. However, Allen teaches utilizing a threshold. It would have been obvious to one skilled in the art at the time of filing to modify the combination of Kasichainula in view of Huawei to utilize the known technique of utilizing a threshold as taught by Allen in order to obtain the predictable result of mitigating traffic congestion.
The combination teaches:
3. (Original) The method of claim 2, wherein, there is a first channel and a second channel between the output interface unit and the output forwarding and processing unit;
obtaining, by the output interface unit, the packet from the deterministic flow output queue comprises:
obtaining, by the output interface unit, a packet from the deterministic flow output queue through the first channel (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula);
obtaining, by the output interface unit, the packet from the best-effort flow output queue comprises:
obtaining, by the output interface unit, a packet from the best-effort flow output queue through the second channel (determination is made between best-effort and express packet; packets are stored in respective data queues, see Figs. 3 and 4, Kasichainula);
wherein when a number of packets in the BEQ queue is greater than a first preset threshold, the output interface unit outputs a flow control signal for the second channel;
when a number of packets in the BEQ queue is less than a second preset threshold, the output interface unit cancels the flow control signal for the second channel;
when there is a flow control signal for the second channel, a packet transmission through the second channel is paused;
wherein the second preset threshold is less than or equal to the first preset threshold (the occupancy of a queue being greater than a threshold determines if best effort packets might be discarded, claim 1, Allen).
Claim(s) 4 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kasichainula in view of Huawei as applied to claim 2 above, and further in view of Cook, U.S. Patent No. 8,554,860.
The combination of Kasichainula in view of Huawei teaches utilizing a CQ sorting method for sorting packets across a network. The combination does not teach filtering a packet based on packet length. However, Cook teaches filtering a packet based on packet length. It would have been obvious to one skilled in the art at the time of filing to modify the combination of Kasichainula in view of Huawei to utilize the known technique of filtering a packet based on packet length as taught by Cook in order to obtain the predictable result of mitigating traffic congestion.
The combination teaches:
4. (Original) The method of claim 2, wherein sending, by the output interface unit, the packet in the BEQ queue to the external device within the remaining time slice of the current scheduling cycle comprises:
determining, by the output interface unit, a length of packets enabled to be sent within the remaining time slice, and if the length of packets is greater than a configured length, sending one packet in the BEQ queue to the external device within the remaining time slice of the current scheduling cycle;
if the length of packets is not greater than the configured length, stopping sending the packet in the BEQ queue to the external device within the remaining time slice of the current scheduling cycle (if packet length is greater than a threshold, priority header is removed from the packet and the message is forwarded over the best-effort port, col. 2, lines 62 – 67, Cook);
after sending the one packet in the BEQ queue to the external device, updating the remaining time slice of the current scheduling cycle and returning to determine the length of packets enabled to be sent within the updated remaining time slice (CSQF implementation sorts guaranteed QoS traffic and best effort traffic between separate queues, Fig.3 and Fig. 4, Huawei).
Claim(s) 9 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kasichainula in view of Huawei as applied to claim 8 above, and further in view of Sinha, U.S. Patent No. 9,985,861.
The combination of Kasichainula in view of Huawei teaches utilizing a CQ sorting method for sorting packets across a network. The combination does not teach utilizing an access control list. However, Sinha teaches utilizing an access control list. It would have been obvious to one skilled in the art at the time of filing to modify the combination of Kasichainula in view of Huawei to utilize the known technique of utilizing an access control list as taught by Sinha in order to obtain the predictable result of keeping the network secure.
The combination teaches:
9. (Original) The method of claim 8, wherein, determining, by the input interface unit, whether the packet belongs to the deterministic flow or the best-effort flow comprises:
analyzing out, by the input interface unit, a flow feature from the packet;
if the flow feature is matched with a deterministic flow feature in a configured access control list (ACL), determining the packet belongs to the deterministic flow; if the flow feature is not matched with the deterministic flow feature in the ACL, determining the packet belongs to the best-effort flow;
wherein the ACL comprises at least one deterministic flow feature (flow cache comprises the feature trace of an access control entry in an access control list, Sinha, claim 1).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PETER G SOLINSKY whose telephone number is (571)270-7216. The examiner can normally be reached M - Th, 6:30 A - 5:00 P.
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, Asad Nawaz can be reached at 571-272-3988. 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.
PETER G. SOLINSKY
Examiner
Art Unit 2463
/Peter G Solinsky/Primary Examiner, Art Unit 2463