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 action is responsive to the Applicant’s amendments filed on 09/12/2025. Claims 1-20 remain pending in the application. Claims 1, 4-6, 9, 10, 13-15, and 18-19 have been amended. Any examiner’s note, objection, and rejection not repeated is withdrawn due to Applicant’s amendment.
Examiner’s Note
The Examiner cites particular columns, paragraphs, figures, and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may also apply. It is respectfully requested that, in preparing responses, the Applicant fully consider the references in its entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the Examiner.
Claim Rejections - 35 USC § 103
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, 9-10, 12, and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Ross et al. (US 12265459 B1) hereafter referred to as Ross in view of Milojicic et al. (US 20240036938 A1) hereafter referred to as Milojicic, further in view of Kumar et al. (US 11057274 B1) hereafter referred to as Kumar.
Regarding claim 1, Ross teaches:
A method for providing end-to-end monitoring to facilitate automated resource pool management in a cloud computing environment, the method being implemented by at least one processor, the method comprising: aggregating, by the at least one processor in real-time from an application programming interface gateway (Col. 10, lines 4-6; “the collector 304 may send data to the monitoring service 306 by invoking an API supported by the monitoring service”), a plurality of operating metrics (Col. 16, lines 1-7 and 12-17; “FIG. 5 is a flow diagram that illustrates an exemplary method of ingesting and aggregating span information to support multiple modalities of analysis, in accordance with implementations of the monitoring service disclosed herein. As mentioned in connection with FIG. 3, span information is received at the monitoring service 306 from the collector (e.g., the collector 504 in FIG. 5)”, where the performance of real time monitoring is disclosed in “The incoming spans are received and the metric data streams are generated by module 520 prior to the spans being sessionized. Because the metric time series are created without paying a time penalty associated with sessionization, they can be used to perform real-time monitoring and alerting.”);
parsing, by the at least one processor, the aggregated plurality of operating metrics (Col. 59, lines 18-22; “The parsing module 2534 determines information about incoming event data, where the information can be used to identify events within the event data. For example, the parsing module 2534 can associate a source type with the event data”, where the parsing module performs the parsing, and the incoming event data corresponds to the applicant’s aggregated plurality of operating metrics);
identifying, by the at least one processor, at least one threshold (Col. 46, lines 58-65; “Finally, the alert clearing threshold is set to be slightly smaller than the smallest of the minimum values, e.g., ‘y’ subtracted from min(m_1, . . . , m_n), wherein ‘y’ represents a numerical value greater than zero, such as 0.01. The alert clearing threshold represents a threshold on the maximal z-score over the current window such that when two (or more) points trigger alerts within the alert clearing threshold distance, the alerts are collapsed into a single alert”, where the identification of an alert clearing threshold corresponds to the applicant’s identification of at least one threshold);
comparing, by the at least one processor, the at least one metric with the corresponding at least one threshold (Col. 11, lines 37-44; “For example, as a broad-based correlation example, the metrics data may be used in a thresholding comparison to determine that there is an issue that needs attention, the trace data may be used to determine which component or microservice requires attention, and log data from the data ingestion and query system 326 may be used to determine exactly why the component or microservice needs attention”, where the thresholding comparison corresponds to the applicant’s comparing the metric with the corresponding threshold);
automatically determining, by the at least one processor, at least one remediation action based on a result of the comparing (Col. 21, lines 43-52; “The analysis system can provide alerts regarding the tags whose spans have relatively long duration. Long duration spans may be indicative of configuration problems at the instrumented systems. The analysis system may correct the p-value for the number of hypotheses tested, for example by multiplying the p-value by the total number of tags. This procedure defines a map from tags to non-negative real numbers. The analysis system sorts the tags by the associated p-value (e.g., in ascending order) and returns those with p-value less than or equal to some threshold, e.g., 0.01”, where the analysis system correcting the p-value based on tags with long durations corresponds to the determination of a remediation action based on a result of the comparing).
Ross does not teach a resource pool or latency metrics.
However, Milojicic teaches:
A resource pool (Paragraph 42; “In another example, a resource manager a software component that initiates reconfiguration of system resources (e.g., processors, memory, storage, etc.) by instructing the operating system plugin to do so and/or lower layers by instructing fabric manager. The resource manager may act based on specified policies provided by a system administrator. The resource manager may measure CPU, memory, storage, and network usage and traffic data. The resource manager may decide when to switch resource configurations (e.g., memory, processor, etc.) for particular software applications (e.g., to improve image processing, to improve user experience, etc.)”, where a person of ordinary skill in the art would recognize that reconfiguration of system resources would lead to the inclusion of a resource pool to pull system resources from);
And latency metrics (Paragraph 32; “In other examples, the workload may be defined by a pattern. For a system configuration, trigger engine 108 may identify latency in data transmissions that occur repeatedly in a pattern, where the number of data transmissions that are delayed in a predetermined period of time occur over a threshold value.”).
Ross and Milojicic are considered to be analogous to the claimed invention because they are both in the same field of resource management in cloud computing clusters. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross with Milojicic to have the aggregation and metrics encompass a resource pool and latency metrics. Motivation to perform the combination comes from the need to maintain quality of service metrics, reduce downtime, and support automated orchestration decisions based on real-time performance indicia, which would benefit modern cloud computing systems.
Ross in view of Milojicic does not teach automatically initiating, by the at least one processor in real-time, the at least one remediation action; wherein the at least one remediation action includes automatically disabling network traffic to at least one of the at least one resource pool.
However, Kumar teaches:
automatically initiating, by the at least one processor in real-time, the at least one remediation action (Col. 7, line 54 – Col. 8, line 3; “In response to risk comparator 230 determining, based on the risk score and risk threshold, that the risk of failure, improper execution, and/or degraded performance for xNF 120 is too great, risk comparator 230 may activate alerting component 250” corresponds to the automatically initiating a remediation action because the system automatically triggers an alerting component upon detecting a threshold condition. Kumar further teaches that the alerting component “may provide the set of recommendations, from analytics and recommendation component 220 to other various entities, that identify the compliance variances that prevented the deployment” and that “the set of recommendations may include actions by which xNF originator 115 may rectify each of the identified compliance variances”, where the processor automatically provides corrective guidance in real time, satisfying the real-time initiation aspect of the claim).
wherein the at least one remediation action includes automatically disabling network traffic to at least one of the at least one resource pool (Col. 21, lines 26-53; “In some embodiments, the staggered deployment may involve activating second version of MME-xNF 120-4 on an unused fourth set of resources at site 710 before deactivating first version of MME-xNF 120-1 on the first set of resources at site 710, and modifying a routing configuration so that traffic that was previously routed to the first set of resources (e.g., first version of MME-xNF 120-1) is routed to the fourth set of resources (e.g., second version of MME-xNF 120-4)” and “Accordingly, xNF validation system 105 may allow first version of DU-xNF 120-2 to continue execution on resources at site 730 and may prevent the deployment of second version of DU-xNF 120-5”. The automated modification of routing configuration prevents network traffic from reaching the first resource pool, thereby corresponding to an automated disabling of network traffic to the resource pool. Additionally, when the validation system determines that deployment of a second version should be prevented, the system blocks deployment and network activation, further corresponding to automated disabling of network traffic to the affected resource pool.).
Ross, Milojicic, and Kumar are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Ross in view of Milojicic to incorporate the teachings of Kumar and automatically disable network traffic to resource pools because they would have found a predictable response to isolate problematic resources to be to isolate the offending resources to prevent service degradation and cascading failures, with the goal of improving system reliability.
Claim 10 contains similar limitations as those of claim 1, directed towards a computing device, additionally reciting a processor, a memory, and a communication interface coupled to each of the processor and memory. Ross teaches:
a processor; a memory; and a communication interface coupled to each of the processor and the memory (Col. 53, lines 41-49; “The computing device 2404 is an electronic device having one or more processors and a memory capable of storing instructions for execution by the one or more processors. The computing device 2404 can further include input/output (I/O) hardware and a network interface. Applications executed by the computing device 2404 can include a network access application 2406, such as a web browser, which can use a network interface of the client computing device 2404 to communicate, over a network”).
Claim 10 is rejected for similar reasons as those of claim 1.
Claim 19 contains similar limitations as those of claim 1, directed towards a non-transitory computer readable storage medium, additionally reciting a non-transitory computer readable storage medium storing instructions. Ross teaches:
A non-transitory computer readable storage medium storing instructions (Col. 55, lines 58-59; “The program code for the indexer 2532 can be stored on a non-transitory computer-readable medium”).
Claim 19 is rejected for similar reasons as those of claim 1.
Regarding claim 3, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Milojicic teaches:
wherein the at least one latency metric corresponds to a communication time delay in a network flow of the at least one resource pool, the at least one resource pool relating to an application instance in the cloud computing environment (Paragraph 32; “In other examples, the workload may be defined by a pattern. For a system configuration, trigger engine 108 may identify latency in data transmissions that occur repeatedly in a pattern, where the number of data transmissions that are delayed in a predetermined period of time occur over a threshold value. In another example, trigger engine 108 may identify a range contention that is greater than a threshold value, or bandwidth is measured less than a gigabit per second threshold value. In a range contention (e.g., relating to access to a memory range from different nodes), the trigger engine 108 may trigger a reconfiguration of a switch system (e.g., the currently configured switch system 140 of FIG. 1) from a standard-scale memory to a large-scale shared memory configuration, which may be more optimal for the shared memory access patterns”, where the measurable delay corresponds to the applicant’s latency metric, and the delayed data transmissions corresponding to the applicant’s communication time delay. A person of ordinary skill in the art would recognize that bandwidth contention and shared memory systems would logically be part of a network of systems).
Claim 12 contains the same limitations as those of claim 3, directed towards a computing device. Claim 12 is rejected for similar reasons as those of claim 3.
Regarding claim 9, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Ross teaches:
aggregating, by the at least one processor, information that corresponds to at least one from among the at least one resource pool, the plurality of operating metrics, the at least one latency metric, the at least one threshold, or the at least one remediation action (Col. 16, lines 1-7; “FIG. 5 is a flow diagram that illustrates an exemplary method of ingesting and aggregating span information to support multiple modalities of analysis, in accordance with implementations of the monitoring service disclosed herein. As mentioned in connection with FIG. 3, span information is received at the monitoring service 306 from the collector (e.g., the collector 504 in FIG. 5).”, where the span information corresponds to the applicant’s plurality of operating metrics);
generating, by the at least one processor, at least one graphical representation of the aggregated information, the at least one graphical representation corresponding to a dashboard that includes the aggregated information (Col. 10, lines 20-31; “For example, the query engine and reporting system 324 within the monitoring service 306 may be configured to generate reports, render graphical user interfaces (GUIs) and/or other graphical visualizations to represent the trace and span information received from the various clients. The query engine and reporting system 324 may, for example, interact with the instrumentation analysis system 322 to generate a visualization, e.g., a histogram or an application topology graph (referred to interchangeably as a “service graph” or a “service map” herein) to represent information regarding the traces and spans received from a client”, where the generation of a graphical visualization corresponds to the applicant’s generating at least one graphical representation, the GUI corresponding to the applicant’s dashboard, and the span information corresponds to the applicant’s aggregated information);
and displaying, by the at least one processor via a graphical user interface, the at least one graphical representation (Col. 10, lines 20-31; “For example, the query engine and reporting system 324 within the monitoring service 306 may be configured to generate reports, render graphical user interfaces (GUIs) and/or other graphical visualizations to represent the trace and span information received from the various clients. The query engine and reporting system 324 may, for example, interact with the instrumentation analysis system 322 to generate a visualization, e.g., a histogram or an application topology graph (referred to interchangeably as a “service graph” or a “service map” herein) to represent information regarding the traces and spans received from a client”, where generating a visualization corresponds to the applicant’s displaying a graphical representation, see FIG. 8).
Claim 18 contains the same limitations as those of claim 9, directed towards a computing device. Claim 18 is rejected for similar reasons as those of claim 9.
Claims 2, 4-6, 11, and 13-15 are rejected under 35 U.S.C. 103 as being unpatentable over Ross in view of Milojicic, further in view of Kumar, further in view of Higginson et al. (US 20230205664 A1) hereafter referred to as Higginson.
Regarding claim 2, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Milojicic teaches:
A resource pool (Paragraph 42; “In another example, a resource manager a software component that initiates reconfiguration of system resources (e.g., processors, memory, storage, etc.) by instructing the operating system plugin to do so and/or lower layers by instructing fabric manager. The resource manager may act based on specified policies provided by a system administrator. The resource manager may measure CPU, memory, storage, and network usage and traffic data. The resource manager may decide when to switch resource configurations (e.g., memory, processor, etc.) for particular software applications (e.g., to improve image processing, to improve user experience, etc.)”, where a person of ordinary skill in the art would recognize that reconfiguration of system resources would lead to the inclusion of a resource pool to pull system resources from);
and latency metrics (Paragraph 32; “In other examples, the workload may be defined by a pattern. For a system configuration, trigger engine 108 may identify latency in data transmissions that occur repeatedly in a pattern, where the number of data transmissions that are delayed in a predetermined period of time occur over a threshold value.”).
Ross in view of Milojicic further in view of Kumar does not teach generating an email alert with information, identifying a user, and transmitting an email alert to the user. However, Higginson teaches:
generating, by the at least one processor, at least one email alert, the at least one email alert including information that relates to the metrics (Paragraph 73; “The plot additionally includes representations of one or more thresholds for metrics and/or forecasted values of metrics from a time-series model for the corresponding entity. When the forecasted values violate a given threshold, the user interface displays highlighting, coloring, shading, and/or another indication of the violation as a prediction of a future anomaly or issue in the entity's use of the monitored systems. In another example, monitoring module 131 may generate an alert, notification, email, and/or another communication of the predicted anomaly to an administrator of the monitored systems to allow the administrator to take preventive action (e.g., allocating and/or provisioning additional resources for use by the entity before the entity's resource utilization causes a failure or outage)”, where the generation of an email to communicate the predicted anomaly including the predicted anomaly in the monitored system corresponds to the applicant’s generating an email alert including information that relates to the metrics);
identifying, by the at least one processor, at least one responsible user (Paragraph 73; “When an anomaly is predicted in metrics for a given entity, monitoring module 131 communicates the predicted anomaly to one or more users involved in managing use of the monitored systems by the entity.”, where the monitoring module communicating the anomaly to a user involved in managing the monitored systems corresponds to identification of the responsible user(s));
and transmitting, by the at least one processor, the at least one email alert to the at least one responsible user (Paragraph 73; “In another example, monitoring module 131 may generate an alert, notification, email, and/or another communication of the predicted anomaly to an administrator of the monitored systems to allow the administrator to take preventive action”, where a person of ordinary skill in the art would recognize that the generation and communication of a predicted anomaly would result in transmittal of the alert).
Ross, Milojicic, Kumar, and Higginson are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross in view of Milojicic further in view of Kumar with Higginson to generate an email alert containing metric information, identify a user to send the email to, and transmit the email alert to the user. A person of ordinary skill in the art would recognize the need for notifying relevant administrators in the case of the possibility of or complete failure of important systems and would further recognize that email would be one method to communicate such events.
Claim 11 contains the same limitations as those of claim 2, directed towards a computing device. Claim 11 is rejected for similar reasons as those of claim 2.
Regarding claim 4, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Ross teaches:
aggregating, by the at least one processor, historical data for each of the at least one resource pool, the historical data including persisted information that relates to the plurality of operating metrics (Col. 16, lines 28-34; “In addition to a Trace ID, each trace also comprises a time-stamp; using the time-stamps and the Trace IDs, the sessionization module 506 creates traces 508 from the incoming spans in real time and sessionizes them into discrete time windows. For example, the sessionization process may consolidate traces (from spans) within a first time window (associated with time window Y 580)”, where the consolidation of incoming spans in real time corresponds to the applicant’s aggregation of historical data, and the plurality of operating metrics are further disclosed in Col. 21, lines 4-12, “In one implementation, the aggregation module 724 may, for example, perform aggregations on the various metric time series to provide real-time monitoring of certain higher priority endpoints in the application. For example, aggregations may be performed to determine request, error and latency metrics for certain designated services. In order to do that, the aggregation module 724 may, for example, aggregate values across all span identities that are associated with the designated service.”);
identifying, by the at least one processor, at least one failure pattern based on the aggregated historical data (Col. 37, line 64 – Col. 38, line 2; “Implementations of the monitoring platform disclosed herein (e.g., monitoring service 306) also allow clients to track the root cause of a failure within a workflow (that is associated with a trace). The failure may, for example, have resulted in an error or possibly a degraded response being returned to a client in response to a request”, where the tracking of a root cause of a failure associated with a trace corresponds to the applicant’s identifying a failure pattern based on aggregated historical data).
Milojicic teaches:
A resource pool (Paragraph 42; “In another example, a resource manager a software component that initiates reconfiguration of system resources (e.g., processors, memory, storage, etc.) by instructing the operating system plugin to do so and/or lower layers by instructing fabric manager. The resource manager may act based on specified policies provided by a system administrator. The resource manager may measure CPU, memory, storage, and network usage and traffic data. The resource manager may decide when to switch resource configurations (e.g., memory, processor, etc.) for particular software applications (e.g., to improve image processing, to improve user experience, etc.)”, where a person of ordinary skill in the art would recognize that reconfiguration of system resources would lead to the inclusion of a resource pool to pull system resources from).
Ross in view of Milojicic further in view of Kumar does not teach using at least one model, determining a threshold based on a failure pattern, or associating the determined threshold with a resource pool, wherein the model includes a machine learning model, mathematical model, process model, or a data model.
However, Higginson teaches:
wherein the model includes a machine learning model, mathematical model, process model, or a data model (Paragraph 134; “According to an alternative embodiment, the system applies a machine learning model to time-series data to identify a threshold for a particular entity of the computing system.”);
determining, by the at least one processor, the at least one threshold (Paragraph 133; “The system may select the thresholds according to characteristics of the processors.”);
and associating, by the at least one processor, the determined at least one threshold with the corresponding at least one resource pool, wherein the at least one model includes at least one from among a machine learning model, a mathematical model, a process model, or a data model (Paragraph 133; “The system may select the thresholds according to characteristics of the processors. For example, one processor may have a higher processing capacity than the other processor. Accordingly, the threshold for one processor may be higher than for the other processor”, where individual processors correspond to the applicant’s resource pools).
Ross, Milojicic, Kumar and Higginson are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross in view of Milojicic further in view of Kumar with Higginson to use at least one model, determine a threshold, and associate the determined threshold with a corresponding resource pool. A person of ordinary skill in the art would recognize that traditional rule-based systems may fail to capture dynamic relationships between metrics and resource performance, whereas a machine learning model and other types of models) would be able to more effectively identify thresholds that indicate optimal or degraded states, supporting real-time adaptability and intelligent decision making.
Claim 13 contains the same limitations as those of claim 4, directed towards a computing device. Claim 13 is rejected for similar reasons as those of claim 4.
Regarding claim 5, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Milojicic teaches:
latency metrics (Paragraph 32; “In other examples, the workload may be defined by a pattern. For a system configuration, trigger engine 108 may identify latency in data transmissions that occur repeatedly in a pattern, where the number of data transmissions that are delayed in a predetermined period of time occur over a threshold value.”).
a threshold (Paragraph 32; “trigger engine 108 may identify latency in data transmissions that occur repeatedly in a pattern, where the number of data transmissions that are delayed in a predetermined period of time occur over a threshold value. In another example, trigger engine 108 may identify a range contention that is greater than a threshold value, or bandwidth is measured less than a gigabit per second threshold value”).
Ross in view of Milojicic further in view of Kumar does not teach determining a failure condition, or determining a failure level for the failure condition corresponding to a criticality of the failure condition based on a predetermined guideline; or wherein the failure condition occurs as a result of at least one of a noisy neighbor incident, a repave activity incident, a router hung state incident, a network related incident, or a general stability incident; wherein the failure level is included in a range of intensity values that correspond to partial failures and a complete failure.
However, Higginson teaches:
determining, by the at least one processor for each of the at least one resource pool, a failure condition (Paragraph 124; “When the forecasted values violate a given threshold, the user interface displays highlighting, coloring, shading, and/or another indication of the violation as a prediction of a future anomaly or issue in the entity's use of the monitored systems. In another example, monitoring module may generate an alert, notification, email, and/or another communication of the predicted anomaly to an administrator of the monitored systems to allow the administrator to take preventive action (e.g., allocating and/or provisioning additional resources for use by the entity before the entity's resource utilization causes a failure or outage).”, where the predicted anomaly causing a failure corresponds to the applicant’s failure condition, and the entity corresponds to the applicant’s resource pool);
and determining, by the at least one processor, a failure level for the failure condition, the failure level corresponding to a criticality of the failure condition according to a predetermined guideline (Paragraphs 132, 147-148; “In another example, the workload processed by currently configured switch system 140 may be identified as a workload value and may be compared to a quality of scaling (QoSc) characteristics or other guidelines that are set. When the value fails to exceed the QoSc characteristic (e.g., the threshold value), the workload may be determined to be delayed or hindered because of it (which can activate a reconfiguration of currently configured switch system 140 later in the process). For example, the QoSc characteristics may correspond with multiple dimensions, from characteristics such as latency or bandwidth values for hardware, to end-to-end characteristics for hardware, operating system, firmware applications, software, and other components of the currently configured switch system”. Further, “the system determines whether, in a set of time-series data… a correlation exists between an operation of the node 713 and a reduced performance of the node 712 exceeding 10%”. The teachings of the three paragraphs explicitly provide a range of intensity values for the failure level by measuring the degree and frequency of performance deviations across multiple metrics).
wherein the failure condition occurs as a result of at least one of a noisy neighbor incident, a repave activity incident, a router hung state incident, a network related incident, or a general stability incident (Paragraph 98; “For example, a sibling node in a node cluster may be susceptible to frequent communication failures which may result in periodic workflow increases to a target node as a leader node redirects tasks from the sibling node to the target node”, where a communication failure represents a type of network failure because it arises from a disruption in the ability for a network to successfully transmit/receive data.);
wherein the failure level is included in a range of intensity values that correspond to partial failures and a complete failure (Paragraphs 147-148; “In particular, the system determines whether, in a set of time-series data associated with a week-long time period of hourly time intervals, a correlation exists between an operation of the node 713 and a reduced performance of the node 712 exceeding 10%”, where “the resource management system 730 may determine that the node 713 affects the node 712 at a level exceeding the threshold level” performs measurements as to how much the workload on the sibling node reduces the performance of the target node, i.e. a 10% degradation threshold. Any degradation above the threshold represents a partial failure condition where the node is functioning but impaired. By definition, this same performance impact metric scales up to 100% degradation which would reflect complete failure.).
Ross, Milojicic, Kumar, and Higginson are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross in view of Milojicic further in view of Kumar with Higginson to determine a failure condition based on the latency metric and threshold, and determine a failure level corresponding to a criticality of the condition according to a predetermined guideline. A person of ordinary skill in the art would recognize that identifying a failure condition alone may not be sufficient to effectively respond to failures. Understanding of when the failure becomes critical allows systems to differentiate between minor issues and those that pose significant risks to operations. Associating such a failure level with a predetermined guideline, such as uptime requirements, supports automated fault handling, thus improving system resilience. A person of ordinary skill in the art would have been further motivated to incorporate failure conditions such as network-related incidents because they are a known category of operational incidents that may disrupt distributed systems. Expanding the failure criteria to cover predictable incident types would have been an obvious and logical design decision to improve robustness and reduce downtime with the expected benefit of broader fault detection. A person of ordinary skill in the art would have further been motivated to express failure conditions as a range of intensity values spanning partial to complete failure because systems routinely experience degradation at varying severities and representing failure on a continuum would have been a predictable way to enable graded remediation strategies rather than binary responses, yielding the expected benefit of more robust and adaptable system management.
Claim 14 contains the same limitations as those of claim 5, directed towards a computing device. Claim 14 is rejected for similar reasons as those of claim 5.
Regarding claim 6, Ross in view of Milojicic, further in view of Kumar, further in view of Higginson teach the method of claim 5. Higginson teaches:
a failure level (Paragraph 132; “In another example, the workload processed by currently configured switch system 140 may be identified as a workload value and may be compared to a quality of scaling (QoSc) characteristics or other guidelines that are set. When the value fails to exceed the QoSc characteristic (e.g., the threshold value), the workload may be determined to be delayed or hindered because of it (which can activate a reconfiguration of currently configured switch system 140 later in the process). For example, the QoSc characteristics may correspond with multiple dimensions, from characteristics such as latency or bandwidth values for hardware, to end-to-end characteristics for hardware, operating system, firmware applications, software, and other components of the currently configured switch system”. Failure level is derived from multiple QoS characteristics, therefore a person of ordinary skill in the art would be motivated to act on those conditions as a failure level);
using at least one model (Paragraph 134; “According to an alternative embodiment, the system applies a machine learning model to time-series data to identify a threshold for a particular entity of the computing system.”).
Kumar teaches:
determining, by the at least one processor using at least one model, the at least one remediation action, including at least one from among an alerting action and a corrective action (Col. 7, line 54 – Col. 8, line 3; “In response to risk comparator 230 determining, based on the risk score and risk threshold, that the risk of failure, improper execution, and/or degraded performance for xNF 120 is too great, risk comparator 230 may activate alerting component 250. Alerting component 250 may notify xNF originator 115 and/or other entities of the failed deployment. Alerting component 250 may provide the set of recommendations, from analytics and recommendation component 220 to other various entities, that identify the compliance variances that prevented the deployment. The set of recommendations may prioritize the compliance variances to identify the variances that had the greatest impact with respect to preventing xNF 120 deployment (e.g., the greatest contribution to the risk score). In some embodiments, the set of recommendations may include actions by which xNF originator 115 may rectify each of the identified compliance variances”, where the recommendation component recommends actions to rectify the compliance variances corresponding to the applicant’s determining a remediation action, the alerting component corresponding to the applicant’s alerting action, and a recommendation in the set of recommendations corresponding to the applicant’s corrective action);
identifying, by the at least one processor using the plurality of operating metrics, an amount of the at least one resource pool that satisfies a predetermined operating requirement, the predetermined operating requirement relating to a minimum operating capacity of the cloud computing environment (Col. 8, lines 26-29; “For instance, deployment of xNF 120 may include deployment component 240 locating a sufficient amount of configurable hardware resources for executing the network function of xNF 120”, where the sufficient amount of configurable hardware resources corresponds to the applicant’s amount of the at least one resource pool that satisfies a predetermined operating requirement relating to a minimum operating capacity of the cloud computing environment as disclosed in Col. 2, lines 43-47; “The set of configurable hardware resources may, in some embodiments, be implemented by a virtualized system (such as a “cloud” computing platform), a set of discrete hardware resources, and/or some other suitable set of hardware resources.”);
validating, by the at least one processor, the at least one remediation action based on the identified amount, wherein the alerting action corresponds to an automated notification of a potential failure as determined by the at least one model (Col. 9, lines 65-67; “Prior to deployment, the new or updated xNFs 120 may be provided to validation component 210 for feature compliance validation”, corresponding to the validation of the remediation action, where the alerting action of an automated notification of potential failure is disclosed in Col. 7, lines 54-63, “In response to risk comparator 230 determining, based on the risk score and risk threshold, that the risk of failure, improper execution, and/or degraded performance for xNF 120 is too great, risk comparator 230 may activate alerting component 250. Alerting component 250 may notify xNF originator 115 and/or other entities of the failed deployment. Alerting component 250 may provide the set of recommendations, from analytics and recommendation component 220 to other various entities, that identify the compliance variances that prevented the deployment.”);
and wherein the corrective action corresponds to the automatically disabling of the network traffic to the at least one of the at least one resource pool (Col. 21, lines 26-39; “xNF validation system 105 may perform a staggered deployment of second version of MME-xNF 120-4. In some embodiments, the staggered deployment may involve replacing first version of MME-xNF 120-1 on one device before replacing first version of MME-xNF 120-1 on another device. In some embodiments, the staggered deployment may involve activating second version of MME-xNF 120-4 on an unused fourth set of resources at site 710 before deactivating first version of MME-xNF 120-1 on the first set of resources at site 710, and modifying a routing configuration so that traffic that was previously routed to the first set of resources (e.g., first version of MME-xNF 120-1) is routed to the fourth set of resources (e.g., second version of MME-xNF 120-4)”, where the deactivation of the first version of the MME-xNF on the first set of resources and rerouting of traffic corresponds to the applicant’s corrective action corresponding to the automated disabling of network traffic to at least one network pool).
Claim 15 contains the same limitations as those of claim 6, directed towards a computing device. Claim 15 is rejected for similar reasons as those of claim 6.
Claims 7 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Ross in view of Milojicic, further in view of Kumar, further in view of Higginson, further in view of Tang et al. (US 10409642 B1) hereafter referred to as Tang.
Regarding claim 7, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Milojicic teaches:
A request with instructions corresponding to a remediation action (Paragraph 36; “In other examples, the trigger notification may correspond with a request for reconfiguration from a user device”).
Kumar teaches:
confirming, by the at least one processor, that the at least one remediation action is completed (Col. 21, lines 54-55; “xNF validation system 105 may successfully validate (at 752) second version of CU-UP-xNF 120-6”, validation of the new second version of the system corresponding to confirming that the remediation was completed).
Ross in view of Milojicic further in view of Kumar does not teach generating a request; or transmitting a request to a network API that manages data flow for the resource pool.
However, Higginson teaches:
generating, by the at least one processor, at least one request (Paragraphs 160 and 161; “The graph 775 includes a visual indicator 776 of a portion of the predicted time-series workload data in which a workload for one or both of the nodes 712 and 713 will exceed a threshold. The system specifies the threshold as corresponding to an anomaly, such as a metric measuring processing capacity that exceeds a threshold processing capacity”, and in response, “Based on the data indicated in the graph 775, an operator interacts with the user interface 750 to generate instructions 777 for reconfiguring the computing system 710. For example, the instructions 777 may include instructions to add one or more additional nodes to the node cluster, to redirect particular requests from a particular client to a different node in the node cluster, or to schedule replacement of a node type of a node in the node cluster to another node type with improved node attributes”, where the generation of instructions corresponds to the applicant’s generating at least one request);
transmitting, by the at least one processor, the at least one request to a network application programming interface (Paragraph 166; “The requests are communicated through an interface, such as a client interface (such as a web browser), a program interface, or an application programming interface (API).”, where the communication through an API corresponds to the applicant’s transmittal through an interface such as an API).
Ross, Milojicic, Kumar, and Higginson are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross in view of Milojicic further in view of Kumar with Higginson to generate a request with instructions corresponding to a remediation action and transmit the request to a network API. Doing so would enable modular, standardized communication between distributed system components, allowing for abstraction and interoperability. A person of ordinary skill in the art would find these design decisions to be standard principles in cloud-based architecture.
Ross in view of Milojicic further in view of Kumar further in view of Higginson further in does not teach data flow or a response from the network API.
However, Tang teaches:
Data flow (Col. 20, lines 16-18; “the console 400 allows the customer to select different load metrics 402, such as the load metric of load balancing requests per second.”, where load metrics such as requests per second are a direct result of observing and analyzing the flow of data across system components);
And a response from the network application programming interface (Col. 11, lines 13-16; “The scaling service backend 328 may receive and process scaling requests (e.g., via a control plane) and create, read, update, and delete in response to corresponding API requests”).
Ross, Milojicic, Kumar, Higginson, and Tang are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross in view of Milojicic further in view of Kumar further in view of Higginson with Tang to have the API manage data flow and receive responses from the API. Allowing the API to manage data flow ensures controlled and predictable transmission of information, whereas receiving responses from an API would allow for real-time feedback, status monitoring, and error handling, which a person of ordinary skill in the art would recognize as fundamental to scalable system architectures.
Claim 16 contains the same limitations as those of claim 7, directed towards a computing device. Claim 16 is rejected for similar reasons as those of claim 7.
Claims 8 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Ross in view of Milojicic, further in view of Kumar, further in view of Bhat et al. (US 9942351 B2) hereafter referred to as Bhat.
Regarding claim 8, Ross in view of Milojicic further in view of Kumar teach the method of claim 1. Ross teaches:
monitoring, by the at least one processor, the at least one resource by using the plurality of operating metrics (Col. 8, lines 23-26; “the trace data generated by the services may be collected and analyzed to monitor and troubleshoot the microservices-based applications generating the trace data”, where the trace data generated by the services corresponds to the applicant’s plurality of operating metrics).
Milojicic teaches:
A resource pool (Paragraph 42; “In another example, a resource manager a software component that initiates reconfiguration of system resources (e.g., processors, memory, storage, etc.) by instructing the operating system plugin to do so and/or lower layers by instructing fabric manager. The resource manager may act based on specified policies provided by a system administrator. The resource manager may measure CPU, memory, storage, and network usage and traffic data. The resource manager may decide when to switch resource configurations (e.g., memory, processor, etc.) for particular software applications (e.g., to improve image processing, to improve user experience, etc.)”, where a person of ordinary skill in the art would recognize that reconfiguration of system resources would lead to the inclusion of a resource pool to pull system resources from).
Ross in view of Milojicic further in view of Kumar does not teach determining that a disabled resource pool is operational according to predetermined criteria or reintegrating the disabled resource pool back into the cloud computing environment.
However, Bhat teaches:
determining, by the at least one processor, that at least one disabled resource pool is operational according to predetermined criteria (Col. 2, lines 51-61; “In depicted distributed data processing environment 100, request program 120 resides on server 102 and enables and disables individual execution environments in a hybrid application server. In one embodiment, request program 120 receives a request from a user to access an application, and request program 120 uses application dependency framework and individual application context roots to determine the list of execution environments which are needed for a given application. Request program 120 identifies probable cluster members based on the determined list of execution environments”, where the execution environment begins disabled and is determined to be sufficiently operational, corresponding to the applicant’s predetermined criteria, to perform a request from a user to access an application, corresponding to the applicant’s determining that a disabled resource pool is operational);
and reintegrating, by the at least one processor, the at least one disabled resource pool back into the cloud computing environment (Col. 2 line 63 – Col. 3 line 1; “In an embodiment, request program 120 enables the execution environments that are required for the application if the execution environments are not running in the identified cluster member and routes the request to the identified cluster once the environment is enabled”, where the enabling of execution environments in the identified cluster corresponds to the applicant’s reintegration of the disabled resource pool back into the cloud computing environment).
Ross, Milojicic, Kumar, and Bhat are considered to be analogous to the claimed invention because they are in the same field of resource management in cloud computing systems. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Ross in view of Milojicic further in view of Kumar with Bhat to determine that a disabled resource pool is operational according to predetermined criteria and reintegrate the disabled resource pool back into the cloud environment. A person of ordinary skill in the art would be motivated to do so in order to maximize resource utilization. Assessing the status of a disabled resource pool allows the system to recover from faults without manual intervention which a person of ordinary skill in the art would recognize as critical to cloud infrastructure.
Claim 17 contains the same limitations as those of claim 8, directed towards a computing device. Claim 17 is rejected for similar reasons as those of claim 8.
Response to Arguments
Applicant's arguments filed 09/12/2025 have been fully considered but some are not persuasive. Applicant’s arguments are summarized below:
Rejections of claims 1-20 are traversed because the amended independent claims are integrated into a practical application at step 2A, prong two.
Applicant submits that the cited references fail to disclose “automatically initiating, by the at least one processor in real-time, the at least one remediation action” and “the at least one remediation action includes automatically disabling network traffic to at least one of the at least one resource pool”.
A person of ordinary skill in the art would understand the disclosure of Kumar as performing a staggered deployment of virtualized network functions on different sets of resources, which is different from performing a remediation action of any type in response to a failure condition.
Applicant submits that Higginson fails to disclose the determination of a threshold based on a failure pattern because Higginson states that the determination of a threshold is based on processor characteristics.
Applicant disagrees with the assertion that “failure level is derived from multiple QoS characteristics” and submits that a person of ordinary skill in the art would understand the cited sections of Higginson as teaching when a threshold value of any one of several QoSc characteristics are not exceeded, then a failure condition may be determined as existing, but there is no teaching of a “level” of such a failure condition.
Higginson provides no disclosure whatsoever in relation to either of the newly amended limitations of “the failure condition occurs as a result of at least one of a noisy neighbor incident, a repave activity incident, a router hung state incident, a network related incident, or a general stability incident” and/or “the failure level is included in a range of intensity values that correspond to partial failures and a complete failure”.
Dependent claims are submitted as allowable for at least the above reasons.
The examiner respectfully disagrees with points B, C, D, E, and F.
Applicant’s arguments are persuasive. With regard to 35 U.S.C. 101, cited paragraphs 90-92 provides feature that integrate the claims into a practical application thus improving system performance in cloud computing environments. Therefore, the 101 analysis ends at step 2A, prong two, with a conclusion of eligibility. Accordingly, the rejections of claims 1-20 under 35 U.S.C. 101 are withdrawn.
Applicant’s arguments are fully considered but are moot in light of the amendment. The amendment adds the new limitation “wherein the at least one remediation action includes automatically disabling network traffic to at least one of the at least one resource pool”. This amendment changes the scope and interpretation of “automatically initiating, by the at least one processor in real-time, the at least one remediation action”. Because the meaning of “remediation action” is now constrained by the newly added limitation, the arguments previously presented against the prior rejection no longer address the claim as currently pending. Accordingly, the prior arguments are not persuasive with respect to the amended claim. However, a new ground of rejection has been applied in light of the teachings of Kumar. Therefore, contrary to applicant’s arguments, Ross in view of Milojicic further in view of Kumar teaches the amended limitation as drafted.
Applicant’s arguments are fully considered but are moot in light of the amendment adding the new limitation “wherein the at least one remediation action includes automatically disabling network traffic to at least one of the at least one resource pool” in which the examiner has relied on a different portion of Kumar to map the claimed limitation. Accordingly, the arguments directed to the previously cited portions of Kumar are moot.
Higginson expressly teaches determining thresholds in a manner that accounts for multiple conditions and patterns associated with monitored system entities. Higginson teaches that “the system compares a first set of forecasts corresponding to one processor with one threshold [and] a second set of forecasts corresponding to the other processor with another threshold” and that “determining whether a forecast exceeds a threshold may include determining (a) whether both processors are forecasted to simultaneously exceed their respective thresholds, or (b) whether at least one of the two processors is forecasted to exceed its threshold” (Paragraph 133). These disclosures demonstrate that the system may evaluate the thresholds in light of forecasted conditions to determine whether the thresholds are exceeded. The determination of whether a particular forecast exceeds a threshold corresponds to the claimed determination of a threshold based on a failure pattern because the system evaluates simultaneous or individual exceedances across the system. Therefore, contrary to applicant’s arguments, Higginson teaches the determination of a threshold.
Applicant’s arguments are fully considered but are moot in light of the amendment adding the new limitation “wherein the failure level is included in a range of intensity values that correspond to partial failures and a complete failure” in which the examiner has relied on a different portion of Higginson to map the claimed limitation due to the scope of the previously presented claim being modified. Accordingly, the arguments directed to the previously cited portions of Higginson are moot.
The newly amended limitations were not present in the previous office action. Upon review, Higginson sufficiently addresses the subject matter of the newly added limitations. Therefore, contrary to applicant’s arguments, Higginson provides disclosure in relation to “the failure condition occurs as a result of at least one of a noisy neighbor incident, a repave activity incident, a router hung state incident, a network related incident, or a general stability incident” and “the failure level is included in a range of intensity values that correspond to partial failures and a complete failure”.
Independent claims 1, 10, and 19 remain rejected for the reasons stated above. Therefore, contrary to Applicant’s arguments, because the dependent claims depend from an unpatentable claim and does not add limitations that overcome the rejection, it likewise remains rejected.
Therefore the rejections under 35 U.S.C. 103 are maintained.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Gilsdorf et al. (US 20180024867 A1) discusses receiving performance notification data, managing tiers of disaggregated memory resources, and modifying deployments through the orchestrator based on the performance data.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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 KENNETH P TRAN whose telephone number is (571)272-6926. The examiner can normally be reached M-TH 5:30 a.m. - 2 p.m. PT, F 5:30 a.m. - 9:30 a.m. PT, or at Kenneth.Tran@uspto.gov.
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, April Blair can be reached at (571) 270-1014. 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.
/KENNETH P TRAN/ Examiner, Art Unit 2196
/APRIL Y BLAIR/ Supervisory Patent Examiner, Art Unit 2196