1. Field of the Invention
The present invention is directed towards backup systems for computer networks. In particular, the present invention is directed towards the implementation of a distributed, hierarchical backup system with a storage area network (SAN) system.
2. Related Art
Conventional backup devices commonly employ a monolithic backup and retrieval system servicing a single server with attached storage devices. These systems usually control all aspects of a data backup or retrieval, including timing the backup, directing the files to be backed up, directing the mode of the archival request, and directing the storage process itself through attached library media. Further, these backup and retrieval systems are not scalable, and often direct only one type of backup and retrieval system, such as a network backup or a single machine backup.
Due to the monolithic structure of these backup and retrieval systems, a slight change in the operation of any one of the several functional aspects of the backup and retrieval system requires a large amount of effort to upgrade or change the backup and retrieval system, including in some situations, reinstalling the backup and retrieval system in its entirety.
Also, the operation of a backup and retrieval system across a network containing several different types of hardware and operating systems presents significant challenges to an enterprise scale backup including maintaining data coherency, bridging file system protocols, and accessibility issues across multiple hardware and operating system configurations.
Other currently available backup solutions do not address scalability issues, hierarchy issues, and the problems inherent in the storage of different files in a network file system. Many other problems and disadvantages of the prior art will become apparent to one skilled in the art after comparing such prior art with the present invention as described herein.
A file processor manages data transmission in a computer storage system. The file processor operates as a part of a computing system and may be implemented as programs running on a computational device. A management component module and at least one client component work in conjunction with the file processor for archival purposes such as archival requests. The client component may be implemented as a program running on a computing device. Archival requests include storing data such as a computer file in a location different then the original location of the data. Archival requests may also include retrieval of stored data and may include restoring data to a previous state such as retrieving earlier versions of a file. The computer storage system may be comprised of a media component and a client component that manage functions associated with a backup of a computer storage system.
Another aspect of the invention includes a modular network storage system in which a file processor directs the functions associated with the archival of data over a network. A plurality of backup devices, each having space for the archival of data are directed by a plurality of media components. Each media component is a part of a computing device and is communicatively coupled to one or more of the plurality of the backup devices and the file processor for controlling archival functions of the backup devices in accordance with the direction from the file processor. A plurality of client components each generate archival type requests to the file processor which then provide direction to the plurality of media components for directing the archival functions in accordance with the archival type requests.
The modular network storage system may include a management component that is communicatively coupled to the file processor and the plurality of client devices for coordinating archival functions where the management component is a part of a computing device such as a program running on a computer. The modular network storage system may include a plurality of client devices where each client component is communicatively coupled to one or more of the plurality of client devices and the file processor for communicating the archival type requests from the client devices to the file processor. At least two of the plurality of client devices may run different operating systems. A network storage media may be communicatively coupled to two or more of the plurality of client devices over the network as well as the plurality of backup devices and at least one client device may include a local storage media, wherein the archival functions include reading data from either the network storage media or the local storage media and then writing the data to one of the plurality of backup devices.
A method of the present invention includes providing a file processor, which is communicatively coupled to at least one client component and a plurality of media components; providing a plurality of backup devices, each backup device has physical storage space for performing archival functions; coupling the plurality of media components communicatively with the plurality of backup devices, and with a file processor, wherein each of the media components control the archival functions of one or more backup devices; generating an archival type request, by the client component to the file processor; and directing, by the file processor through the plurality of media components, the backup devices to perform an archival function, in accordance with the archival type request.
Typically, these three components, the management component 110, the client component 120, and the media component 130, may reside on several different machines. For example, the management component 110, the client component 120, and the media component 130 may all reside on a single computing device. Or, the management component 110 and one of the media components 130 may reside on a single computing device with the client component 120 residing on a different computing device. Or, the management component 110 and one of the client components 120 may reside on a single computing device with the media component 130 residing on a different computing device. Or, the media component 130 and the client component 120 may reside on the same computing device with the management component 110 residing on a different computing device. Or, the management component 110, the client component 120, and the media component 130 may all reside on different computing devices.
As shown in
These components of the management component 110, the client component 120, and the media component 130 are typically software programs running on the respective computing devices. Although the computing devices may not be the same devices, communication should exist between these components, as is demonstrated.
The client component 120 controls the actions and parameters of a backup or retrieval for a particular client computing device. A client computing device is the computing device in need of backup and retrieval assistance. The client components 120 each reside on a client computing device, or are in active communication with the client computing device. The particular client component 120 provides, for a particular client computing device, communication with a management director component 110 regarding such parameters as backup schedules, types of files in the backup schedule, the method of backup or retrieval, and other broad scope backup and retrieval management functions for the client computing device. The particular client component 120 communicates with a particular media component 130 responsible for the actual backup or retrieval function.
The media component 130 controls the actions and parameters of the actual physical level backup or retrieval at the library media containing the archived data. Each media component 130 is responsible for one or more physical backup media devices. As shown in
The particular media component 130 also creates a library index for the data contained on the particular backup devices 140, 150, or 160 for which it is responsible for operating. Additionally, the particular media component 130 indexes the location of the archived data and files on the particular associated backup media devices 140, 150, or 160 that it is responsible for operating, and allows the management component 110 and the client component 120 access to certain information about the index entries. The media component 130 uses this library index to quickly and easily locate a particular backed up file or other piece of data on the physical devices at its disposal.
The particular media component 130 either resides on a computing device physically responsible for the operating the library media which the particular media component is responsible for, or it must be in active communication with that computing device. The media component also communicates with the management component 110, since the management component is responsible for the allocation of physical media for backup and retrieval purposes.
The backup devices 140, 150, and 160 can comprise many different types of media, such as massively parallel fast access magnetic media, tape jukebox media, or optical jukebox media devices. The determination of which backup device is to be implemented is determined by several parameters. These include time related frequency of accesses, importance of the backup file or data and urgency of its retrieval, or how long ago the backup was made.
The management component 110 directs many aspects of the backup and retrieval functions. These aspects include scheduling policies, aging policies, index pruning policies, drive cleaning policies, configuration information, keeping track of all running and waiting jobs, allocation of drives, type of backup (i.e. full, incremental, or differential), tracking different applications running on each client, and tracking media. The management component 110 may contain the scheduling information for a timetable of backups for the computing devices. Any number of computing devices might be involved, and the computing devices may be interconnected.
The computing devices 210, 220, and 230 are connected to the SAN system 250 via a connection 264, such as a direct fiber channel connection, or a SCSI connection. However, it should be realized that any type of network connection is possible.
The SAN system 250 environment comprises the connection media 264, routers, and associated hubs for the actual data communication functions of the network, and a file processor 252. The elements of the SAN system 250 not explicitly numbered are implied in a remainder of the SAN system 250.
Another computing device 230 contains another client component 232. However, the computing device 230 is connected, through a network 270, to a file processor 252 for interaction with the SAN system 250 through another network 265. This network could be any type of network, such as a LAN operating under a TCP/IP protocol.
The client components 232, 222, or 212 coordinate and direct local backup and retrieval functions on the computing devices 230, 220, and 210, respectively. The management component 202 coordinates and directs the overall network backup of the computer network 290.
The computing devices 210, 220, and 230 can all be different architectures of machines running different operating systems. Hardware systems could include those made by SUN, Hewlett/Packard, Intel based families of processors, and machines based on the RS6000 and PowerPC families of processors, to name a few. Operating systems can include the many flavors of UNIX and UNIX-like operating systems, such as HP/UX, Solaris, AIX, and Linux, to name a few, as well as Windows NT by Microsoft.
The file processor 252 of the SAN system 250 contains a client component 262 and a media component 260. Storage media 257, 258, and 259 are communicatively coupled to the file processor 252 for storage of network files from the computing devices 210, 220, and 230. These storage devices can be magnetic media for fast retrieval, tape media for longer term storage, or optical media for much longer term storage.
The overall SAN system 250 acts as a block access device to the computing devices 210, 220, and 230. Thus, the overall SAN system 250 acts as a virtual media device and centralizes the network file system from the computing devices 210, 220, and 230. As such, true dynamic sharing of the data and files through the SAN system 250 is possible. These data and files are available to the computing devices 210, 220, and 230. The computing devices 210, 220, and 230 present their network file and data requests to the file processor 252 over the SAN network media 264 remainder of the SAN system 250 as they would any other storage media available to that computing device. The file processor 252, working in accordance with its software, interprets the data and file requests from the external computing devices. The file processor 252 then performs the file or data request based on the information it is given, and responds accordingly to the file or data request. The network file system is maintained and operated on solely by the file processor 252 of the SAN system 250. All accesses, writes, reads, and requests for information on any files and/or data under the network file system is handled by the SAN system 250, and in particular the file processor 252.
The file processor 252 keeps track of all the stored files and/or data stored on the media devices 257, 258, and 259. The file processor 252 maintains and presents a file system view of the stored data and/or files to the computing devices 210, 220, and 230 over the remainder of the SAN system 250 and the SAN network media 264. The computing devices 210, 220, and 230, when accessing or inquiring about portions of the network file system, perform these functions by requesting them through the file processor 252 of the SAN system 250.
The SAN system 250 allows access to the files and/or data stored in its storage media, and actually performs all the function of a file system to the attached computing devices 210, 220, and 230. Opening, closing, reading, and writing of data to files and of files themselves actually look and perform like a normal file system to the attached computing devices 210, 220, and 230. These actions are transparent to the computing devices. As such, the SAN system 250 acts and performs as a file system to the rest of the computing devices connected to the file processor 252. Also, from the perspective of the computing devices, each computing device can access and view the data and/or files stored by the file processor 252 of the SAN system 250 as part of a large, monolithic file system.
A client component 262 and a media component 260 can be part of the SAN system 250. These components work in conjunction with other components present in the network environment, including the file processor 252 itself, to make up a network backup and retrieval system for the computer network 290.
In an embodiment of the present invention, the file processor 252 works in conjunction with the management component 202, the media component 260, and the client component 262 for archival type requests, such as those concerned with backup, retrieval, and restoration purposes. The media component 260 acts in conjunction with the management component 202 and/or the client component 262 in a backup and retrieval operation with regards to the network files as stored on the SAN 250.
The management component 202 could, for example, initiate a full backup of the network file system as stored and managed on the SAN system 250. This could be initiated through the network link 270 directly to the client component 262, bypassing the SAN link 264.
Or, the management component 202 could initiate the action through any of the computing devices 210, 220, or 230. This initiation may take place either in a direct request to the SAN system 250 or indirectly to the components 260 and 262 through such methods such as data encapsulation and data bridging. Or, the initiation could be a special file memory request to the SAN system 250, which the file processor 252 interprets to be a particular backup and retrieval instruction.
It may also be possible that the client component 262 requests the backup itself, independently of the media component 260. In either event the client component 262 would manage the functions associated during the backup with the host system, in this case the SAN system 250, such as determining the actual files or data to backup, the level of backup, and other such client machine specific determinations. The data and/or files that need to be backed up would be made available from the network file storage media 257, 258, and 259, wherein the client component 262 turns control over to the media component 260. The media component 260 would then direct the physical storage of the data and/or files on the network file system from the storage media 257, 258, or 259, as the case may be, and onto the library storage media 275. The media component 260 could then perform the indexing functions on the archived data and/or files.
It should be noted that the backup could take several forms. A backup could target data and files on a sector or block write basis, or could be used in a file basis.
In the case of an incremental backup, for example, only those blocks or files that have been altered would be stored for backup and retrieval purposes. In the case of a differential backup, only those changed blocks as contained within an altered file would be stored. Or, other criteria, such as file size, can be used to determine a hybrid backup strategy wherein both files and blocks are saved, depending on the criteria employed and the state of the data and/or files as they exist on the SAN system.
In a restore-type archival operation, a similar method would be employed. Either the media component 260 or the client component 262 may request a restore. In either case, the client component 262 would then perform the managerial tasks associated with the request, as described earlier. Control would then pass to the media component 260 to physically perform the extraction of the stored or archived data and/or files from the library media 275. The client component 262 would then forward the retrieved data and/or files to the requesting device.
Should the requesting device be the SAN system itself, the client component 262 would forward the retrieved data to the SAN system 250, wherein the SAN system 250 could write the data out to the appropriate storage media 257, 258, or 259.
Or, the client component 262 could forward the retrieved data and/or files to the management component 202, wherein the management component 202 routes the requested data and/or files to the particular computing device.
Alternately, the computing device 220 running the client component 222 may request a restore or other archival request for its attached memory media device 214 through the client component 222. The media component 260 could be contacted either as a special media access request to the SAN system 250, or it could access the media component 260 through such methods as data encapsulation over the SAN network 264. Once contacted, if the request was for retrieval or a restore, the media component 260 would collect the appropriate data and/or files and relay the retrieved data and/or files to the computing device 220 through a communication with the SAN system 250. This return communication could be in the form of a SAN communication of a network type file or data, or it could employ the use of data encapsulation or data bridging for the transmittal of the retrieved information.
If the request from the client component 222 is for archiving a file, block, or set of either of the two, the media component 260 could acknowledge the request either directly through a SAN type message from the SAN system 250, or by encapsulating the response in a SAN type message. The client component 222 running on the computing device 220 would then direct the appropriate data or files from the memory media 214 to the media component 260. This again may take place either through a special access protocol recognizable by the SAN system 250 and redirected to the media component 260, or through encapsulating the data sent over the SAN link 264 from the computing device as a SAN-formatted message directed to the media component 260. It should be noted that the management component 202 running on a different computing device could also initiate a backup and retrieval request by the client component 222 through the network 270.
Turning now the computing device 230, the computing device 230 is running a client component 232 that manages its archiving needs. The computing device 230 is not in direct contact with the media component 260 operating on the library storage media 275. A request for an archival action such as retrieval, a restoration, or a backup is made by the client component 232. This request can be initiated either by the management component 202 or by the client component 232 itself. The client component 232 then coordinates and determines the scope of the backup and retrieval request, and accordingly acts to notify the media component 260. This may be accomplished either by a direct request to the SAN system 250 over the SAN link 264 acting as a request for a local backup and retrieval request, in which the SAN system 250 coordinates the backup and retrieval request. Or, this may be accomplished by the routing of a message directly for the media component 260 through use of data encapsulation via the SAN system 250.
If the request is a request for a backup, the client component 232 could then communicate the files and/or data to be archived to the media component 260 in a similar manner. The media component 260 would then perform the requested backup to the media library 275.
If the request is one for a retrieval or restoration, the media component 260 would extract the requested data from the media library 275 and route the data back to the client component 232 which would be responsible for the placement of the data on the computing system 230. This outbound messaging may be accomplished either by direct communication through the SAN system 250, or may be by indirect methods, such as data encapsulation from the media component 260 or the use of data bridging techniques.
An example of the fast, alterable random access device 312 includes various magnetic media, such as a disc drive, that could include multiple writing surfaces. An example of the fast, non alterable random access device 314 includes a multi disc optical system. An example of the slow, alterable random access device 318 includes jukeboxes containing disc drive cartridges. An example of the slow, non-alterable random access device 314 includes jukeboxes containing optical discs. An example of the serial device 316 could include a magnetic tape cartridge jukebox.
The media component 320 would control the placement of files, sectors, and other backup and retrieval information on the appropriate library media. This placement could be controlled according to the parameters of the backup, such as proximity in date, or whether the archived data is alterable in the archived form. Other parameters to consider could be the relative frequency of requests to the data or to importance of the data as determined by a client component or a management component directing those parameters.
Thus, in the case of differential backups, portions of the archived file may reside across several different media. Older portions may be contained in the device 314, while newer updated versions of that block may be contained in the device 312. Portions that have not changed may still be in other library devices.
In view of the above detailed description of the present invention and associated drawings, other modifications and variations will now become apparent to those skilled in the art. It should also be apparent that such other modifications and variations may be effected without departing from the spirit and scope of the present invention as set forth in this specification.
This application is a continuation of U.S. patent application Ser. No. 11/356,467, filed Feb. 15, 2006, now abandoned, which is a continuation of U.S. patent application Ser. No. 09/610,738, filed Jul. 6, 2000, now U.S. Pat. No. 7,035,880, issued Apr. 25, 2006, which claims the benefit of priority of U.S. Provisional Patent Application No. 60/143,743, filed Jul. 14, 1999, U.S. Provisional Patent Application No. 60/143,744, filed Jul. 14, 1999, and U.S. Provisional Patent Application No. 60/179,345, filed Jan. 31, 2000.
Number | Name | Date | Kind |
---|---|---|---|
4296465 | Lemak | Oct 1981 | A |
4686620 | Ng | Aug 1987 | A |
4751639 | Corcoran et al. | Jun 1988 | A |
4995035 | Cole et al. | Feb 1991 | A |
5005122 | Griffin et al. | Apr 1991 | A |
5093912 | Dong et al. | Mar 1992 | A |
5133065 | Cheffetz et al. | Jul 1992 | A |
5193154 | Kitajima et al. | Mar 1993 | A |
5204958 | Cheng et al. | Apr 1993 | A |
5212772 | Masters | May 1993 | A |
5226157 | Nakano et al. | Jul 1993 | A |
5239647 | Anglin et al. | Aug 1993 | A |
5241668 | Eastridge et al. | Aug 1993 | A |
5241670 | Eastridge et al. | Aug 1993 | A |
5265159 | Kung | Nov 1993 | A |
5276860 | Fortier et al. | Jan 1994 | A |
5276867 | Kenley et al. | Jan 1994 | A |
5287500 | Stoppani, Jr. | Feb 1994 | A |
5301351 | Jippo | Apr 1994 | A |
5311509 | Heddes et al. | May 1994 | A |
5321816 | Rogan et al. | Jun 1994 | A |
5333251 | Urabe et al. | Jul 1994 | A |
5333315 | Saether et al. | Jul 1994 | A |
5347653 | Flynn et al. | Sep 1994 | A |
5410700 | Fecteau et al. | Apr 1995 | A |
5426284 | Doyle | Jun 1995 | A |
5448724 | Hayashi et al. | Sep 1995 | A |
5455926 | Keele et al. | Oct 1995 | A |
5491810 | Allen | Feb 1996 | A |
5495607 | Pisello et al. | Feb 1996 | A |
5504873 | Martin et al. | Apr 1996 | A |
5544345 | Carpenter et al. | Aug 1996 | A |
5544347 | Yanai et al. | Aug 1996 | A |
5555404 | Torbjornsen et al. | Sep 1996 | A |
5559957 | Balk | Sep 1996 | A |
5559991 | Kanfi | Sep 1996 | A |
5574898 | Leblang et al. | Nov 1996 | A |
5598546 | Blomgren | Jan 1997 | A |
5613134 | Lucus et al. | Mar 1997 | A |
5615392 | Harrison et al. | Mar 1997 | A |
5619644 | Crockett et al. | Apr 1997 | A |
5638509 | Dunphy et al. | Jun 1997 | A |
5642496 | Kanfi | Jun 1997 | A |
5649185 | Antognini et al. | Jul 1997 | A |
5659614 | Bailey, III | Aug 1997 | A |
5673381 | Huai et al. | Sep 1997 | A |
5675511 | Prasad et al. | Oct 1997 | A |
5677900 | Nishida et al. | Oct 1997 | A |
5682513 | Candelaria et al. | Oct 1997 | A |
5687343 | Fecteau et al. | Nov 1997 | A |
5699361 | Ding et al. | Dec 1997 | A |
5719786 | Nelson et al. | Feb 1998 | A |
5729743 | Squibb | Mar 1998 | A |
5734817 | Roffe et al. | Mar 1998 | A |
5737747 | Vishlitzky et al. | Apr 1998 | A |
5740405 | DeGraaf | Apr 1998 | A |
5742807 | Masinter | Apr 1998 | A |
5751997 | Kullick et al. | May 1998 | A |
5758359 | Saxon | May 1998 | A |
5758649 | Iwashita et al. | Jun 1998 | A |
5761677 | Senator et al. | Jun 1998 | A |
5761734 | Pfeffer et al. | Jun 1998 | A |
5764972 | Crouse et al. | Jun 1998 | A |
5778395 | Whiting et al. | Jul 1998 | A |
5790828 | Jost | Aug 1998 | A |
5805920 | Sprenkle et al. | Sep 1998 | A |
5806058 | Mori et al. | Sep 1998 | A |
5812398 | Nielsen | Sep 1998 | A |
5812748 | Ohran et al. | Sep 1998 | A |
5813009 | Johnson et al. | Sep 1998 | A |
5813013 | Shakib et al. | Sep 1998 | A |
5813017 | Morris | Sep 1998 | A |
5829046 | Tzelnic et al. | Oct 1998 | A |
5835953 | Ohran | Nov 1998 | A |
5845257 | Fu et al. | Dec 1998 | A |
5860073 | Ferrel et al. | Jan 1999 | A |
5860104 | Witt et al. | Jan 1999 | A |
5864871 | Kitain et al. | Jan 1999 | A |
5875478 | Blumenau | Feb 1999 | A |
5875481 | Ashton et al. | Feb 1999 | A |
5884067 | Storm et al. | Mar 1999 | A |
5887134 | Ebrahim | Mar 1999 | A |
5896531 | Curtis et al. | Apr 1999 | A |
5897642 | Capossela et al. | Apr 1999 | A |
5898431 | Webster et al. | Apr 1999 | A |
5901327 | Ofek | May 1999 | A |
5924102 | Perks | Jul 1999 | A |
5926836 | Blumenau | Jul 1999 | A |
5933104 | Kimura | Aug 1999 | A |
5933601 | Fanshier et al. | Aug 1999 | A |
5950205 | Aviani, Jr. | Sep 1999 | A |
5956519 | Wise et al. | Sep 1999 | A |
5956733 | Nakano et al. | Sep 1999 | A |
5958005 | Thorne et al. | Sep 1999 | A |
5970233 | Lie et al. | Oct 1999 | A |
5970255 | Tran et al. | Oct 1999 | A |
5974563 | Beeler, Jr. | Oct 1999 | A |
5978841 | Berger | Nov 1999 | A |
5983239 | Cannon | Nov 1999 | A |
5987478 | See et al. | Nov 1999 | A |
5991753 | Wilde | Nov 1999 | A |
5995091 | Near et al. | Nov 1999 | A |
6000020 | Chin et al. | Dec 1999 | A |
6003089 | Shaffer et al. | Dec 1999 | A |
6009274 | Fletcher et al. | Dec 1999 | A |
6012090 | Chung et al. | Jan 2000 | A |
6012415 | Linseth | Jan 2000 | A |
6016553 | Schneider et al. | Jan 2000 | A |
6018744 | Mamiya et al. | Jan 2000 | A |
6021415 | Cannon et al. | Feb 2000 | A |
6023710 | Steiner et al. | Feb 2000 | A |
6026414 | Anglin | Feb 2000 | A |
6026437 | Muschett et al. | Feb 2000 | A |
6052735 | Ulrich et al. | Apr 2000 | A |
6070228 | Belknap et al. | May 2000 | A |
6073137 | Brown et al. | Jun 2000 | A |
6073220 | Gunderson | Jun 2000 | A |
6076148 | Kedem | Jun 2000 | A |
6078934 | Lahey et al. | Jun 2000 | A |
6085030 | Whitehead et al. | Jul 2000 | A |
6088694 | Burns et al. | Jul 2000 | A |
6091518 | Anabuki | Jul 2000 | A |
6094416 | Ying | Jul 2000 | A |
6101585 | Brown et al. | Aug 2000 | A |
6105037 | Kishi | Aug 2000 | A |
6105129 | Meier et al. | Aug 2000 | A |
6108640 | Slotznick | Aug 2000 | A |
6108712 | Hayes, Jr. | Aug 2000 | A |
6112239 | Kenner et al. | Aug 2000 | A |
6122668 | Teng et al. | Sep 2000 | A |
6131095 | Low et al. | Oct 2000 | A |
6131190 | Sidwell | Oct 2000 | A |
6137864 | Yaker | Oct 2000 | A |
6148377 | Carter et al. | Nov 2000 | A |
6148412 | Cannon et al. | Nov 2000 | A |
6154787 | Urevig et al. | Nov 2000 | A |
6154852 | Amundson et al. | Nov 2000 | A |
6161111 | Mutalik et al. | Dec 2000 | A |
6161192 | Lubbers et al. | Dec 2000 | A |
6167402 | Yeager | Dec 2000 | A |
6175829 | Li et al. | Jan 2001 | B1 |
6189051 | Oh et al. | Feb 2001 | B1 |
6212512 | Barney et al. | Apr 2001 | B1 |
6212521 | Minami et al. | Apr 2001 | B1 |
6230164 | Rikieta et al. | May 2001 | B1 |
6249795 | Douglis | Jun 2001 | B1 |
6253217 | Dourish et al. | Jun 2001 | B1 |
6260069 | Anglin | Jul 2001 | B1 |
6263368 | Martin | Jul 2001 | B1 |
6269382 | Cabrera et al. | Jul 2001 | B1 |
6269431 | Dunham | Jul 2001 | B1 |
6275953 | Vahalia et al. | Aug 2001 | B1 |
6292783 | Rohler et al. | Sep 2001 | B1 |
6295541 | Bodnar et al. | Sep 2001 | B1 |
6301592 | Aoyama et al. | Oct 2001 | B1 |
6304880 | Kishi | Oct 2001 | B1 |
6314439 | Bates et al. | Nov 2001 | B1 |
6314460 | Knight et al. | Nov 2001 | B1 |
6324581 | Xu et al. | Nov 2001 | B1 |
6328766 | Long | Dec 2001 | B1 |
6330570 | Crighton | Dec 2001 | B1 |
6330572 | Sitka | Dec 2001 | B1 |
6330589 | Kennedy | Dec 2001 | B1 |
6330642 | Carteau | Dec 2001 | B1 |
6343287 | Kumar et al. | Jan 2002 | B1 |
6343324 | Hubis et al. | Jan 2002 | B1 |
6350199 | Williams et al. | Feb 2002 | B1 |
6351764 | Voticky et al. | Feb 2002 | B1 |
RE37601 | Eastridge et al. | Mar 2002 | E |
6353878 | Dunham | Mar 2002 | B1 |
6356801 | Goodman et al. | Mar 2002 | B1 |
6356863 | Sayle | Mar 2002 | B1 |
6360306 | Bergsten | Mar 2002 | B1 |
6367029 | Mayhead et al. | Apr 2002 | B1 |
6374336 | Peters et al. | Apr 2002 | B1 |
6389432 | Pothapragada et al. | May 2002 | B1 |
6396513 | Helfman et al. | May 2002 | B1 |
6397308 | Ofek et al. | May 2002 | B1 |
6418478 | Ignatius et al. | Jul 2002 | B1 |
6421709 | McCormick et al. | Jul 2002 | B1 |
6421711 | Blumenau et al. | Jul 2002 | B1 |
6438595 | Blumenau et al. | Aug 2002 | B1 |
6453325 | Cabrera et al. | Sep 2002 | B1 |
6466592 | Chapman | Oct 2002 | B1 |
6470332 | Weschler | Oct 2002 | B1 |
6473794 | Guheen et al. | Oct 2002 | B1 |
6487561 | Ofek et al. | Nov 2002 | B1 |
6487644 | Huebsch et al. | Nov 2002 | B1 |
6493811 | Blades et al. | Dec 2002 | B1 |
6519679 | Devireddy et al. | Feb 2003 | B2 |
6535910 | Suzuki et al. | Mar 2003 | B1 |
6538669 | Lagueux, Jr. et al. | Mar 2003 | B1 |
6542909 | Tamer et al. | Apr 2003 | B1 |
6542972 | Ignatius et al. | Apr 2003 | B2 |
6546545 | Honarvar et al. | Apr 2003 | B1 |
6549918 | Probert et al. | Apr 2003 | B1 |
6553410 | Kikinis | Apr 2003 | B2 |
6557039 | Leong et al. | Apr 2003 | B1 |
6564219 | Lee et al. | May 2003 | B1 |
6564228 | O'Connor | May 2003 | B1 |
6581143 | Gagne et al. | Jun 2003 | B2 |
6593656 | Ahn et al. | Jul 2003 | B2 |
6604149 | Deo et al. | Aug 2003 | B1 |
6615241 | Miller et al. | Sep 2003 | B1 |
6631493 | Ottesen et al. | Oct 2003 | B2 |
6647396 | Parnell et al. | Nov 2003 | B2 |
6647409 | Sherman et al. | Nov 2003 | B1 |
6654825 | Clapp et al. | Nov 2003 | B2 |
6658436 | Oshinsky et al. | Dec 2003 | B2 |
6658526 | Nguyen et al. | Dec 2003 | B2 |
6704933 | Tanaka et al. | Mar 2004 | B1 |
6721767 | De Meno et al. | Apr 2004 | B2 |
6728733 | Tokui | Apr 2004 | B2 |
6732124 | Koseki et al. | May 2004 | B1 |
6742092 | Huebsch et al. | May 2004 | B1 |
6757794 | Cabrera et al. | Jun 2004 | B2 |
6760723 | Oshinsky et al. | Jul 2004 | B2 |
6763351 | Subramaniam et al. | Jul 2004 | B1 |
6789161 | Blendermann et al. | Sep 2004 | B1 |
6871163 | Hiller et al. | Mar 2005 | B2 |
6874023 | Pennell et al. | Mar 2005 | B1 |
6886020 | Zahavi et al. | Apr 2005 | B1 |
6912645 | Dorward et al. | Jun 2005 | B2 |
6941304 | Gainey et al. | Sep 2005 | B2 |
6952758 | Chron et al. | Oct 2005 | B2 |
6968351 | Butterworth | Nov 2005 | B2 |
6973553 | Archibald, Jr. et al. | Dec 2005 | B1 |
6978265 | Schumacher | Dec 2005 | B2 |
6983351 | Gibble et al. | Jan 2006 | B2 |
7003519 | Biettron et al. | Feb 2006 | B1 |
7003641 | Prahlad et al. | Feb 2006 | B2 |
7035880 | Crescenti et al. | Apr 2006 | B1 |
7039860 | Gautestad | May 2006 | B1 |
7062761 | Slavin et al. | Jun 2006 | B2 |
7076685 | Pillai et al. | Jul 2006 | B2 |
7082441 | Zahavi et al. | Jul 2006 | B1 |
7085904 | Mizuno et al. | Aug 2006 | B2 |
7096315 | Takeda et al. | Aug 2006 | B2 |
7103731 | Gibble et al. | Sep 2006 | B2 |
7103740 | Colgrove et al. | Sep 2006 | B1 |
7107298 | Prahlad et al. | Sep 2006 | B2 |
7107395 | Ofek et al. | Sep 2006 | B1 |
7120757 | Tsuge | Oct 2006 | B2 |
7130970 | Devassy et al. | Oct 2006 | B2 |
7134041 | Murray et al. | Nov 2006 | B2 |
7149893 | Leonard et al. | Dec 2006 | B1 |
7155465 | Lee et al. | Dec 2006 | B2 |
7155481 | Prahlad et al. | Dec 2006 | B2 |
7155633 | Tuma et al. | Dec 2006 | B2 |
7174312 | Harper et al. | Feb 2007 | B2 |
7194454 | Hansen et al. | Mar 2007 | B2 |
7246140 | Therrien et al. | Jul 2007 | B2 |
7246207 | Kottomtharayil et al. | Jul 2007 | B2 |
7269612 | Devarakonda et al. | Sep 2007 | B2 |
7278142 | Bandhole et al. | Oct 2007 | B2 |
7287047 | Kavuri | Oct 2007 | B2 |
7293133 | Colgrove et al. | Nov 2007 | B1 |
7315924 | Prahlad et al. | Jan 2008 | B2 |
7328225 | Beloussov et al. | Feb 2008 | B1 |
7343356 | Prahlad et al. | Mar 2008 | B2 |
7343365 | Farnham et al. | Mar 2008 | B2 |
7343453 | Prahlad et al. | Mar 2008 | B2 |
7343459 | Prahlad et al. | Mar 2008 | B2 |
7346623 | Prahlad et al. | Mar 2008 | B2 |
7346751 | Prahlad et al. | Mar 2008 | B2 |
7356657 | Mikami | Apr 2008 | B2 |
7359917 | Winter et al. | Apr 2008 | B2 |
7380072 | Kottomtharayil et al. | May 2008 | B2 |
7386552 | Kitamura et al. | Jun 2008 | B2 |
7389311 | Crescenti et al. | Jun 2008 | B1 |
7395282 | Crescenti et al. | Jul 2008 | B1 |
7409509 | Devassy et al. | Aug 2008 | B2 |
7430587 | Malone et al. | Sep 2008 | B2 |
7433301 | Akahane et al. | Oct 2008 | B2 |
7434219 | De Meno et al. | Oct 2008 | B2 |
7447692 | Oshinsky et al. | Nov 2008 | B2 |
7454569 | Kavuri et al. | Nov 2008 | B2 |
7467167 | Patterson | Dec 2008 | B2 |
7472238 | Gokhale | Dec 2008 | B1 |
7484054 | Kottomtharayil et al. | Jan 2009 | B2 |
7490207 | Amarendran | Feb 2009 | B2 |
7496589 | Jain et al. | Feb 2009 | B1 |
7500053 | Kavuri et al. | Mar 2009 | B1 |
7500150 | Sharma et al. | Mar 2009 | B2 |
7509316 | Greenblatt et al. | Mar 2009 | B2 |
7512601 | Cucerzan et al. | Mar 2009 | B2 |
7519726 | Palliyll et al. | Apr 2009 | B2 |
7529748 | Wen et al. | May 2009 | B2 |
7532340 | Koppich et al. | May 2009 | B2 |
7536291 | Retnamma et al. | May 2009 | B1 |
7543125 | Gokhale | Jun 2009 | B2 |
7546324 | Prahlad et al. | Jun 2009 | B2 |
7581077 | Ignatius et al. | Aug 2009 | B2 |
7596586 | Gokhale et al. | Sep 2009 | B2 |
7613748 | Brockway et al. | Nov 2009 | B2 |
7617253 | Prahlad et al. | Nov 2009 | B2 |
7617262 | Prahlad et al. | Nov 2009 | B2 |
7617541 | Plotkin et al. | Nov 2009 | B2 |
7627598 | Burke | Dec 2009 | B1 |
7627617 | Kavuri et al. | Dec 2009 | B2 |
7636743 | Erofeev | Dec 2009 | B2 |
7651593 | Prahlad et al. | Jan 2010 | B2 |
7661028 | Erofeev | Feb 2010 | B2 |
7668798 | Scanlon et al. | Feb 2010 | B2 |
7685126 | Patel et al. | Mar 2010 | B2 |
7716171 | Kryger | May 2010 | B2 |
7734715 | Hyakutake et al. | Jun 2010 | B2 |
7757043 | Kavuri et al. | Jul 2010 | B2 |
7802067 | Prahlad et al. | Sep 2010 | B2 |
7840537 | Gokhale et al. | Nov 2010 | B2 |
7844676 | Prahlad et al. | Nov 2010 | B2 |
7873808 | Stewart | Jan 2011 | B2 |
7877351 | Crescenti et al. | Jan 2011 | B2 |
8041673 | Crescenti et al. | Oct 2011 | B2 |
8078583 | Prahlad et al. | Dec 2011 | B2 |
8086809 | Prahlad et al. | Dec 2011 | B2 |
8103829 | Kavuri et al. | Jan 2012 | B2 |
20020040376 | Yamanaka et al. | Apr 2002 | A1 |
20020042869 | Tate et al. | Apr 2002 | A1 |
20020049626 | Mathias et al. | Apr 2002 | A1 |
20020049778 | Bell et al. | Apr 2002 | A1 |
20020069324 | Gerasimov et al. | Jun 2002 | A1 |
20020103848 | Giacomini et al. | Aug 2002 | A1 |
20020107877 | Whiting et al. | Aug 2002 | A1 |
20020161753 | Inaba et al. | Oct 2002 | A1 |
20030061491 | Jaskiewicz et al. | Mar 2003 | A1 |
20030097361 | Huang et al. | May 2003 | A1 |
20030172158 | Pillai et al. | Sep 2003 | A1 |
20040107199 | Dalrymple et al. | Jun 2004 | A1 |
20040193953 | Callahan et al. | Sep 2004 | A1 |
20040205206 | Naik et al. | Oct 2004 | A1 |
20040230829 | Dogan et al. | Nov 2004 | A1 |
20050033800 | Kavuri et al. | Feb 2005 | A1 |
20050114406 | Borthakur et al. | May 2005 | A1 |
20050246510 | Retnamma et al. | Nov 2005 | A1 |
20060005048 | Osaki et al. | Jan 2006 | A1 |
20060010154 | Prahlad et al. | Jan 2006 | A1 |
20060010227 | Atluri | Jan 2006 | A1 |
20070043956 | El Far et al. | Feb 2007 | A1 |
20070078913 | Crescenti et al. | Apr 2007 | A1 |
20070100867 | Celik et al. | May 2007 | A1 |
20070143756 | Gokhale | Jun 2007 | A1 |
20070183224 | Erofeev | Aug 2007 | A1 |
20070288536 | Sen et al. | Dec 2007 | A1 |
20080059515 | Fulton | Mar 2008 | A1 |
20080229037 | Bunte et al. | Sep 2008 | A1 |
20080243914 | Prahlad et al. | Oct 2008 | A1 |
20080243957 | Prahlad et al. | Oct 2008 | A1 |
20080243958 | Prahlad et al. | Oct 2008 | A1 |
20080244177 | Crescenti et al. | Oct 2008 | A1 |
20090055407 | Oshinsky et al. | Feb 2009 | A1 |
20090228894 | Gokhale | Sep 2009 | A1 |
20090248762 | Prahlad et al. | Oct 2009 | A1 |
20090271791 | Gokhale | Oct 2009 | A1 |
20090319534 | Gokhale | Dec 2009 | A1 |
20090319585 | Gokhale | Dec 2009 | A1 |
20100005259 | Prahlad | Jan 2010 | A1 |
20100049753 | Prahlad et al. | Feb 2010 | A1 |
20100094808 | Erofeev | Apr 2010 | A1 |
20100100529 | Erofeev | Apr 2010 | A1 |
20100122053 | Prahlad et al. | May 2010 | A1 |
20100131461 | Prahlad et al. | May 2010 | A1 |
20100138393 | Crescenti et al. | Jun 2010 | A1 |
20100145909 | Ngo | Jun 2010 | A1 |
20100179941 | Agrawal et al. | Jul 2010 | A1 |
20100205150 | Prahlad et al. | Aug 2010 | A1 |
20110066817 | Kavuri et al. | Mar 2011 | A1 |
20110072097 | Prahlad et al. | Mar 2011 | A1 |
20110119235 | Crescenti et al. | May 2011 | A1 |
20120030177 | Crescenti et al. | Feb 2012 | A1 |
20120059797 | Prahlad et al. | Mar 2012 | A1 |
20120089800 | Prahlad et al. | Apr 2012 | A1 |
20120124042 | Oshinsky et al. | May 2012 | A1 |
20120124289 | Kavuri et al. | May 2012 | A1 |
Number | Date | Country |
---|---|---|
0 259 912 | Mar 1988 | EP |
0341230 | Nov 1989 | EP |
0381651 | Aug 1990 | EP |
0 405 926 | Jan 1991 | EP |
0 467 546 | Jan 1992 | EP |
0 599 466 | Jun 1994 | EP |
0670543 | Sep 1995 | EP |
0717346 | Jun 1996 | EP |
0 774 715 | May 1997 | EP |
0 809 184 | Nov 1997 | EP |
0 862 304 | Sep 1998 | EP |
0 899 662 | Mar 1999 | EP |
0 981 090 | Feb 2000 | EP |
0 986 011 | Mar 2000 | EP |
1 174 795 | Jan 2002 | EP |
H11-102314 | Apr 1999 | JP |
H11-259459 | Sep 1999 | JP |
2001-60175 | Mar 2001 | JP |
WO 9417474 | Aug 1994 | WO |
WO 9513580 | May 1995 | WO |
WO 9839707 | Sep 1998 | WO |
WO 9912098 | Mar 1999 | WO |
WO 9914692 | Mar 1999 | WO |
WO 9923585 | May 1999 | WO |
WO 0104756 | Jan 2001 | WO |
WO 2005050381 | Jun 2005 | WO |
Number | Date | Country | |
---|---|---|---|
20100138393 A1 | Jun 2010 | US |
Number | Date | Country | |
---|---|---|---|
60143743 | Jul 1999 | US | |
60143744 | Jul 1999 | US | |
60179345 | Jan 2000 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 11356467 | Feb 2006 | US |
Child | 12702716 | US | |
Parent | 09610738 | Jul 2000 | US |
Child | 11356467 | US |