Ex Parte Beeson et alDownload PDFPatent Trial and Appeal BoardNov 24, 201714099846 (P.T.A.B. Nov. 24, 2017) Copy Citation United States Patent and Trademark Office 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 APPLICATION NO. FILING DATE FIRST NAMED INVENTOR ATTORNEY DOCKET NO. CONFIRMATION NO. 14/099,846 12/06/2013 Jesse D. BEESON C67508 1100US.1 9929 142922 7590 11/28/2017 WOMBLE BOND DICKINSON (US) LLP P.O. Box 7037 Atlanta, GA 30357-0037 EXAMINER GIARDINO JR, MARK A ART UNIT PAPER NUMBER 2135 NOTIFICATION DATE DELIVERY MODE 11/28/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 @ wbd-u s. com Mike.Gencarella@wbd-us.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 Appeal 2017-008199 Application 14/099,846 Technology Center 2100 Before JASON V. MORGAN, JEREMY J. CURCURI, and MICHAEL M. BARRY, Administrative Patent Judges. BARRY, Administrative Patent Judge. DECISION ON APPEAL Appellants1 appeal under 35 U.S.C. § 134(a) from a Final Rejection of claims 1—13. 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 Appeal 2017-008199 Application 14/099,846 STATEMENT OF THE CASE Introduction Appellants state the invention relates to “dynamically load balancing storage media devices based on an optimal sustained 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 applie[s it] across the storage media devices within that system using criteria specific to storage media devices. Spec. 2:14—18. Claim 1 is illustrative of Appellants’ claims on appeal: 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; 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 first set of weighted storage regions having a slow access rate in 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; computes an average or discounted average sustained performance level as a function of said first set of weighted storage regions having said slow access rate and said second set of weighted storage regions having said fast access rate; and 2 Appeal 2017-008199 Application 14/099,846 distributes load over time by alternating weighted storage regions so as to maintain said computed average or discounted average sustained performance level. App. Br. 18 (Claims App’x). Rejections Claims 1—13 stand provisionally rejected on the ground of nonstatutory obviousness-type double patenting over co-pending claims of Application 14/099,845. Final Act. 4—6. Claims 1,2, 5—8, and 11—13 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 Kirby (US 6,327,638 Bl; Dec. 4, 2001). Final Act. 6—10. Claims 3, 4, 9, and 10 stand rejected under 35 U.S.C. § 103(a) as unpatentable over Belluomini, Chatterjee, Kirby, and Rabii (US 2010/ 0281230 Al; Nov. 4, 2010). Final Act. 10-11. ISSUES (APPELLANTS’ CONTENTIONS) Appellants contend the Examiner errs in rejecting claim l2 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” (App. Br. 5—8); (2) a storage controller that “receives one or more commands from a queue representing a load” {id. at 8—10); (3) a storage controller that “identifies a first set of weighted storage regions having a slow access rate in said plurality of storage 2 Appellants argue the patentability of claims 2—13 solely based on the arguments presented for claim 1. App. Br. 15—16. 3 Appeal 2017-008199 Application 14/099,846 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-13); (4) a storage controller that “computes an average or discounted average sustained performance level as a function of said first set of weighted storage regions having said slow access rate and said second set of weighted storage regions having said fast access rate” {id. at 13—14); and (5) a storage controller that “distributes load over time by alternating weighted storage regions so as to maintain said computed average or discounted average sustained performance level” {id. at 14—15). ANALYSIS We have reviewed the Examiner’s rejections in light of Appellant’s contentions of reversible error. We disagree with Appellant’s conclusions. Unless indicated otherwise, we adopt the Examiner’s findings and reasons as set forth in the rejection from which this appeal is taken and as set forth in the Answer. We highlight the following for emphasis. 1. Provisional Double-Patenting Rejection Longstanding practice is to summarily affirm a provisional rejection for nonstatutory obviousness-type double patenting if an appellant does not contest the substance of the Examiner’s rejections. See, e.g., Ex parte Neel, No. 2012-010885, 2014 WL 1330895, at *1 n.2 (PTAB Apr. 3, 2014) (non- precedential); cf. In re Wetterau, 356 F.2d 556, 557—58 (CCPA 1966). Accordingly, we summarily affirm the Examiner’s uncontested, provisional, nonstatutory obviousness-type double patenting rejection of claims 1—13 in this proceeding. 4 Appeal 2017-008199 Application 14/099,846 2. Storage Devices Comprising Weighted Addressable Storage Regions In rejecting claim 1 under 35 U.S.C. § 103(a), 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 profile” (Belluomini 3:47-49). See Final Act. 6—7. 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,” as recited. Id. at 7 (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. 6. Appellants contend the Examiner errs because “Belluomini is silent as to giving weight to any storage region of the storage devices 108a-n.” Id. at 7. 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. 7; 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. 7; Ans. 3—5; see also Belluomini 1:15—2:34 (Background and Brief Summary) (discussing performance criteria such as “high random access capability per gigabyte” for solid-state drives, and using “data access and 5 Appeal 2017-008199 Application 14/099,846 resource information” for configuring different data storage devices into different performance tiers). We agree with the Examiner that, by assigning devices to different tiers, such as one to a “tier with high performance storage” and another to a “tier with cheaper and more conventional storage” (Belluomini 3:41—65), media with a fast access rate is weighted to be assigned to one tier and media with a slow access rate is weighted to be assigned to another tier, as required by claim 1. See Ans. 3—5. In other words, by disclosing assignment to tiers based on relative performance, an ordinarily skilled artisan would have understood that Belluomini teaches assigning a relative performance “weight” for a storage device (and its constituent region(s)), as recited by claim l.3 In reply, Appellants argue the Examiner errs by not showing how Belluomini teaches “each region in a storage media device assigned a weight based on at least a faster or slower access rate.” 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 addressable storage region (i.e., “one or more”). 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,” as the skilled artisan would have understood it, encompasses Belluomini’s tiered storage 3 In view of Appellants’ Specification and claims, “weight” encompasses the ordinary, relevant dictionary meanings of “importance” and “relative importance.” See, e.g., www.merriam-webster.com/dictionary/weight; www.dictionary.com/browse/weight (both last accessed Oct. 19, 2017). 6 Appeal 2017-008199 Application 14/099,846 system 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. 8:14—9:2 (describing the embodiment as a “non-limiting example”). We decline to limit the scope of claim 1 based on the preferred embodiment. Appellants’ Specification is clear on this point: “[wjhile 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. 20:8—11; see also id. at 21:11—12 (“particular embodiments of the subject matter have been described, but other embodiments are within the scope of the following claims”). 3. 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. 7 (citing Belluomini Fig. 3; Chatterjee Fig. 3B, 6:15—34). Appellants argue “Belluomini merely recites receiving data access information and not commands representing a load. In particular, Belluomini teaches that the data collector receives data access information for storage extents to be stored in the storage system. Belluomini is silent as to this data access information representing a load.” App. Br. 8 (citations omitted). Appellants further argue “Chatterjee does not teach that one or more commands 7 Appeal 2017-008199 Application 14/099,846 representing a load are received 'from a queue.'1'" Id. at 9. “Rather, Chatterjee discloses that a command receiver module 310 receives a command from 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 also argue “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 an ordinarily skilled artisan would have understood that “a Toad’ is merely an amount of work a computing system performs,” that “an I/O request is a command to read or write to a given device, which is an amount of work,” and, thus, “an I/O request is ‘a command representing a load.’” Ans. 6. 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. (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 also would have understood Chatterjee’s disclosure of storing of received commands in a queue for later execution (Chatterjee Figs. 3A—B, 4:5—16)4 also teaches later receiving the 4 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 8 Appeal 2017-008199 Application 14/099,846 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. 7; Ans. 5—7; In re Keller, 642 F.2d 413, 425 (CCPA 1981) (explaining the relevant inquiry is whether the claimed subject matter would have been obvious to those of ordinary skill in the art in light of the combined teachings of those references). 4. Identifying Weighted Storage Regions having Slow and Fast Access Rates The Examiner finds Kirby teaches “identifying] a first set of weighted storage regions having a slow access rate in 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. 8 (citing Kirby Fig.l, 6:6—7:46). Appellants argue the Examiner errs because “Kirby does not explicitly teach identifying a first set of weighted storage regions that are assigned a weight as required by claim 1.” App. Br. 11. Even though Kirby discloses that the outermost zone possesses a higher performance than the innermost zone, Kirby is silent to as to assigning a weight to any zone (col. 6:65-7:46). In particular, although the outer zones provide better performance than inner zones (col. 2:12-33), Kirby does not teach that a weight is assigned to each zone. Id. at 12. This argument is unpersuasive. The Examiner relies on Belluomini for the requirement that “each region [is] assigned a weight based on at least a fast or slow access rate,” as recited. Final Act. 7. One cannot show computing device is occupied with other tasks and cannot immediately execute the command upon receipt, the command is not lost.” Ans. 6—7. 9 Appeal 2017-008199 Application 14/099,846 nonobviousness by attacking references individually when the rejection is based on a combination of references. In re Keller, 642 F.2d at 425, 426; see also In re Merck & Co., 800 F.2d 1091, 1097 (Fed. Cir. 1986) (explaining 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). The Examiner relies on Kirby only for its teaching of identifying regions with fast and slow access rates. Ans. 7—8. Appellants also argue the Examiner errs because ‘“access rate’ is not even mentioned in the Kirby reference even once. Although TABLE 1 of Kirby illustrates that various zones possess differing transfer rates (col. 6:50- 65), the transfer rate is not necessarily the same as the access rate.” App. Br. 13 (emphasis omitted). This is also unpersuasive. As the Examiner finds, and we agree, in view of Appellants’ Specification, which does not define or otherwise explain the term “access rate,” “[b]oth access rate and transfer rate may be interpreted as a rate at which data is read from or written to a device. There is nothing in the claims that precludes the claimed ‘access rate’ from corresponding to a ‘transfer rate.’” Ans. 8. Furthermore, Kirby must be interpreted in view Belluomini’s teaching of allocating storage based on “performance requirements,” which skilled artisans would have understood encompasses well-known storage device metrics, including access rate. In re Merck, 800 F.2d at 1097. 5. Computing Average or Discounted Average Sustained Performance Level The Examiner finds Kirby teaches a storage controller that “computes an average or discounted average sustained performance level as a function of said first set of weighted storage regions having said slow access rate and said second set of weighted storage regions having said fast access rate,” as 10 Appeal 2017-008199 Application 14/099,846 recited. Final Act. 8 (citing Kirby 7:25—46, Fig. 3). Appellants argue the Examiner errs because “the storage system of Kirby is configured to assume that an average performance may be achieved by striping the data across the two zones (col. 7:15-46). However, there is no computation in Kirby of an average or discounted average.” App. Br. 13. Appellants contend that while “the higher performance zones are combined with the lower performing zones in Kirby, . . . there is no showing of computing of the average sustained performance level,” and that claim 1 “requires computing an average or discounted average sustained performance level in a manner not shown in Kirby.” Reply Br. 2. Appellants’ arguments are unpersuasive. As the Examiner reasons, and we agree, “[t]he claims do not require a specific number to be computed, instead, they require ‘comput[ing] an average . . . sustained performance level.’” Ans. 9 (alterations in original). As the Examiner finds, and we agree, “[b]y sequentially mapping logical addresses to combine higher performance zones with lower performing zones, Kirby is computing an average sustained performance level.” Id. (citing Kirby 9:47—10:43, Figs 3, 5). Kirby teaches determining by computer (computing5) an “average performance” by alternatively mapping I/O requests to the highest performance “outer most” and lowest performance “inner most” zones. Kirby 7:28—33. By similar mapping of intermediate regions (Kirby 7:37^46) to achieve a “substantially average and consistent performance over all regions,” an ordinarily skilled artisan would have understood Kirby to teach 5 In view of Appellants’ Specification and claims, “compute” encompasses its ordinary dictionary meaning of “to use a computer.” See www.merriam- webster.com/dictionary/compute (last accessed Nov. 6, 2017). 11 Appeal 2017-008199 Application 14/099,846 using the average performance of the outermost and innermost regions as a baseline average for use in mapping of intermediate regions. Kirby also teaches alternative embodiments for dynamically determining region mapping “as particular disk drives are discovered or configured in the system” (Kirby 9:56—60), which the artisan would have understood teaches mapping the newly added disk drive regions based on the average performance in place prior to adding the new drives to the system. 6. Distributing Load over Time to Maintain Computed Average or Discounted Average Sustained Performance Level The Examiner finds Kirby teaches a storage controller that “distributes load over time by alternating weighted storage regions so as to maintain said computed average or discounted average sustained performance level,” as recited. Final Act. 9 (citing Kirby 7:25—46, Fig. 1). Appellants argue the Examiner errs because, in writing to two disk drives, Kirby teaches that the data is distributed to differing regions of both disk drives at one time or the same time. Yet, Kirby does not teach that each region is written to such that it “distributes [the] load over time,” as the claim requires (claim 1). As such, Kirby is silent as to a distribution of the load over time. App. Br. 14—15 (brackets in original). This is unpersuasive. We agree with the Examiner, who answers by noting Appellants point to one embodiment of Kirby, and finds: Kirby contemplates embodiments where only one disk and one actuator is used ([15:] 16-25), and thus any write of sequential data cannot be performed simultaneously, and thus data must be written alternately to the regions, which takes some amount of time, thus distributing the load over time to maintain a computed average performance level. Ans. 10. 12 Appeal 2017-008199 Application 14/099,846 Conclusion Accordingly, for the above reasons, we sustain the rejection of claim 1 and, along with it, the rejections of claims 2—13, for which Appellants offer no substantive separate arguments. DECISION For the above reasons, we affirm both the provisional rejection of claims 1—13 for nonstatutory obviousness-type double patenting and the rejection of claims 1—13 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 13 Copy with citationCopy as parenthetical citation