Ex Parte Beeson et alDownload PDFPatent Trial and Appeal BoardOct 31, 201714099820 (P.T.A.B. Oct. 31, 2017) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE FIRST NAMED INVENTOR 14/099,820 12/06/2013 Jesse D. BEESON 142922 7590 11/02/2017 WOMBLE CARLYLE SANDRIDGE & RICE, LLP P.O. Box 7037 Atlanta, GA 30357-0037 UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www .uspto.gov ATTORNEY DOCKET NO. CONFIRMATION NO. C67508 1080US.l 1535 EXAMINER GIARDINO JR, MARK A ART UNIT PAPER NUMBER 2135 NOTIFICATION DATE DELIVERY MODE 11/02/2017 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address( es): IPDocketing@wcsr.com MGencarella@wcsr.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte JESSE D. BEESON and JESSE B. YATES (Applicant: CONCURRENT VENTURES, LLC) Appeal2017-005950 Application 14/099 ,820 Technology Center 2100 Before JASON V. MORGAN, JEREMY J. CURCURI, and MICHAEL M. BARRY, Administrative Patent Judges. BARRY, Administrative Patent Judge. DECISION ON APPEAL Appellants 1 appeal under 35 U.S.C. § 134(a) from a Final Rejection of claims 1-15. We have jurisdiction under 35 U.S.C. § 6(b). We affirm. 1 Appellants list Pure Storage, Inc. as the real party in interest. App. Br. 1 Appeal2017-005950 Application 14/099 ,820 Introduction Appellants state the invention relates to "dynamically load balancing storage media devices based on a minimum performance level." Spec. 2:4--5 (Field of Invention), Title. What is absent in the prior art is a system and method that brings load balancing methodologies typically applied at a macro level (to networks outside of the storage systems or compute systems) down to the micro level within the storage system itself and [is] applied across the storage media devices within that system using criteria specific to storage media devices. Spec. 2:14--19. Claim 1 is illustrative: 1. A storage system comprising: a plurality of storage media devices, each storage media device comprising one or more addressable storage regions, each region assigned a weight based on at least a fast or slow access rate, where regions having fast access rate are weighted differently than regions having slow access rate; a storage controller controlling said plurality of storage media devices, said storage controller: receives one or more commands from a queue representing a load; identifies a minimum performance level required for said load; identifies a first set of weighted storage regions having a slow access rate across said plurality of storage media devices and a second set of weighted storage regions having a fast access rate in said plurality of storage media devices; identifies a subset of storage regions within said first set of weighted storage regions having a slow access rate that satisfies said identified minimum performance level; and 2 Appeal2017-005950 Application 14/099 ,820 distributes said load based on said identified minimum performance level by utilizing only said subset of storage regions within said first set of weighted storage regions having said slow access rate and holding said second storage region having said fast access rate in reserve wherein the performance level is based on weights that include previous performance and real time performance. App. Br. 18 (Claims App'x). Rejections Claims 1-3, 6-10, and 13-15 stand rejected under 35 U.S.C. § 103(a) as unpatentable over Belluomini (US 8,706,962 B2; Apr. 22, 2014), Chatterjee (US 6,675,195 Bl; Jan. 6, 2004), and Merchant (US 2011/ 0145449 Al; June 16, 2011). See Final Act. 3-7.2 Claims 4, 5, 11, and 12 stand rejected under 35 U.S.C. § 103(a) as unpatentable over Belluomini, Merchant, Chatterjee, and Rabii (US 2010/ 0281230 Al; Nov. 4, 2010). See Final Act. 8. ISSUES (APPELLANTS' CONTENTIONS) Appellants contend the Examiner errs in rejecting claim 13 because the cited prior art cited does not teach or suggest the following limitations: ( 1) "a plurality of storage media devices, each storage media device comprising one or more addressable storage regions, each region assigned a weight based on at least a fast or slow access rate, 2 The Final Rejection incorrectly identifies the numbering for several claims and fails to discuss the grounds of rejection for claim 10. It is apparent the Examiner intended to reject claim 10 for the same reason as claim 3 and, in any event, Appellants do not challenge the Examiner's omission. Our summary of the rejections corrects the Examiner's errors. 3 Appellants argue the patentability of claims 2-15 solely based on the arguments presented for claim 1. App. Br. 15-17. Accordingly, all claims stand or fall with claim 1. See 37 C.F.R. § 41.37(c)(l)(iv). 3 Appeal2017-005950 Application 14/099 ,820 where regions having fast access rate are weighted differently than regions having slow access rate" (App. Br. 6-10); (2) a storage controller that "identifies a first set of weighted storage regions having a slow access rate across said plurality of storage media devices and a second set of weighted storage regions having a fast access rate in said plurality of storage media devices" (id. at 10-11); (3) a storage controller that "distributes said load based on said identified minimum performance level by utilizing only said subset of storage regions within said first set of weighted storage regions having said slow access rate and holding said second storage region having said fast access rate in reserve wherein the performance level is based on weights that include previous performance and real time performance" (id. at 11-12); and ( 4) a storage controller that "receives one or more commands from a queue representing a load" (id. at 12-14). ANALYSIS We review the appealed rejections for error based upon the issues identified by Appellants, and in light of the arguments and evidence produced thereon. Ex parte Frye, 94 USPQ2d 1072, 1075 (BPAI 2010) (precedential). We have reviewed the Examiner's rejections in light of Appellants' contentions of reversible error. We disagree with Appellants' conclusions. Instead, for each contested finding, we adopt the Examiner's findings and reasons as set forth in the Final Rejection from which this appeal is taken and as set forth in the Answer. We highlight the following for emphasis. 1. Storage Devices Comprising Weighted Addressable Storage Regions In rejecting claim 1, the Examiner relies primarily on Belluomini, which discloses a multi-tier storage system in which each tier "has a single and unique type of storage based on a storage tiers' performance/cost/energy 4 Appeal2017-005950 Application 14/099 ,820 profile" (Belluomini 3 :4 7--49). See Final Act. 3--4. The Examiner finds, inter alia, Belluomini teaches "a plurality of storage media devices, each storage media device comprising one or more addressable storage regions, each region assigned a weight based on at least a fast or slow access rate, where regions having fast access rate are weighted differently than regions having slow access rate," as recited. Id. at 3 (citing Belluomini Fig. 1, 3:41- 65). Appellants argue the Examiner errs because "Belluomini does not teach that each storage device comprises one or more addressable storage regions that are each assigned a weight based upon an access rate." App. Br. 7. Specifically, Appellants contend the Examiner errs because "Belluomini is silent as to assigning weight to any storage region of the storage devices 108a-n. Belluomini is silent as to assigning a weight to a storage region that is weighted differently based upon its associated access rate." App. Br. 8. This argument is unpersuasive. We agree with the Examiner that an ordinarily skilled artisan would have understood Belluomini' s storage devices to have addressable storage regions. See Final Act. 3, Ans. 4--5. The artisan further would have understood Belluomini, by disclosing assignment of storage devices to tiers based on performance, teaches or suggests assigning a storage device to a tier based on an associated access rate of the storage device. See Final Act. 3, Ans. 3-5; see also Belluomini' s Background and Brief Summary ( 1: 15- 2 :34) (discussing performance criteria such as "high random access capability per gigabyte" for solid-state drives, and using "data access and resource information" for configuring different data storage devices into different performance tiers). 5 Appeal2017-005950 Application 14/099 ,820 We agree with the Examiner that, by assigning one device to a "tier with high performance storage" and a second device to a "tier with cheaper and more conventional storage" (Belluomini 3 :41---65), the artisan would have understood that "media with a fast access rate is weighted by the system of Belluomini to be assigned to a first tier, and media with a slow access rate is weighted by the system of Belluomini to be assigned to another tier" (Ans. 5). In other words, by disclosing assignment to tiers based on relative performance, Belluomini teaches assigning a relative performance "weight" for a storage device (and its constituent region(s)). 4 In reply, Appellants argue the Examiner errs by not showing how Belluomini teaches "storage regions within a storage media device that are assigned weights individual to each storage region within the storage media device." Reply Br. 2. This argument is unpersuasive. The requirement of "each storage media device comprising one or more addressable storage regions," as recited, requires a storage device to have no more than one (i.e., "one or more") addressable storage region. The broadest reasonable interpretation, in light of the Specification, of "a plurality of storage media devices, each storage media device comprising one or more addressable storage regions, each region assigned a weight based on at least a fast or slow access rate, where regions having fast access rate are weighted differently than regions having slow access rate," as the skilled artisan would have understood it, encompasses Belluomini' s tiered storage system 4 In view of Appellants' Specification and Claims, "weight" encompasses the ordinary, relevant dictionary meanings of "importance" and "relative 6 Appeal2017-005950 Application 14/099 ,820 in which the storage regions of storage devices are assigned to tiers with different performance levels. See Ans. 3-5. We note that, consistent with Appellants' argument in the Reply Brief, the storage devices of Appellants' preferred embodiment in the Specification and Drawings each have multiple storage regions with different access rates. See Fig. 1, Spec. 9:7-16. We decline to limit the scope of claim 1 based on this embodiment. On this point Appellants' Specification is clear: "[ w ]hile this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular inventions." Spec. 21: 16- 19; see also id. at 22: 18-19 ("particular embodiments of the subject matter have been described, but other embodiments are within the scope of the following claims"). 2. Identifying Weighted Storage Regions having Slow and Fast Access Rates The Examiner finds Belluomini' s assignment of storage to different tiers based on different performance level requirements teaches a storage controller that "identifies a first set of weighted storage regions having a slow access rate across said plurality of storage media devices and a second set of weighted storage regions having a fast access rate in said plurality of storage media devices," as recited. Final Act. 3--4 (citing Belluomini Fig. 3). Appellants argue "Belluomini does not recite 'weighted storage regions,' and much less a controller that 'identifies' a first and second set of 'weighted storage regions,' as required." App. Br. 11. This argument is unpersuasive for essentially the same reasons as the prev10us issue. We agree with the Examiner that identifying "a first set of 7 Appeal2017-005950 Application 14/099 ,820 weighted storage regions having a slow access rate across said plurality of storage media devices" encompasses Belluomini' s disclosure of a storage device assigned to a tier based on its relatively slow access rate, and that identifying "a second set of weighted storage regions having a fast access rate in said plurality of storage media devices" encompasses Belluomini' s assignment of another storage device to a different tier based on its relatively faster access rate. See Ans. 6. As discussed above, storage devices include storage regions, and assigning storage devices (and their storage region(s)) to tiers effectively assigns the tiers' performance levels (access rate-based weights) to the storage regions. 3. Distributing the Load Based on Minimum Performance Level The Examiner finds the combined disclosures of Belluomini and Merchant teach or suggest a controller that distributes said load based on said identified mimmum performance level by utilizing only said subset of storage regions within said first set of weighted storage regions having said slow access rate and holding said second storage region having said fast access rate in reserve wherein the performance level is based on weights that include previous performance and real time performance, as recited. Final Act. 4--5 (citing Belluomini Fig. 3, Merchant i-fi-120, 37). Appellants argue that because Belluomini is silent as to support for weighted [] storage regions of the plurality of storage media devices and a storage controller that identifies a first and second set of weighted storage regions possessing the access rates as required in the claims, Belluomini does not disclose a storage controller that distributes a load within the first and second weighted storage region based on weights that include prev10us performance and real-time performance, as required. 8 Appeal2017-005950 Application 14/099 ,820 App. Br. 12. This is unpersuasive for two reasons. First, as discussed above, an ordinarily skilled artisan would have understood that Belluomini, by teaching assignment of storage devices with different access rates to different performance tiers is not silent as to the claimed identifying of first and second weighted storage regions with different access rates. Second, this argument does not address the Examiner's finding that Merchant teaches the requirement of "wherein the performance level is based on weights that include previous performance and real time performance," as recited. See Final Act. 5. One cannot show nonobviousness by attacking references individually when the rejection is based on a combination of references. In re Keller, 642 F.2d 413, 425 (CCPA 1981); see also In re Merck & Co., Inc., 800 F.2d 1091, 1097 (Fed. Cir. 1986) (each reference cited by the Examiner must be read, not in isolation, but for what it fairly teaches in combination with the prior art as a whole). 4. Controller that Receives Commands from a Queue Representing a Load The Examiner finds the combined disclosures of Belluomini and Chatterjee teach a storage controller that "receives one or more commands from a queue representing a load," as recited. Final Act. 3-5 (citing Belluomini 3:41-52, Chatterjee Fig. 3B, 6:15-34). Appellants argue the Examiner errs because "Belluomini' s I/O requests are not commands representing a load" and "Chatterjee does not teach that one or more commands representing a load are received ~from a queue,"' as recited by claim 1. App. Br. 13. Appellants contend the Examiner errs in relying on Chatterjee for teaching the requirement to receive commands from a queue because "Chatterjee discloses that a command receiver module 310 receives 9 Appeal2017-005950 Application 14/099 ,820 a commandfrom the client application software coupled at input 308 and stores the command in the queue 320 to be executed at a later time." Id. Appellants further contend the Examiner errs because "Chatterjee fails to disclose that the commands received by the command receiver module 310 are commands that 'represent a load.'" Id. The Examiner answers by finding "the I/O request taught [by] Belluomini represents a load. However, Belluomini does not teach a queue." Ans. 8. Acknowledging that Chatterjee "teaches storing commands in a queue 'to be executed at a later time,"' the Examiner finds that, by receiving these commands back out of the queue at a later time, Chatterjee, in view of Belluomini, teaches "receiv[ing] one or more commands from a queue representing a load," as recited. Id. at 9 (citing Chatterjee 4:58---61). We agree with the Examiner. An ordinarily skilled artisan would have understood the receipt of I/O requests by the multi-tier storage system in Belluomini (see 3 :42--43) constitutes receiving commands that represent an I/O load on the storage system. The artisan would also have understood Chatterjee's disclosure of storing of received commands in a queue for later execution (Chatterjee Figs. 3A-B; 4:5-16)5 also teaches later receiving the commands from the queue for execution. Thus, we agree with the Examiner that the combination of Belluomini and Chatterjee teaches a storage controller that "receives one or more commands from a queue representing a load," as recited. See Final Act. 3-5; Ans. 8-9. In re Keller, 642 F.2d at 425 (the relevant inquiry is whether the claimed subject matter would have 5 We agree with the Examiner "that is extremely common in the art for a computing device to store received commands in a queue, so that if the computing device is occupied with other tasks and cannot immediately execute the command upon receipt, the command is not lost." Ans. 9. 10 Appeal2017-005950 Application 14/099 ,820 been obvious to those of ordinary skill in the art in light of the combined teachings of those references). Conclusion Accordingly, for the above reasons, we sustain the rejection of claim 1 and, along with it, the rejections of claims 2-15, for which Appellants offer no substantive separate arguments. DECISION For the above reasons, we affirm the rejection of claims 1-15 under § 103(a). No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(l )(iv). AFFIRMED 11 Copy with citationCopy as parenthetical citation