DETAILED ACTION
This is in response to the application filed on October 18th 2024, in which claims 1-20 are presented for examination.
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 .
Drawings
The drawings are objected to as failing to comply with 37 CFR 1.84(p)(5) because they include the following reference character(s) not mentioned in the description: 312 (Fig. 3). Corrected drawing sheets in compliance with 37 CFR 1.121(d), or amendment to the specification to add the reference character(s) in the description in compliance with 37 CFR 1.121(b) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
The drawings are objected to as failing to comply with 37 CFR 1.84(p)(4) because reference character “404” has been used to designate both volatile memory and GUI. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-2, 4-9, 11-16 and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Nagineni et al. US 7,937,617 B1 in view of Specht et al. US 2020/0252319 A1.
Regarding claim 1, Nagineni discloses:
providing a storage array having one or more communication paths over a network to a host (host connected to storage array – abstract, Figs. 2-3);
determining, by the storage array, a link-alive command associated with the host (paths are monitored using well known techniques such as heartbeats, keep-alive messages, etc. – see abstract, col. 12 ln. 10-20);
detecting, by the storage array, a first link-alive command from the host (paths are monitored using well known techniques such as heartbeats, keep-alive messages, etc. – see abstract, col. 12 ln. 10-20);
detecting, by the storage array, a second link-alive command from the host (paths are monitored using well known techniques such as heartbeats, keep-alive messages, etc. – see abstract, col. 12 ln. 10-20; the monitoring is performed “repeatedly”, thus there is at least a second link-alive command); and
determining, by the storage array, a path error (determine path error and perform fail-back – see abstract, col. 4 ln. 60 – col. 5 ln. 8; col. 7 ln. 5-20 and Fig. 8).
Nagineni does not explicitly disclose measuring, by the storage array, a first period between the first and second link-alive commands; defining, by the storage array, a monitoring threshold based on the first period; and determining, by the storage array, a path error if a second period between two subsequent link-alive commands exceeds the monitoring threshold. But this is taught by Specht.
Specht discloses a host with paths to a storage array (Fig. 5), and measuring heartbeat timing (abstract, Fig. 10) in order to determine a path error (Fig. 11). For example, Specht teaches time stamping heartbeats (i.e. link-alive command) and then determining a threshold which is based on the frequency of the heartbeats (see paragraphs 35, 96). When a heartbeat does not arrive on time (i.e. exceeds the monitoring threshold), it determines there is a path error (Fig. 11).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Nagineni with the period measurement and error determination techniques taught by Specht. It is very well-known in the art to expect things at a certain time. And when things do not arrive at the expected time (i.e. exceed monitoring threshold), then it can be inferred that a problem/error has occurred. This is merely the combination of a well-known technique according to its established function in order to yield a predictable result.
Regarding claim 2, Nagineni does not explicitly disclose determining an operating system of the host but this is taught by Specht as exchanging information including host operating system (paragraph 26). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Nagineni to determine the operating system as taught by Specht for the purpose of configuring a storage array/network. Specht suggests this allows the system to perform logging and registration (paragraph 26). One of ordinary skill in the art would understand this information is useful for analysis.
Regarding claim 4, Nagineni discloses the link-alive command is at least one of an inquiry command or a test unit command (SCSI inquiry command – col. 12 ln. 18-20).
Regarding claim 5, Nagineni discloses generating an alert (issue instructions/commands upon detecting path failure – see col. 7 ln. 6-16). Nagineni does not explicitly disclose the second period exceeds the monitoring threshold but this is taught by Specht as explained above. The motivation to combine is the same.
Regrading claim 6, Nagineni discloses determining the path error includes a determination of a powered host (multiple hosts and multiple paths to storage array – Fig. 7; the determination of a failed path includes determining which host – col. 4 ln. 40-45, col. 7 ln. 1-42). Nagineni does not explicitly disclose determination of a compromised OS but this is obvious based on the teachings of Nagineni and in view of Specht. Under the BRI in view of the specification, the term “compromised operating system” includes an operating system error (e.g. see paragraphs 5, 7 and 9 which all teach determining the path error may include determination of a compromised operating system, and the path error may be one of an operating system error). Nagineni at least suggests determining an operating system error by teaching that the path failure may be caused by failures in the host (see col. 9 ln. 62 – col. 10 ln. 7 and Fig. 3). And Specht explicitly discloses a host OS (paragraph 26). Thus the combination results in determining a “compromised” operating system because a failure in the host can be identified including the host operating system.
Regrading claim 7, Nagineni discloses the path error is one or more of a switch failure, a host bus adapter failure, a cable failure, and an operating system error (failures can be caused by many things including power losses which would cause bus failures and operating system errors, as well as cable routing “cable failure” – see col. 9 ln. 53-61).
Regarding claim 8, it is a system claim that corresponds to the method of claim 1, therefore it is rejected for the same reasons. Nagineni also discloses a memory and processor for performing the method (Figs. 3, 10).
Regarding claims 9, 11-14, they correspond to previously presented dependent claims 2, 4-7 respectively. Therefore, they are also rejected for the same reasons.
Regarding claim 15, it is a non-transitory computer readable medium claim that corresponds to the method of claim 1; thus it is rejected for the same reasons.
Regarding claims 16 and 18-20, they correspond to previously presented dependent claims 2, 4-5 and 7 respectively. Therefore, they are also rejected for the same reasons.
Claim(s) 3, 10 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Nagineni and Specht in view of Mishra et al. US 2007/0067589 A1.
Regarding claims 3, 10 and 17, Nagineni does not explicitly disclose the command includes receiving FDMI data from a switch on the one or more paths but this is taught by Mishra (use FDMI – paragraph 53). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the combination of Nagineni and Specht to use FDMI as taught by Mishra. Mishra discloses FDMI is a known protocol in the art that provides for information relating to storage devices to be collected and receive information about devices (e.g. discovery).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Ofek et al. 5,889,935 discloses two link paths between a host and data storage system, when a link path fails, communication continues on the other link path and the storage system sends an error message to the host identifying the failed link path (Fig. 1, col. 27 ln. 58-62).
Roy et al. US 7,711,978 B1 discloses monitoring network events to proactively detect and handle path errors/outages to storage devices before I/O requests fail (abstract, Fig. 1).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JASON D RECEK whose telephone number is (571)270-1975. The examiner can normally be reached Flex M-F 9-5.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Umar Cheema can be reached at 571-270-3037. 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.
/JASON D RECEK/Primary Examiner, Art Unit 2458