DETAILED ACTION
Claims 1-20 are currently pending in the application 18/644,701, which was filed on 04/24/2024, listing the inventors as Mohod et al. and the applicant as Dell Products L.P.
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 .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 04/24/2024 is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
Claim Rejections - 35 USC § 102
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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s) 1-2, 15, and 18 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by US 2014/0047341 A1 to Breternitz et al. (herein Breternitz).
Claim 1
Breternitz shows an apparatus (Breternitz: figure 3, control server 12) comprising:
at least one processing device comprising a processor coupled to a memory (Breternitz: figure 3, configurator/processor 22 and memory);
the at least one processing device being configured:
to obtain a specification of one or more requirements (Breternitz: figure 7, in general and specifically element 214; [0102], user input from UI 200 to the configurator 22) for an input-output workload to be performed (Breternitz: [0004], a workload includes portions of processing and data; [0082], workload node monitoring corresponding I/O; see also, figure 2, [0085], [0120], [0153], [0156]-[0157], [0166]) by one or more host devices utilizing one or more storage systems (Breternitz: figure 1; [0075], nodes 16 with processors and memory);
to select, based at least in part on the specified one or more requirements for the input-output workload, at least one of a plurality of input-output software tools to utilize for performing at least a portion of the input-output workload (Breternitz: figures 7, 26-29, monitoring tools, including I/O tools; [0092]; [0153]-[0158]);
to configure, based at least in part on the specified one or more requirements for the input-output workload, at least one of the one or more host devices and the one or more storage systems to utilize the selected at least one input-output software tool (Breternitz: [0159], configurator initiates deployment of the current system configuration, from the system configuration currently identified with modules 202-216, based on user selection; automatically configures each node; see also [0165]);
to dynamically instantiate the selected at least one input-output software tool on said at least one of the one or more host devices and the one or more storage systems (Breternitz: [0158], with dynamic instrumentation, the configurator determines optimal configurations; [0164], replaces a node using similar configuration, including io tools); and
to execute the input-output workload utilizing the selected at least one input-output software tool (Breternitz: [0159], start executing workload, processing in a configuration that uses the tools; see also [0164]-[0166]).
Claim 2
Breternitz shows the apparatus of claim 1 wherein the plurality of input-output software tools comprise two or more types of input-output software tools (Breternitz: [0153], at least commercial and custom monitoring tools).
Claim 3
Breternitz shows the apparatus of claim 2 wherein the two or more types of input-output software tools comprise a first type of input-output software tools developed by a vendor of the one or more storage systems (Breternitz: [0153], commercial monitoring tools; [0008], [0076], [0200], AWS/EC2 commercial storage systems) and at least a second type of input-output software tools not developed by the vendor of the one or more storage systems (Breternitz: [0157]-[0158], for example iostat).
Claim 4
Breternitz shows the apparatus of claim 2 wherein the two or more types of input-output software tools comprise a first type of input-output software tools configured for execution of a first set of one or more input-output protocols (Breternitz: [0008], [0076], [0200], AWS/EC2 protocol) and at least a second type of input-output software tools configured for execution of a second set of one or more input-output protocols (Breternitz: [0008], [0200], OpenStack protocol), the second set of one or more input-output protocols being different than the first set of one or more input-output protocols (Breternitz: AWS and OpenStack).
Claim 5
Breternitz shows the apparatus of claim 1 wherein the plurality of input-output software tools are registered with the at least one processing device, wherein as part of registration of a given one of the plurality of input-output software tools, one or more parameters associated with the given input-output software tool are specified (Breternitz: figures 26-29, at least the tools Hadoop, Ganglia, System Tap, IO Time registered with associated parameters available for specification).
Claim 7
Breternitz shows the apparatus of claim 5 wherein the one or more parameters associated with the given input-output software tool comprise specification of one or more options required for execution of input-output workloads utilizing the given input-output software tool (Breternitz: figures 26-29, setting options/parameters).
Claim 11
Breternitz shows the apparatus of claim 1 wherein the at least one processing device is further configured to generate, based at least in part on the execution of the input-output workload utilizing the selected at least one input-output software tool, one or more logs (Breternitz: [0085], [0168]-[0169], logs).
Claim 12
Breternitz shows the apparatus of claim 11 wherein the at least one processing device is further configured, responsive to detecting one or more issues encountered in association with execution of the input-output workload, to perform debugging utilizing the generated one or more logs (Breternitz: [0085], analyze data for monitoring operations and workload performance; [0095], [0168], log files for further analysis).
Claim 13
Breterntiz shows the apparatus of claim 11 wherein the at least one processing device is further configured to provide, via a user interface, access to the generated one or more logs (Breternitz: [0168], analyze logs and display).
Claim 14
Breternitz shows the apparatus of claim 1 wherein:
the input-output workload comprises performance benchmarking testing of the one or more storage systems (Breternitz: [0002], [0010], performance benchmark; [0016], analyze workload performance) and the specified one or more requirements comprise one or more test environment details for the performance benchmark testing and one or more performance metrics to analyze (Breternitz: [0018], configuration parameters allow analysis of varying characteristics; [0095], instructions for testing parameters and analysis; [0145]-[0146]; [0166], monitoring tools based on configuration);
selecting the at least one of the plurality of input-output software tools is based at least in part on the specified one or more performance metrics to analyze (Breternitz: [0109], differing configurations to analyze);
configuring said at least one of the one or more host devices and the one or more storage systems comprises: determining a test bed configuration based on the specified one or more test environment details (Breternitz: [0138]-[0139], test workload targeting specific architectural details); and generating a test bed on at least one of at least one of the one or more host devices and at least one of the one or more storage systems in accordance with the determined test bed configuration (Breternitz: [0140], [0166], monitoring tools based on configuration); and
the at least one processing device is further configured to provide, via a user interface, performance results for the performance benchmark testing (Breternitz: [0168]-[0169], display results, generate statistics, graphs, etc.).
Claims 15 and 18
The limitations of claims 15 and 18 substantially correspond to the limitations of claim 1 and as such are rejected in a corresponding manner.
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) 6 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2014/0047341 A1 to Breternitz et al. (herein Breternitz) in view of “Survey of Open Source Tools for Monitoring I/O & Storage Performance of HPC Systems” to Gupta et al. (herein Gupta).
Claim 6
While Breternitz may not explicitly state the apparatus of claim 5 wherein the one or more parameters associated with the given input-output software tool comprise: a description of the given input-output software tool and a syntax for usage of the given input-output software tool, Gupta demonstrates that it was known before the effective filing date of the claimed invention to provide descriptions of io software tools (Gupta: pages 3-10, section IV.), and to provide syntax for the usage of an io software tool (Gupta: pages 5, section IV.A., “hpcmd is … configurable via a YAML file”). Additionally, Breternitz shows it was known to provide descriptions of in a configuration system via a user interface (Breternitz: figure 7, items 226, 227). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to implement the parameters of an io tool with a description and syntax as suggested by the teachings of Gupta. This implementation would have been obvious because one of ordinary skill in the art would have found: the implementation of is an application of a known element/technique yielding a predictable result using an acceptable piece of prior art; both references are directed to io monitoring tools; and providing a description and use syntax is helpful to a user as it makes usage easier and quicker in referencing useful related information.
Claim 8
While Breternitz may not explicitly state the apparatus of claim 5 wherein the one or more parameters associated with the given input-output software tool comprise a description of one or more designated types of input-output protocols supported by the given input-output software tool, Gupta demonstrates that it was known before the effective filing date of the claimed invention to provide descriptions of io software tools (Gupta: pages 3-10, section IV.) and for tools to support io protocols (Gupta: page 5, section IV.B., MacOSX, Solaris, linux). Additionally, Breternitz shows it was known to provide descriptions of in a configuration system via a user interface (Breternitz: figure 7, items 226, 227), and supported io protocols (Breternitz: AWS and OpenStack). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to implement the parameters of an io tool with a description of supported io protocols as suggested by the teachings of Gupta. This implementation would have been obvious because one of ordinary skill in the art would have found: the implementation of is an application of a known element/technique yielding a predictable result using an acceptable piece of prior art; both references are directed to io monitoring tools; and providing a description of supported io protocols is helpful to a user as it makes usage easier and quicker in referencing useful related information.
Claim(s) 9, 16, and 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2014/0047341 A1 to Breternitz et al. (herein Breternitz) in view of US 2014/0007189 A1 to Huynh et al. (herein Huynh).
Claim 9
Breternitz shows the apparatus of claim 1 wherein configuring said at least one of the one or more host devices and the one or more storage systems comprises: instantiating one or more storage protocol-specific storage clients on the one or more host devices (Breternitz: [0008], [0076], selecting AWS/EC2, or OpenStack protocols, also [0200]; [0074], [0106], implementing instances).
Breternitz does not explicitly state creating one or more storage protocol-specific exports on the one or more storage systems. However, Huynh demonstrates that it was known before the effective filing date of the claimed invention to create protocol-specific exports, for example NFS, on storage systems (Huynh: [0081], allowing a networked storage device to share files or a file system). Breternitz discussed sharing workload amongst other nodes (Breternitz: [0093], [0181]). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to implement the workload processing sharing nodes of Breterntiz with a storage protocol export, such as NFS, to other ones of the sharing nodes as suggested by the teachings of Huynh. This implementation would have been obvious because one of ordinary skill in the art would have found: both references are directed to shared node shared computing/storage resources; the implementation of is an application of a known element/technique for yielding a predictable result using an acceptable piece of prior art; and having nodes share an export such as NFS would be beneficial for the nodes to work together when sharing processing of workloads.
Claims 16 and 19
The limitations of claims 16 and 19 substantially correspond to the limitations of claim 9 and as such are rejected in a corresponding manner.
Claim(s) 10, 17, and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 2014/0047341 A1 to Breternitz et al. (herein Breternitz) in view of US 2014/0007189 A1 to Huynh et al. (herein Huynh) in further view of US 2018/0307945 A1 to Haigh et al. (herein Haigh).
Claim 10
While Breternitz may not explicitly state wherein instantiating the one or more storage protocol-specific storage clients on a given one of the one or more host devices comprises installing one or more prerequisite software packages for the one or more storage protocol-specific storage clients on the given host device, Haigh demonstrates that it was known before the effective filing date of the claimed invention to ensure prerequisites are installed before use/instantiation of a node (Haigh: [0098], for example install prerequisites before starting an AWS process cluster). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to implement the instantiation of storage clients of Breternitz installing software prerequisites as suggested by the teachings of Haigh. This implementation would have been obvious because one of ordinary skill in the art would have found: the implementation of is an application of a known element/technique yielding a predictable result using an acceptable piece of prior art; both references are directed to multiple processes implemented across multiple computing platforms, cluster of computing resource nodes; and it is desirable when installing/configuring to fully install/configure the software, which includes software on which it depends.
Claims 17 and 20
The limitations of claims 17 and 20 substantially correspond to the limitations of claim 10 and as such are rejected in a corresponding manner.
Correspondence Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to WILLIAM H WOOD whose telephone number is (571)272-3736. The examiner can normally be reached Monday-Friday 7am-3pm.
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, Alexander Kosowski can be reached at (571)272-3744. 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.
/William H. Wood/
Primary Examiner, Art Unit 3992