DETAILED ACTION
This office action is in response to applicant’s remarks filed on December 24, 2025 in application 18/166,208.
Claims 1-14, 16-20 are presented for examination. Claims 1 and 20 are amended. Claim 15 is previously cancelled.
IDS submitted on February 8, 2023 was acknowledged
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-14, 16-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
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 for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-14, 16-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Pham et al. (US 2021/0285846) in further view of Yadav (US 9,838,317) in further view of Catherwood et al. (US 2023/0176937).
In regard to claim 1, Pham et al. teach a processing device, wherein the processing device is a hardware processor and comprises an integrated circuit (the term “data production system” means any data processing system or software components that operates under control policies of the organization managing system 100 and that receives data from other organization systems, processes the data to produce output data, and makes the output data available to other organization systems, para. 14), comprising:
a plurality of components (data production system, fig. 1, 110-1 through 110-6), including a first component and a second component, wherein the first component and the second component are associated with storage configured to store a copy of an error event vector for the processing device, wherein the error event vector comprises a plurality of elements, each of which is associated with a different type of error condition event (data production system 110-n may also have an error monitor. The error monitor may be configured to identify data or format mismatches and other processing errors that occur at the data production system 110-n and to transmit a notification of any errors to the monitoring server, para. 20, fig. 1); and
a control node configured to update the elements of the error event vector (monitoring server is generally configured to obtaining data traffic information from the data production system to allow the mapping of data flow … also receive data error information and disseminate to affected or potentially affected production system, para. 22, fig. 3),
wherein the first component comprises event detection circuitry configured to detect a first event associated with the first component and cause the first event to be reported to the control node in a first event report (data production system may also have an error monitor, fig. 2, 117, para. 20),
wherein the control node comprises processing circuitry configured to receive the first event report from the first component (notification processor, fig. 3, 128, is configured for communication with each data production system in particular for receiving error notifications from the error monitors, fig. 2, 117, para. 24), reporting a first type of event, and responsive to the first event report:
broadcast via at least one control bus of the processing device (a communication network interconnected with the plurality of data production system and the monitoring server, fig. 1, para. 13, where the network can be any form of communication network capable of enabling communication between the data production systems, para. 16-18), one or more writes to each component of the plurality of components, so as to cause each of the copies of the error event vector to be updated by setting a first one of the elements that is associated with the first type of event so as to indicate that the first type of event has occurred on the processing device (the notification processor may then construct a notification indicating the nature of the data error and its source and transmit it to all data production systems, para. 25), wherein the integrated circuit comprises the at least one control bus and the control node (network-enabled computer system may include a server, network appliance, ect., …carry out the method of receiving data, process received data, and transmit or receive data over the network, para. 15).
Pham et al. does not explicitly teach wherein the second component comprises circuitry configured to perform an action associated with the first type of event in response to the setting of the first one of the elements in its own copy of the error event vector.
Yadav teaches of policy framework include policies for controlling automated recovery behaviors that specify the particular recovery actions (col. 11 lines 60-67 and col. 12 lines 1-15).
It would have been obvious to modify the device of Pham et al. by adding Yadav policy-based selective traffic reroute. A person of ordinary skill in the art before the effective filing date of the claimed invention would have been motivated to make the modification because it would aid in automated recovery (col. 11 lines 60-67 and col. 12 lines 1-15).
Pham et al. teach of receive data error information and disseminate to affected or potentially affected production system (para. 22, fig. 3) but Pham et al. and Yadav does not explicitly teach wherein the error event vector indicates whether the error condition events have occurred in any of the plurality of components.
Catherwood et al. teach of an exception vector in a vector table that reference an error (para. 5-6).
It would have been obvious to modify the device of Pham et al. and Yadav by adding Catherwood et al. vector bus error handling. A person of ordinary skill in the art before the effective filing date of the claimed invention would have been motivated to make the modification because it would aid in providing a vector table including an exception vector pointing to an exception handler to handle errors (para. 30-34, fig. 1).
In regard to claim 2, Pham et al. does not explicitly teach the processing device of claim 1, wherein the action performed in response to the detection of the first type of event comprises at least one of: an event handling action; and notifying event handling software.
Yadav teaches of a traffic impact prediction module using metric updates to trigger router-level re-routing or link-level re-routing. Traffic impact prediction module may update the metrics for all links of router by sending individual link state messages for each of the links of router (col. 14 lines 8-32).
Refer to claim 1 for motivational statement.
In regard to claim 3, Pham et al. does not explicitly teach the processing device of claim 1, wherein a third component of the plurality of components comprises circuitry configured to perform a further action associated with the first type of event in response to the setting of the first one of the elements in its own copy of the error event vector, wherein the further action is different to the action performed by the second component.
Yadav teaches of a traffic impact prediction module using metric updates to trigger router-level re-routing or link-level re-routing. Traffic impact prediction module may update the metrics for all links of router by sending individual link state messages for each of the links of router (col. 14 lines 8-32). Preemtively re-routing network traffic by sending updated routing information (fig. 3) is essentially stopping traffic to one component and starting traffic on a second component different action from the first component.
Refer to claim 1 for motivational statement.
In regard to claim 4, Pham et al. does not explicitly teach the processing device of claim 1, wherein the processing circuitry of the control node is configured to receive a second event report, reporting a second type of event, and responsive to the second event report: broadcast one or more writes to each component of the plurality of components, so as to cause each of the copies of the error event vector to be updated by setting a second one of the elements that is associated with the second type of event in each of the copies, wherein the second component comprises circuitry configured to perform a further action associated with the second type of event in response to the setting of the second one of the elements in its own copy of the error event vector, wherein the further action is different to the action associated with the first type of event.
Yadav teaches of a traffic impact prediction module using metric updates to trigger router-level re-routing or link-level re-routing. Traffic impact prediction module may update the metrics for all links of router by sending individual link state messages for each of the links of router (col. 14 lines 8-32). Preemtively re-routing network traffic by sending updated routing information (fig. 3) is essentially stopping traffic to one component and starting traffic on a second component different action from the first component.
Refer to claim 1 for motivational statement.
In regard to claim 5, Pham et al. does not explicitly teach the processing device of claim 1, wherein the second component includes circuitry configured to exchange data packets between the processing device and a further processing device, wherein the action comprises preventing exchange of further data packets between the processing device and the further processing device.
Yadav teaches of a traffic impact prediction module using metric updates to trigger router-level re-routing or link-level re-routing. Traffic impact prediction module may update the metrics for all links of router by sending individual link state messages for each of the links of router (col. 14 lines 8-32). Preemtively re-routing network traffic by sending updated routing information (fig. 3) is essentially stopping traffic to one component.
Refer to claim 1 for motivational statement.
In regard to claim 6, Pham et al. does not explicitly teach the processing device of claim 1, wherein the action performed by the second component comprises providing a notification to event handling software that is configured to determine a further action to be performed for the processing device.
Yadav teaches of a traffic impact prediction module using metric updates to trigger router-level re-routing or link-level re-routing. Traffic impact prediction module may update the metrics for all links of router by sending individual link state messages for each of the links of router (col. 14 lines 8-32). Device monitoring module may receive the link statistic upload message and analyze at least a portion of the link statistic … automatic healing or recovery (col. 10 lines 33-67).
Refer to claim 1 for motivational statement.
In regard to claim 7, Pham et al. does not explicitly teach the processing device of claim 6, wherein a third component of the plurality of components includes a processing unit configured to execute a set of instructions of an application, wherein the further action comprises a reset of the processing device, wherein the processing device comprises reset circuitry configured to: receive from the event handling software, a signal to cause the processing device to undergo the reset; and in response to the signal, cause the processing device to undergo the reset at least by wiping state of the application contained in memory of the processing unit.
Yadav teaches of a policy framework include policies for controlling automated recovery techniques for each possible faults. A policy may specify whether or not router 20 should result a flexible physical interface card concentrator reset (col. 11 lines 46-67).
Refer to claim 1 for motivational statement.
In regard to claim 8, Pham et al. does not explicitly teach the processing device of claim 1, wherein the first event report comprises additional event details not recorded in the error event vector, wherein the control node comprises an event data register configured to store the additional event details.
Yadav teaches applying the policy framework t the errors report such that metrics gradually increase with the errors (col. 13 lines 1-30).
Refer to claim 1 for motivational statement.
In regard to claim 9, Pham et al. teach the processing device of claim 8, wherein the control node is further configured to: following the broadcasting of the one or more writes, receive a read request from an event handler, and return in response the additional event details (notification processor, fig. 3, 128, is configured for communication with each data production system in particular for receiving error notifications from the error monitors, fig. 2, 117, para. 24).
In regard to claim 10, Pham et al. teach the processing device of claim 1, wherein each of the components has an associated node on the at least one control bus which provides a target for the one or more writes (data production system, para. 14).
In regard to claim 11, Pham et al. teach the processing device of claim 10, wherein each of the targets comprises a storage configured to store the copy of the error event vector for its associated one of the components (data production system may also have an error monitor, fig. 2, 117, para. 20).
In regard to claim 12, Pham et al. teach the processing device of claim 1, wherein each of a subset of the components comprises event detection circuitry operable to detect an event associated with the respective component and to cause that event to be reported to the control node in a respective event report, the subset of the components including the first component (the error monitor may be configured to identify data or format mismatches and other processing errors that occur at the data production system 110-n and to transmit a notification of any errors to the monitoring server, para. 20, fig. 1).
In regard to claim 13, Pham et al. teach the processing device of claim 1, further comprising: one or more interfaces configured to interface with one or more further processing devices of a data processing system, wherein the error event vector is a global event vector for which each of the elements indicates whether an event of an associated event class has occurred in the data processing system (organization-level system that may include various network-enabled computer system, para. 13, data production system receives data from other organization system, processes the data to produce output data and makes the output data available to other organization system, para. 14).
In regard to claim 14, Pham et al. teach the processing device of claim 13, wherein the one or more interfaces are configured to receive an update to a second of the elements of the global event vector from the one or more further processing devices, and wherein the control node is configured to: broadcast one or more further writes to each of the plurality of components, so as to cause each of the copies of the error event vector to be updated by setting the second one of the elements in each of the copies (notification processor, fig. 3, 128, is configured for communication with each data production system in particular for receiving error notifications from the error monitors, fig. 2, 117, para. 24).
In regard to claim 16, Pham et al. teach the processing device of claim 1, wherein the processing device is an integrated circuit configured to interface with one or more further integrated circuits (typical data production system 110-n may include a communication interface, a data input processor, a data use processor, and a data output processor, para. 17, fig. 2), wherein a first of the further integrated circuits comprises further event detection circuitry operable to detect a further event of a further type of event and cause that event to be reported to the control node in a further event report, and wherein the processing circuitry of the control node is configured to, responsive to the further event report, broadcast one or more writes to each of the plurality of components, so as to cause each of the copies of the error event vector to be updated by setting a second one of the elements that is associated with the further type of event in each of the copies (notification processor, fig. 3, 128, is configured for communication with each data production system in particular for receiving error notifications from the error monitors, fig. 2, 117, para. 24).
In regard to claim 17, Pham et al. does not explicitly teach the processing device of claim 1, wherein the plurality of components further includes a processing unit configured to execute a set of instructions of an application, wherein the action associated with the first type of event affects a state of the application.
Yadav teaches of a packet forwarding engine of router 20 gets stuck in a state that prevents the packet forwarding engine from actually forwarding traffic, a policy may specify whether or not router should result a flexible physical interface card concentrator reset and if so after what delay (col. 11 lines 60-67 and col. 12 lines 1-15).
Refer to claim 1 for motivational statement.
In regard to claim 18, Pham et al. does not explicitly teach the processing device of claim 17, wherein the action associated with the first type of event causes application processing on the processing device to pause or cease.
Yadav teaches of a packet forwarding engine of router 20 gets stuck in a state that prevents the packet forwarding engine from actually forwarding traffic, a policy may specify whether or not router should result a flexible physical interface card concentrator reset and if so after what delay (col. 11 lines 60-67 and col. 12 lines 1-15).
Refer to claim 1 for motivational statement.
In regard to claim 19, Pham et al. does not explicitly teach the processing device of claim 1, wherein the processing device is included in a data processing system that has one or more further processing devices, wherein the error event vector is a local event vector configured to record events for the processing device, wherein each of the one or more further processing devices comprises at least one storage storing a local event vector associated with a respective further processing device, wherein the local event vector for the processing device differs from at least one of the local event vectors for the further processing devices.
Yadav teaches of a scenario where router is experiencing faults or failures that may or may not be traffic impacting, but where pre-emptive re-routing may be attempted. Traffic impact prediction module applies the policies in the policy framework to the operating characteristics to determine the operating characteristics are indicative of a possible fault, determine the scope of the traffic impact and increase the metric accordingly (col. 13 lines 43-67).
Refer to claim 1 for motivational statement.
In regard to claim 20, Pham et al. teach a method comprising:
storing in association with a plurality of components of a processing device (data production system, fig. 1, 110-1 through 110-6), a plurality of copies of an error event vector for the processing device, wherein the error event vector comprises a plurality of elements, each of which is associated with a different type of error condition event (data production system 110-n may also have an error monitor. The error monitor may be configured to identify data or format mismatches and other processing errors that occur at the data production system 110-n and to transmit a notification of any errors to the monitoring server, para. 20, fig. 1), wherein the processing device is a hardware processor and comprises an integrated circuit (the term “data production system” means any data processing system or software components that operates under control policies of the organization managing system 100 and that receives data from other organization systems, processes the data to produce output data, and makes the output data available to other organization systems, para. 14);
at a first component of the plurality of components, detecting a first event associated with the first component and causing the first event to be reported to a control node in a first event report (data production system may also have an error monitor, fig. 2, 117, para. 20);
receiving at the control node, the first event report from the first component, the first event report reporting a first type of event (notification processor, fig. 3, 128, is configured for communication with each data production system in particular for receiving error notifications from the error monitors, fig. 2, 117, para. 24); and
responsive to the first event report:
broadcasting, via at least one control bus of the processing device (a communication network interconnected with the plurality of data production system and the monitoring server, fig. 1, para. 13, where the network can be any form of communication network capable of enabling communication between the data production systems, para. 16-18), one or more writes to each component of the plurality of components, so as to cause each of the copies of the error event vector to be updated by setting a first one of the elements that is associated with the first type of event in each of the copies (the notification processor may then construct a notification indicating the nature of the data error and its source and transmit it to all data production systems, para. 25), wherein the integrated circuit comprises the at least one control bus and the control node (network-enabled computer system may include a server, network appliance, ect., …carry out the method of receiving data, process received data, and transmit or receive data over the network, para. 15).
Pham et al. does not explicitly teach at a second component of the plurality of components, performing an action associated with the first type of event in response to the setting of the first one of the elements in its own copy of the error event vector.
Yadav teaches of policy framework include policies for controlling automated recovery behaviors that specify the particular recovery actions (col. 11 lines 60-67 and col. 12 lines 1-15).
Refer to claim 1 for motivational statement.
Pham et al. teach of receive data error information and disseminate to affected or potentially affected production system (para. 22, fig. 3) but Pham et al. and Yadav does not explicitly teach wherein the error event vector indicates whether the error condition events have occurred in any of the plurality of components.
Catherwood et al. teach of an exception vector in a vector table that reference an error (para. 5-6).
Refer to claim 1 for motivational statement.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. See PTO 892.
Misra (US 2022/0138256) classifying the events on vector scale
Neiger et al. (US 2023/0281016) event vector contain the error code
************
Thomas et al. (US 11,750,441) detection of link failures may be propagated
Kodihalli et al. (US 10,623,383) detecting an error event in a SMP topology
Nannetti et al. (US 6,122,690) integrated circuit with broadcast writes
Datla et al. (US 2024/0354594) integrated circuit with broadcast buses
************
Vrzic et al. (US 2016/0353465) virtualized functions of data planes
Felsher (US 2013/0159021) controlling access to records stored
************
Kliger et al. (US 2014/0079102) error vector with error events broadcast
Albot et al. (US 2017/0123684) error recovery protocol
Herscovitz et al. (US 8,977,252) automatic detection and recovery
Shapira et al. (US 10,691,576) event reporting for processing packets
Singh et al. (US 2019/0281103) event reports
Miklos et al. (US 2016/0359750) event reporting congestion
Clarisse et al. (US 2009/0003311) debugging in real time
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 LOAN TRUONG whose telephone number is 408-918-7552. The examiner can normally be reached on 10AM-6PM PST 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, Ashish Thomas can be reached on 571-272-0631. 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.
/Loan L.T. Truong/Primary Examiner, Art Unit 2114 Loan.truong@uspto.gov