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 .
This communication is in response to the amendment filed on 08/07/2026.
Claims 1-20 are pending and are rejected.
Response to Arguments
Applicant's arguments filed 08/07/2026 have been fully considered but they are not persuasive. Applicant’s is arguing in substance the following:Argument to claim 1 and 15: The prior art does not teach or suggest “receive first control information from one or more other edge devices in a distributed traffic engineering system”.
Response to the argument of claims 1 and 15: Magnouche teaches that agents can receive useful information from other agents to make decisions (see the rejection below). Thus, Magnouche teaches first control information received an edge device from other edge devices and Sharma teaches the distributed traffic engineering system.
Sharma teaches dynamically determining and updating priority queue levels for flows. In particular, Sharma teaches that an optimized priority queue level determines based at least on one or more QoS requirement and based on network state and other information. The priority queue level is updated based on the current workload in the switch ([0042], [0044]). Sarma also teaches that different priority queue levels are dynamically assigned to flows at different switches based on changing traffic load ([0037-0044]). Accordingly, Sharma teaches adjusting queuing parameters based on at least the SLA/QoS requirements and network state information. Magnouche supplies the distributed edge-to-edge control information and additional monitoring information. Therefore, including in the QoS/priority queue system of Sharma, the distributed edge-to-edge information exchange of Magnouche in obviously to a person of ordinary skill in the art. The combination of Sharma and Magnouche teach the limitation above.
Argument to claim 14: The prior art does not teach or suggest: “receive a help request from at least one edge device of the two or more edge devices in response to the SLA requirements”
Response to the argument of claim 14:
Sharma ([0017]) teaches that the QoS controller 120 send an update to the switch 101 to change rules at the switch 101. New local rules may be received in an instruction from the QoS controller 120 based on the metric report. Paragraph [0022] also teaches that the system 200 receives a QoS requirement for the flow and derives configuration specifications and configures the switches using the QoS controller 120 to accommodate the QoS requirement. Thus, Sharma teaches “send service level agreement (SLA) requirements for each flow group of the plurality of flow groups to two or more edge devices of the distributed traffic engineering system.” Paragraph [0017] further teaches that based on rules received from the QoS controller 120 and stored at the switch 101, the switch 101 may thereafter reliably forward each of the flows using a single path or multiple paths as defined in the rules. The switches 101, 111, hosts 202-208 correspond to two or more edge devices. However, Sharma does not teach the wording “edge devices”.
Shen ([0013] teaches the controller in a SD-WAN transmits the QoS policy to the plurality of aggregation edge routers; receiving, from a branch edge router of the plurality of branch edge routers, a first congestion indication indicating that bandwidth utilization on a wide area network (WAN) interface of the branch edge router exceeds a first threshold; determining an updated QoS policy based on the received TLOC publications and the first congestion indication to reduce congestion at the branch edge router. Thus, Shen teaches that based on the QoS policy received from the controller, the branch edge router responses to the controller with a congestion indicating that bandwidth utilization exceeds a threshold. Thus, the combination of Sharma and Shen teach the limitation above.
The rejection is maintained based on the reasons above.
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.
Claims 1, 3-8, 10-13, 15, and 17-20 are rejected under 35 U.S.C. 103 as being unpatentable over Sharma et al. (US 20110261831 A1), hereafter Sharma in view of Magnouche (Youcef ET AL: "Distributed Utility Maximization From the Edge in IP Networks).
Regarding claim 1, Sharma teaches an edge device for a distributed traffic engineering system with quality of service (QoS) control of a plurality of flow groups routed over a set of overlay links, wherein the edge device comprises:
a memory configured to store instructions; and one or more processors coupled to the memory and configured to execute the instructions to cause the edge device to ([0039] Commands and data from the processor are communicated over a communication bus. The computer system also includes a main memory):
receive one or more service-level agreement (SLA) requirements for the plurality
of flow groups from a network controller ([0022], fig. 2, the system 200 receives a QoS requirement for the flow and derives configuration specifications and configures the switches using the QoS controller 120 to accommodate the QoS requirement (e.g., bandwidth and delay thresholds) for the flow);
receive first control information from one or more other edge devices in the distributed traffic engineering system ([0022], fig.2, When the flow is to be routed in the network (from the host 202 to the host 208), the QoS controller 120 calculates resource allocation based on the database and performance models. Then, the QoS controller 120 installs a rate limiter in the flow's edge switch, and configures each priority queue level at each switch in the flow path, such as the switch 101, the switch 111, and the switch 121);
adjust a plurality of queuing parameters for the plurality of flow groups based on
at least one of the first control information, the monitoring information, or the one or more SLA requirements to obtain a plurality of adjusted queuing parameters ([0034] the switch may determine and update the optimized priority queue level of the flow at the switch relative to an optimized priority queue level of another flow at the switch. The switch may route the flow via the switch based on the updated optimized priority queue level of the flow at the switch. The updated priority queue level may be determined by the switch or the QoS controller).
Sharma does not explicitly teach
obtain monitoring information for the plurality of flow groups and the set of overlay links;
Magnouche teaches
receive first control information from one or more other edge devices (section 2A, edge devices are equipped with rate allocation agents and that each agent periodically receives network-state updates. Agents can receive useful information from other agents to make decisions including two aggregated-utility scalars that may be received form all the other agents when a Polyak step-size is used. The computation performed by each source device takes as input updated link-state information and optionally updated aggregated utilities received from other agents).
obtain monitoring information for the plurality of flow groups and the set of overlay links (section 2A, the link states contain link loads as feedback from past load balancing decisions. Link states can be related to physical links or overlay links. They may also include link capacities if they are not given a priori, or if they evolve over time because of some background traffics. Section C, the edge device retrieves from the local monitoring an update about the traffic demand in each tunnel).
It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention made to include in the Sharma disclosure, monitor information of flow group and set of overlay links, as taught by Magnouche. One would be motivated to do so to Our goal is to maximize the total network utility and push all the processing at the edge.
Regarding claims 3 and 16, Sharma and Magnouche teach all limitations of parent claims 2 and 16, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to receive, after sending the help request, a routing policy from the network controller ([0017] based on rules received from the QoS controller and stored at the switch, the switch may thereafter reliably forward each of the flows using a single path or multiple paths as defined in the rules).
Regarding claims 4 and 18, Sharma and Magnouche teach all limitations of parent claims 1 and 15, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to:
determine second control information based on the plurality of adjusted queuing parameters or the monitoring information and provide the second control information to the one or more other edge devices ([0017] The QoS controller 120 may asynchronously (i.e., independent of a flow setup request) send an update to the switch 101 to change rules at the switch 101).
Regarding claim 5, Sharma and Magnouche teach the edge device of claim 2, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to receive, from the network controller, one or more end points for the help request ([0014], fig. 1, the switch fabric 103 may include a high-speed transmission medium for routing packets between the ports 107a-n internally in the switch 101).
Regarding claims 6 and 19, Sharma and Magnouche teach all limitations of parent claims 1 and 15, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to further adjust the plurality of queuing parameters based on an SLA prediction model ([0022] the QoS controller 120 calculates resource allocation based on the database and performance models; [0034] The updated priority queue level may be determined by the switch or the QoS controller).
Regarding claim 7, Sharma and Magnouche teach the edge device of claim 1, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to forward traffic of each flow group of the plurality of flow groups over the set of overlay links ([0017] the switch may thereafter reliably forward each of the flows using a single path or multiple paths as defined in the rules; [0025] the QoS controller 120 dynamically computes the priority queue levels for the flow at each switch in the flow path, such as the switch 101, the switch 111, and the switch 121).
Regarding claims 8 and 20, Sharma and Magnouche teach all limitations of parent claims 2 and 16, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to further determine if the help request is required based on an SLA prediction model or based on whether the one or more SLA requirements are met ([0032] the optimized priority queue level of the flow at the switch 101 may be determined based on the QoS requirement for the flow).
Regarding claim 10, Sharma and Magnouche teach the edge device of claim 1, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to further adjust the plurality of queuing parameters based on a class-based queuing (CBQ) architecture.
Regarding claim 11, Sharma and Magnouche teach the edge device of claim 1, wherein Sharma further teaches the instructions, when executed by the one or more processors, further cause the edge device to determine a plurality of rate allocations based on a QoS optimization model ([0017] New local rules may be received in an instruction from the QoS controller 120 based on the metric report. For instance, a flow may be rate-limited depending on bit rate through other switches in the network).
Regarding claim 12, Sharma and Magnouche teach the edge device of claim 11, wherein Sharma further teaches the QoS optimization model includes at least one of the following constraints:
capacity of each overlay link of the set of overlay links is satisfied, an objective for fairness of rate allocations, or SLA violations, rate allocations, or rate violations ([0027] Through implementation of the priority queue mapping scheme 304, the network fabric convergence may be improved by providing automated and scalable QoS control for various flow types with varying QoS requirements or multiple tenants on single network with performance isolation requirements without need for over-provisioning the network or running the risk of QoS violations).
Regarding claim 13, Sharma and Magnouche teach the edge device of claim 11, wherein Sharma further teaches the QoS optimization model includes at least one of the following inputs:
one or more flow groups in the plurality of flow groups ([0016] a flow may be routed through other switches in the network),
one or more tunnels, wherein each of the one or more tunnels is defined by a first origin and a first destination,
the plurality of flow groups, wherein each flow group in the plurality of flow groups is defined by a class of traffic, a second origin, and a second destination,
a traffic demand of each flow group on each overlay link,
an SLA prediction model for each flow group on each overlay link,
an SLA requirement of each flow group, or
a penalty of demand violation of each flow group, or
wherein the QoS optimization model includes at least one of the following outputs:
a rate allocation of each flow group on each overlay link,
an SLA violation of each flow group on each overlay link,
a rate violation of each flow group on each overlay link ([0017] the QoS controller may place a timeout or expiration (in terms of seconds) or a limit (in terms of a number of flows) on the switch), or
an intermediate variable of each flow group on each overlay link to optimize
fairness according to a fairness objective.
Regarding claim 15, Sharma teaches a method of operating an edge device for a distributed traffic engineering system with Quality of Service (QoS) control of a plurality of flow groups routed over a set of overlay links, wherein the method comprises:
receiving one or more service-level agreement (SLA) requirements for the plurality of flow groups from a network controller ([0022] the system 200 receives a QoS requirement for the flow and derives configuration specifications and configures the switches using the QoS controller 120 to accommodate the QoS requirement (e.g., bandwidth and delay thresholds) for the flow);
receiving first control information from one or more other edge devices in the distributed traffic engineering system ([0022], fig.2, When the flow is to be routed in the network (from the host 202 to the host 208), the QoS controller 120 calculates resource allocation based on the database and performance models. Then, the QoS controller 120 installs a rate limiter in the flow's edge switch, and configures each priority queue level at each switch in the flow path, such as the switch 101, the switch 111, and the switch 121);
adjusting a plurality of queuing parameters for the plurality of flow groups based on the first control information, the monitoring information, and the one or more SLA requirements to obtain a plurality of adjusted queuing parameters ([0034] the switch may determine and update the optimized priority queue level of the flow at the switch relative to an optimized priority queue level of another flow at the switch. The switch may route the flow via the switch based on the updated optimized priority queue level of the flow at the switch. The updated priority queue level may be determined by the switch or the QoS controller).
Sharma does not explicitly teach
obtaining monitoring information for the plurality of flow groups and the set of overlay links;
Magnouche teaches
obtaining monitoring information for the plurality of flow groups and the set of overlay links (section 2A, the link states contain link loads as feedback from past load balancing decisions. Link states can be related to physical links or overlay links. They may also include link capacities if they are not given a priori, or if they evolve over time because of some background traffics. Section C, the edge device retrieves from the local monitoring an update about the traffic demand in each tunnel).
It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention made to include in the Sharma disclosure, monitor information of flow group and set of overlay links, as taught by Magnouche. One would be motivated to do so to Our goal is to maximize the total network utility and push all the processing at the edge.
Claims 2, 9, and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Sharma et al. (US 20110261831 A1), hereafter Sharma in view of Magnouche (Youcef ET AL: "Distributed Utility Maximization From the Edge in IP Networks) and further in view of Shen (US 20200413283 A1).
Regarding claims 2 and 16, Sharma and Magnouche teach all limitations of parent claims 1 and 15, Sharma does not explicitly teach wherein the instructions, when executed by the one or more processors, further cause the edge device to:
determine if a help request is required based on the monitoring information and the one or more SLA requirements; and
send, when the help request is required, the help request to the network controller.
Shen teaches
determine if a help request is required based on the monitoring information and the one or more SLA requirements ([0097] the branch edge router determines that bandwidth utilization on a WAN interface of the branch edge router exceeds a first threshold); and
send, when the help request is required, the help request to the network controller ([0098] the branch edge router transmits a first congestion indication to the SD-WAN controller).
It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention made to include in the Sharma disclosure, determine whether bandwidth utilization exceeded the threshold as a help request indicating a congestion, as taught by Shen. One would be motivated to do so to take an action to congestion avoidance with adaptive quality of service (QoS) policy enforcement from a SD-WAN controller.
Regarding claim 9, Sharma and Magnouche teach the edge device of claim 1, Sharma does not explicitly teach wherein the monitoring information comprises a measured throughput for each flow group of the plurality of flow groups or for each overlay link in the set of overlay links, and wherein the one or more processors execute the instructions to further cause the edge device to:
compare the measured throughput of each flow group with the one or more SLA requirements or with a plurality of rate allocations; and
send, when the measured throughput is not high enough to satisfy at least one of the one or more SLA requirements, a help request.
Shen teaches
compare the measured throughput of each flow group with the one or more SLA requirements or with a plurality of rate allocations ([0080] the SD-WAN controller may receive, from the branch edge router of the plurality of branch edge routers, a second congestion indication indicating that bandwidth utilization on the branch edge router WAN interface is below a threshold); and
send, when the measured throughput is not high enough to satisfy at least one of the one or more SLA requirements, a help request ([0083] the SD-WAN controller transmits the updated QoS policy to the plurality of aggregation edge routers).
It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention made to include in the Sharma disclosure, determine whether bandwidth utilization exceeded the threshold as a help request indicating a congestion, as taught by Shen. One would be motivated to do so to take an action to congestion avoidance with adaptive quality of service (QoS) policy enforcement from a SD-WAN controller.
Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over Sharma et al. (US 20110261831 A1), hereafter Sharma in view of Shen (US 20200413283 A1).
Regarding claim 14, Sharma teaches a network controller for a distributed traffic engineering system with quality of service (QoS) control of a plurality of flow groups routed over a set of overlay links, wherein the network controller comprises:
memory configured to store instructions ([0039] The computer system 500 also includes a main memory); and
one or more processors configured to execute the instructions to cause the network controller to ([0039] Commands and data from the processor are communicated over a communication bus):
send service level agreement (SLA) requirements for each flow group of the plurality of flow groups to two or more edge devices of the distributed traffic engineering system ([0022] the system 200 receives a QoS requirement for the flow and derives configuration specifications and configures the switches using the QoS controller 120 to accommodate the QoS requirement (e.g., bandwidth and delay thresholds) for the flow);
Sharma does not explicitly teach receive a help request from at least one edge device of the two or more edge devices in response to the SLA requirements; and
send a routing policy to the at least one edge device in response to the help request.
Shen teaches
receive a help request from at least one edge device of the two or more edge devices in response to the SLA requirements ([0077] the SD-WAN controller receives from a branch edge router of the plurality of branch edge routers, a congestion indication indicating that bandwidth utilization on a WAN interface of the branch edge router exceeds a first threshold.); and
send a routing policy to the at least one edge device in response to the help request ( [0079] the SD-WAN controller transmits the updated QoS policy to the plurality of aggregation edge routers).
It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention made to include in the Sharma disclosure, transmitting an update policy based on an indicating of congestion, as taught by Shen. One would be motivated to do so to take an action to congestion avoidance with adaptive quality of service (QoS) policy enforcement from a SD-WAN controller.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ANH NGUYEN whose telephone number is (571)270-0657. The examiner can normally be reached M-F.
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, Umar Cheema can be reached at 5712703037. 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.
/ANH NGUYEN/Primary Examiner, Art Unit 2458