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 .
Election/Restrictions
Applicant’s election without traverse of group II namely claims 5-16 in the reply filed on 4/13/2026 is acknowledged.
Claim Objections
Claims 5 and 11 objected to because of the following informalities: Claims recite “based on a first level…..and a transmit rate from the egress port and base on a second level…..”. Examiner suggests inserting a semicolon “;” between “port” and “and”. Appropriate correction is required.
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.
Claim(s) 5, 7, 8, 11, 13, 14 are rejected under 35 U.S.C. 103 as being unpatentable over “Liu” (US 2017/0048144) in view of Sears et al. (US 2024/0064104, hereinafter “Sears”).
For claims 5 and 11, Liu discloses An apparatus (see Liu Fig. 2) comprising:
a switch circuitry (The disclosed embodiments enable network switches, such as Ethernet switches, to detect traffic bursts and/or potential congestion and to redirect subsequent traffic in real time to avoid congested links; see Liu par. 0030) comprising:
at least one network interface and circuitry to (the packet processor and the traffic manager are implemented as application specific integrated circuits (ASICs), which may be fabricated on a same semiconductor die or on different semiconductor dies; see Liu par. 0030):
based on sharing of bandwidth of an egress port between a first traffic class, subject to congestion control based on utilization of a first queue associated with the first traffic class, and a second traffic class (After selecting an egress port for the packet, the packet may be enqueued into a transmission queue for transmission to the selected egress port. For example, each transmission queue may correspond to an egress port. The traffic manager monitors utilization levels of the transmission queues associated with the egress ports and notifies the packet processor of egress port congestion states, for example, based on transmission queue thresholds. In an embodiment, the traffic manager may employ different transmission queue thresholds for different traffic classes to provide different quality of service (QoS) to different traffic classes. As such, a particular egress ports may comprise different congestions states for different traffic classes; see Liu par. 0030):
based on a first level of the first queue associated with the first traffic class, cause a reduction in packet transmission rate of the first traffic class (At time T2, the activity graph 1440 shows that the network switch detects the burst of packets 1461 at the egress queue X, for example, via a traffic manager, such as the traffic manager 320, based on a CATS congestion-on threshold. When the usage of the egress queue X reaches the CATS congestion-on threshold, the traffic manager transitions the CATS state to a CATS congestion-on state and notifies the port resolver. However, the packets (e.g., inflight packets 1462) that are already in the pipeline for transmission over the egress port X may continue for a duration, for example, until time T4. At time T3, the activity graph 1420 shows that the port resolver stopped assigning packets to the egress queue X (e.g., no solid arrows over the duration 1463). At time T4, the in-flight packets 1462 in the egress queue X are drained and no new packets are enqueued into the egress queue X; see Liu par. 0063, 0038, 0040), and
based on a second level of the first queue and the second traffic class having available shared bandwidth (When an egress queue for a particular egress port 360 falls below the congestion-off threshold, the traffic manager 320 may set the congestion state for the particular egress port 360 to congestion-off. In some embodiments, the traffic manager 320 may employ different congestion-on and congestion-off thresholds for traffic flows with different traffic classes so that a particular QoS may be guaranteed for a particular traffic class; see Liu par. 0040), cause an increase in packet transmission rate of packets of the first traffic class (As shown in graph 1300, the network switch may employ an additional threshold 1 and an additional threshold 2 to perform further congestion controls. For example, when the egress queue usage reaches the additional threshold 1, the network switch may start to execute ECN or PFCC congestion controls to notify upstream hops. When the egress queue usage continues to increase to the additional threshold 2, the network switch may start to drop packets; see Liu par. 0060; At time TS, the activity graph 1440 shows that the traffic manager detects that the egress port X is free of congestion, and thus switches the CATS state to a CATS congestion-off state and notifies the port resolver. Subsequently, the activity graph 1420 shows that the port resolver resume packet queuing at the egress queue X, in which packets are enqueued into the egress queue X at time T6 after congestion is resolved; see Liu par. 0064), wherein the first level of the first queue is higher than the second level of the first queue (When the state machine 900 is operating in the CATS congestion-on state 920, the traffic manager continues to monitor the egress queue usage. When the egress queue usage falls below a CATS congestion-off threshold, the state machine 900 returns to the CATS congestion-off state 910 (shown by a solid arrow 942), where the CATS congestion on threshold is greater than the CATS-congestion-off threshold. Upon detection of the state transition to the CATS congestion-on state 920, the traffic manager notifies the packet processor so that the packet processor may resume assignment of the traffic to the particular egress port; see Liu par. 0050).
Liu does not explicitly disclose wherein the utilization of the first queue is based on a drain rate of the first queue and a transmit rate from the egress port. Sears discloses wherein the utilization of the first queue is based on a drain rate of the first queue and a transmit rate from the egress port (While in the second state, a sending rate of packets is reduced, at least in part to attempt to drain the queue of data packets contributed by the sending entity; see Sears par. 0005; If measurements indicate that a peer sender has contributed to the queued packets, then preferably the send rate is reduced to drain those packets from the system (i.e., from the queue(s)). Once the packets have been drained, the peer transitions to a probe state that modestly increases the send rate until the bandwidth needs are satisfied or until increasing queue sizes are encountered. If increased queue sizes are encountered, the congestion control portion of the algorithm is again instituted; see Sears par. 0062, 0084). It would have been obvious to the ordinary skilled in the art before the effective filing date to use Sears's arrangement in Liu's invention to avoid adding to congestion in the network, and protects the network against excessive ingress from the overlay servers and to leave the system free to perform error corrections without endangering the network or having a negative impact on performance (see Sears par. 0060).
For claims 7 and 13, Liu discloses The apparatus of claim 5, wherein the first level comprises a congested state of the first queue (The state machine 900 comprises a CATS congestion-off state 910, a CATS congestion-on state 920, and a congestion-X state 930. The state machine 900 may be applied to any egress port, such as the egress ports 260 and 360, of the network switch. The state machine 900 begins at the CATS congestion-off state 910. For example, the network switch comprises a traffic manager, such as the traffic manager 320, and a packet processor, such as the packet processor 310. The traffic manager monitors usages of an egress queue corresponding to an egress port over the duration of operation (e.g., powered on and active). When the egress queue usage (e.g., utilization level) reaches a CATS congestion-on threshold, the state machine 900 transition from the CATS congestion-off state 910 to the CATS congestion-on state 920 (shown by a solid arrow 941); see Liu par. 0049).
For claims 8 and 14, Liu discloses The apparatus of claim 5, wherein the second level comprises a non- congested state of the first queue (The state machine 900 comprises a CATS congestion-off state 910, a CATS congestion-on state 920, and a congestion-X state 930. The state machine 900 may be applied to any egress port, such as the egress ports 260 and 360, of the network switch. The state machine 900 begins at the CATS congestion-off state 910. For example, the network switch comprises a traffic manager, such as the traffic manager 320, and a packet processor, such as the packet processor 310. The traffic manager monitors usages of an egress queue corresponding to an egress port over the duration of operation (e.g., powered on and active). When the egress queue usage (e.g., utilization level) reaches a CATS congestion-on threshold, the state machine 900 transition from the CATS congestion-off state 910 to the CATS congestion-on state 920 (shown by a solid arrow 941); see Liu par. 0049).
Claim(s) 6 and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Liu and Sears, and further in view of Moshref Javadi et al. (US 2023/0336483, hereinafter “Moshref”).
For claims 6 and 12, the combination of Liu and Sears does not explicitly disclose The apparatus of claim 5, wherein the congestion control is based on one or more of: High Precision Congestion Control (HPCC) or Poseidon. Moshref discloses The apparatus of claim 5, wherein the congestion control is based on one or more of: High Precision Congestion Control (HPCC) or Poseidon (The CC function 324 (which we refer to as Poseidon) effects congestion control in response to data flow (or flow) at a bottleneck hop. As mentioned above, the bottleneck hop may be considered the hop that limits the rate of the flow as per max-min fair allocation parameters; see Moshref par. 0035-0036). It would have been obvious to the ordinary skilled in the art before the effective filing date to use Moshref's arrangement in Liu's invention to implement a congestion control protocol that exploits and extends in-network telemetry (INT) to address, for example, blind spots typically found in end-to-end algorithms and to realize low queuing delay, convergence to network-wide max-min fair bandwidth allocation (see Moshref par. 0004).
Claim(s) 9 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Liu and Sears, and further in view of Seely et al. (US 11,528,227, hereinafter “Seely”).
For claims 9 and 15, the combination of Liu and Sears does not explicitly disclose The apparatus of claim 5, wherein the circuitry is to determine the utilization of the first queue based on a depth of the first queue. Seely discloses The apparatus of claim 5, wherein the circuitry is to determine the utilization of the first queue based on a depth of the first queue (The traffic profiles can indicate at what point packets may start to be marked or discarded as the depth or utilization of the input queue increases; see Seely page 12 column 4 lines 29-31; As the depth or utilization of queue 146 increases, drop profile 152 indicates at what point traffic should be discarded. Drop profile 152 can include a configurable drop point 320, which indicates utilization 312 at which queue 146 should be congested; Seely page 14 column 8 lines 9-13). It would have been obvious to the ordinary skilled in the art before the effective filing date to use Seely's arrangement in Liu's invention to mitigate the conflicting effects of drop and multi-level congestion (MLC) traffic profiles (see Seely page 12 column 3 lines 33-35).
Claim(s) 10 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Liu and Sears, and further in view of Perla et al. (US 8,797,877, hereinafter “Perla”).
For claims 10 and 16, the combination of Liu and Sears does not explicitly disclose The apparatus of claim 5, wherein the circuitry is to determine the utilization of the first queue based on a percentage of line rate utilized by packets transmitted from the first queue. Perla discloses The apparatus of claim 5, wherein the circuitry is to determine the utilization of the first queue based on a percentage of line rate utilized by packets transmitted from the first queue (Rate profile 128 indicates a portion of the total port rate of an egress interface that is allocated to output queue 52. That is, a user may specify a bandwidth, in absolute or percentage value, of output queue 52 that is equal to some portion or all of the total bandwidth for the egress interface that corresponds to output queue 52; see Perla page 17 column 18 lines 14-19; a group of lower bits of TADR 126 may be significant for a rate profile that uses a small percentage of the total port rate of the egress interface for output queue 52. In another example, a group of upper bits of TADR 126 may be significant for a rate profile that uses a large percentage of the total port rate of the egress interface for output queue 52; see Perla page 18 column 20 lines 25-31). It would have been obvious to the ordinary skilled in the art before the effective filing date to use Perla's arrangement in Liu's invention to use drop precedence profile which may be an identifier that specifies one or more operations to process a network packet using congestion avoidance techniques (see Perla page 18 column 19 lines 16-20).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHAE S LEE whose telephone number is (571)272-8236. The examiner can normally be reached 8:30AM - 5:00PM.
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, Jeffrey Rutkowski can be reached at (571) 270-1215. 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.
/CHAE S LEE/Primary Examiner, Art Unit 2415