DETAILED ACTION
The present application is being examined under the pre-AIA first to invent provisions.
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 5/28/26 has been entered.
1. CLAIMS STATUS
Date of Priority
The Examiner notes the date of priority for the instant application is associated with US provisional application 61/290,775 dated 12/29/2009 (see paragraph 1 of the Applicant’s specification) and thus the application should be as pre-AIA based on this priority date. However, the Examiner further notes that the claims (as currently presented) appear to merely have priority to US Application 16/050583 filed 7/31/18, and as such the Examiner notes that the claims are being treated under AIA rules based on this information. The Applicant should correct the Examiner if the Applicant disagrees.
2. REJECTIONS BASED ON PRIOR ART
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim Rejections - 35 USC ' 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-15 and 17-18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Denis (US 20080225714) in view of Horowitz (US 20170344441) and DeBie (US 20080155652).
With respect to claim 1, the Denis reference teaches a method for execution by one or more computing devices of a storage network, the method comprises:
processing an access request in accordance with a data processing plan, (paragraph 24, where service requests are received from one or more requester nodes (not shown) which may make use or not of results from the service requests. The service requests are distributed based on a resource allocation plan known to the load balancing node 110. A resource allocation plan proposal is calculated by the resource balancer function 130 based on remaining capacity from the various service nodes 120-126; and paragraph 31, where the new remaining capacity value of 11 is sent 214 to the resource balancer function 130. Upon reception of the new remaining capacity value, the resource balancer function 130 can calculate a resource attribution plan proposal (216) therewith) and wherein the processing the access request includes:
identifying two or more processing units of a plurality of processing units of the storage network based on availability information regarding the plurality of processing units; (paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220). The load balancing node 110 could also measure the variation from the last proposed allocation plan or the active allocation plan and decide not to apply the proposal if at least one of the attribution or the average of change does not meet a predetermine threshold (e.g., 15% variation compared to previous attribution, etc.); and see fig. 2; and table 2; and paragraph 18, where a remaining capacity value can be calculated over a determined period of measurement. In the context of tasks or service requests treatment, for instance, the remaining capacity could be a number of events that could have been handled during a last period of measurement or a number of free processor cycles during the last period of measurement.
determining processing capabilities of each of the two or more processing units; (paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220))
selecting a processing unit of the two or more processing units to process the access request based on a favorable comparison of the processing capabilities of the processing unit and the data processing plan; (paragraph 32, where the resource balancer function 130 calculates a resource attribution plan proposal 216 and obtains a resource attribution plan proposal of 35%, 32.5% and 32.5% respectively for SN 1 120, SN 2 122 and SN 3 124; paragraphs 33-34, where the load balancing node 110 can accept or reject the plan based on the resources) and
sending the access request to the processing unit to facilitate executing the access request. (paragraph 38, where load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2. It is also assumed for the sake of the example of FIG. 2 that the load balancing node 110 does not send the applied attribution plan to the resource balancer 130 (i.e., does not execute a step similar to 222))
However, the Denis reference does not explicitly teach wherein the data processing plan is determined based on at least one of a desired level of security requirement and a desired level of rebuilding requirement; and wherein the data processing plan includes a data type associated with data of the access request; and selecting a processing unit of the two or more processing units to process the access request based on a favorable comparison of the processing capabilities of the processing unit and the data type of the data processing plan. (emphasis added)
The Horowitz reference teaches it is conventional to have wherein the data processing plan includes a data type associated with data of the access request; and selecting a processing unit of the two or more processing units to process the access request based on a favorable comparison of the processing capabilities of the processing unit and the data type of the data processing plan. (Horowitz, paragraph 78, where the primary node 302 and/or the secondary nodes 308, 310 are configured to respond to read operation requests by either performing the read operation at that node or by delegating the read request operation to another node (e.g., a particular secondary node 308). Such delegation may be performed based on load-balancing and traffic direction techniques; and the system can determine based on analyzing client requested data what snapshot is associated with the requested data and what node hosts the respective data or snapshot that can be used to provide the requested data. In one example, a data routing processor accesses configuration files for respective replica sets to determine what node can respond to a data request, and further analysis of respective snapshots can determine, for example, what node within a replica set needs to be accessed)
It would have been obvious to a person of ordinary skill in the art before the claimed invention was effectively filed to modify the Denis reference to have wherein the data processing plan includes a data type associated with data of the access request; and selecting a processing unit of the two or more processing units to process the access request based on a favorable comparison of the processing capabilities of the processing unit and the data type of the data processing plan, as taught by the Horowitz reference.
The suggestion/motivation for doing so would have been to allow load-balancing and traffic direction techniques. (Horowitz, paragraph 78)
However, the combination of the Denis and Horowitz references does not explicitly teach wherein the data processing plan is determined based on at least one of a desired level of security requirement and a desired level of rebuilding requirement.
The DeBie reference teaches it is conventional to have wherein the data processing plan is determined based on at least one of a desired level of security requirement and a desired level of rebuilding requirement. (paragraph 47, where users in the pre-file plan document access control list may have read-only and/or read-write privileges to the document. The rule for making existing security read-only adds the users indicated in the pre-file plan document access control list to the file plan document access control list with read-only access permission. Thus, the users in the pre-file plan document access control list having read and write access to the document before the document is added to the file plan will have read-only access after the document is added to the file plan)
It would have been obvious to a person of ordinary skill in the art before the claimed invention was effectively filed to modify the Denis and Horowitz references to have wherein the data processing plan is determined based on at least one of a desired level of security requirement and a desired level of rebuilding requirement, as taught by the DeBie reference.
The suggestion/motivation for doing so would have been to provide a framework to allow for multiple access control lists from different sources and other information to be used to determine the file plan document access control list to apply to a document added to a file plan, which allows the administrator to flexibly define how an access control list for a document in a file plan will be determined. (Debie, paragraph 58)
Therefore it would have been obvious to combine the Denis, Horowitz, and DeBie references for the benefits shown above to obtain the invention as specified in the claim.
With respect to claim 2, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the determining the data processing plan comprises: selecting, by the one or more computing device, dispersed storage error encoding parameters for storing data of the access request in accordance with the desired level of security requirement. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2)
With respect to claim 3, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the determining the data processing plan comprises: selecting, by the one or more computing devices, dispersed storage error encoding parameters for storing data of the access request in accordance with the desired level of performance requirement. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2)
With respect to claim 4, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the determining the data processing plan comprises: selecting, by the one or more computing devices, dispersed storage error encoding parameters for storing data of the access request in accordance with the desired level of access requirement. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2)
With respect to claim 5, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the identifying the two or more processing units comprises: accessing, by the one or more computing devices, a virtual storage network table that includes, for the plurality of processing units, information regarding availability and one or more of: the data type, a data size, an access request processing type, a security indicator, a performance indicator, and a status indicator. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2 [which satisfies the ‘one or more of’ language as claimed])
With respect to claim 6, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 5, wherein the identifying the two or more processing units further comprises: when the information is obtained, correlating, by the one or more computing devices, the information regarding the one or more of: the data type, the data size, the security indicator, the performance indicator, and the status indicator with the data processing plan; and identifying, by the one or more computing devices, processing units having information that correlates with the data processing plan as the two or more processing units. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2 [which satisfies the ‘one or more of’ language as claimed])
With respect to claim 7, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 5, wherein the identifying the two or more processing units comprises: receiving, by the one or more computing devices, messages from processing units of the plurality of processing units in response to a query-response protocol to obtain the information. (Denis, paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220). The load balancing node 110 could also measure the variation from the last proposed allocation plan or the active allocation plan and decide not to apply the proposal if at least one of the attribution or the average of change does not meet a predetermine threshold (e.g., 15% variation compared to previous attribution, etc.))
With respect to claim 8, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the identifying the two or more processing units comprises: receiving, by one or more the computing devices, a command identifying the two or more processing units. (Denis, paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220). The load balancing node 110 could also measure the variation from the last proposed allocation plan or the active allocation plan and decide not to apply the proposal if at least one of the attribution or the average of change does not meet a predetermine threshold (e.g., 15% variation compared to previous attribution, etc.))
With respect to claim 9, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the identifying the two or more processing units comprises: performing, by the one or more computing devices, a lookup of available processing units of the plurality of processing units. (Denis, paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220). The load balancing node 110 could also measure the variation from the last proposed allocation plan or the active allocation plan and decide not to apply the proposal if at least one of the attribution or the average of change does not meet a predetermine threshold (e.g., 15% variation compared to previous attribution, etc.))
With respect to claim 10, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the identifying the two or more processing units comprises: identifying, by the one or more computing devices, a predetermined two or more processing units as the two or more processing units. (Denis, paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220). The load balancing node 110 could also measure the variation from the last proposed allocation plan or the active allocation plan and decide not to apply the proposal if at least one of the attribution or the average of change does not meet a predetermine threshold (e.g., 15% variation compared to previous attribution, etc.))
With respect to claim 11, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the processing capabilities comprises a current capacity and a current loading. (Denis, paragraph 33, where the resource balancer function 130 sends the resource attribution plan proposal to the load balancing node 110 218. The load balancing node 110 can then apply the proposed resource allocation plan (220). The load balancing node 110 could also measure the variation from the last proposed allocation plan or the active allocation plan and decide not to apply the proposal if at least one of the attribution or the average of change does not meet a predetermine threshold (e.g., 15% variation compared to previous attribution, etc.))
With respect to claim 12, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the processing capabilities comprises an uptime history and a performance history. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2)
With respect to claim 13, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the processing capabilities comprises data types supported and data types not supported. (Horowitz, paragraph 78, where the primary node 302 and/or the secondary nodes 308, 310 are configured to respond to read operation requests by either performing the read operation at that node or by delegating the read request operation to another node (e.g., a particular secondary node 308). Such delegation may be performed based on load-balancing and traffic direction techniques; and the system can determine based on analyzing client requested data what snapshot is associated with the requested data and what node hosts the respective data or snapshot that can be used to provide the requested data. In one example, a data routing processor accesses configuration files for respective replica sets to determine what node can respond to a data request, and further analysis of respective snapshots can determine, for example, what node within a replica set needs to be accessed)
With respect to claim 14, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the processing capabilities comprises access requests supported. (Horowitz, paragraph 78, where the primary node 302 and/or the secondary nodes 308, 310 are configured to respond to read operation requests by either performing the read operation at that node or by delegating the read request operation to another node (e.g., a particular secondary node 308). Such delegation may be performed based on load-balancing and traffic direction techniques; and the system can determine based on analyzing client requested data what snapshot is associated with the requested data and what node hosts the respective data or snapshot that can be used to provide the requested data. In one example, a data routing processor accesses configuration files for respective replica sets to determine what node can respond to a data request, and further analysis of respective snapshots can determine, for example, what node within a replica set needs to be accessed)
With respect to claim 15, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the processing capabilities comprises security restrictions. (Horowitz, paragraph 74, where users are able to leverage the same query language, data model, scaling, security and operational tooling across different applications, each powered by different pluggable storage engines)
With respect to claim 17, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1, wherein the identifying the two or more processing units is further based on the data processing plan. (Denis, paragraph 38, where the load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2)
With respect to claim 18, the combination of the Denis, Horowitz, and DeBie references teaches the method of claim 1 further comprises: selecting, by the one or more computing devices, one or more processing options of the processing unit to process the access request according to the data processing plan; and sending the selection of the one or more processing options to the processing unit, wherein the processing unit processes the access request in accordance with the one or more processing options. (Denis, paragraph 38, where load balancing node 110, which is likely to know about the absence of SN 1 120 (failure to answer service requests), modifies the proposal received in 236 (by removing SN 1 120) and applies the modified attribution plan proposal 238 in the example of FIG. 2. It is also assumed for the sake of the example of FIG. 2 that the load balancing node 110 does not send the applied attribution plan to the resource balancer 130 (i.e., does not execute a step similar to 222))
Claims 16 and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Denis (US 20080225714) in view of Horowitz (US 20170344441) and DeBie (US 20080155652) as shown in the rejections above, and in further view of Ferlitsch (US 20050225789).
With respect to claim 16, the combination of the Denis, Horowitz, and DeBie references does not explicitly teach the method of claim 1, wherein the processing capabilities comprises encryption algorithms supported.
The Ferlitsch reference teaches it is conventional to have wherein the processing capabilities comprises encryption algorithms supported. (paragraph 40, where printer pooling includes functions for routing a print job to one or more printers on the basis of availability, load balancing, performance, capability, locality, power consumption, and/or other resource usage; and analysis actions also include access control and security, where security involves encryption, auditing, steganography (e.g., using undefined bits in a file to hide a message), digital signatures, and types of encoding functions. Further, analysis may involve content filtering and resource downloading (e.g., form/font/overlay/watermark). Other examples of analysis are compression …)
It would have been obvious to a person of ordinary skill in the art before the claimed invention was effectively filed to modify the combination of the Denis, Horowitz, and DeBie references to have wherein the processing capabilities comprises encryption algorithms supported, as taught by the Ferlitsch reference.
The suggestion/motivation for doing so would have been to allow routing of a print job to an appropriate printer based on capabilities and functionality. (Ferlitsch, paragraph 40)
Therefore it would have been obvious to combine the Denis, Horowitz, DeBie, and Ferlitsch references for the benefits shown above to obtain the invention as specified in the claim.
With respect to claim 19, the combination of the Denis, Horowitz, and DeBie references does not explicitly teach the method of claim 18, wherein the processing options comprises compression type and rebuilding options.
The Ferlitsch reference teaches it is conventional to have wherein the processing options comprises compression type and rebuilding options. (paragraph 40, where printer pooling includes functions for routing a print job to one or more printers on the basis of availability, load balancing, performance, capability, locality, power consumption, and/or other resource usage; and analysis actions also include access control and security, where security involves encryption, auditing, steganography (e.g., using undefined bits in a file to hide a message), digital signatures, and types of encoding functions. Further, analysis may involve content filtering and resource downloading (e.g., form/font/overlay/watermark). Other examples of analysis are compression …)
It would have been obvious to a person of ordinary skill in the art before the claimed invention was effectively filed to modify the combination of the Denis, Horowitz, and DeBie references to have wherein the processing options comprises compression type and rebuilding options, as taught by the Ferlitsch reference.
The suggestion/motivation for doing so would have been to allow routing of a print job to an appropriate printer based on capabilities and functionality. (Ferlitsch, paragraph 40)
Therefore it would have been obvious to combine the Denis, Horowitz, Debie, and Ferlitsch references for the benefits shown above to obtain the invention as specified in the claim.
With respect to claim 20, the combination of the Denis, Horowitz, and DeBie references does not explicitly teach the method of claim 1, wherein the processing options comprises encryption type and encoding function type.
The Ferlitsch reference teaches it is conventional to have wherein the processing options comprises encryption type and encoding function type. (paragraph 40, where printer pooling includes functions for routing a print job to one or more printers on the basis of availability, load balancing, performance, capability, locality, power consumption, and/or other resource usage; and analysis actions also include access control and security, where security involves encryption, auditing, steganography (e.g., using undefined bits in a file to hide a message), digital signatures, and types of encoding functions. Further, analysis may involve content filtering and resource downloading (e.g., form/font/overlay/watermark). Other examples of analysis are compression …)
It would have been obvious to a person of ordinary skill in the art before the claimed invention was effectively filed to modify the combination of the Denis, Horowitz, and DeBie references to have wherein the processing options comprises encryption type and encoding function type, as taught by the Ferlitsch reference.
The suggestion/motivation for doing so would have been to allow routing of a print job to an appropriate printer based on capabilities and functionality. (Ferlitsch, paragraph 40)
Therefore it would have been obvious to combine the Denis, Horowitz, DeBie, and Ferlitsch references for the benefits shown above to obtain the invention as specified in the claim.
3. ARGUMENTS CONCERNING PRIOR ART REJECTIONS
Rejections - USC 102/103
Applicant's arguments (see pages 6-7 of the remarks) and amendments with respect to claims 1-20 have been considered, and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of DeBie reference to teach the newly amended claim language as shown in the rejections above.
4. CLOSING COMMENTS
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PRASITH THAMMAVONG whose telephone number is (571) 270-1040. The examiner can normally be reached Monday - Friday 12-8 PM EST.
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, Arpan Savla can be reached on (571) 272-1077. 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.
/PRASITH THAMMAVONG/
Primary Examiner, Art Unit 2137