ELIZABETH D. LAPORTE, Magistrate Judge.
On November 10, 2008, the Court held a hearing to construe the disputed terms of United States Patent Numbers 5,124,987 (the "'987 patent"), 5,430,855 ("'855 patent"), 5,632,012 ("'012 patent"), and 6,421,787 ("'787 patent") pursuant to Markman v. Westview Instruments, Inc., 517 U.S. 370, 116 S.Ct. 1384, 134 L.Ed.2d 577 (1996). Having read the papers and considered the arguments of counsel and the relevant legal authority, the Court hereby rules as follows.
On October 29, 2007, Sun Microsystems Inc. ("Sun") filed its complaint against Network Appliance Inc. ("NetApp") for Patent Infringement, Unfair Competition Under the Lanham Act and Unfair Competition under California Business and Professions Code § 17200. On November 2, 2007, Sun filed its First Amended Complaint, alleging that NetApp infringes the four patents noted above, as well as United States Patent Nos. 6,049,528 and 5,721,937 (collectively, the "Sun patents"), through its Fabric Attached Storage, V-series and NearStore products.
On February 19, 2008, NetApp filed its Supplemental Answer and Counterclaims, expanding the allegations of infringement to include United States Patent Number 7,313,720 (the "'720 patent") in addition to the patents noted above (collectively, the "NetApp patents"). On March 7, 2008, Sun filed its reply to NetApp's Supplemental Answer and Counterclaims.
The parties now seek construction of five disputed terms contained in the Sun patents.
In construing claims, the court must begin with an examination of the claim language itself. The terms used in the claims are generally given their "ordinary and customary meaning." See Phillips v. AWH Corp., 415 F.3d 1303, 1312-13 (Fed.Cir.2005); see also Renishaw PLC v. Marposs Societa' per Azioni, 158 F.3d 1243, 1248 (Fed.Cir.1998) ("The claims define the scope of the right to exclude; the claim construction inquiry, therefore, begins and ends in all cases with the actual words of the claim."). This ordinary and customary meaning "is the meaning that the terms would have to a person of ordinary skill in the art in question at the time of the invention ...." Phillips, 415 F.3d at 1313. A patentee is presumed to have intended the ordinary meaning of a claim term in the absence of an express intent to the contrary. York Products, Inc. v. Central Tractor Farm & Family Ctr., 99 F.3d 1568, 1572 (Fed.Cir.1996).
Generally speaking, the words in a claim are to be interpreted "in light of the intrinsic evidence of record, including the written description, the drawings, and the prosecution history, if in evidence." Teleflex, Inc. v. Ficosa North Am. Corp., 299 F.3d 1313, 1324-25 (Fed.Cir.2002) (citations omitted); see also Medrad, Inc. v. MRI Devices Corp., 401 F.3d 1313, 1319 (Fed.Cir.2005) (court looks at "the ordinary meaning in the context of the written description and the prosecution history"). "Such intrinsic evidence is the most significant source of the legally operative meaning of disputed claim language." Vitronics Corp. v. Conceptronic, Inc., 90 F.3d 1576, 1582 (Fed.Cir.1996).
With regard to the intrinsic evidence, the court's examination begins with the claim language. See id. Specifically, "the context in which a term is used in the asserted claim can be highly instructive." Phillips, 415 F.3d at 1314. As part of that context, the court may also consider the other patent claims, both asserted and unasserted. Id. For example, as claim terms are normally used consistently throughout a patent, the usage of a term in one claim may illuminate the meaning of the same term in other claims. Id. The court may also consider differences between claims as a guide to understanding the meaning of particular claim terms. Id.
Second, the claims "must [also] be read in view of the specification, of which they are a part." Id. at 1315. When the specification reveals a special definition given to a claim term by the patentee that differs from the meaning it
Limitations from the specification, however, such as from the preferred embodiment, cannot be read into the claims absent a clear intention by the patentee to do. Altiris v. Symantec Corp., 318 F.3d 1363, 1372 (Fed.Cir.2003) ("resort to the rest of the specification to define a claim term is only appropriate in limited circumstances"); Teleflex, 299 F.3d at 1326 ("The claims must be read in view of the specification, but limitations from the specification are not to be read into the claims.") (citations omitted); CCS Fitness, Inc. v. Brunswick Corp., 288 F.3d 1359, 1366 (Fed.Cir.2002) ("a patentee need not describe in the specification every conceivable and possible future embodiment of his invention").
"[T]here is sometimes a fine line between reading a claim in light of the specification, and reading a limitation into the claim from the specification.... [A]ttempting to resolve that problem in the context of the particular patent is likely to capture the scope of the actual invention more accurately than either strictly limiting the scope of the claims to the embodiments disclosed in the specification or divorcing the claim language from the specification." Decisioning.com, Inc. v. Federated Dept. Stores, Inc., 527 F.3d 1300, 1307-08 (Fed.Cir.2008) (quoting Comark Comm'ns, Inc. v. Harris Corp., 156 F.3d 1182, 1186 (Fed.Cir.1998)). There is therefore "no magic formula or catechism for conducting claim construction," and the court must "read the specification in light of its purposes in order to determine whether the patentee is setting out specific examples of the invention to accomplish those goals, or whether the patentee instead intends for the claims and the embodiments in the specification to be strictly coextensive." Id. (internal citations omitted).
Finally, as part of the intrinsic evidence analysis, the court "should also consider the patent's prosecution history, if it is in evidence." Phillips, 415 F.3d at 1317. The court should take into account, however, that the prosecution history "often lacks the clarity of the specification" and thus is of limited use for claim construction purposes. Id.
In most cases, claims can be resolved based on intrinsic evidence. See Vitronics, 90 F.3d at 1583. Only if an analysis of the intrinsic evidence fails to resolve any ambiguity in the claim language may the court then rely on extrinsic evidence, such as expert and inventor testimony, dictionaries, and learned treatises. See Vitronics, 90 F.3d at 1583 ("In those cases where the public record unambiguously describes the scope of the patented invention, reliance on any extrinsic evidence is improper"). "Within the class of extrinsic evidence, the court has observed that dictionaries and treatises can be useful in claim construction." Phillips, 415 F.3d at 1318. While expert testimony can be useful to a court for a variety of purposes, conclusory assertions by experts are not useful to a court. Id. The court generally views extrinsic evidence as less reliable than the patent and its prosecution history in determining how to read claim terms, even if though consideration is within the court's sound discretion. See id. at 1318-19.
The parties dispute five terms contained in four of the Sun patents: (1) "first available memory space" in the '987 patent; (2) "means, responsive to the receipt of a stream of data records from said associated data processor, for writing said received stream of data records in available memory space in one of said disk drives" in the '855 patent; (3) "means responsive to said reading of said memory controller for periodically verifying the integrity of data currently stored in each of said identified dedicated partitions" and (4) "means for reading data in each of said identified dedicated partitions" in the '012 patent; and (5) "active links between said active nodes" in the '787 patent. Following the November 10, 2008, hearing, the parties submitted a Joint Table of Final Proposed Constructions for the Sun patents.
The '987 patent, "Logical Track Write Scheduling System for a Parallel Disk Drive Array Data Storage Subsystem," is directed to a data storage system. The data storage subsystem stores data on a number of small hard disk drives, but emulates the format and operation of a large form factor disk drive: "This invention relates to an inexpensive, high performance, high reliability parallel disk drive array data storage subsystem that includes an efficient data storage management system to dynamically map virtual data storage devices to logical data storage devices and schedule the writing of data on these devices." '987 patent, col. 1:7-12.
Disputed Claim Term: "first available memory space" ('987 patent, claims 9 and 57)NetApp's construction Sun's construction "one or more logical tracks, each of which "one or more empty logical tracks each of must be empty, i.e., recognized by the system which is empty, i.e., one or more empty as available free space" stripes each of which is empty" "empty" means "available to be written to"
The parties agree on the wording of the construction of "first available memory space" as "one or more logical tracks, each of which is empty," but dispute whether "empty" means "recognized by the system as available free space," as NetApp contends, or "available to be written to," as Sun proposes. The dispute centers on the question of whether the obsolete data must go through a process of being tagged as obsolete and the logical track thus recognized as available free space in order for the track to be available to be written to.
To begin its analysis, the Court first turns to the claims themselves. The term "first available memory space" appears in claims 9 and 57 of the '987 patent:
'987 patent, col. 23:40-24:3, 31:53-32:57 (emphasis added).
The claim language teaches that the "first available memory space" is a space in a redundancy group selected as the
In the "Solution" section of the specification, the patent describes the logical track write scheduling system of the claimed invention:
'987 patent, col. 3:33-41, 5:13-21 (emphasis added). The patent specification thus describes a write process whereby new or modified data is written on empty logical tracks, and old data is tagged as obsolete and removed by a background free-space collection process that creates empty logical tracks. In the free space collection process, the valid data is read to the cache memory, "then written" to a previously emptied logical cylinder and the collected logical cylinder is tagged as being empty, so that it can be written to. Id. at 5:13-21. See also id. at 5:57-63 (Detailed Description of the Drawing: "all new or modified data is written on empty logical tracks and the old data is tagged as obsolete. The resultant `holes' in the logical tracks caused by old data are removed by a background free-space collection process that creates empty logical tracks by collecting valid data into previously emptied logical tracks."); 20:64-70 (Free Space Collection: "In order to create completely empty logical cylinders for destaging, valid data in partially valid cylinders must be read into cache memory 113 and rewritten into new previously emptied logical cylinders."). The plain language of the specification thus favors NetApp's proposed construction requiring the logical tracks to be "tagged as being empty" and thereby recognized by the system as available free space.
Sun contends that NetApp's proposed construction improperly reads the "free space collection process" into the claim term. The specification, however, describes "the present invention," whereby "holes" in the logical tracks caused by old data are removed by a free-space collection process that creates empty logical tracks. '987 patent, col. 5:50, 59-62. Reading the claim in light of the specification, the Court concludes that one of ordinary skill in the art would understand empty logical tracks to have undergone a process by which old data has been tagged obsolete and the logical track is recognized as empty. By contrast, Sun's proposed construction of "empty" as "available to be written to" is vague with respect to whether the old, unmodified data has been
The parties also dispute whether the term requires writing only to empty logical tracks and never writing to logical tracks that are not empty. As Sun conceded, whenever claim 9 or 57 is practiced, those claims require writing to an empty logical track. However, the competing claims constructions proposed by the parties do not require the Court to decide an issue that emerged at the hearing: whether an accused product must practice exclusively the method of claims 9 and 57 to infringe or, as Sun characterizes the dispute, whether an accused system that fully practices the claimed method most of the time nevertheless does not infringe the patent if it ever practices a different method. The Court does, however, make the following observations. The express language of these method claims by itself does not compel NetApp's proposed limitation that would require an accused product to always practice these claims in order to infringe. For example, claim 9 is a method claim as recognized by dependent claims 10 through 12 ("The method of claim 9 further comprising ..."). The claim preamble specifies the configuration of the system in which the method operates, i.e., "[i]n a disk memory system." NetApp suggested for the first time at the hearing that the preamble of claim 9 imports the limitation of claim 1 and other apparatus and memory system claims in the patent. Even assuming (without deciding) that the preamble is a limitation, see NetApp Suppl. Cl. Const. Br. at 4 n. 1, the preamble only describes a system of multiple disk drives configured into two or more redundancy groups each consisting of at least two disk drives, without stating whether the method must be exclusive. Furthermore, the claim 9 preamble does not refer to "[t]he system of claim 1," unlike, e.g., claims 2, 4, or 8. Sun is correct that an accused product need not always practice a method to infringe. See Bell Commun. Research, Inc. v. Vitalink Commun., 55 F.3d 615, 622-23 (Fed.Cir.1995).
Even though the claim language by itself would not compel NetApp's interpretation, there is strong support for it in the specification and prosecution history. The specification makes clear that the invention itself, unlike the prior art, never updates parity data in the redundancy group and avoids the negative impact on performance in the prior art, using strong and unequivocal language:
NetApp also relies on excerpts from the prosecution history to demonstrate that the applicants made a clear and unambiguous disavowal of claim scope by distinguishing the invention from the prior art disk array systems as "never updating parity in any redundancy group at any time." NetApp Br. re Pros. Hist. at 2-3 (quoting '987 Prosecution History, Sept. 23, 1991 Amendment at 7 (NAB0013338)) (emphasis added). The applicants' statements were made in response to the examiner's objection to the specification and rejection of the claims noting that the written description was "unclear why writing data to a new location is an advantage. This simply changes which parity bits need to be regenerated." Id. at 3 (NAB0013334). While the applicants' statements in the prosecution history arguably do not by themselves amount to a clear and unambiguous statement that a system must always practice the claimed method in order to practice the patent, they lend further support to the strong language in the specification describing the feature of the invention as a whole, and thus may well limit the scope of the invention to require always writing only to an empty track. At this juncture, however, the Court reserves this question.
The briefs submitted by the parties raised a dispute as to whether "first available memory space" could include more than one logical track. During oral argument, however, NetApp conceded that there was no dispute about whether "first available memory space" could be construed as one or more logical tracks, but sought clarification that each of the tracks must be empty. Sun's proposed construction, "each of which is empty," also reflects this understanding, and the Court construes the term to reflect that each logical track is empty.
With respect to Sun's proposal that "empty logical tracks" be further construed as "i.e., one or more empty stripes, each of which is empty," NetApp argued that every logical track is a stripe, but not every stripe is a logical track. NetApp was concerned that the jury would be confused by using the terms stripe and logical track interchangeably. Other than offering expert opinion that a logical track is the same as a stripe in the context of this patent, Sun has not demonstrated that logical track should always be construed as a stripe. The Court declines to include the phrase "i.e., one or more empty stripes."
For the reasons set forth above, the Court adopts NetApp's proposed construction of "first available memory space" as "one or more logical tracks, each of which must be empty, i.e., recognized by the system as available free space."
The '855 patent, "Disk Drive Array Memory System Using Nonuniform Disk Drives," is directed to a data storage subsystem that emulates the format of a large form factor disk drive. This patent focuses on enabling the system to work with a set of nonuniform small form factor disk drives, so that the small form factor disk drives do not need to share common physical characteristics such as track capacity and disk rotational speed. '855 patent, col. 1:41-51, 1:58-2:22.
Disputed Claim Term: "means, responsive to the receipt of a stream of data records from said associated data processor, for writing said received stream of data records in available memory space in one of said disk drives" ('855 patent, claim 1)NetApp's construction Sun's construction This term is subject to 35 U.S.C. § 112, ¶ 6. This term is subject to 35 U.S.C. § 112, ¶ 6. Function: "writing said received stream of Function: "for writing said received stream data records in available memory space in of data records in available memory space in one of said disk drives" one of said disk drives" Corresponding structure: "disk drive manager Structure: "processor 204 programmed to 102-1 and control unit 101" execute the software subroutine that consists of steps 706 to 711 illustrated in Figure 7 and "responsive to": "after and in reaction to" described at col. 16:65 through col. 17:21 of the '855 patent specification" Sun does not believe the term "responsive to" needs to be construed. However, if the Court decides to construe this term, Sun contends NetApp's "after and in reaction" construction cannot properly be read to preclude beginning a write operation prior to the receipt of the last data record in the stream of data records.
The parties agree that this term is a means-plus-function limitation governed by 35 U.S.C. § 112, ¶ 6. That paragraph states: "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." Claim construction of a means-plus-function limitation requires that the court identify the function of the limitation, and ascertain the corresponding structure in the written description that is necessary to perform that function. Altiris, Inc. v. Symantec Corp., 318 F.3d 1363, 1375 (Fed.Cir.2003).
The parties agree that the function is "writing said received stream of data records in available memory space in one of said disk drives," but dispute whether the corresponding structure includes the entire control unit 101 and disk drive manager 102-1, as NetApp proposes, or only processor 204 programmed to execute steps 706 to 711, illustrated in Figure 7, as Sun contends.
The disputed term appears in claim 1 of the '855 patent:
'855 patent, col. 21:7-38.
"`Structure disclosed in the specification is "corresponding" structure only if the specification or prosecution history clearly links or associates that structure to the function recited in the claim.'" Altiris, 318 F.3d at 1375 (quoting B. Braun Med. v. Abbott Labs., 124 F.3d 1419, 1424 (Fed.Cir.1997)). Section 112 paragraph 6 does not "`permit incorporation of structure from the written description beyond that necessary to perform the claimed function.'" Asyst Technologies, Inc. v. Empak, Inc., 268 F.3d 1364, 1369-70 (Fed.Cir.2001) (quoting Micro Chem., Inc. v. Great Plains Chem. Co., 194 F.3d 1250, 1257-58 (Fed.Cir.1999)). "Structural features that do not actually perform the recited function do not constitute corresponding structure and thus do not serve as claim limitations." Id. at 1370 (citing Chiuminatta Concrete Concepts, Inc. v. Cardinal Indus., Inc., 145 F.3d 1303, 1308-09 (Fed.Cir.1998)). By contrast, structure that is "integral to performing the stated function" does constitute corresponding structure. Gemstar-TV Guide Intern., Inc. v. International Trade Com'n, 383 F.3d 1352, 1362 (Fed. Cir.2004).
In the section entitled "Data Write Operations," the specification details the write operation, identifies the operational steps corresponding to the function of writing the stream of data records to a disk drive, and identifies certain structure as carrying out the steps. The parties agree that steps 706 to 711 are involved in performing the claimed function, as described in the specification:
'855 patent, col. 16:65-17:25.
Sun contends that the specification clearly links only the subroutine of steps 706 to 711 to the actual function of writing the data records to the disks. However, the specification includes additional operational steps within the writing function. The control unit 101 performs the set up for a write operation (step 701) and assures that the virtual track containing the data record to be rewritten is located in the cache memory 113 (step 702). The control unit 101 transfers the modified record data received from the host processor into the cache memory 113 (step 704). The specification explains that once the virtual track is updated with the modified data record, "the control unit 101 must schedule this updated virtual track instance to be written onto a redundancy group somewhere in the disk drive array data storage subsystem 100." '855 patent, col. 16:61-64. The scheduling for writing the data to the disks is accomplished by steps 706 to 711, but the specification identifies steps 701 to 712 as necessary to perform the entire writing function. The plain language of this "Data Write Operation" section of the specification clearly and repeatedly links "the control unit 101" to performing the write operation.
Sun argues, however, that the structure does not include the entire control unit 101 because it has multiple components, other than processor 204 and the associated control software, that are not associated with the function of writing data records, such as channel interface units 201, channel interface control 202, channel data compression circuit 203 and optical device interface 205. '855 patent, col. 7:19-45. Sun contends that the only structure that is clearly linked to the function of writing data records is processor 204-0 of control unit 101, plus the associated software, that together write the data records. Sun relies on the following specification language to demonstrate the role of processor 204-0 in the writing function:
'855 patent, col. 7:67-8:28 (emphasis added). See Levy Decl. ¶ 32. In support of its argument that the corresponding structure is limited to processor 204 executing the software associated with steps 706 to 711, Sun relies on Intel Corp. v. VIA Tech., Inc., 319 F.3d 1357, 1365-66 (Fed.Cir.2003), where the Federal Circuit construed the corresponding structure for the functions "to selectively write data" and "determine whether data is able to be written directly" as the "core logic" (a controller chip executing software) modified by a particular software protocol to perform Fast Write. Id. Sun suggests that the writing function here is similar to the writing function in Intel, and that the corresponding structure here is similarly limited to processor 204 executing the control software. However, the issue in Intel differed from the one presented here. There, the Federal Circuit held that the patent was not indefinite even though the specification did not disclose circuitry to show how the core logic was modified, but the parties did not dispute whether a more general purpose computer, rather than the processor, constituted the corresponding structure. Id. at 1366.
Other authorities on which Sun relies are no more compelling. In WMS Gaming v. Int'l Game Tech., 184 F.3d 1339, 1348-49 (Fed.Cir.1999), the Federal Circuit held, "In a means-plus-function claim in which the disclosed structure is a computer, or microprocessor, programmed to carry out an algorithm, the disclosed structure is not the general purpose computer, but rather the special purpose computer programmed to perform the disclosed algorithm." 184 F.3d at 1349 and n. 4. In WMS Gaming the parties stipulated that the patent disclosed "a microprocessor, or computer, to control the operation of the slot machine, including the operation of the machine in the assignment of numbers to reel stop positions." Id. at 1347. The Federal Circuit noted that it did not find anything in the patent limiting the "means for assigning" to a microprocessor or computer, but declined to decide an issue that the parties did not present. Id. at 1347 n. 2. Similarly, in Tehrani v. Hamilton Med., Inc., 331 F.3d 1355, 1362 (Fed.Cir.2003), the parties did not dispute whether the microprocessor formed part of the structure, but rather precisely which algorithm it was programmed to perform. The Federal Circuit noted, "We agree with the parties that the structure corresponding to the processing function is the disclosed microprocessor that is programmed to perform the disclosed algorithm. The specification teaches that the `first means, which preferably comprises a programmable microcomputer, is controlled by a software algorithm to operate upon the input data and provide digital output data representing the amount and optimum frequency of ventilation required for the next breath.'. . . The district court, however, has not determined the precise algorithm that is part of the recited structure." 331 F.3d at 1362.
While these cases demonstrate that Sun is correct that a processor executing a software routine may in appropriate circumstances be sufficient to identify corresponding structure, Sun's proposed structure is too narrow for performing the claimed function here because the specification identifies as integral to and clearly links broader structure to the function of writing data records. For example, the control unit performs the subroutine that consists of steps 706 to 711, as well as other operational steps to perform a data write operation. '855 patent, col. 16:65-17:25. Furthermore, the specification describes the integral role of the cache memory 113, which is contained in the control unit, in the data write operation: "all of the data updating is performed in the
NetApp contends that disk drive manager 102 is also directly involved in performing the claimed function and therefore part of the corresponding structure, citing the specification:
'855 patent, col. 8:63-67. The specification demonstrates that the disk drive manager interconnects disk drives with optical fiber backend channels and includes an input/output circuit that provides a hardware interface to interconnect the optical fiber backend channels with the data paths that serve control and drive circuits. '855 patent, col. 5:61-65.
Whether the disk drive manager 102 (or at least its control and drive circuits 121) is part of the corresponding structure is determined by whether the writing function includes the data and control signal interface and transmission function. See Gemstar-TV Guide Intern., Inc. v. International Trade Com'n, 383 F.3d 1352, 1363 (Fed. Cir.2004). In Gemstar, the parties disputed whether the video switcher was part of the corresponding structure to perform the recited function of "displaying the television schedule on the television screen as a grid," or whether the corresponding structure comprised only the CPU and video display generator, and the video switcher was merely a conduit for coupling the means for displaying and the television. Id. at 1361. The Federal Circuit determined that the video switcher was "integral to performing the stated function," reasoning as follows:
383 F.3d at 1362.
In Gemstar, the Federal Circuit distinguished Asyst Tech., Inc. v. Empak, Inc., 268 F.3d 1364, 1369-70 (Fed.Cir.2001), on which Sun relies here. In Asyst, the Federal Circuit determined that the functions of receiving and processing digital information recited in claim 1 of the '421 patent were performed by the local control processor, but that the corresponding structure did not include external cables or devices that were connected to the processor, reversing the district court's holding that the corresponding structure included
By contrast, the Federal Circuit also construed another means-plus-function element in a different claim in Asyst, namely, the "fourth means . . . for controlling [the receipt of the transportable containers and the processing of the articles within the containers] and for transmitting information related to the processing performed [to the transportable container]." 268 F.3d at 1372. As to this "fourth means," the court held that communication line 51 was part of the corresponding structure because line 51 connected the local process controller that performed the first recited function, controlling activities on the workstation, with the communication means that performed the second function, transmitting information to the container. Id. The Federal Circuit concluded that because the means that performed those two functions consisted of the "entire complex comprising the local process controller 20 and the communication means 50[,]. . . it also necessarily encompasses structure that connects the two, i.e., communication line 51." Id. As the court noted, the language of this "fourth means" limitation was "significantly different" from the language of the microcomputer means limitation which the court construed to exclude the communication line 51. Id.
Gemstar and Asyst teach the importance of focusing on the exact function that the structure is performing. NetApp has not demonstrated that the disk drive manager 102 is necessary to accomplish the function of writing data in available memory space in a disk drive. Significantly, the "Data Write Operation" section of the specification never even mentions the disk drive manager 102. By contrast, in Gemstar, the Federal Circuit deemed the video switcher integral to performing the function of displaying the television schedule on a television screen where the written description indicated that the video switcher, in combination with a CPU and video display generator, was required to perform the stated function. 383 F.3d at 1361-62. Here, the disk drive manager 102 is necessary for performing interface and transmission function, '855 patent, col. 8:63-67, but not the writing function itself, which as described in the specification is performed by control unit 101. The disk drive manager 102 connects the disk drives with control unit 101, id., but only control unit 101 actually writes the data records. The data records are written in the disk drives, but the disk drives themselves do not perform the write operation. Unlike the "fourth means" construed in Asyst, which required a structure connecting two discrete components to perform two functions, 268 F.3d at 1372, the writing means claimed in the '855 patent does not assign functions to separate structures that must be linked. The disk drive manager 102 enables the control unit 101 to write data records to the disk drives, but neither the disk drive manager nor the disk drives perform that function. Id. at 1371.
During oral argument, NetApp conceded that there was no dispute that the term "one of said disk drives" did not require that all streams of data records received
For the reasons set forth above, the Court construes "means, responsive to the receipt of a stream of data records from said associated data processor, for writing said received stream of data records in available memory space in one of said disk drives" as a means-plus-function limitation, having the function of "writing said received stream of data records in available memory space in one of said disk drives" and the corresponding structure of "control unit 101 programmed to execute the steps 701 through 712 illustrated in Figure 7 and described under the heading `Data Write Operation' at column 16:26 through column 17:25 of the '855 patent specification."
The '012 patent, "Disk Scrubbing System," is directed to a data storage subsystem that emulates the format and operation of a large form factor disk drive. The patent addresses the process of "disk scrubbing," or verifying the integrity of data written to disk drives. What is newly claimed in the '012 patent is identifying and selecting memory locations containing customer or redundancy data and verifying those locations on a priority basis. '012 patent, col. 2:61-67. In the claimed invention, the disk drive array is divided into a plurality of logical partitions, including "dedicated partitions" that are storing data and "free partitions" that are available to store data in the data storage subsystem. The claimed invention determines whether the partitions are dedicated or free. Id. at col. 17:38-63, col. 20:40-62. The parties dispute two claim terms in the '012 patent.
Disputed Claim Term: "means responsive to said reading of said memory controller for periodically verifying the integrity of data currently stored in each of said identified dedicated partitions" (Claim 1, '012 patent)NetApp's construction Sun's construction Periodically verifying the integrity of data Sun contends this term is not a means-plus-function currently stored in each of said identified limitation. dedicated partitions: "periodically verifying only the integrity of data currently stored in If the Court concludes this is a means-plus-function each of said identified partitions" limitation, then the function is: "periodically verifying the integrity of data currently Responsive to: "after and in reaction to" stored in each of said identified dedicated partitions." Corresponding structure of nested "means" Sun contends NetApp's construction of the terms: functional language incorrectly adds an only limitation and that the term "only" should not be added to the existing claim structure. • "means . . . for reading data": "control unit 101 and disk drive manager 102-1" If the Court concludes this is a means-plus-function limitation, then the corresponding
• "means . . . for generating error check structure is: "processor 204 of control unit information": "disk drive subassembly" 101 programmed to execute the software processes that read data from selected track • "means . . . for detecting errors": "disk (item 1202 of Figure 12), generate CRC for drive subassembly" read data (item 1203 of Figure 12), determine whether generated CRC and read CRC • "means . . . for correcting said data containing match (item 1209 of Figure 12), and reconstruct errors": "control unit 101" data of selected track having mismatched CRC (item 1008 of Figure 10)."
While Sun initially disputed whether this term is a means-plus-function limitation, both parties now recognize that it is a means-plus-function nesting term for the four nested means-plus-function limitations. Although the parties did not address this issue in the briefs, the Court may ultimately need to conduct an analysis under 35 U.S.C. § 112, ¶ 6 to determine whether the structures corresponding to each of the nested terms are together sufficient to perform the claimed function of this term. See Rodime PLC v. Seagate Tech., Inc., 174 F.3d 1294, 1303-04 (Fed. Cir.1999).
The parties dispute whether the function is limited to periodically verifying "only" the integrity of data currently stored in each of said identified partitions; construction of the "responsive to" limitation; and the corresponding structure.
The disputed claim terms of the '012 patent appear in claim 1:
'012 patent, col. 17:38-63.
NetApp contends that the function requires verifying
'012 patent, col. 2:18-21.
As Sun points out, claim 1 must be construed broadly enough to permit the practice of dependent claims, including dependent claim 9, which recites a means for verifying administrative data in free partitions:
'012 patent, col. 18:63-66. NetApp contends that the doctrine of claim differentiation does not apply here to construe independent claim 1 so broadly because dependent claim 9 does not refine the verifying means recited in independent claim 1, which is focused only on the means for processing dedicated partitions, but rather adds to claim 1 by requiring another means for processing free partitions. NetApp argues that it would not be inconsistent to limit the "means for periodically verifying" in claim 1 to dedicated partitions and allow claim 9 to recite a separate means for processing free partitions. Although NetApp is correct that the "further comprising" language of claim 9 indicates that a means is being added to the data storage subsystem of claim 1, claim 9 is dependent on claim 1, and thereby incorporates by reference all the limitations of that claim. See Monsanto Co. v. Syngenta Seeds, Inc., 503 F.3d 1352, 1357-58 (Fed.Cir.2007) (holding that "further comprising" claim was in dependent form and incorporated the limits of the overarching independent claim), petition for cert. dismissed, ___ U.S. ___, 129 S.Ct. 394, 171 L.Ed.2d 809 (2008). Thus, NetApp's proposed "only" limitation would preclude the verifying means from scrubbing the administrative data stored in a free partition, thereby effectively reading claim 9 out of the patent. Claim 1 uses the open term "comprising," thus allowing for additional structures to be added to the data storage subsystem that the data subsystem of claim 1 does not itself include. Although claim 1 does not claim the function of verifying the administrative data in the free partitions, neither does claim 1 preclude adding that functionality in a dependent claim as in claim 9.
NetApp also relies on the patent prosecution history, in which the applicants distinguished the claimed invention from the prior art by stating that the claimed invention scrubbed only active data. The Court may rely on the prosecution history to inform the meaning of the claim language: "Like the specification, the prosecution history provides evidence of how the PTO and the inventor understood the patent. Furthermore, like the specification, the prosecution history was created by the patentee in attempting to explain and obtain the patent. Yet because the prosecution history represents an ongoing negotiation between the PTO and the applicant, rather than the final product of that negotiation, it often lacks the clarity of the specification and thus is less useful for claim construction purposes." Phillips v. AWH Corp., 415 F.3d 1303, 1317 (Fed.Cir.2005) (citations omitted). The Federal Circuit has "declined to apply the doctrine of prosecution disclaimer where the alleged disavowal of claim scope is ambiguous." Omega Eng'g, Inc. v. Raytek Corp., 334 F.3d 1314, 1324 (Fed. Cir.2003). "But where the patentee has
To demonstrate that the applicants distinguished the invention over the prior art as verifying only partitions containing active data, NetApp cites the Preliminary Amendment dated March 6, 1996, which was submitted before claims 1 and 9 and the terms "dedicated partitions" and "free partitions" were added to the application: "the claimed invention periodically verifies the integrity of (e.g. scrubs) only logical partitions identified as containing `
Further, in the October 1, 1996 Amendment, the applicants reacted to the examiner's objections and rejection of the claims by "not reciting `active data' in the new and amended claims," among other things. '012 Patent File History, 10/1/96 Amendment at 15. The applicants added claim 35, which was issued as claim 1, and dependent claim 40, which was issued as claim 9, and stated:
Id. at 15-16. Specifically, the applicants added dependent claim 9, explaining that it is dependent on, "but not included in," claim 1. Id. at 16 (emphasis added). These statements show that the applicants did not include scrubbing administrative data in free partitions in claim 1, but rather preserved it as the sole exception to otherwise scrubbing only dedicated partitions. Sun is correct that this portion of the prosecution history shows that the applicants
However, because NetApp's proposed construction could be understood to preclude that exception, the Court declines to adopt as written NetApp's proposed "only" limitation of the function "periodically verifying the integrity of data currently stored in each of said identified dedicated partitions." There may be alternative language that would better convey this distinction.
Unlike the "responsive to" language in the '855 patent, NetApp has not expressly conceded that the phrase "responsive to said reading of said memory controller" in the '012 patent is a separate limitation. NetApp further contends, as it did with respect to the '855 patent claim term, that "responsive to" means "after and in reaction to," in that the claim describes a system that determines the identity of the dedicated partitions by reading the memory controller, and then, "after and in reaction to" identification of the dedicated partitions, it verifies the integrity of the dedicated partitions identified by reading the memory controller. See Ganger Reply Decl. ¶ 13.
Sun acknowledges that the '012 claim recites that the means must be "responsive to said reading of said memory controller," but contends that this limitation is not part of the identified function. Sun relies on Medtronic, Inc. v. Guidant Corp., 2004 WL 1179338 at *16-17 (D.Minn. May 25, 2004), where the district court construed the claim language "stabilizing means responsive to said a trial fibrillation detecting means for stabilizing the cardiac rate of the heart when the atria of the heart are in need of cardioversion," to identify the function as "stabilizing the cardiac rate of the heart when the atria of the heart are in need of cardioversion," without the "responsive to" claim language.
The only authority cited by NetApp for its proposed construction to include the "responsive to" limitation in the function is the Court's Order Construing Claims in the related case, Network Appliance Inc. v. Sun Microsystems Inc., C07-6053 EDL. There, the Court construed the terms "in response to writing a data record to said one redundancy group"/ "responsive to writing a data record to one of said redundancy groups" and "in response to the receipt of a stream of data records from said data processor"/ "responsive to the receipt of a stream of the data records from said data processor" in the '857 patent. The "responsive to" phrase was central to the meaning of the disputed terms that were construed by the Court in that case. Here, by contrast, the parties have submitted for construction a means-plus-function limitation where the function is introduced by the claim term "for," i.e., "means . . . for periodically verifying the integrity of data currently stored in each of said identified dedicated partitions." See Greenberg v. Ethicon Endo-Surgery, Inc., 91 F.3d 1580, 1584 (Fed.Cir.1996) ("the use of the term `means' (particularly as used in the phrase `means for') generally invokes section 112(6)"). The "responsive to" phrase here does not identify any function performed by the structure, but rather identifies a separate limitation.
The parties do not dispute that the corresponding structure includes the control unit 101,
The specification describes the role of the disk drive subassembly in reading and verifying data: "The hardware and software in the disk drive subassembly typically performs the track read and verify operation." '012 patent col. 15:48-50. The specification also recites, "The reading of the data from the disk drives and the generation of the CRC [cyclic redundancy check] data is accomplished by the disk drive subsystem." '012 patent, col. 13:6-8. Sun contends that the disk drive subassembly only typically performs the verifying function, and that this disclosure provides that the relevant operations may, in alternative embodiments, be performed either by the control unit, or within the disk drive subassembly and reported back to the control unit to be reviewed. Although Sun argues that the disk drive subassembly is not necessary to perform the recited function, Sun does not cite patent language that discloses these alternative embodiments. Moreover, the specification clearly links the disk drive subassembly to the verification function. At best, Sun argues based on extrinsic evidence that a person of ordinary skill in the art would know that the scrubbing process could be performed by control unit 101 instead of the disk drive subsystem, because the patent describes the role of the control unit 101 in running the software for the disk scrubbing architecture, '012 patent, col. 12:31-13:31, and executing the steps of the track scrubbing process, id. at col. 15:45-16:46, as illustrated in Fig. 10. Sun acknowledges, as it must, that the disk drive subassembly is an alternative (indeed, typical) method for verifying data, but contends that NetApp's proposed construction would require the disk drive subassembly to be used even though control unit 101 could perform the function. To account for alternate methods for performing the recited function, the Court will construe
In Callicrate v. Wadsworth Mfg., Inc., 427 F.3d 1361, 1368-70 (Fed.Cir.2005), the Federal Circuit held that the district court's construction of corresponding structure did not account for additional embodiments for performing the cutting function disclosed in the patent. The district court identified "a pivotally mounted cutting mechanism as the disclosed structure that performs the cutting function," but the Federal Circuit found that the patent disclosed additional embodiments: "`[a]ny device for cutting the band 82 may be used [,]'" including a cutting assembly 80 with a razor 88 slidably mounted within a housing 90 or hand-held cutting tools such as scissors and hand-held razors. 427 F.3d at 1369. Sun argues that unlike Callicrate, where the court found alternative structures, the '012 patent does not require the disk drive subassembly because the control unit 101 is sufficient. The Court does not find Callicrate distinguishable on this point. The specification identifies the disk drive subsystem as a method for reading and verifying data from the disk drive, '012 patent, col. 13:6-8. At most, Sun has demonstrated that the control unit 101 works with, but is not a complete alternative to, the disk drive subassembly to perform the track read and verify operation. The Court concludes that the corresponding structure includes the disk drive subassembly.
Sun proposes that the software associated with the verifying function be limited to steps 1202 (read data from selected track), 1203 (generate CRC for read data), 1209 (determine whether generated CRC and read CRC match), and 1008 (reconstruct data of selected track having mismatched CRC), as illustrated in Figure 10, which "illustrates in flow diagram form the operation of the logical cylinder scrubbing operation," and Figure 12, which "illustrates in flow diagram form the operation of the track scrubbing procedure." The Court notes that the specification describes three of these steps, but does not describe step 1209. See '012 patent, col. 15:45-46, 51-66 ("at step 1202 the data is read from the selected track;" "data that is read from the selected track is processed by generating a cyclic redundancy code CRC over this data at step 1203;" and "[i]f there is an error noted in this track, processing advances to step 1008 where the reconstruct track process is activated.") NetApp contends that these steps merely recite the function, and do not disclose a structure or an algorithm. However, as the Court has recognized with respect to the '855 patent, the corresponding structure of a means-plus-function limitation may consist of a processor executing a software routine. Intel, 319 F.3d at 1365-66; WMS Gaming, 184 F.3d at 1348-49 and n. 4.
NetApp identifies periodic disk scrubbing procedures 501, 502, which include operational steps for periodic scrubbing other than the four steps identified by Sun, but also perform functions other than the function of periodically verifying the integrity of data currently stored in each of said identified dedicated partitions:
'012 patent, col. 13:49-63. The specification further describes the disk scrubbing procedures 501, 502, as illustrated in Figures 9 through 12:
'012 patent, col. 14:20-31. In light of the claims and the specification, NetApp's proposal to include the software associated with disk scrubbing procedures 501, 502 as part of the corresponding structure is too broad because the "scrubbing procedures" include functions outside the scope of the periodic verifying function. "`When construing the functional statement in a means-plus-function limitation, we must take great care not to impermissibly limit the function by adopting a function different from that explicitly recited in the claim.'" Omega Eng., 334 F.3d at 1322 (quoting Generation II Orthotics, Inc. v. Med. Tech., Inc., 263 F.3d 1356, 1364-65 (Fed.Cir.2001)).
The Court agrees with Sun that not every aspect of Figures 9 through 12 is required to perform the recited function. First, the specification refers to disk scrubbing procedures 501, 502 as managing the disk scrubbing, not verifying the integrity of data. Id. at 13:49-63. Second, at step 905, where the selected logical cylinder is scrubbed, as detailed at Figure 10, the operation includes a determination whether the selected logical cylinder is a free cylinder, a function that is not covered by the disputed "periodically verifying" term. Third, Sun offered expert testimony that, for example, step 904 ("Are scrubbing disable flags set for selected logical cylinder?") was not necessary to perform the verifying function, and that scrubbing disable flags could be set for reasons other than periodically verifying, i.e., either for copying in the free space collection, which is not related to scrubbing, or for priority scrubbing, which is a separate instance. See id. at col. 15:1-3 ("At step 904, the initialization procedures are completed by determining whether the selected logical cylinder should be scrubbed."). Inclusion of steps 501, 502 and Figures 9 through 12 in the corresponding structure would impermissibly import limitations that are not recited in the claim term.
While NetApp's proposed structure is overbroad, Sun's proposed structure is too restrictive in light of the specification. In the section entitled "Track Scrubbing Process," the specification refers to Figure 12 detailing the operation of the track scrubbing procedure 501, initiated at step 1201 and exiting at step 1208. '012 patent, col. 15:45-62. This section of the specification recites steps in the verifying process in addition to the four steps identified by Sun:
Id. at 15:54-62. At the very least, the corresponding structure includes the control unit 101 programmed to carry out the steps corresponding to the recited function as described in this section of the specification.
The specification further refers to steps 1006 to 1014 in the track scrubbing process:
'012 patent, col. 15:63-16:25 and Fig. 10. This section refers not only to step 1008, which Sun contends, and the Court agrees, relates to the corresponding structure, but also to other steps of the logical cylinder scrubbing process. Neither party directly addressed the question of whether any of these other steps is necessary for performing the function of periodically verifying. Thus, the Court construes the corresponding structure to include steps 1202 to 1207 and 1008, while leaving open the question of whether additional steps shown in Figure 10 also come into play here.
For the reasons set forth above, the Court construes the term "means responsive to said reading of said memory controller for periodically verifying the integrity of data currently stored in each of said identified dedicated partitions" as a means-plus-function limitation, having the function of "periodically verifying the integrity of data currently stored in each of said identified dedicated partitions," and the corresponding structure of "the control unit 101 and the disk drive subassembly programmed to execute steps 1202 to 1207 illustrated in Figure 12 and described at col. 15:47-62, and step 1008 illustrated in Figure 10 and described at col. 15:63-16:25."
-------------------------------------------------------------------------------------------------------------------------Disputed Claim Term: "means for reading data in each of said identified dedicated partitions" (Claim 1, '012 patent) -------------------------------------------------------------------------------------------------------------------------NetApp's construction Sun's construction ------------------------------------------------------------------------------------------------------------------------- This term is subject to 35 U.S.C. § 112, ¶ 6. This term is subject to 35 U.S.C. § 112, ¶ 6. Function: "reading data in each of said identified Function: "for reading data in each of said dedicated partitions," meaning "reading identified dedicated partitions" only the data stored on each of said identified dedicated partitions" Sun contends NetApp's construction of the functional language incorrectly adds an "only" limitation. Corresponding structure: See above regarding the first nested means-plus-function Structure: "processor 204 of control unit 101 term. ["control unit 101 and disk drive manager programmed to execute the software process 102-1"] that reads data from selected track (item 1202 of Figure 12)." -------------------------------------------------------------------------------------------------------------------------
The parties agree that this term is the first of the four nested terms in claim 1 of the '012 patent, that this is a means-plus-function limitation, and that the function is "reading data in each of said identified dedicated partitions." As with the "periodically verifying" term construed above, NetApp contends that this term should be construed as "reading
As to the corresponding structure, Sun proposes that the structure is the processor 204 of control unit 101 and the software associated with executing step 1202 to read data from selected track; NetApp contends that control unit 101 and disk drive manager 102-1 are necessary to perform the function. NetApp reiterates its argument that step 1202 is not software but only recites the function, "READ DATA FROM SELECTED TRACK." NetApp contends that step 1202 is not an algorithm and does not recite what steps are used to read the data, and is therefore insufficient to comprise the structure. As the Court has ruled with respect to the previous two terms, corresponding structure of a means-plus-function limitation may consist of a processor executing a software routine. Intel, 319 F.3d at 1365-66; WMS Gaming, 184 F.3d at 1348-49 and n. 4. Here, the software routine for reading data is identified in the specification as step 1202. '012 patent, col. 15:49 ("at step 1202 the data is read from the selected track").
The section of the specification describing the "Track Scrubbing Process" does not refer to the control unit 101 or processor 204 in describing the read operation. However, the "Data Read Operation" section of the specification refers to "the operational steps taken by processor 204 in control unit 101 of the data storage subsystem 100 to read data from a data redundancy group 122-1 to 122-n+m in the disk drive subsets 103." '012 patent, col. 9:19-22. That section of the specification further describes the role of the control unit 101 in the operational steps taken to perform a data read operation, illustrated in Figure 6:
'012 patent, col. 9:31-44. Raising arguments similar to those raised with respect to the "means . . . for writing" term of the '855 patent, Sun contends that control unit 101 performs all major data storage subsystem functions, not only reading data, and that not all components of control unit 101 perform the reading data function. Sun's expert, however, offered his opinion that "[t]he specification makes it clear to one ordinary skill in the art that it is control unit 101 that performs the function of reading data from the dedicated partitions." Levy Decl. ISO Sun Resp. Br. ¶ 59. He further opined that "the portion of the control unit 101 (e.g., processor 204) running the software represented by element 1202 is the proper structure." Id. ¶ 61 (emphasis added). Thus, even Sun's expert does not limit the corresponding structure to the particular embodiment represented by Figure 6, showing the operational steps taken by processor 204. '012 patent, col. 9:19-22 ("the operational steps taken by processor 204 in control unit 101 of the data storage subsystem 100 to read data from a data redundancy group 122-1 to 122-n+m in the disk drive subsets 103") and Fig. 6. Based on the specification, read in light of the claims, and with the benefit of expert testimony, the Court will construe the corresponding structure as the disk drive manager and
For the reasons set forth above, the Court construes the term "means for reading data in each of said identified dedicated partitions" as a means-plus-function limitation, having the function of "reading data in each of said identified dedicated partitions" and the corresponding structure of "the disk drive manager and the control unit 101 programmed to execute step 1202 illustrated in Figure 12 and described at col. 15:49."
The '787 patent, "Highly Available Cluster Message Passing Facility," is directed to a virtual disk system composed of a cluster of nodes and storage devices, such as disks. The system described in the '787 patent includes a collection of interconnected nodes and storage devices. The patent defines a node as "a group of circuitry designed to perform one or more computing tasks" and a storage device as "a persistent device capable of storing large amounts of data." '787 patent, col. 1:13-15, 29-31. Two or more interconnected nodes that have the capability of exchanging data are called a "cluster." Id. at 1:16-18. In the patented storage system, physical disk drives need not be directly attached to system nodes, but can be indirectly attached to system nodes via data communication links. Id. at 1:37-45. The resulting clusters of physical disks appear to a user as a collection of equally accessible logical or virtual disks. "Whether a storage device is directly accessed or accessed via another node is transparent to the client accessing the storage device." '787 patent, col. 2:57-59.
----------------------------------------------------------------------------------------------------Disputed Claim Term: "active links between said active nodes" (Claims 16 and 27, '787 patent) ----------------------------------------------------------------------------------------------------NetApp's construction Sun's construction "Active point-to-point links or active physical "operational paths capable of transferring connections to a multi-drop link between devices data between operational nodes capable of in a cluster that are not storage devices" sending and receiving data" Active: "designated as a member of the cluster" ----------------------------------------------------------------------------------------------------
The parties dispute: whether the links referred to in this claim are limited to point-to-point and multi-drop connections or may also encompass switches between the nodes; how the terms "active" nodes and links should be construed; and whether "nodes" should be defined to exclude storage devices. Although Sun initially contended that the term did not require construction because the term is clear on its face, it appears from oral argument and the final proposed construction that Sun has waived this argument. The Court agrees that this term needs construction.
The disputed term appears in Claims 16 and 27 of the '787 patent:
'787 patent, col. 19:12-29, 19:59-20:14 (emphasis added).
NetApp contends that the "active links between said active nodes" do not involve switches, but only point-to-point and multi-drop links. NetApp argues that the specification uses the term "data communication link" to refer to all hardware that connects the nodes in the cluster. '012 patent, col. 4:1-3 ("The present invention further contemplates a method of transporting data in a distributed computing system including a plurality of nodes and a data communication link."). The term "switch" does not appear anywhere in the disclosure concerning the distributed computing system.
NetApp notes that the specification explicitly identifies the contemplated types of interconnects, i.e., multi-drop (or bus-based) links or point-to-point links, but never mentions switches. Id. at col. 5:26-27 ("Data communication link 102 contemplates a multi-drop link or point-to-point links."). This section of the specification and Figure 1, which shows a data communication link 102 between nodes, is merely one embodiment of the invention. '012 patent, col. 5:21-23 ("according to one embodiment of the present invention"). NetApp offers expert testimony that a multi-drop link does not require a switch: nodes are connected to a common data transmission medium called a "bus." A node broadcasts its message onto the bus, and all the other nodes on the bus can see the message, Ganger Decl. ¶ 53, similar to an intercom system. The bus does not switch the data traffic. NetApp offers further extrinsic evidence to show that a "point-to-point" configuration is defined differently from switches: "A communications link in
Sun points to alternate embodiments. In one, the "data communication link 102 implements a scalable coherent interface (SCI)." '787 patent, col. 5:33-35. In another embodiment, "the cluster implements a TCP/IP protocol for transferring data over the SCI." Id. at col. 5:35-37. Sun offers extrinsic evidence that the SCI may use intermediate switches. Kaliski Decl. ¶ 18, Ex. C at 4 (ScIzzL Overview) ("The Scalable Coherent Interface (Local Area MultiProcessor) is effectively a combination computer backplane bus, processor memory bus, I/O bus, high performance switch, packet switch, . . ."). Sun further argues that internet protocols, such as TCP/IP, inherently include intermediate switches, such that limiting "active links" to paths without switches would contradict the express teachings of the specification. Kaliski Resp. Decl. ¶ 19. Sun further contends that neither point-to-point nor multi-drop links necessarily preclude intermediate switches: point-to-point and multi-drop links are defined by the endpoints of a communication transmitted over the link, not whether there are intermediate switches, bridges, routers or other devices between the end points. Id. ¶ 20. NetApp replies that the SCI network and high-level protocols such as TCP/IP can be used on many types of topologies and do not necessarily require a switch. Ganger Open. Decl. ¶ 53; Ganger Reply Decl. ¶¶ 23, 24. Not necessarily requiring a switch is not, however, equivalent to never using a switch in SCI and TCP/IP protocols.
NetApp argues that it is clear to one of ordinary skill in the art that the patent does not contemplate the use of a switch. Rather, NetApp contends, the specification describes a cluster networking scheme in which nodes know about the direct physical links between nodes and determine for themselves which ones to use to communicate with a particular other node: "CTI 322A (cluster transport interface) determines which links are connected to the destination node and conveys the message over one of those links." '012 patent, col. 14:47-49. NetApp offers expert opinion that the nodes are performing their own switching, which would be unnecessary if they were interconnected via a switch. Ganger Decl. ¶ 54. NetApp cites specification language that describes nodes in the cluster as aware of which physical link goes to which node, and that based on this knowledge, each node is able to select the outgoing link for the destination node. Id. ¶¶ 54, 55 (citing '787 patent, col. 12:39-47, 14:18-23, 14:47-49, Fig. 6B). NetApp contrasts this cluster networking scheme from a switched network, in which a node would not need to know which links are connected to which nodes because it would simply specify the receiving node's network address. Id. ¶ 55. While NetApp's argument has some appeal, it would restrict the claim to particular embodiments of the invention. See '787 patent, col. 12:38 ("In one embodiment"); 14:13-14 ("according to one embodiment of the present invention"); 14:46 ("In one embodiment"); 4:48-50 ("FIG. 6 is a flowchart diagram illustrating
At oral argument, NetApp raised a new argument based on the file history, contending that in the October 3, 2000 Amendment, the applicants distinguished Wolff by distinguishing the claimed invention from a switching network. In supplemental briefing, NA cites applicants' statements referring to the Wolff prior art as disclosing "a switching network" and lacking "active links between said active nodes." The applicants distinguished Wolff on several grounds, but nowhere did the applicants state or imply that Wolff was not anticipatory because it used switches. See '787 Patent File History, 10/3/00 Amendment at 14-15. NetApp concedes that the prosecution history is "not strictly speaking a clear disavowal of scope of coverage, representing a clear disavowal of claim scope." NetApp Br. re Pros. Hist. at 3. Rather, NetApp suggests that the file history demonstrates that applicants understood their own invention not to include switching networks. Id. The Court declines to infer prosecution disclaimer based on a singular reference to a prior art switching network, taken out of context. Omega Eng'g, 334 F.3d at 1325 (requiring disavowing statements to be "so clear as to show reasonable clarity and deliberateness" and "so unmistakable as to be unambiguous evidence of disclaimer").
The Court has no reason to disagree with NetApp's expert that in 1998, switches were well-known, commonly used mechanisms for increasing scalability relative to multi-drop links and simplifying communication relative to collections of point-to-point links. See Ganger Decl. ISO NetApp Open. Br. ¶ 54. However, the Court will not infer from the absence of the term "switch" that the patent excludes the possibility of using switches as links. Nor will the Court import a limitation from a preferred embodiment to limit data communication links to multi-drop or point-to-point links. The Court therefore declines to adopt NetApp's proposed construction of "active links between said active nodes" as "active point-to-point links or active physical connections to a multi-drop link."
The parties dispute whether "active" should be construed as "designated as a member of the cluster," as NetApp proposes, or as "capable of sending and receiving data," as Sun proposes. The specification explains that data access requests are routed to active nodes:
'787 patent, col. 9:18-35. In this embodiment, the system may route the data access request to the primary node attached to a storage device if it is active; if a primary node is not active, the system will route the request to a secondary node. Id.
NetApp challenges Sun's proposed construction of "active links" to mean "operational paths capable of transferring data" on the ground that it captures within its scope structures that are beyond what is contemplated by the patent. NetApp contends, for example, that one way to transfer data between two nodes is to connect the nodes to a shared disk, which would satisfy Sun's proposed definition of "active links," but a shared-disk arrangement for data transfer is not covered by the patent. Sun points out correctly, however, that its proposed construction expressly states that the paths exist between nodes, not between a node and a disk, as in the shared disk arrangement. Kaliski Decl. ¶ 17.
Rather than equating "active" with "capable of transferring data" and "capable of sending and receiving data," as Sun proposes, NetApp contends that the patent refers to an "active" node or link as one that is considered a member of the cluster. NetApp cites Claim 1 of the '787 patent which recites: "wherein the membership information includes a list of active nodes of the plurality of nodes." '787 patent, col. 18:5-7. NetApp interprets this language as equating "active" nodes with those identified in the cluster's configuration information as members of the cluster, not just the nodes or links in the cluster that are functional. The claim and specification only state, however, that the membership information of a cluster includes a list of active nodes. Id. See also '787 patent, col. 8:66-9:1 ("NDD 314A may also query CMM 310A to obtain membership information, such as a list of active nodes.") (emphasis added). Thus, the specification does not necessarily equate membership in a cluster with whether the node is "active." See '787 patent, col. 8:41-49 ("Examples of membership changes include a node joining or leaving the cluster."). Rather, the language upon which NetApp relies could just as easily mean that the cluster membership information specifies which members are operational, i.e., active, and which members are not, such as temporarily malfunctioning members. For example, the specification refers to a particular embodiment where the cluster membership data may indicate that primary node 104B is not operational, and the system may route the data access requests to the secondary node. Id. at 10:59-63. That does not necessarily mean the cluster has been reconfigured to exclude node 104B. On the other hand, the specification also provides that "[r]econfiguration may occur when a node joins or leaves a cluster, or when a node fails," id. at 8:51-53, and "reconfiguration data [may be received] indicating that a destination node is not active," id. at 10:37-41. These passages confirm that a node failure can lead to its exclusion from the cluster. Yet they do not establish that node failure necessarily leads to exiting the cluster, as opposed to being an inactive member, at least for some period of time.
Finally, NetApp argues that Sun's proposed construction would read the term active out of the claims, offering as an example claim 11 which recites "a message received from another active node of the plurality of nodes." Because claim 11 teaches that the active node is capable of sending a message to another node, NetApp contends that construing "active" as "capable of sending and receiving data" renders the term "active" redundant. In the absence of any inconsistency between Sun's proposed construction and claim 11,
The Court accepts Sun's proposed construction of "active" as "capable of sending and receiving data." The specification describes an embodiment of the virtual disk system designed such that data access requests are performed in the presence of a node failure:
'787 patent, col. 10:35-65. The specification thus primarily describes active nodes in a functional capacity, i.e., as being able to communicate or being operational in order to complete a data access request. While it appears that active nodes are members of the same cluster, it does not follow that the cluster only includes active nodes and cannot include at least temporarily nonfunctioning nodes as members.
The Court adopts Sun's construction of "active link" as "operational path capable of transferring data" and "active nodes" as "operational nodes capable of sending and receiving data."
NetApp proposes that "nodes" should be further construed as "devices in a cluster that are not storage devices." NetApp cites the language of Claim 1 to show that "nodes" are different than "storage devices:" "A distributed computing system comprising: a plurality of nodes . . .; a storage device . . . physically connected to at least one of the subset of the plurality of nodes, wherein the storage device is not physically connected to the first node;. . . ." '787 patent, col. 17:59-18:2. NetApp also relies on the specification, which defines a node and storage device in the disclosure: "Generally speaking, a node is a group of circuitry designed to perform one or more computing tasks. . . . Generally speaking, a storage device is a persistent device capable or storing large amounts of data." '787 patent, col. 1:13-15, 1:29-31. NetApp also points out that the Abstract refers to the nodes and storage
Sun contends that NetApp's proposed construction of the term "node" to exclude storage devices contradicts the intrinsic evidence. Sun's expert opines that in the abstract, a group of circuitry designed to perform one or more computing tasks can include a storage device, e.g., a computer typically includes a disk and other persistent devices for storing data. Kaliski Decl. ¶ 21. Sun also argues that the specification discloses that in one embodiment, each node includes a memory or cache for storing data from attached disks, citing '787 patent, col. 5:46-49, 15:1-4; nodes also store "mapping information" and "consistent data even in the presence of failure," id. at 8:33-36; and nodes store "messages and data received from other nodes," id. at 15:1-4. Those passages do not, however, equate "storage device" with "node," as used in the patent, although they disclose that data may be temporarily stored, or cached, in the memory of a node. Sun argues that although the specification defines "nodes" and "storage devices" separately, both definitions are broad enough to include a subset of devices that satisfy both definitions; in other words, they are not mutually exclusive terms. Sun's argument, however, is inconsistent with the usage of those terms in the patent. NetApp's proposed construction of node does not exclude the possibility that nodes may have storage capabilities but recognizes correctly that nodes with memory or cache for storing data are not the same as the long-term "storage devices" referred to in the patent. See '787 patent, col. 5:46-49 ("Data may be stored in storage devices 108-112 which is not currently being used by a node, and data from the storage device may be stored, or cached, in the memory of the node when the data is needed."). Nodes may temporarily store data, but a separate device stores data long-term.
The Court agrees with NetApp that the patent defines a node as "a group of circuitry designed to perform one or more computing tasks," '787 patent, col. 1:13-15, and is distinct from storage devices. The Court thus agrees with NetApp that nodes are not the same as storage devices as those terms are used in the patent.
For the reasons set forth above, the Court construes the term "active links between said active nodes" as "operational paths capable of transferring data between operational nodes capable of sending and receiving data, that are separate from the storage devices."
In accordance with the foregoing, and for the reasons discussed above, the Court construes the disputed terms of the Sun patents as follows:
1. "First available memory space" is "one or more logical tracks, each of which must be empty, i.e., recognized by the system as available free space."
2. "Means, responsive to the receipt of a stream of data records from said associated data processor, for writing said received stream of data records in available memory space in one of said disk drives" is a means-plus-function limitation, in which the function is "writing said received stream of data records in available memory space in one of said disk drives" and the corresponding structure is "control unit 101 programmed to execute the steps 701 through 712 illustrated in Figure 7 and described under the heading `Data Write Operation' at column 16:26 through column 17:25 of the '855 patent specification."
3. "Means responsive to said reading of said memory controller for periodically verifying the integrity of data currently
4. "Means for reading data in each of said identified dedicated partitions" is a means-plus-function limitation, in which the function is "reading data in each of said identified dedicated partitions" and the corresponding structure is "the disk drive manager and the control unit 101 programmed to execute step 1202 illustrated in Figure 12 and described at col. 15:49."
5. "Active links between said active nodes" are "operational paths capable of transferring data between operational nodes capable of sending and receiving data, that are separate from the storage devices."