Titanide Ventures, LLC v. Google, Inc.

Filing 1

COMPLAINT against Google, Inc. ( Filing fee $ 350 receipt number 0540-3506749.), filed by Titanide Ventures, LLC. (Attachments: # 1 Civil Cover Sheet, # 2 Exhibit A - U.S. Patent Number 6,714,968, # 3 Exhibit B - U.S. Patent Number 6,735,623, # 4 Exhibit C - U.S. Patent Number 6,952,724)(Hill, Jack)

Download PDF
EXHIBIT A 111111 1111111111111111111111111111111111111111111111111111111111111 US006714968Bl (54) United States Patent (10) Prust (12) (45) METHOD AND SYSTEM FOR SEAMLESS ACCESS TO A REMOTE STORAGE SERVER UTILIZING MULTIPLE ACCESS INTERFACES EXECUTING ON THE REMOTE SERVER (75) Inventor: (73) Assignee: Mitch Prust, St. Paul, MN (US) ( *) Notice: (21) Appl. No.: 09/501,041 (22) Filed: (51) Int. CI? ....................... G06F 15/16; G06F 15/173; G06F 9/00 U.S. CI. ....................... 709/219; 709/217; 709/203; 709/225; 709/328 Field of Search ................................. 709/217-219, 709/328,214,203 (52) (58) Mitch Prust, 16244 Ramsey Blvd. NW., Ramsey, MN (US) 55303 Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.c. 154(b) by 0 days. Feb. 9, 2000 (56) References Cited U.S. PATENT DOCUMENTS 5,748,896 6,216,168 6,289,382 6,311,213 6,356,863 6,356,941 6,366,987 6,393,466 6,449,688 6,453,325 6,466,978 A B1 B1 B2 B1 B1 B1 B1 B1 B1 B1 * 5/1998 Daly et al. .................. 709/223 * 4/2001 Dev et al. ................... 709/245 9/2001 Bowman-Amuah * 10/2001 Dawson et al. ............. 709/217 3/2002 Sayle * 3/2002 Cohen ........................ 709/219 * 4/2002 Tzelnic et al. .............. 711/162 5/2002 Hickman et al. * 9/2002 Peters et al. ................ 709/233 * 9/2002 Cabrera et al. ............. 707/204 * 10/2002 Mukherjee et al. ......... 709/225 FOREIGN PATENT DOCUMENTS wo WO 94/18634 WO Patent No.: US 6,714,968 Bl Date of Patent: Mar. 30, 2004 WO 98/24025 OTHER PUBLICATIONS XP-000888651, Client Application for Integrating a Development Environment with a Web Distributed Authoring (WebDAV) Server, Research Disclosure, Disclosed by International Business Machines Corporation, 2 pages (Apr. 1999). International Search Report from Application No. PCT/US 01/04352 mailed Oct. 9,2003 (4 pages). Goals for a configuration management network protocol, Whitehead, E.J., System Configuration Management, 9th International Symposium. SCM-9, Proceedings, Toulouse, France Sep. 5-7, 1999, ISBN: 3-540-66484-X, 18 pages. WebDAV: A Panacea for Collaborative Authoring?, Sussman, D., Siemens Corporate Research, Apr.-Jun. 1999, pp. 76-79. (List continued on next page.) Primary Examiner-David Wiley Assistant Examiner-Joseph E. Avellino (74) Attorney, Agent, or Firm-Shumaker & Sieffert, P.A. (57) ABSTRACT A data storage system is described that provides seamless access to remote data storage areas via a global computer network. The data storage system includes one or more storage servers coupled to one or more storage devices. The storage devices provide a plurality of virtual storage areas, where each virtual storage area is assigned to a user. Access to the virtual storage areas is fully integrated with an operating system executing on a client computer such that the user, or software applications executing on the client computer, can seamlessly access the corresponding virtual storage area using standard file management routines provided by the operating system. In addition, the invention provides a wide range of other remote access methods to the virtual data storage areas. 25 Claims, 8 Drawing Sheets 8/1994 800 '... 803 ~ ~---------------------- 805 User accesses the remote storage servers via a global computer network, such as the Internet, and request a corresponding virtual storage area. ~---- t ------------------- Prompt the user for information such as a username, password, and billing address. 807 809 6/1998 a~ocate Upon approval, automahcally a remote storage area 0 the user and stores the user information in metadata database. Inform user of approval as well as necessary ~____________--'a""c""c"'e"'ss"-"'in';'fo"'-r'-"m"'at"'io""'n. ~ ___________-----' Upon allocation, users can access the respective remote storage area via a variety of access interfaces. US 6,714,968 BI Page 2 OlliER PUBLICATIONS World Wide Web Distributed Authoring and Versioning: Web DAV, Whitehead, E.l., WebDAV Information, Feb. 1999, pp. 1-2. Requirements for Distributed Authoring and Versioning on the World Wide Web, Slein, l.A.; Vitali, F.; Whitehead, lr., E.l.; Durand, D.G.; Standard View VI. 5, No.1, Mar. 1997, ISSN: 1067-9936, pp. 17-24. How to implement Web-based groupware systems based on WebDAV, Dridi, F.; Neumann, G., Enabling Technologies: Infrastructure for Collaborative Enterprises, lun. 1999, Proceedings IEEE 8 th , ISBN: 0-7695-0365-9, pp. 114-119. U.S. patent application entitled, "Remote Storage Area Having Multiple Access Interfaces," Ser. No. 09/500,868, filed Feb. 9, 2000. http://www.webdav.org-WebDAV Resources. http://www.backup.com-@Backup®. http://www.bitlocker.com-Bitlocker. http://www.datahubonline.com-datahubonline.com. http://www.diskonnet.com-DiskOnNet.com. http://www.docspace.com-Critical Path Inc. http://www.driveway.com-Driveway Corporation. http://itools.mac.com-Apple-iTools. http://www.filemonkey.com-File Monkey Software Development Services. http://www.freedrive.com-FreeDrive. Inc. http://www.xinet.com-Xinet. Inc. * cited by examiner 100~ d • rJl • ~ 112 SYSTEM MEMORY ROM I - 114 ~117 BIOS t V Processor - -.l 116 \ = ~ ~ :"l Video Adapter Bus Controller ~ ~C ~20 0 Operating System Device Drivers 125 \ l-J136 Software Applications ~ EJ 113 115 ..... ..... \ 119 RAM ~ 124 35 ~137 - N C C ~ 1\ 18 I 120 \ Internal Hard Disk I Floppy Disk Drive I ~22 \21 Optical Drive t28 Input / Output Ports 1 Network Interface ~3 'JJ. LOCAL AREA NETWORK IA / 51 =- ~ ~ ..... '" o"' ....," 00 (' 129 L{ ~151 ~ I 152 42 Modem l L=JD / 40 , ,= 49 - Remote Computer e rJ'l -..CJ\ ""-l I--" -..~ \0 CJ\ 00 FIG. 1 ~ I--" u.s. Patent Mar. 30, 2004 Sheet 2 of 8 205 205 D . « ( 20 D ' , , , , , , , =~ « ( • User Computer US 6,714,968 Bl < ( ( t=( ( ( < ( ( < ( < < ( D . ' , , , , , , , < c::=:J( User Computer 210 1 ~ ~~~~~~~ 0000000 ••• Storage Server 220~ Virtual Storage Area 225 1 FIG.2 Virtual • •• ( ( ( ( < User Computer 20~ ! ( Storage Area 225 N u.s. Patent Mar. 30, 2004 Sheet 3 of 8 FIG. 3 US 6,714,968 Bl u.s. Patent Mar. 30, 2004 400 Ml'COIl'l~t;lr :3n: Fbppy [Al !C:] (D:) .Opm5tBj:) AJ4)I~ati(WJ~ liill<!>l}l M";li:"<;:w.{l~ ~ll;1Sic 'l(/w-"'; FIG.4 Sheet 4 of 8 US 6,714,968 Bl u.s. Patent Mar. 30, 2004 Sheet 5 of 8 US 6,714,968 Bl 500~ AppleScript Example: On adding contents to folder this folder Set folder content to the contents of this folder Set the selected_SiLO_directory to the comments of this folder Tell application "SiLO access layer" Activate Upload folder_content to the selected_Si LO_di rectory End tell FIG.5 u.s. Patent Mar. 30, 2004 FileName US 6,714,968 Bl Sheet 6 of 8 ~SU;e Lmt"'~ liliI :g-14-9:9:rmkup ::l~4,llO Mb~~ [l~-=-~_LL_~.mi ·iIc ~n.67 Klly11:~ l(!l17119Sl~ U:4-3:lil CD'.!.' Kb~s HII1YI.9Sl2 M:~:4iI CDT 1012.0~ Kb~ 0EV31l/199~ ~:37:~ COT o b~ D!l!'lI{l'!.l~~ 1.~:~.'-:2.1 CDT 1.4tl Mby1!:lJ O~lOil{1.9!,lHI9;::m:OO COT J76JlIJ Kb~ OSA:l5fl99~ ]j,:W:~ COT 184-13 Mll~1 mIlW19~9- :1,g:l..9[J Mb~~ CI!UWllJ9!'H15;:51:51 c:nT U!l M!:Jyli:!~ rl9J1M199!J' 06::0~·:2,'lJ CDT ljt!3~ Kl:l~~ D!1tl4l19951' (JIJ,;(E :2J] COT • t@v.mtcS.!::rig\s ilciliill~ .~ @ill 1\!l1tchThllt .~ illil ~.,I~J!JJm1JlJ£t L\I @1!.M'lFiln ,.'-.-..... -'-_._. '" ®a My Pt'ltltiru/i Pi1!!i; ~.~Mq~m "~!:ld1miil::rem ta~&Li]g om W..itdlltlliwJpJl 16.lm 5716 Kb}!li:~ llllD!195\1~ C~14l19~!f U;[)f,;3'6 eDT 07:l:l8:59 CDT Otidl!: ~ CPT 1~[]1l4 I{b~~ O'i!fl4l199~ []Ii:[£!: 19 m~jM l!iS.9~ Kb~~ 09fl,*1199g 05-:!Jl: l1! CDT m~,jpg 14-9.S6 Kll~ tl91lU!'951Q 06m.: 17 CDT m~p.& IGB.,u F:;by1!:l~ O~tW199~ 'II til;Jlw~!J;.wa!i::hl118jR5 110.a~ Kb~ "msi¢,etyll!!tiki.jp..g FIG. 6 eDT 06::Il1:W COT 09Jl,*,19!ll~ O~:O'l;l<f. CDT u.s. Patent Mar. 30, 2004 Sheet 7 of 8 705 FIG.7 US 6,714,968 Bl u.s. Patent Mar. 30, 2004 Sheet 8 of 8 800 803 ' ( US 6,714,968 Bl I.. User accesses the remote storage servers via a global computer network, such as the Internet, and request a corresponding virtual storage area. 805 I"- ~ Prompt the user for information such as a username, password, and billing address. 807 809 '(lupon approval, automatically at ocate a remote storage area to the user and stores the user information in metadata database. Inform user of approval as well as necessary access information. ~ Upon allocation, users can access the respective remote storage area via a variety of access interfaces. FIG.8 US 6,714,968 B1 1 2 METHOD AND SYSTEM FOR SEAMLESS ACCESS TO A REMOTE STORAGE SERVER UTILIZING MULTIPLE ACCESS INTERFACES EXECUTING ON THE REMOTE SERVER The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims. 5 DESCRIPTION OF DRAWINGS TECHNI CAL FIELD FIG. 1 is a diagram showing an exemplary hardware and operating environment of a suitable computer for use with This invention relates to storage of digital data, and more 10 embodiments of the invention; particularly to a data storage system that provides access to FIG. 2 illustrates one embodiment of a computing system a remote storage area. in which a storage server provides seamless access to remote storage areas; BACKGROUND FIG. 3 illustrates a user interface displayed by one The Internet is a worldwide collection of networks that 15 embodiment of an operating system for directly accessing a spans over 100 countries and connects millions of computremote storage area using standard file management routines ers. Reports indicate that the Internet is growing faster than provided by the operating system; all preceding information technologies including radio and FIG. 4 illustrates a user interface displayed by another television. Remote data storage over the Internet is one of the fastest growing facets of the Internet. Numerous com- 20 embodiment of an operating system for directly accessing a remote storage area; panies provide a wide range of an Internet data storage FIG. 5 illustrates an example operating system script services for remotely storing and managing data files. Many written in AppleScript for the Macintosh® operating system of these services, however, have limited modes for accessing that automatically copies a file from a local directory to a the data files. For example, many require that a user load proprietary software on his computer in order to communi- 25 similarly named remote directory located within a storage area; cate data files to the remote storage. Other services only support access via a web browser or similar communication FIG. 6 illustrates a window displayed by a conventional utility. web browser when a user accesses a virtual storage area; FIG. 7 illustrates a window displayed by a conventional SUMMARY 30 electronic mail software application when a user mails one or more data files to a corresponding storage area; and The present invention is directed to a data storage system FIG. 8 is a flow chart that provides a high-level overview and method capable of providing a variety of access methof how the storage system allocates remote storage areas. ods. In particular, the a system and method in accordance with the present invention can be configured to easily and 35 DETAILED DESCRIPTION seamlessly interact with a user's computer without requiring proprietary software. As explained in detail below, the system and method can be configured to provide seamless access to a plurality of remote storage areas. Authorized users can access data files from anywhere in the world via a global computer network such as the Internet or a private wide-area network. In one embodiment, access to the virtual storage area is fully integrated with an operating system executing on a client's computer for seamless access using standard file management routines provided by the operating system. In addition, utilities, such as the Macintosh® Sherlock® search tool, can seamlessly search the remote storage areas. In one embodiment, the data storage system includes a plurality of storage servers coupled to a plurality of storage devices. The storage devices provide a plurality of virtual storage areas, each storage area assigned to a user. According to the invention, the assigned user can seamlessly access the assigned virtual storage area using a client computer communicatively coupled to the storage servers via a global computer network such as the Internet. An operating system executing on the computer includes a set of application programming interface (API) routines for managing local data files. The operating system provides access to the storage areas over the global computer network using the file management API routines provided by the operating system. In order to store data files, the operating system encrypts the data files and communicates the data files to the storage server for storage within the storage area. When the user or a software application requests access to a data file, the operating system issues requests to the storage server to retrieve one or more data files from the storage area. 40 45 50 55 60 65 In the following detailed description, references are made to the accompanying drawings that illustrate specific embodiments in which the invention may be practiced. Electrical, mechanical, programmatic and structural changes may be made to the embodiments without departing from the spirit and scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense and the scope of the present invention is defined by the claims. The detailed description is divided into three sections. The first section provides definitions for various terms used throughout the detailed description. The second section describes an exemplary hardware and operating environment in conjunction with which embodiments of the invention can be practiced. Finally, the third section describes various systems, methods, potential benefits and alternative embodiments of the invention. Definitions File Transport Protocol (FTP)-A networking protocol specifically for transporting files from one computer on the network to another. HyperText Markup Language (HTML)-an authoring language that defines the syntax and semantics used to create documents on the World Wide Web. Internet-a worldwide collection of networks that spans hundreds of countries and connects millions of computers. Internet Protocol (IP)-A low level communications protocol that specifies the format of individual communication packets and an addressing scheme. US 6,714,968 B1 3 4 A user enters commands and information into the comRedundant Array of Independent Disks (RAID)-A highputer 100 by using a keyboard 40 and/or pointing device, volume storage device having multiple storage drives and such as a mouse 42, which are connected to bus 118 via fault recovery procedures. Server Message Block (SMB)-a message format used by to input/output ports 128. Other types of pointing devices (not 5 shown in FIG. 1) include track pads, track balls, joy sticks, share files, directories and devices. data gloves, head trackers, and other devices suitable for Transmission Control Protocol (TCP)-a higher-level network communication protocol that establishes a virtual positioning a cursor on the video display 124. connection between a destination and a source. As shown in FIG. 1, the computer 100 also includes a Transmission Control Protocol/Internet Protocol(TCP/IP)modem 129. Although illustrated in FIG. 1 as external to the the suite of network communications protocols including 10 computer 100, those of ordinary skill in the art will quickly both TCP and IP. recognize that the modem 129 may also be internal to the Web Distributed Authoring and Versioning (WebDAV) is a computer 100. The modem 129 is typically used to comset of extensions to the Hypertext Transfer Protocol municate over wide area networks (not shown), such as the (HTTP) that seeks to make the World Wide Web a global Internet. Modem 129 may be connected to a network collaborative, write able medium. 15 using either a wired or wireless connection. World Wide Web (WWW-Asystem of Internet servers that Software applications 136 and data are typically stored support documents specially formatted in the HTML via one of the memory storage devices, which may include language that supports links to other documents, as well the hard disk 120, floppy disk 151, CD-ROM 152 and are as graphics, audio, and video files. copied to RAM 115 for execution. In one embodiment, 20 however, software applications 136 are stored in ROM 114 An Exemplary Operating Environment and are copied to RAM 115 for execution or are executed directly from ROM 114. FIG. 1 illustrates a computer 100 suitable for supporting the operation of an embodiment of the present invention. As In general, the operating system 135 executes software shown in FIG. 1, the computer 100 includes a processor 112 25 applications 136 and carries out instructions issued by the that in one embodiment belongs to the PENTIUM® family user. For example, when the user wants to load a software of microprocessors manufactured by the Intel Corporation of application 136, the operating system 135 interprets the Santa Clara, Calif. However, it should be understood that the instruction and causes the processor 112 to load software invention can be implemented on computers based upon application 136 into RAM 115 from either the hard disk 120 other microprocessors, such as the MIPS® family of microor the optical disk 152. Once software application 136 is 30 processors from the Silicon Graphics Corporation, the loaded into the RAM 115, it can be used by the processor POWERPC® family of microprocessors from both the 112. In case of large software applications 136, processor Motorola Corporation and the IBM Corporation, the PRE112 loads various portions of program modules into RAM CISION ARCHITECTURE® family of microprocessors 115 as needed. from the Hewlett-Packard Company, the SPARC® family of The Basic Input/Output System (BIOS) 117 for the com35 microprocessors from the Sun Microsystems Corporation, or puter 100 is stored in ROM 114 and is loaded into RAM 115 the ALPHA® family of microprocessors from the Compaq upon booting. Those skilled in the art will recognize that the Computer Corporation. Computer 100 represents any server, BIOS 117 is a set of basic executable routines that have personal computer, laptop or even a battery-powered, conventionally helped to transfer information between the pocket-sized, mobile computer known as a hand-held PC or 40 computing resources within the computer 100. Operating personal digital assistant (PDA). system 135 or other software applications 136 use these Computer 100 includes system memory 113 (including low-level service routines. read only memory (ROM) 114 and random access memory In one embodiment computer 100 includes a registry (not (RAM) 115), which is connected to the processor 112 by a shown) which is a system database that holds configuration system data/address bus 116. ROM 114 represents any 45 information for computer 100. For example, Windows® 95 device that is primarily read-only including electrically and Windows® NT by Microsoft maintain the registry in erasable programmable read-only memory (EEPROM), two hidden files, called USER.DAT and SYSTEM.DAT, flash memory, etc. RAM 115 represents any random access located on a permanent storage device such as an internal memory such as Synchronous Dynamic Random Access disk. Memory. 50 Methods and Systems of the Invention Within the computer 100, input/output bus 118 is connected to the data/address bus 116 via bus controller 119. In FIG. 2 is a block diagram illustrating one embodiment of one embodiment, input/output bus 118 is implemented as a a computing environment 200 that provides seamless access standard Peripheral Component Interconnect (PCI) bus. The to remote storage areas. In the illustrated embodiment, client bus controller 119 examines all signals from the processor 55 computers 205 are communicatively coupled to remote 112 to route the signals to the appropriate bus. Signals storage network 220 via storage servers 210 and global between the processor 112 and the system memory 113 are computer network 215 such as the Internet. Storage network merely passed through the bus controller 119. However, 220 represents one or more interconnected storage devices, signals from the processor 112 intended for devices other such as a RAID, for storing data files. The storage network than system memory 113 are routed onto the input/output 60 220 defines a pool of virtual storage areas 225 that can be bus 118. individually assignable to different users. Initially, a user accesses storage servers 210 via global computer network Various devices are connected to the input/output bus 118 including hard disk drive 120, floppy drive 121 that is used and requests a virtual storage area 225. For each request, storage server 210 prompts the user for information such as to read floppy disk 151, and optical drive 122, such as a CD-ROM drive that is used to read an optical disk 152. The 65 a username, password, billing address, etc. Upon approval, video display 124 or other kind of display device is constorage network 220 allocates a storage area 225 to the user such that, as described in detail below, the user can seamnected to the input/output bus 118 via a video adapter 125. US 6,714,968 B1 5 6 agement operations supported by operating system 135 such lessly access the corresponding virtual storage area via client as copying, renaming, moving and deleting files and direccomputers 205. Metadata database 222 stores metadata associated with the data files by the user. Storage server 210 tories. Similarly, applications 136 executing on client comand client computers 205 represent computing devices such puter 205 access virtual storage area 225 through standard 5 file management routines provided by an application proas computer 100 described in FIG. 1. gramming interface (API) of operating system 135. In one According to various embodiments of the invention, a set embodiment, operating system 135 of client computers 205 of communication software applications execute on storage is the Macintosh operating system, such that the API servers 210 and provide a set of interfaces such that client includes the Apple File Services (APS), and storage servers computers 205 can access virtual storage areas 225 using anyone of several different methods. Each method offers 10 225 are support accessing remote data files within storage area virtual 225 via the Apple Filing Protocol (APP) services different advantages in control, performance and ease of use. over TCP/IP. For example, in one embodiment, access to the virtual FIG. 4 illustrates another embodiment in which operating storage areas 225 is fully integrated with operating system system 135 is the Windows® operating system from 135 executing on each client computer 205. In this embodiment, the user can directly access a virtual storage 15 Microsoft. Here, operating system 135 displays window 400 area 225 via the operating system's user interface. Software that presents an integrated list of those files and directories applications 136 executing on client computer 205 can that are available locally as well as those available from access the corresponding virtual storage area 225 through virtual storage area 225. In this embodiment, operating operating system 135 by calling standard file management system 135 incorporates the 5MB protocol or the WebDAV routines provided by operating system 135. In this 20 protocol in order to provide seamless access to virtual embodiment, operating system 135 packetizes data files and storage area 225. metadata received from the management routines and comOne particular advantage of this embodiment is that municates the data to storage servers 210 via network 215. software applications 136 executing on computer 100 can In this embodiment, operating system 135 handles all comaccess virtual storage area 225 without modification. munication with storage servers 210 such that virtual storage 25 Because operating system 135 provides seamless access to area 225 can be accessed as if it were local to client virtual storage area 225 via conventional file management computer 205. routines, software applications 136 treat virtual storage area 225 as if it were a local storage volume. Another advantage In another embodiment, the user can access virtual storage is that the user can write scripts for operating system 135, area 225 by invoking a communications application 136 such as a web browser or an FTPutility. In this embodiment, 30 such as an OSAX AppleScript for the Macintosh® operating system, in order to control access to virtual storage area 225. the communications application 136 handles communicaFIG. 5 illustrates an operating system script 500 written in tion across network 215. The underlying communications AppleScript that automatically copies a file from a local between client computers 205 and storage servers 210 can follow a variety of protocols. Typically, the communications directory to a similarly named remote directory located use TCP/IP as a base protocol and additionally use the HTTP 35 within virtual storage area 225. protocol, the FTP protocol or even a proprietary data -backup According to one aspect of the invention, the user can protocol. associate metadata with each data file as the data file is The following sub-sections describe the various techuploaded to remote storage areas 225 in order to facilitate niques by which, according to the invention, client comput- 40 the quick cataloging and quick retrieval of the data file. ers 205 access virtual storage areas 225 via storage servers Operating system 135 captures the metadata from the user via an input form and communicates the metadata to storage 210 and global computer network 215. servers 210. Access via the Operating System Direct Access From a Communication Software According to the invention, in one embodiment, the user 45 Application can access virtual storage area 225 via operating system 135 in the same manner by which the user accesses local storage In some embodiments, the user can invoke conventional devices 120, 121 and 122. In this embodiment, the user communication applications and utilities such as a web interacts with the user interface presented by operating browser, an FTPutility, a data storage backup utility, or even system 135 and manages virtual storage area 225 as if it 50 a conventional email software application, to access virtual storage area. During this method of access, the communiwere a local storage volume. For example, by interacting with operating system 135 the user can perform all common cation software application 136 handles all communications file management tasks including coping files between hard with storage servers 210. The file management routines of operating system 135 are not invoked. In addition, the disk 120 and remote storage area 225, as well as renaming and deleting data files. The user is able to browse directory 55 communication software 136 is responsible for capturing the structures within virtual storage area 225 as if it were a local metadata from the user and communicating the metadata to storage servers 210 for storage within metadata database storage volume. Indeed, in some embodiments, virtual stor222. age area 225 may be represented as an icon on the desktop of the user's computer. FIG. 6 illustrates the user accessing one of the virtual FIG. 3 illustrates window 300 as displayed by operating 60 storage areas 225 via a conventional web browser executing system 135 for accessing a virtual storage area 225. In the on client computer 205. The web browser displays window illustrated embodiment, operating system 135 is the Macin600 that lists each directory within virtual storage area 225. Storage servers 210 maintain a set of image icons for tosh® operating system from Apple Computer, Inc. Window 300 presented by operating system 135 lists the directories representing the stored data file according to file and creator and files of virtual storage area 225 as if the directories and 65 type information or file extension. Storage servers 210 select files were local. The user is able to browse the directories and display an appropriate icon as a function of the file and within virtual storage area 225 and perform the file mancreator information stored within virtual storage area 225. US 6,714,968 B1 7 8 Window 600, therefore, closely resembles windows 300 and each user and stores the respective user information in 400 as displayed by operating system 135. Using the metadata database 222 (block 807). After a virtual storage browser, the user can browse the directories within virtual area 25 has been allocated, storage network 220 informs each user of any necessary access information, such as a storage area 225 and can perform many common file management operations including uploading, downloading and 5 password, so that the user can access the respective storage deleting files, as well as creating and removing directories. area 225 via the many access interfaces described above (block 809). FIG. 7 illustrates the user accessing virtual storage area 225 using a conventional electronic mail software applicaVarious embodiments have been described of a method tion 136. Electronic mail software application 136 displays and system for a data storage system that provides seamless window 700 by which the user creates an email message 10 access to remote virtual data storage areas via a global computer network. Access to the virtual storage area is fully having user information 702 and target data file information integrated with the operating system executing on the client 710. The user addresses the email to his or her email address at storage servers 210. For uploading files, as displayed in computer such that the user, or software applications executwindow 700, the user attaches one or more data files 705. ing on the computer, can seamlessly access the correspondUpon receiving the email, storage server 210 parses the user 15 ing virtual storage area using standard file management information 702 and the target data file information 710 in routines provided by the operating system. In addition, the order to extract one or more target directories. Thus, user invention provides a wide range of other remote access methods to the virtual data storage areas including access via information 702 may take the form of a destination electronic mail address, while target data file information 710 electronic mail. This application is intended to cover any may take the form of text in the subject field of an electronic 20 adaptation or variation of the present invention. It is mail message. Storage server 210 stores attached files 705 to intended that this invention be limited only by the claims and the target directory within the appropriate virtual storage equivalents thereof. area 225 assigned to the user. In this manner, the user is able What is claimed is: to email one or more files directly into a specified directory 1. A data storage system comprising: within virtual storage area 225 from any remote location via 25 a client computer; network 215. In an alternative embodiment, the user does a storage server communicatively coupled to the client not attach a data file but includes within the electronic mail computer via a global computer network, wherein the message a universal resource locator (URL) that indicates storage server allocates a user-assignable remote storwhere storage server 210 can retrieve the data file to be age area in response to a request received from the stored. In order to retrieve one or more data files from 30 client computer over the global computer network; storage server 210, the user sends a similar email requesting a plurality of software applications executing on the one or more target data files. In response, storage server 210 storage server to provide a plurality of different access sends the user a response electronic mail message with the interfaces for accessing the remote storage area; requested data files attached. an operating system executing on the client computer and 35 including application programming interface (API) Remote Processing via Centrally Hosted routines that communicate with a first one of the access Applications interfaces of the storage server to manage data files The above sections described how, according to the within the remote storage area as if the data files were invention, client computers 205 access virtual storage area 40 local on the client computer; and 225 for remote data storage. The invention, however, is not a communication software application executing on the limited to data storage. According to one aspect of the client computer to directly communicate with a second invention, client computers 205 communicate data files to one of the access interfaces of the storage server to storage servers 210 for remote processing by one or more manage the data files within the remote storage area applications executing on storage servers 210. For example, 45 without invoking the API routines of the operating the communicated data files may be electronic images such system executing on the client computer. that applications executing on storage servers 210 perform 2. The data storage system of claim 1, and wherein the color correction, color proofing and other prepress operaoperating system encrypts one or more data files and comtions. Other examples include data conversion, compression, municates the data files to the storage server for storage decompression, encryption and decryption. As such, a user 50 within the storage area. is able to submit data files for remote processing by simply 3. The data storage system of claim 1, and wherein the instructing operating system 135 to copy the data files to a operating system issues requests to the storage server to designated directory within virtual storage area 225. As retrieve one or more data files from the storage area. such, this operation can be performed by simply dragging 4. The data storage system of claim 1, and wherein the and dropping the file onto the appropriate window presented 55 API routines include at least a file management routine to by operating system 135. facilitate copying, deleting, moving and renaming data files. 5. The data storage system of claim 1, and wherein the Allocation of a Remote Storage Area API routines include a routine to facilitate creating, deleting and renaming data file directories. FIG. 8 is a flow chart 800 that provides a high-level overview of one mode of operation in which storage net- 60 6. The data storage system of claim 1, wherein the storage server and the computer communicate via the Transmission work 220 allocates remote storage areas 225. In block 803, Control Protocol/Internet Protocol (TCP/IP). users access storage servers 210 via global computer network 215 and request a corresponding virtual storage area 7. The data storage system of claim 1, wherein the API 225. For each request, storage server 210 prompts the user includes Apple File Services and the first one of the access for information such as a username, password, billing 65 interfaces of the storage server supports Apple Filing Proaddress (block 805). Upon approval, storage network 220 tocol for accessing the data files within the remote storage automatically allocates a corresponding storage area 225 for area. US 6,714,968 B1 9 10 8. The data storage system of claim 1, wherein the communication software application comprises one of a web browser, a File Transfer Protocol (FTP) utility, a data storage backup utility, and an electronic mail software application. 9. The data storage system of claim 1, wherein the API supports Web Distributed Authoring and Versioning (WebDAV) and the first one of the access interfaces presented by the software applications executing on storage server supports WebDAV for accessing the data files within the remote storage area as if the data files were local. 10. The data storage system of claim 1, wherein the API supports Server Message Block (SMB) protocol and the first one of the access interfaces presented by the software applications executing on the storage server supports 5MB for accessing the remote storage area. 11. The data storage system of claim 1, wherein the software applications executing on the storage server include an electronic mail application to receive an electronic mail message from the client computer that contains at least one attached data file, wherein the electronic mail application analyzes the electronic mail message to identify a target one of the remote storage areas, and store the attached data file within the identified target remote storage area. 12. The data storage system of claim 11, wherein the electronic mail message fiu includes text and the electronic mail application parses the text to determine the target remote storage area. 13. The data storage system of claim 11, wherein the electronic mail application analyzes content of a subject field associated with the electronic mail message to determine the target remote storage area. 14. The data storage system of claim 11, wherein the electronic mail application both content of a subject field associated the electronic mail message and content of a destination address associated with the electronic mail message to determine the target remote storage area. 15. A method for accessing data files from a computer having an operating system executing thereon, the method comprising: allocating one of a set of remote storage areas provided by a storage server to a user in response to a request received via a global computer network, wherein the storage server provides an operating environment for a plurality of software applications to present a plurality of different access interfaces for accessing the set of remote storage areas; receiving a file access request via one of: (1) an application programming interface (API) routine provided by an operating system of a client computer that commu- nicates with a first one of the access interfaces presented by the software applications of the storage server to manage remote data files within the remote storage areas as if the data files were local on the client computer, and (2) a communication software application executing on the client computer that communicates with a second one of the access interfaces of the storage server to manage the data files within the remote storage area; communicating the access request to the storage server via the global computer network and the respective one of the different access interfaces presented by the software applications of the storage server; and accessing the data files with the remote storage server according to the request. 16. The method of claim 15, wherein communicating the access request to the storage server includes encrypting one or more data files and sending the data files to the storage server for storage within the storage area. 17. The method of claim 15, wherein communicating the access request to the storage server includes issuing requests to the storage server to retrieve the remote data file from the storage area. 18. The method of claim 15, wherein communicating the access request to the storage server includes communicating user information to the remote storage server. 19. The method of claim 18, wherein accessing the remote data file includes authenticating the user information. 20. The method of claim 19, wherein authenticating the user information includes comparing the user information to a username and password, stored on the remote storage server. 21. The method of claim 15, wherein communicating the access request includes communicating via Transmission Control Protocol/Internet Protocol(TCP/IP). 22. The method of claim 15, wherein receiving a file request via the API routine includes receiving a file request via Apple File Services. 23. The method of claim 15, wherein accessing the remote data file includes executing a software application to invoke the API as if the remote data file where local. 24. The method of claim 23, wherein executing the software application includes executing the software application to browse for a data file. 25. The method of claim 15, wherein the communication software application comprises one of a web browser, a File Transfer Protocol (FTP) utility, a data storage backup utility, and an electronic mail software application. 5 10 15 20 25 30 35 40 45 * * * * *

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?