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 .
DETAILED ACTION
This is in reply to an amendment filed on 1/5/2026. Claims 1-24 are pending.
** Claims 4, 6, 8, 17, 21, and 23 are amended.
** Claim 25 was previously is cancelled.
Response to Arguments
Applicant’s arguments filed in the amendment filed on 1/5/2026, have been fully considered but are moot in view of new grounds of rejection. The reasons are set forth below.
Applicant argues, mid page 1 of arguments:
With respect to claim 1,…..Here, (1) an ameliorative action is executed in response to detecting that the time maintained by the another device has drifted more than the threshold, wherein (2) this “ameliorative action” includes (i) sending a notification to an administrator including an identification of which devices’ s oscillator has drifted by what amount, and (220 autonomously without human interaction replacing the high-performance oscillator of the another device and changing it with a time source of another data server to be used as a reference time of the time server.
Notably, the “sending” sub-step of the ameliorative action” and the replacing sub-step of the ameliorative action are both performed in response to detecting that the time maintained by the another device has drifted more than the threshold.
Examiner’s response:
First, considering the broadest reasonable interpretation consistent with Applicant’s specification, Examiner has determined, that when an even is detected automatically by the running PTP protocol, (i.e., as defined in IEEE 1588-2008, (or any other algorithms such as Best Master Clock Algorithm (BMCA)), and then performing certain other actions, or steps, by the running PTP protocol upon detecting certain events, is understood by Examiner, that the running PTP protocol performs tasks ameliorative and without human interaction. For example, one such task, is a sequence of events that are performed/detected regarding internal avg timing of a master clock of a server, that ultimately leads to replacement of such master clock with a second clock, when the master clock fails certain criteria, as taught by Chan.
Examiner has equated, Chan’s “clock devices” having oscillators/clocks and communicating data (i.e., “clock data”) and synchronizing to the grand master clock, as being equivalent to Applicant’s “data server” that has plurality of oscillators. For example, Fig. 9 shows a group of “clock devices”, such as group 91, that has substation clock 80A with GPS receiver, and Oscillator. Chan’s “clock device”, is not just “a clock”, but rather it is a device that maintains time data and has various components such as oscillators, GPS receivers, etc.
Second, Examiner has used and relied on Harris reference to further show that “a notification/message can be sent” automatically to a network admin, when a timing drift more than an allowed threshold is detected, indicating that a repair or replacement is needed. The actual entity that is sending such notification is not Examiner’s intend, but rather to showing that a notification can be transmitted automatically by a node, as taught by Harris.
Third, Examiner has used and relied on Spada reference to further complement and show that an automatic message, as taught by Harris, can further include “clock ID” of a clock, and the Clock’s time value difference that is detected, as taught by Spada. Therefore, the combination of Harris and Spada teach and suggest having an ameliorate message that is transmitted to an administrator when a timing drift more than allowed threshold is detected, which further includes the Clock’s ID, and clock’s time value difference status.
Applicant argues, top of page 3 of arguments:
Notably, these messages are not described as being an indication of which device’s oscillator has drifted by what amount, as claimed. Instead, the Spada messages are described as being received an analyzed by an end station. Notably, the messages include an identifier that indicates the source of the message and not an identification of which device’s clock oscillator has drifted by what amount as claimed.
Examiner’s response:
Examiner respectfully disagrees with Applicant. Examiner has used and relied on Spada reference to further complement and show that a message, such as the one taught by Harris, can include “clock ID” of a clock, and Clock’s time value difference that is detected, as taught by Spada. Therefore, the combination of Harris and Spada teach and suggest a message that is transmitted automatically to a network administrator when a timing drift more than allowed threshold is detected, and wherein such message can further include Clock’s ID, and its time value difference status.
Applicant’s all other arguments are based on above already responses by Examiner.
Information Disclosure Statement PTO-1449
3. The Information Disclosure Statement submitted by applicant on 01/27/2026 has been considered. The submission is in compliance with the provisions of 37 CFR 1.97. Form PTO-1449 signed and attached hereto.
Claim Rejections - 35 USC § 103
4. 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.
5. Claims 1-3, 5-8, 10, 11, 13-16, and 19-24 are rejected under 35 U.S.C. 103 as being unpatentable over US 11650620 B2 to Chan (hereinafter Chan) in view of US 11405881 B1, to Harris et al. (hereinafter Harris) and in further view of US 20140281037 A1 to Spada et al., (hereinafter Spada).
Claim 1. A computer-implemented method comprising:
comparing an internal time of a data server (i.e., a clock device) on a network against respective times of each of plurality of devices on the network using a time server (i.e., a master clock), detecting, by analyzing the compared times, that a time maintained by another device of the network has drifted more than a threshold; and
(Chan: See Fig. 2, #12, “receive clock data”, and Col. 3, lines 60-67, “clock data” is received from several “clock devices” (i.e., several “data servers” on a network). See Col. 5, lines 15-25, the “clock data” received includes information that compares the device’s time drift from the synchronized system time or another time source (i.e., a master clock/time server). See Col. 4, lines 30-40, grouping clocks of different clock devices and receiving K different “clock data” from different clocks (i.e., respective times of each of the plurality of devices) and then choosing the best clock, or the master clock, by analyzing (i.e., comparing) various “clock data” received from different devices, against a set threshold value. See Col. 6, lines 5-15, “a central time controller device” (i.e., a time server) is the device that receives all such various “clock data”, and as shown in Fig. 2.)
wherein each high-performance oscillator in the plurality of high-performance oscillators keep track of the internal time of the data server individually, and (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of data clock (i.e., data server) individually)
wherein the data server utilizes a plurality of high-performance oscillators to maintain the internal time of the data server on the network; (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of data clock (i.e., data server) individually)
wherein the internal time of the data server (i.e., the clock device) is an average time obtained from the plurality of high-performance oscillators; (Chan: See Fig. 3, #33, “threshold”, and Col. 4, lines 30-40, for receiving K different “clock data” from different clocks of the group, performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data” (i.e., time), and identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock (i.e., the data sever clock (i.e., the best clock) is determined based on average time received (clock data received) from the rest of the clocks.)
and autonomously without human interaction replacing the high-performance oscillator of the another device and changing it with a time source of another data server to be used as a reference time of the time server.
(Chan: See Col. 2, lines 5-40, in PTP standard (i.e., autonomous without human interaction) when the master clock (MC) fails, then the second clock will be elected as substitute for master clock (MC). This is accomplished via Announce Messages, as shown in Fig. 1. See also, Fig. 2, #22, “Synchronize Network”, and Col. 5, lines 50-65, clock devices of the network synchronize to the grand master clock using PTP)
Although Chan teaches master clock’s (i.e., server clock) timing being used for synchronization purposes of other network devices using PTP and other protocols, however, it does not seem to explicitly disclose clock devices being able to execute ameliorative actions after detecting a time maintained by another device has drifted more than a threshold, or performing certain other ameliorative actions, like an ID of a device, to be sent to an administrator, and included the amount of clock drift for that device as well, as understood in:
executing an ameliorative action in response to detecting that the time maintained by another device has drifted more than the threshold.
wherein the ameliorative action includes sending a notification to an administrator including an identification of which device’s oscillator has drifted by what amount
However, in a similar field, Harris teaches:
executing an ameliorative action in response to detecting that the time maintained by another device has drifted more than the threshold.
(Harris: See Col. 10, lines 20-50 teaches time synchronization techniques, wherein a child node, transmits a notification to the network administrator, indicating that the child node itself is experiencing excessive time drift more than a threshold amount, compared to the parent node, and indicating that a repair or replacement is needed. (Harris: See Col. 10, lines 20-50)
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, a time synchronization techniques wherein a node having crystal oscillators are used to send notifications to system administrators when a time drift in excess of a threshold occurs so that network administrators can perform corrective actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Chan in view of Harris teaches a message is sent from one device to a network administrator indicating that the time drift is more than a threshold limit, however, it does not explicitly indicate that such message can also contain certain data such as the ID of specific device and the drifted amount, as understood by:
wherein the ameliorative action includes sending a notification to an administrator including an identification of which device’s oscillator has drifted by what amount
However in a similar field, Spada, in para[0040] teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, then the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value difference status. (Spada: See para[0040])
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notification messages sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
It would have been obvious to one of ordinary skill in the art before the time of effective filling to have included messaging technique, as taught by Spada, with the teachings of Harris in view of Chan, in order to benefit from having a message that can be sent to a network administrator, or a network management entity that may be an automated system, wherein the message includes a clock ID and its time difference status. (Spada: See para[0040])
Claim 2. The computer-implemented method of claim 1, wherein the another device is a time server of the network. (Chan: See Fig. 1, for Grand Master Clock (i.e. a time server) of the network)
Claim 3. The computer-implemented method of claim 2, wherein: the data server is one of a plurality of data servers that each utilize a plurality of high- performance oscillators to maintain respective internal times; (Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) can include oscillators that can be temperature controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc.) the detecting that the time of the time server has drifted more than the threshold includes comparing the time of the time server against an average internal time of all of the plurality of data servers; (Chan: See Col. 4, lines 30-40, for setting a clock accuracy threshold or using a clock pre-set accuracy threshold, grouping clocks and receiving K different “clock data” from different clocks of the group (e.g., group of clocks within a device, etc), performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data”. Based on that determination, and comparing to a threshold, identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock determined via comparison to the threshold.)
and the ameliorative action includes causing the network to utilize the average internal time of all of the plurality of data servers rather than the time of the time server in response to detecting that the time of the time server has drifted more than the threshold from the average internal time. (Chan: See Col. 6, lines 60-65 for the average of the fastest and slowest clock values as inputs can be calculated, and the group’s best clock closest to that calculated average may be selected)
Claim 5. The computer-implemented method of claim 1, wherein: the data server is one of a plurality of data servers that each utilize a plurality of high- performance oscillators to maintain respective internal times; and (Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) can include oscillators that can be temperature controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc.) the detecting that the time of the another device has drifted more than the threshold includes comparing the time of the another device against an average internal time of all of the plurality of data servers, the method further comprising: identifying that a switch of the network is a cause of the another device drifting more than the threshold by tracking an erring clock signal to the switch. (Chen: See Col. 1, lines 60-67 an erroneous clock offset in a substation, introduces errors which may cascade from equipment failures. It is understood that a device failure in a network, can cause drifting of time, in other devices within the network which can be traced)
Claim 6. The computer-implemented method of claim 5, wherein the ameliorative action that is executed in response to detecting that the time maintained by the another device has drifted more than the threshold is performed autonomously without human intervention. (Chen: See Col. 4, lines 25-35 for BMCA used for determining the best master clock)
Claim 7. The computer-implemented method of claim 1, wherein the network utilizes precision time protocol to synchronize internal times of the plurality of internal devices. (Chen: See Col. 5 lines 60-67 for clock devices synchronize to mater clock using PTP (Precision Time Protocol)).
Claim 8. The computer-implemented method of claim 7, wherein the ameliorative action that is executed in response to detecting that the time maintained by the another device has drifted more than the threshold is performed autonomously without human intervention. (Chen: Col. 7 lines 10 to 15, Best Master Clock Algorithm is applied to the master clock for selection of master clock for the group)
Claim 9. the computer-implemented method of claim 1, wherein the another device is another data server of the network; (Chan: See Col. 5, lines 15-25 for “clock data” provided by each clock, is a device’s timing drift from the synchronized time of another time source (another network device, etc.
Claim 10. The computer-implemented method of claim 1, wherein: the plurality of high-performance oscillators includes at least four oscillators that are each specified to be accurate to at least ± 2 parts per million; and the data server is configured to use software in conjunction with the plurality of high- performance oscillators to maintain the internal time to drift no more than two milliseconds a day. (Chen: See Col. 4 lines 35-40 for accuracy threshold can be set for example by having a pre-set threshold (i.e., to be accurate to at least 2 parts per million and oscillators to maintain the internal time drift no more than two milliseconds a day, etc.))
Claim 11. The computer-implemented method of claim 1, wherein: the network is geographically dispersed and includes two clustered subnetworks; the data server is one of a plurality of data servers at a first of the two clustered subnetwork where each data server of the first plurality of data servers utilizes a respective plurality of high-performance oscillators to maintain respective internal times; the another device is a time server of the first clustered subnetwork; (Chen: See Col. 9 lines 14-20 for it is understood that these inventive, robust time-synchronization methods may be applied to other applications with distributed device networks. (i.e, geographically dispersed subnetworks)) the detecting that the time of the time server of the first clustered subnetwork has drifted more than the threshold includes comparing the time of the time server of the first clustered subnetwork against an average internal time of all of the plurality of data servers, (Chan: See Col. 4, lines 30-40, for setting a clock accuracy threshold or using a clock pre-set accuracy threshold, receiving K different “clock data” from different clocks (e.g., clocks within a device, etc) performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data”. Based on that determination, and comparing to a threshold, identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock determined via comparison to the threshold. See Col. 5, lines 15-25 for “clock data” provided by each clock, is a device’s timing drift from the synchronized time of another time source.) the method further comprising:
comparing an internal time of a time server of a second of the two clustered subnetworks against the average internal time of all of the plurality of data servers; detecting that the time server of the second clustered subnetwork has drifted in a manner substantially similar to the manner than the time server of the first clustered subnetwork has drifted; and (Chan: See Col. 4, lines 30-40, for setting a clock accuracy threshold or using a clock pre-set accuracy threshold, receiving K different “clock data” from different clocks (e.g., clocks within a device, etc) performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data”. Based on that determination, and comparing to a threshold, identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock determined via comparison to the threshold. See Col. 5, lines 15-25 for “clock data” provided by each clock, is a device’s timing drift from the synchronized time of another time source.)
detecting that a clock source of the time servers at both the first and second clustered subnetworks has been compromised as a result of detecting that the time servers are drifting in a substantially similar manner. (Chen: See Col. 1, lines 60-67 an erroneous clock offset in a substation, introduces errors which may cascade from equipment failures. It is understood that a device failure in a network, can cause drifting of time, in other devices within the network)
Claim 13. A data server (i.e., a clock device) on a network of a plurality of devices, when executed by the processor, cause the processor to:
compare an internal time of the data server (i.e., a clock device) against respective times of each of the plurality of devices on the network, wherein the data server utilizes the plurality of high- performance oscillators to maintain the internal time using a time server (i.e., a master clock), detect, by analyzing the compared times, that a time maintained by another device of the network has drifted more than a threshold; and
(Chan: See Fig. 2, #12, “receive clock data”, and Col. 3, lines 60-67, “clock data” is received from several “clock devices” (i.e., several “data servers” on a network). See Col. 5, lines 15-25, the “clock data” received includes information that compares the device’s time drift from the synchronized system time or another time source (i.e., a master clock/time server) . See Col. 4, lines 30-40, grouping clocks of different clock devices and receiving K different “clock data” from different clocks (i.e., respective times of each of the plurality of devices) and then choosing the best clock, or the master clock, by analyzing (i.e., comparing) various “clock data” received from different devices, against a set threshold value.))
wherein each high-performance oscillator in the plurality of high-performance oscillators keep track of the internal time of the data server individually, and (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of data sever individually)
wherein the data server utilizes a plurality of high-performance oscillators to maintain the internal time of the data server on the network; (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of data sever individually)
wherein the internal time of the data server is an average time obtained from the plurality of high-performance oscillators; (Chan: See Col. 4, lines 30-40, for receiving K different “clock data” from different clocks of the group (e.g., group of clocks within a data server, etc), performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data” (i.e, time), and identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock (i.e., the data sever clock (i.e., the best clock) is determined based on average time received (clock data received) from the rest of the clocks.)
and autonomously without human interaction replacing the high-performance oscillator of the another device and changing it with a time source of another data server to be used as a reference time of the time server.
(Chan: See Col. 2, lines 5-40, in PTP standard (i.e., autonomous without human interaction) when the master clock (MC) fails, then the second clock will be elected as substitute for master clock (MC). This is accomplished via Announce Messages, as shown in Fig. 1. See also, Fig. 2, #22, “Synchronize Network”, and Col. 5, lines 50-65, clock devices of the network synchronize to the grand master clock using PTP)
Although Chan teaches master clock’s (i.e., server clock) timing being used for synchronization purposes of other network devices using PTP and other protocols, however, it does not seem to explicitly disclose clock devices being able to execute ameliorative actions after detecting a time maintained by another device has drifted more than a threshold, or performing certain other ameliorative actions, like an ID of a device, to be sent to an administrator, and included the amount of clock drift for that device as well, as understood in:
the data server comprising: a processor; and a memory in communication with the processor, the memory containing instructions that,
execute an ameliorative action in response to detecting that the time maintained by the another device has drifted more than the threshold.
wherein the ameliorative action includes sending a notification to an administrator and the notification includes an identification of which device has drifted by what amount.
However, in a similar field, Harris teaches:
the data server comprising: a processor; and a memory in communication with the processor, the memory containing instructions that,
(Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) that includes, processor, memory, and oscillators that can be temperature controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc.)
wherein the data server utilizes a plurality of high-performance oscillators to maintain the internal time of the data server on the network;
(Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) can include oscillators that can be temperature-controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc used to maintain its time synchronized)
execute an ameliorative action in response to detecting that the time maintained by the another device has drifted more than the threshold.
(Harris: See Col. 10, lines 20-50 that teaches time synchronization techniques, wherein a child node, transmits a notification to the network administrator, indicating that the child node itself (i.e., identification of device) is experiencing excessive time drift more than a threshold amount, compared to the parent node, and indicating that a repair or replacement is needed. (Harris: See Col. 10, lines 20-50)
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, a time synchronization techniques wherein a node having crystal oscillators are used to send notifications to system administrators when a time drift in excess of a threshold occurs so that network administrators can perform corrective actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Chan in view of Harris teaches a message is sent from one device to a network administrator indicating that the time drift is more than a threshold limit, however, it does not explicitly indicate that such message can also contain certain data such as the ID of specific device and the drifted amount, as understood by:
wherein the ameliorative action includes sending a notification to an administrator and the notification includes an identification of which device has drifted by what amount.
However in a similar field, Spada, in para[0040] teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notification messages sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. . (Spada: See para[0040])
It would have been obvious to one of ordinary skill in the art before the time of effective filling to have included messaging technique, as taught by Spada, with the teachings of Harris in view of Chan, in order to benefit from having a message that can be sent to a network administrator, or a network management entity that may be an automated system, wherein the message includes a clock ID and its time difference status. (Spada: See para[0040])
Claim 14. The data server of claim 13, wherein the another device is a time server of the network. (Chan: See Fig. 1, for Grand Master Clock (i.e. a time server) of the network)
Claim 15. The data server of claim 13, wherein: the data server is one of a plurality of data servers on the network that each utilize a plurality of high-performance oscillators to maintain respective internal times; (Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) can include oscillators that can be temperature controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc.) the detecting that the time of the time server has drifted more than the threshold includes comparing the time of the time server against an average internal time of all of the plurality of data servers; and
(Chan: See Col. 4, lines 30-40, for setting a clock accuracy threshold or using a clock pre-set accuracy threshold, grouping clocks and receiving K different “clock data” from different clocks of the group (e.g., group of clocks within a device, etc), performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data”. Based on that determination, and comparing to a threshold, identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock determined via comparison to the threshold.)
the ameliorative action includes causing the network to utilize the average internal time of all of the plurality of data servers rather than the time of the time server in response to detecting that the time of the time server has drifted more than the threshold from the average internal time. (Chan: See Col. 6, lines 60-65 for the average of the fastest and slowest clock values as inputs can be calculated, and the group’s best clock closest to that calculated average may be selected)
Claim 16. The data server of claim 13, wherein: the data server is one of a plurality of data servers on the network that each utilize a plurality of high-performance oscillators to maintain respective internal times; (Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) can include oscillators that can be temperature controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc.) and the detecting that the time of the another device has drifted more than the threshold includes comparing the time of the another device against an average internal time of all of the plurality of data servers, (Chan: See Col. 4, lines 30-40, for setting a clock accuracy threshold or using a clock pre-set accuracy threshold, then grouping clocks and receiving K different “clock data” from different clocks of the group and choosing the best clock, or the master clock, by analyzing (i.e., comparing) various “clock data” received from different devices against a set threshold value. See Col. 5, lines 15-25, for the “clock data” includes information that compares the device’s time drift from the synchronized system time or another time source.)
the memory containing additional instructions that, when executed by the processor, cause the processor to: identify that a switch of the network is a cause of the another device drifting more than the threshold by tracking an erring clock signal to the switch.
(Harris: See Col. 10, lines 20-50 wherein a child node, transmits a notification to the network administrator, indicating that the child node itself (i.e., identification of device) is experiencing excessive time drift more than a threshold amount, compared to the parent node, and indicating that a repair or replacement is needed. (Harris: See Col. 10, lines 20-50)
Claim 19. The data server of claim 13, wherein: the plurality of high-performance oscillators includes at least four oscillators that are each specified to be accurate to at least ± 2 parts per million; and the memory includes software applications configured to improve the accuracy of the internal time of the data server in conjunction with the plurality of high-performance oscillators to maintain the internal time to drift no more than two milliseconds a day. (Chan: See Col. 4 lines 35-40 for accuracy threshold can be set for example by having a pre-set threshold (i.e., to be accurate to at least 2 parts per million and oscillators to maintain the internal time drift no more than two milliseconds a day, etc.))
Claim 20. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to:
compare an internal time of a data server (i.e., a clock device) against respective times of each of a plurality of devices on the network using a time server (i.e., a master clock), detect, by analyzing the compared times, that a time maintained by another device of the network has drifted more than a threshold; and
(Chan: See Fig. 2, #12, “receive clock data”, and Col. 3, lines 60-67, “clock data” is received from several “clock devices” (i.e., several “data servers” on a network). See Col. 5, lines 15-25, the “clock data” received includes information that compares the device’s time drift from the synchronized system time or another time source (i.e., a master clock/time server). See Col. 4, lines 30-40, grouping clocks of different clock devices and receiving K different “clock data” from different clocks (i.e., respective times of each of the plurality of devices) and then choosing the best clock, or the master clock, by analyzing (i.e., comparing) various “clock data” received from different devices, against a set threshold value.)
wherein each high-performance oscillator in the plurality of high-performance oscillators keep track of the internal time of the data server individually, and (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of data clock (i.e., data server) individually)
wherein the data server utilizes a plurality of high- performance oscillators to maintain the internal time of the data server on the network; (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of data clock (i.e., data server) individually)
wherein the internal time of the data server is an average time obtained from the plurality of high-performance oscillators; (Chan: See Col. 4, lines 30-40, for receiving K different “clock data” from different clocks of the group (e.g., group of clocks within a data server, etc), performing “Fault Tolerant Average Algorithm (FTAA)” to determine an average of received “clock data” (i.e, time), and identifying a best clock for the group, and synchronizing all other clocks in the group with the best clock (i.e., the data sever clock (i.e., the best clock) is determined based on average time received (clock data received) from the rest of the clocks.)
and autonomously without human interaction replacing the high-performance oscillator of the another device and changing it with a time source of another data server to be used as a reference time of the time server.
(Chan: See Col. 2, lines 5-40, in PTP standard (i.e., autonomous without human interaction) when the master clock (MC) fails, then the second clock will be elected as substitute for master clock (MC). This is accomplished via Announce Messages, as shown in Fig. 1. See also, Fig. 2, #22, “Synchronize Network”, and Col. 5, lines 50-65, clock devices of the network synchronize to the grand master clock using PTP)
Although Chan teaches master clock’s (i.e., server clock) timing being used for synchronization purposes of other network devices using PTP and other protocols, however, it does not seem to explicitly disclose clock devices being able to execute ameliorative actions after detecting a time maintained by another device has drifted more than a threshold, or performing certain other ameliorative actions, like an ID of a device, to be sent to an administrator, and included the amount of clock drift for that device as well, as understood in:
execute an ameliorative action in response to detecting that the time maintained by the another device has drifted more than the threshold.
wherein the ameliorative action includes sending a notification to an administrator and the notification includes an identification of which device has drifted by what amount.
However, in a similar field, Harris teaches:
wherein the data server utilizes the plurality of high- performance oscillators to maintain the internal time of the data server on the network;
(Harris: See Col. 7, lines 1-10, and Fig. 3, shows a node (i.e. a data server) can include oscillators that can be temperature controlled crystal oscillators or the likes, such as TCXO, VCXO, OCXO, ceramic oscillators, etc.)
execute an ameliorative action in response to detecting that the time maintained by the another device has drifted more than the threshold.
(Harris: See Col. 10, lines 20-50 that teaches time synchronization techniques, wherein a child node, transmits a notification to the network administrator, indicating that the child node itself (i.e., identification of device) is experiencing excessive time drift more than a threshold amount, compared to the parent node, and indicating that a repair or replacement is needed. (Harris: See Col. 10, lines 20-50)
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, a time synchronization techniques wherein a node having crystal oscillators are used to send notifications to system administrators when a time drift in excess of a threshold occurs so that network administrators can perform corrective actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Chan in view of Harris teaches a message is sent from one device to a network administrator indicating that the time drift is more than a threshold limit, however, it does not explicitly indicate that such message can also contain certain data such as the ID of specific device and the drifted amount, as understood by:
wherein the ameliorative action includes sending a notification to an administrator and the notification includes an identification of which device has drifted by what amount.
However in a similar field, Spada, in para[0040] teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notification messages sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
It would have been obvious to one of ordinary skill in the art before the time of effective filling to have included messaging technique, as taught by Spada, with the teachings of Harris in view of Chan, in order to benefit from having a message that can be sent to a network administrator, or a network management entity that may be an automated system, wherein the message includes a clock ID and its time difference status. (Spada: See para[0040])
Claim 21. A computer-implemented method comprising:
comparing an average internal time of a plurality of data servers that each utilize a plurality of high performance oscillators to maintain respective internal times as part of a network that utilizes precision time protocol (PTP) again other devices of the network, and detecting, by analyzing the compared average internal times of the plurality of data server that a time maintained by another device of the network has drifted more than a threshold from the average internal time of all of the plurality of data servers; and
(Chan: See Fig. 2, #12, “receive clock data”, and Col. 3, lines 60-67, “clock data” is received from several “clock devices” (i.e., several “data servers” on a network). See Col. 5, lines 15-25, the “clock data” received includes information that compares the device’s time drift from the synchronized system time or another time source. See Col. 4, lines 30-40, grouping clocks of different clock devices and receiving K different “clock data” from different clocks (i.e., respective times of each of the plurality of devices) and then choosing the best clock, or the master clock, by analyzing (i.e., comparing) various “clock data” received from different devices, against a set threshold value.)
and wherein each high-performance oscillator in the plurality of high-performance oscillators keep track of the internal time for the plurality of data server individually, and (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of each data sever individually)
that each utilize a plurality of high-performance oscillators to maintain respective internal times as part of a network that utilizes precision time protocol (PTP) against other devices of the network; (Chan: See Fig. 7C and Col. 7 lines 40-50 for “synchronized clocks” having Oscillators (i.e., high-performance oscillator) that provides timekeeping individually (i.e., time of each data sever individually. See Col. 2, lines 5-40, in PTP standard (i.e., autonomous without human interaction) when the master clock (MC) fails, then the second clock will be elected as substitute for master clock (MC). This is accomplished via Announce Messages, as shown in Fig. 1. See also, Fig. 2, #22, “Synchronize Network”, and Col. 5, lines 50-65, clock devices of the network synchronize to the grand master clock using PTP)
and autonomously without human interaction replacing the high-performance oscillator of the another device and changing it with a time source of another data server to be used as a reference time of the time server.
(Chan: See Col. 2, lines 5-40, in PTP standard (i.e., autonomous without human interaction) when the master clock (MC) fails, then the second clock will be elected as substitute for master clock (MC). This is accomplished via Announce Messages, as shown in Fig. 1. See also, Fig. 2, #22, “Synchronize Network”, and Col. 5, lines 50-65, clock devices of the network synchronize to the grand master clock using PTP)
Although Chan teaches master clock’s (i.e., server clock) timing being used for synchronization purposes of other network devices using PTP and other protocols, however, it does not seem to explicitly disclose clock devices being able to execute ameliorative actions after detecting a time maintained by another device has drifted more than a threshold, or performing certain other ameliorative actions, like an ID of a device, to be sent to an administrator, and included the amount of clock drift for that device as well, as understood in:
executing an ameliorative action in response to detecting that the time maintained by the another device of the network has drifted more than the threshold,
wherein the ameliorative action includes sending a notification to an administrator and the notification includes an identification of which device has drifted by what amount.
However, in a similar field, Harris teaches:
executing an ameliorative action in response to identifying that detecting that the time maintained by the another device of the network has drifted more than the threshold.
(Harris: See Col. 10, lines 20-50 that teaches time synchronization techniques, wherein a child node, transmits a notification to the network administrator, indicating that the child node itself (i.e., identification of device) is experiencing excessive time drift more than a threshold amount, compared to the parent node, and indicating that a repair or replacement is needed. (Harris: See Col. 10, lines 20-50)
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, a time synchronization technique wherein a node having crystal oscillators are used to send notifications to system administrators when a time drift in excess of a threshold occurs so that network administrators can perform corrective actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Chan in view of Harris teaches a message is sent from one device to a network administrator indicating that the time drift is more than a threshold limit, however, it does not explicitly indicate that such message can also contain certain data such as the ID of specific device and the drifted amount, as understood by:
wherein the ameliorative action includes sending a notification to an administrator and the notification includes an identification of which device has drifted by what amount.
However in a similar field, Spada, in para[0040] teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notification messages sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. . (Spada: See para[0040])
It would have been obvious to one of ordinary skill in the art before the time of effective filling to have included messaging technique, as taught by Spada, with the teachings of Harris in view of Chan, in order to benefit from having a message that can be sent to a network administrator, or a network management entity that may be an automated system, wherein the message includes a clock ID and its time difference status. (Spada: See para[0040])
Claim 22. The computer-implemented method of claim 21, wherein the another device is a time server of the network. (Chan: See Fig. 1, for Grand Master Clock (i.e. a time server) of the network)
Claim 23. The computer-implemented method of claim 22, wherein the ameliorative action that is executed in response to detecting that the time maintained by the another device has drifted more than the threshold includes causing the network to utilize the average internal time of all of the plurality of data servers rather than the time of the time server in response to detecting that the another device is the time server. (Chan: See Col. 6, lines 60-65 for the average of the fastest and slowest clock values as inputs can be calculated, and the group’s best clock closest to that calculated average may be selected)
Claim 24. The computer-implemented method of claim 21, the method further comprising identifying that a switch of the network is a cause of the another device drifting more than the threshold by tracking a clock signal to the switch. (Chen: See Col. 1, lines 60-67 an erroneous clock offset in a substation, introduces errors which may cascade from equipment failures. It is understood that a device failure in a network, can cause drifting of time, in other devices within the network which can be traced)
6. Claims 4, 12, 17, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Chan, Harris, Spada, and in further view of US 10080966 B2 to Relan et al., (hereinafter Relan).
Claim 4. Chan in view of Harris and Spada teaches the computer-implemented method of claim 3, and an ameliorative action, such as transmitting a message in response to detecting that the time maintained by the time server of the network has drifted more than the threshold, is sent
but they don’t seem to indicate that a task such as removal process, can be performed automatically, as understood alternatively by the phrase “executed autonomously” in:
wherein the ameliorative action is executed autonomously in response to detecting that the time maintained by the time server of the network has drifted more than the threshold,
However, in a similar field, Relan in Col. 12, lines 30-40, teaches a device, such as a load balancer, can automatically remove a problematic server.
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
Relan teaches various techniques such removal of a problematic server automatically by a network device. (Relan: See Col. 12, lines 30-40)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, automatic removal of a server by a network device, as taught by Relan, with the teachings of Chan in view of Harris and Spada, in order to benefit from enhancement of having a network device capable of automatically removing a server when a problem or error is detected. (Relan: See Col. 12, lines 30-40)
Claim 12. Chan in view of Harris and Spada teaches the computer-implemented method of claim 1, wherein: the data server is one of a plurality of data servers that each utilize a plurality of high- performance oscillators to maintain respective internal times; the detecting that the time of the another device has drifted more than the threshold includes comparing the time of the another device against an average internal time of all of the plurality of data servers; the another device includes another data server of the plurality of data servers; and (Chen: See Col. 1, lines 60-67 an erroneous clock offset in a substation, introduces errors which may cascade from equipment failures. It is understood that a device failure in a network, can cause drifting of time, in other devices within the network) but they don’t seem to indicate that a task such as removal process, can be performed automatically, as understood in:
the ameliorative action includes taking a high-performance oscillator of the another data server out of service in response to identifying that the high-performance oscillator is in error.
However, in a similar field, Relan in Col. 12, lines 30-40, teaches a device, such as a load balancer, can automatically remove a problematic server.
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. (Spada: See para[0040])
Relan teaches various techniques such removal of a problematic server automatically by a network device. (Relan: See Col. 12, lines 30-40)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, automatic removal of a server by a network device, as taught by Relan, with the teachings of Chan in view of Harris and Spada, in order to benefit from enhancement of having a network device capable of automatically removing a server when a problem or error is detected. (Relan: See Col. 12, lines 30-40)
Claim 17. Chan in view of Harris and Spada teaches the data server of claim 13, and a message transmitted in response to detecting that the time maintained by the time server of the network has drifted more than the threshold,
but they don’t seem to indicate that a task such as removal process, can be performed automatically, as understood alternatively by the applied phrase “performed autonomously” in:
wherein the ameliorative action that is executed in response to detecting that the time maintained by the another device has drifted more than the threshold is performed autonomously without human intervention.
However, in a similar field, Relan in Col. 12, lines 30-40, teaches a device, such as a load balancer, can automatically remove a problematic server.
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. . (Spada: See para[0040])
Relan teaches various techniques such removal of a problematic server automatically by a network device. (Relan: See Col. 12, lines 30-40)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, automatic removal of a server by a network device, as taught by Relan, with the teachings of Chan in view of Harris and Spada, in order to benefit from enhancement of having a network device capable of automatically removing a server when a problem or error is detected. (Relan: See Col. 12, lines 30-40)
Claim 18. Chan in view of Harris and Spada teaches the data server of claim 13, wherein: the data server is one of a plurality of data servers of the network that each utilize a plurality of high-performance oscillators to maintain respective internal times; the detecting that the time of the another device has drifted more than the threshold includes comparing the time of the another device against an average internal time of all of the plurality of data servers; the another device includes another data server of the plurality of data servers; and (Chen: See Col. 1, lines 60-67 an erroneous clock offset in a substation, introduces errors which may cascade from equipment failures. It is understood that a device failure in a network, can cause drifting of time, in other devices within the network) but they don’t seem to indicate that a task such as removal process, can be performed automatically, as understood in:
the ameliorative action includes taking a high-performance oscillator of the another data server out of service in response to identifying that the high-performance oscillator is in error.
However, in a similar field, Relan in Col. 12, lines 30-40, teaches a device, such as a load balancer, can automatically remove a problematic server.
Chan teaches techniques related to determining an average of several received “clock data” from different devices, wherein “clock data” is a device’s drift from the synchronized time of another time source, and by comparing it to a preset threshold, deciding to choose one of those clocks as a master clock and synchronizing all other clocks with the newly elected master clock. (Chan: See Col. 4, lines 30-40, and Col. 5, lines 15-25)
Harris teaches time synchronization techniques, including notifications sent to administrator to perform proper actions. (Harris: See Col. 4, lines 30-40 and Col. 5, lines 15-25)
Spada teaches an end station can determine if a grandmaster clock, based on its time value difference, has an out of range time value, after which the clock source, transmits a message, to a network administrator, or a network management entity that may be an automated system, including the clock ID and its time value status. . (Spada: See para[0040])
Relan teaches various techniques such removal of a problematic server automatically by a network device. (Relan: See Col. 12, lines 30-40)
It would have been obvious to one of ordinary skill before the time of effective filling, to have included, automatic removal of a server by a network device, as taught by Relan, with the teachings of Chan in view of Harris and Spada, in order to benefit from enhancement of having a network device capable of automatically removing a server when a problem or error is detected. (Relan: See Col. 12, lines 30-40)
Conclusion
7. 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 extension fee 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 date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MAJID ESMAEILIAN whose telephone number is (571)270-7830. The examiner can normally be reached on M-F. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Chirag Shah can be reached on 571-272-3144. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/M. E./
Examiner, Art Unit 2477
/GREGORY B SEFCHECK/Primary Examiner, Art Unit 2477