US20100179883A1 - System and method of storing data files at a remote storage facility - Google Patents

System and method of storing data files at a remote storage facility Download PDF

Info

Publication number
US20100179883A1
US20100179883A1 US12/728,723 US72872310A US2010179883A1 US 20100179883 A1 US20100179883 A1 US 20100179883A1 US 72872310 A US72872310 A US 72872310A US 2010179883 A1 US2010179883 A1 US 2010179883A1
Authority
US
United States
Prior art keywords
data file
user
storage facility
data
receiving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/728,723
Inventor
John A. Devolites
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
III Holdings 1 LLC
Original Assignee
Teoco Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=38472650&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US20100179883(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Teoco Corp filed Critical Teoco Corp
Priority to US12/728,723 priority Critical patent/US20100179883A1/en
Assigned to TEOCO CORPORATION reassignment TEOCO CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DEVOLITES, JOHN A.
Publication of US20100179883A1 publication Critical patent/US20100179883A1/en
Assigned to BANK OF AMERICA, N.A. reassignment BANK OF AMERICA, N.A. NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Assignors: TEOCO CORPORATION
Assigned to III HOLDINGS 1, LLC reassignment III HOLDINGS 1, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: TEOCO CORPORATION
Assigned to TEOCO CORPORATION reassignment TEOCO CORPORATION RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture

Definitions

  • the invention generally relates to a system for remotely storing data files, and more particularly to a system for transferring data files from a client across a network to a remote storage facility.
  • Losing data is a significant problem for computer systems and electronic devices, and for users of computer systems and electronic devices. Sophistication of computer users varies greatly and may sometimes add to the loss of data.
  • Conventional methods of storing data may store the data locally on a hard drive or a flash memory of a computing device.
  • computing devices are vulnerable to viruses, instability in operating systems, storage device failures, and damage to the computer system, all of which may lead to a loss of data and to user frustration. The frustration is particularly acute when data of importance is lost, such as work-related data or digital photograph data having sentimental value.
  • improvements in computer hard drive and other storage device technologies, such as redundant array of inexpensive disks (RAID) and mirroring may allow some opportunity for data recovery, many times data may be lost forever. Data may be lost in many instances since conventional computer systems rely on the integrity of data stored at a storage device local to their computing device.
  • a method may comprise receiving, by at least one processor, a command selecting a data file for transfer across a network for storage at a remote storage facility, receiving, by the at least one processor, a parameter selection comprising a user selected transfer time, applying, by the at least one processor, the parameter selection to the data file, queuing, by the at least one processor, the data file in a queue for transmission to the remote storage facility at the transfer time, and transferring, by the at least one processor, the data file to the remote storage facility at the user selected transfer time.
  • a system may comprise at least one storage device, and a network coupled to the at least one storage device that receives from a client device of a user coupled to the network, a data file via an upload transmission scheduled for a user selected time by the user of the client device, wherein the at least one storage device stores the data file according to a parameter selection.
  • a computer program product embodied on a computer readable medium, the CPP comprising a graphical user interface (GUI) application, the GUI comprising: instructions for enabling at least one computer to receive a user selected request to queue a scheduled upload, and automatically transmit, according to a parameter selection, a data file to a remote storage facility at a user selectable transfer time for storage at the remote storage facility.
  • GUI graphical user interface
  • a method comprising: receiving by at least one computer at a storage facility service provider, a scheduled upload transmission of a data file, based on a parameter selection, from a remote client device of a user, the storage facility and the remote client device coupled to one another by a communications system, wherein the parameter selection comprises a user selected transfer time, and storing the data file on at least one storage device of the storage facility service provider based on the parameter selection.
  • a system comprising: means for receiving at a storage facility service provider, a scheduled upload transmission of a data file, based on a parameter selection, from a remote client device of a user, the storage facility and the remote client device coupled to one another via a communications system, wherein the parameter selection comprises a user selected transfer time, and means for storing the data file on at least one storage device of at least one computer of the storage facility service provider based on the parameter selection.
  • FIG. 1 illustrates an exemplary embodiment of a system according to the present invention
  • FIG. 2 illustrates an exemplary embodiment for a high level architecture of a client according to the present invention
  • FIG. 3 illustrates an exemplary embodiment of a flow diagram illustrating an exemplary method for transferring a data file from a client to a remote storage facility for storage according to the present invention
  • FIG. 4 illustrates an exemplary embodiment of a flow diagram depicting an exemplary method of retrieving a data file from the remote storage facility according to the present invention
  • FIG. 5 depicts an exemplary embodiment of a computer system that may be used in computing devices such as, e.g., but not limited to, the client or the remote storage facility according to the present invention.
  • An exemplary embodiment of the present invention generally relates to a method and system for storing a data file at a remote storage facility.
  • the method and system may be particularly useful for storage of imaged documents, data files, and the like.
  • a user selection of a “store as” command may be received at a client, a user selection of a “store as” command may be received at a graphical user interface (GUI) application program from a user selecting a data file for transfer across a network for storage at a remote storage facility. After the data file is selected, the GUI may prompt the user to enter a file name for the data file.
  • the client may receive a parameter selection at the GUI selecting, for example, but not limited to, indexing information, a compression level, a security level and/or a transfer time, etc., and may apply the parameter selection to the data file.
  • the data file may then be placed in a queue for later transmission to the remote storage facility.
  • the client may at a later time initiate a connection across a network with the remote
  • FIG. 1 illustrates an exemplary embodiment of a system according to the present invention.
  • FIG. 1 depicts a system 100 including, e.g., but not limited to, a client 102 , a network 104 , and a remote storage facility 106 .
  • Client 102 may be capable of executing one or more application programs 108 which may be implemented in hardware, firmware, and/or software.
  • the system 100 and application programs 108 may be used to implement a “store as” function, according to an exemplary embodiment of the present invention, where a backup copy of a data file of the client 102 may be stored remotely at the remote storage facility 106 via a queued transfer.
  • the client 102 may be any device capable of manipulating or storing a data file.
  • the client 102 may be a personal computer, as depicted, or may also be, e.g., but not limited to, an electronic device, a notebook, a laptop computer, a handheld, a cellular phone, a browser based cellular phone useable with a broadband connection, a mobile phone, a personal digital assistant (PDA), a browser based PDA useable with a broadband connection, a communications device, a 3G (or 3.25G, 3.5G, 3.75G, 4G, etc.) mobile phone, or other known computing devices that may store and transfer data files.
  • PDA personal digital assistant
  • the data file may be any file containing digital data or computer software, such as, e.g., but not limited to, a word processing document, a computer program, an algorithm, a scanned document, an image, audio and/or video data, or other known types of programs and/or data.
  • the client 102 may be coupled to the network 104 via a connection 110 .
  • the connection 110 may be a wired and/or wireless connection to the network 104 .
  • the network 104 may be, e.g., but not limited to, a computer network, such as the Internet, a local area network (LAN), a wide area network (WAN), a wireless LAN (WLAN), a fiber optic network, a wireless WAN, a Cellular Digital Packet Data (CDPD) network, a Wi-Fi network, a WiMax network, a wired data network, a wireless data network, or other known data networks.
  • LAN local area network
  • WAN wide area network
  • WLAN wireless LAN
  • CDPD Cellular Digital Packet Data
  • Wi-Fi Wireless Fidelity
  • WiMax Worldwide Interoperability for Mobile communications
  • the client 102 may connect to the network 104 through, e.g., but not limited to, a LAN, an internet service provider, a broadband connection, or other known methods of connecting to a computer network. It is noted that the above description is a simple description of a computer network. The details of computer networks are well known in the art, and are not included herein to prevent obscuring the invention. the invention.
  • the remote storage facility 106 may be coupled to the network 104 through a connection 112 .
  • the connection 112 may be a wired and/or wireless connection to the network 104 .
  • the client 102 , the connection 110 , the network 104 , the connection 112 , and the remote storage facility 106 may permit the transfer of data files between the client 102 and the remote storage facility 106 .
  • the data files may be queued for later transfer.
  • the remote storage facility 106 may store the data files and permit the client 102 access to the data files when desired by the user.
  • the remote storage facility 106 may include one or more servers at one or more locations as well as other equipment such as, e.g., but not limited to, communications and/or storage devices.
  • the remote storage facility 106 may also store multiple copies of the data files on multiple servers at multiple locations.
  • the exemplary embodiment of the present invention may allow a user to backup important data files at the remote storage facility 106 for later access. Storing the data files may also allow a user to retrieve backup copies of data files if anything should happen to the client 102 or the local copy of the data file stored at the client 102 .
  • the user may pay a fee, such as a periodic fee or a per one or more accesses fee, for storing to and/or accessing data from the remote storage facility 106 .
  • a company may purchase or contract to use the remote storage facility (RSF) 106 for use by the employees of the company to backup important data files.
  • the fee may be charged to a network service provider.
  • the RSF 106 in an exemplary embodiment may include, e.g., but not limited to, a secure storage facility including physical and information security, may include any of a number of well-known conventional technologies including, raised floor, rack mounted, redundant, RAID or mirrored, fault tolerant, mass storage system, which may include, e.g., but not limited to, webservers, application servers, database servers, traffic balancing technologies, archival technologies, public/private key encryption, security and cryptography devices, authentication services, and search engine servers, etc.
  • FIG. 2 illustrates an exemplary embodiment of a high level architecture 200 of an exemplary client 102 according to the present invention.
  • the architecture of the client 102 may include hardware (HW) 202 , an operating system (OS) 204 , and application programs 108 , which, in an exemplary embodiment may be various software applications.
  • the software applications may include, in an exemplary embodiment, a graphical user interface (GUI) application 206 , a queue application 208 , a parameter selection application 210 , and/or a transmission application 212 .
  • GUI graphical user interface
  • these software application programs 108 may be embodied as a single software application program and/or integrated into the OS 204 , and/or the HW 202 .
  • These software application programs 108 and the operations involved with storing and opening files from the remote storage facility 106 are described below.
  • FIG. 3 illustrates an exemplary embodiment of a flow diagram 300 depicting an exemplary method for transferring a data file from the client 102 for storage at a RSF 106 according to the present invention.
  • Flow diagram 300 may begin with 301 and may continue immediately with 302 .
  • a user may enter, and client 102 may receive, a user selection identifying whether to save a data file locally on the client 102 by performing a “save as” command which may cause flow diagram to proceed with 304 , or to store the file remotely at the remote storage terminal 106 by performing a “store as” command, which may cause flow diagram 300 to continue with 306 .
  • the user selection may be entered using an input device such as, e.g., but not limited to, a mouse 516 , keyboard 518 , or the like, at a GUI presented to the user by the GUI application 206 at an output device such as, e.g., but not limited to, a display 530 of the client 102 (the input and output devices are described further below with reference to FIG. 5 ).
  • the GUI may have a drop down menu to initiate a “save as” function or a “store as” function, and/or the GUI may have an icon where the user may drag and/or drop a data file to the icon to initiate the “save as” function or the “store as” function.
  • the data file may be saved locally on a storage device 510 such as, e.g., but not limited to, a hard disk of the client 102 . From From 304 , flow diagram 300 may continue to 316 and end.
  • the GUI may prompt the user to enter a file name for the data file.
  • the GUI application 206 may retrieve a previously stored file name. Once received, the file name may be associated with the data file so that the user may identify the data file.
  • the client may also perform a “save as” function of the data file when the “store as” function is selected. Performing both a “save as” function and a “store as” function may be used to synchronize the saved and stored files so that they may contain the same data. From 306 , flow diagram 300 may continue with 308 .
  • the GUI may prompt the user to select any of various parameter selections and may receive the user parameter selections.
  • the user may have a preset parameter selection such as, e.g., but not limited to, default and/or previously user selected administrative parameters that may be used for each data file.
  • the parameter selection may be one or more of e.g., but not limited to, administrative parameters, index information, a compression level, a security level, and/or a transfer time.
  • a user may set certain administrative parameters such as, e.g., but not limited to, a retention limit including, e.g., but not limited to, retain for a period of time, indefinitely, etc. Any of various well-known document retention and destruction options may be available including, e.g., overwrite/destruction.
  • Index information may be used to index the data file and may be used, e.g., for search purposes when a user may desire to retrieve the file from the remote storage facility 106 .
  • Index information may include e.g., but not limited to, metatag data information, document management profile information, versioning, tags, etc.
  • the metatag data may be added to the data file to make the file a searchable data file to facilitate searching when retrieving the data file from the remote storage facility 106 .
  • the data file may be a searchable data file based on words within the data file.
  • the compression level may indicate a level of compression that the user may desire to apply to the data file.
  • a user may select any of various well-known levels of compression, such compression, such as, e.g., but not limited to, motion picture experts group (MPEG), Joint Photographic Experts Group (JPEG), tagged image file (TIF), portable document format (PDF), and/or any other audio, video and/or data format compression, or any other compression technique that is available to reduce the size of the data file for transmission and storage.
  • MPEG motion picture experts group
  • JPEG Joint Photographic Experts Group
  • TEZ tagged image file
  • PDF portable document format
  • any other audio, video and/or data format compression or any other compression technique that is available to reduce the size of the data file for transmission and storage.
  • the security level may include, e.g., but not limited, 128 bit (or other) encryption, and/or public/private key (PKI) encryption, hash codes, authentication, verification, personal identification number (PIN) and/or password-enabled encryption, etc.
  • the security level may be used to, e.g., but not limited to, select the amount of encryption which may be applied to the data file.
  • the security level may, e.g., set a password for the data file and may be used in authenticating anyone who may attempt to access the data file.
  • the transfer time may be a user-selectable time for when the data file may be transferred from the client 102 to the remote storage facility 106 across the network 104 .
  • the system may also have a set transfer time, such as, e.g., on a periodic or aperiodic basic, at a low communication services toll time, at a low network traffic utilization time, etc.
  • the user may, e.g., provide a relative priority to various files, or to set up an automated periodic store as function. For example, a user may select the transfer time to be at 3:00 a.m. Eastern, since less people are typically using the network 104 in the USA at this time.
  • the parameter selection software application 210 may associate the parameter selection with the data file, as well as, e.g., process the data file according to the parameter selection entered by the user. From 308 , flow diagram 300 may continue with 310 .
  • the queue software application 208 may place the data file in an outbound queue according to the parameter selection thereby queuing the data file for transmission across the network 104 to the remote storage facility 106 .
  • the queue software application 208 may monitor a computer or network clock and may, e.g., but not limited to, not transmit the data file from the queue until the selected transfer time.
  • the transmission software application program 212 may identify a service level agreement and may verify that the client 102 may send the data file.
  • the service level agreement may include, e.g., but not limited to, an agreement that may indicate the amount of bandwidth available to the user, the number of data files a user may be allowed to transfer to the remote storage facility 106 , the maximum size and/or amount of storage available to a user for storing data files, the amount of storage available and/or used by the user, and/or other data transmission or storage agreements, as will be appreciated by those skilled in the art.
  • the SLA may permit transfer and/or storage of the data file, or may prevent the transfer if transferring the data file would violate the SLA. If the data file is transferable according to the SLA, then diagram 300 may continue with 312 .
  • the transmission software application 212 of the client 102 may initiate a connection with the remote storage facility 106 across the network 104 at the transfer time.
  • the connection may already be setup and the transfer for may commence according to the parameter selection of 308 .
  • the transmission software application 212 may transfer the data file from the queue to the network 104 for transport to the remote storage facility 106 . From 312 , flow diagram 300 may continue with 314 .
  • the remote storage facility 106 may receive and store the data file. During storage and/or otherwise, the remote storage facility 106 may process the indexing information of the data file for indexing. The remote storage facility 106 may process the metatag data of the indexing information captured in parameter selection in 308 that may be added to the data file and may permit easy retrieval by the user. Once the indexing information of the data file is processed, the remote storage facility 106 may store the data file according to the indexing information, retention parameters, and other parameter selections. After the data file is indexed and stored, the remote storage facility 106 may safeguard the data file and may wait for a user to send a request to retrieve the data file as discussed further below with reference to FIG. 4 . The remote storage facility 106 may also include antivirus and virus scanning capabilities that may scan the data file before and during storage. From 314 , flow diagram 300 may continue with 316 , and may immediately end.
  • FIG. 4 illustrates an exemplary embodiment of a flow diagram 400 which depicts an exemplary method of retrieving a data file from the remote storage facility 106 according to the present invention.
  • a user may interface with the GUI presented by the GUI software application 206 of the client 102 to request access to the remote storage facility 106 according to an exemplary embodiment.
  • Flow diagram 400 may begin with 401 and may continue immediately with 402 .
  • the user may interact with the GUI of the client 102 to generate a request to access a “stored as” file.
  • the user interacts with the GUI application 206 to generate a request to access the remote storage facility 106 , and the transmission software application 212 of the client 102 may generate a connection with the remote storage facility 106 across the network 104 , if not already connected.
  • the request may identify a specific data file, and/or may instead be a search request to browse data files stored at the remote storage facility 106 .
  • flow diagram 400 may continue with 404 .
  • the remote storage facility 106 may receive and process the request from the client 102 .
  • the user may select any of various parameter selections for how the user wishes to access the stored data file, such as, e.g., but not limited to, parameter selections as discussed above with reference to 308 in FIG. 3 .
  • diagram 400 may continue with 406 .
  • the remote storage facility 106 may initiate an authentication sequence to authenticate the identity of the client 102 and the user.
  • the request generated by the client 102 may include information to authenticate the client 102 and the user.
  • the authentication sequence may include, requiring the user to enter an identification code, and/or other information that may uniquely identify the user.
  • the authentication may occur where the identification code entered by the user may be compared with a previously stored identification code. From 406 , flow diagram 400 may continue with 408 .
  • the remote storage facility 106 may, e.g., but not limited to, send a browser command and browser data to launch a browser application at the client 102 .
  • the browser application may be launched when the user generates the request.
  • the browser data may include the data file specified in the request and/or may include information to display in the browser application at the display 530 of the client 102 to allow the user to search the data files stored by the user at the remote storage facility 106 .
  • the browser may display a number of computer file folders having data files previously stored by the user at the remote storage facility 106 .
  • the browser at the client 102 may also accept search terms or may display an indexed list of files corresponding to the indexing information specified by the user in 308 during the “store as” command described above with reference to FIG. 3 .
  • a user may enter one or more search terms at the browser including, e.g., but not limited to, a date, a word, a letter sequence, a number sequence, or a letter and number sequence for searching through the data files associated with the user stored at the remote storage facility 106 .
  • Any of various well known search methods employed by search engines may be utilized, including, e.g., but not limited to, structured query language (SQL), Boolean search, natural language, etc.
  • the remote storage facility 106 may then receive the search terms and generate a results list of data files that may correspond to the search terms.
  • the results list in an exemplary embodiment, may be ranked based on the relationship of the data file with the entered search terms using well known methods conventionally employed by search engines and the like.
  • the RSF 106 may provide the results list to the client 102 for presentation in the browser.
  • the browser may also allow the user to perform certain administrative functions. Administrative functions may include, e.g., but not limited to, deleting files stored at the remote storage facility 106 , changing the indexing information of the data files, changing the security or encryption level, adding a password to a data file, etc. If the user may desire to access one or more of the data files, the user may indicate requested files in the browser. From 408 , flow diagram 400 may continue with 410 .
  • the remote storage facility 106 may retrieve and may transfer the data files to the client 102 .
  • the browser may prompt the user to enter a password if a data file is password protected.
  • the transfer of the data file may occur immediately upon receipt of the request, or may occur at a later transfer time, which may be specified by the user and/or according to an SLA.
  • the user may have the option of locally saving the retrieved data file under a new name or at a new location on the client 102 , or of replacing the previous version of the data file, which may be damaged or may have missing data, saved locally on the client 102 with the stored as data file received from the remote storage facility 106 .
  • the client 102 may compare the received stored as data file and the locally saved data file and only replace the missing and/or damaged portion of the locally saved data file with data from the retrieved data file. From 410 , flow diagram 400 may continue with 412 where it may immediately end.
  • the system 100 as discussed in the above exemplary embodiments may permit a user to save data locally as well as, or alternatively, storing remotely at a remote storage facility 106 thereby providing the user of the client 102 with the ability to protect data files from loss due to problems with the client 102 .
  • the system according to the present invention may in another exemplary embodiment be used for transfer of data from one computer of a user to another computer of the user, for example in the case of system upgrades or replacements.
  • FIG. 5 depicts an exemplary embodiment of a computer system that may be used in computing and/or communications devices such as, e.g., but not limited to, the client 102 or the remote storage facility 106 according to the present invention.
  • the present invention (or any part(s) or function(s) thereof) may be implemented using hardware, software, firmware, or a combination thereof and may be implemented in one or more computer systems or other processing systems. In fact, in one exemplary embodiment, the invention may be directed toward one or more computer systems capable of carrying out the functionality described herein.
  • An example of a computer system 500 is shown in FIG. 5 , depicting an exemplary embodiment of a block diagram of an exemplary computer system useful for implementing the present invention. Specifically, FIG.
  • FIG. 5 illustrates an example computer 500 , which in an exemplary embodiment may be, e.g., (but not limited to) a personal computer (PC) system running an operating system 204 such as, e.g., (but not limited to) WINDOWS MOBILETM for POCKET PC, or MICROSOFT® WINDOWS® NT/98/2000/XP/CE, etc., available from MICROSOFT® Corporation of Redmond, Wash., U.S.A., SOLARIS® from SUN® Microsystems of Santa Clara, Calif., U.S.A., OS/2 from IBM® Corporation of Armonk, N.Y., U.S.A., Mac/OS from APPLE® Corporation of Cupertino, Calif., U.S.A., etc., or any of various versions of UNIX® (a trademark of the Open Group of San Francisco, Calif., USA) including, e.g., LINUX®, HPUX®, IBM AIX®, and
  • the invention may not be limited to these platforms. Instead, the invention may be implemented on any appropriate computer or communications system running any appropriate operating system 204 . In one exemplary embodiment, the present invention may be implemented on a computer system operating as discussed herein. An exemplary computer system, computer 500 is shown in FIG. 5 .
  • a computing device such as, e.g., (but not limited to) a computing device, a communications device, a telephone, a personal digital assistant (PDA), a personal computer (PC), a handheld PC, client workstations, thin clients, thick clients, proxy servers, network communication servers, remote access devices, client computers, server computers, routers, web servers, data, media, audio, video, telephony or streaming technology servers, etc.
  • PDA personal digital assistant
  • PC personal computer
  • client workstations client workstations
  • thin clients thick clients
  • proxy servers network communication servers
  • remote access devices client computers, server computers, routers, web servers, data, media, audio, video, telephony or streaming technology servers, etc.
  • client computers may also be implemented using a computer such as that shown in FIG. 5 .
  • the computer system 500 may include one or more processors, such as, e.g., but not limited to, processor(s) 504 .
  • the processor(s) 504 may be connected to a communication infrastructure 502 (e.g., but not limited to, a communications bus, cross-over bar, or network, etc.).
  • a communication infrastructure 502 e.g., but not limited to, a communications bus, cross-over bar, or network, etc.
  • Various exemplary software embodiments may be described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art(s) how to implement the invention using other computer systems and/or architectures. architectures.
  • Computer system 500 may include any of a number of output devices including, but not limited to, a display interface 520 that may forward, e.g., but not limited to, graphics, text, and other data, etc., from the communication infrastructure 502 (or from a frame buffer, etc., not shown) for display on a display unit 530 .
  • Other output devices such as, e.g., printers, etc., may also be used.
  • the computer system 500 may also include, e.g., but may not be limited to, a main memory 506 , random access memory (RAM), and a secondary memory 508 , etc.
  • the secondary memory 508 may include, for example, (but not limited to) a storage device 510 (which may include a read only memory (ROM), a hard disk, a flash memory or other non-volatile memory, a redundant array of inexpensive disks (RAID), a storage area network (SAN), a direct access storage device (DASD), and/or small computer system interface (SCSI) or other storage subsystem controller—controlled storage device) and/or a removable storage device 512 , representing, e.g., but not limited to, a floppy diskette drive, a magnetic tape drive, an optical disk drive, a magneto-optical (MO) drive, a compact disk CD-ROM drive, a digital versatile disk drive (DVD), a USB storage device, etc.
  • a storage device 510 which may include a read only memory (
  • the removable storage drive 512 may, e.g., but not limited to, read from and/or write to a removable storage unit 514 in a well known manner.
  • Removable storage unit 514 also called a program storage device or a computer program product, may represent, e.g., but not limited to, a floppy disk, magnetic tape, optical disk, CD, DVD, a program cartridge (such as, e.g., but not limited to, those found in video game devices), a removable memory chip (such as, e.g., but not limited to, an erasable programmable read only memory (EPROM), or programmable read only memory (PROM) etc., which may be read from and written to by removable storage drive 512 .
  • EPROM erasable programmable read only memory
  • PROM programmable read only memory
  • the removable storage unit 514 may include a computer usable storage medium having stored therein computer software and/or data.
  • secondary memory 508 may include other similar devices for allowing computer programs or other instructions to be loaded into computer system 500 .
  • Computer 500 may also include an input device such as, e.g., (but not limited to) a mouse 516 or other pointing device such as a digitizer, a touch screen type display 530 , and a keyboard 518 or other data entry device (none of which are labeled).
  • an input device such as, e.g., (but not limited to) a mouse 516 or other pointing device such as a digitizer, a touch screen type display 530 , and a keyboard 518 or other data entry device (none of which are labeled).
  • Computer 500 may include input/output (I/O) devices such as, e.g., (but not limited to) a network communications interface (NIC) card 522 , coupler cable or interface 526 and communications path 528 , etc. These devices may include, e.g., but not limited to, a network interface card, and modems (neither are labeled).
  • the network communications interface card 522 may allow software and data to be transferred between computer system 500 and external devices. Examples of the network communications interface card 522 may include, e.g., but may not be limited to, a modem, a network interface (such as, e.g., an Ethernet card), a communications port, a Personal Computer Memory Card International Association (PCMCIA) or PC card slot and card, etc.
  • I/O input/output
  • NIC network communications interface
  • coupler cable or interface 526 and communications path 528 may include, e.g., but not limited to, a network interface card, and modems (neither are labele
  • Software and data transferred via the network communications interface card 522 may be in the form of signals which may be electronic, electromagnetic, optical or other signals capable of being received by the network communications interface card 522 . These signals may be provided to the network communications interface card 522 via, e.g., but not limited to, a communications path (e.g., but not limited to, a channel) and onto, e.g., but not limited to, network 104 , and other devices including, e.g., but not limited to remote storage facility 106 .
  • a communications path e.g., but not limited to, a channel
  • This communications path may carry signals, which may include, e.g., but are not limited to, propagated signals, and may be implemented using, e.g., but not limited to, wire or cable, fiber optics, a telephone line, a cellular link, an radio frequency (RF) link and other communications channels, etc.
  • signals may include, e.g., but are not limited to, propagated signals, and may be implemented using, e.g., but not limited to, wire or cable, fiber optics, a telephone line, a cellular link, an radio frequency (RF) link and other communications channels, etc.
  • RF radio frequency
  • references to “one embodiment,” “an embodiment,” “example embodiment,” “various embodiments,” etc. may indicate that the embodiment(s) of the invention so described may include a particular feature, structure, or characteristic, but not every embodiment necessarily includes the particular feature, structure, or characteristic. Further, repeated use of the phrase “in one embodiment,” or “in an exemplary embodiment,” do not necessarily refer to the same embodiment, although they may.
  • processor may refer to any device or portion of a device that processes electronic data from registers and/or memory to transform that electronic data into other electronic data that may be stored in registers and/or memory.
  • a “computing platform” may comprise one or more processors.
  • Embodiments of the present invention may include apparatuses for performing the operations herein.
  • An apparatus may be specially constructed for the desired purposes, or it may comprise a general purpose device selectively activated or reconfigured by a program stored in the device.
  • Embodiments of the invention may be implemented in one or a combination of hardware, firmware, and software. Embodiments of the invention may also be implemented as instructions stored on a machine-readable medium, which may be read and executed by a computing platform to perform the operations described herein.
  • a machine-readable medium may include any mechanism for storing information in a form readable by a machine (e.g., a computer).
  • a machine-readable medium may include read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; and others.
  • Computer programs 108 may include object oriented computer programs, and may be stored in main memory 506 and/or the secondary memory 508 and/or removable storage units 514 , also called computer program products. Such computer programs, when executed, may enable the computer system 500 to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, may enable the processor 504 to provide a method to resolve conflicts during data synchronization according to an exemplary embodiment of the present invention. Accordingly, such computer programs may represent controllers of the computer system 500 .
  • the invention may be directed to a computer program product comprising a computer readable medium having control logic (computer software) stored therein.
  • the control logic when executed by the processor 504 , may cause the processor 504 to perform the functions of the invention as described herein.
  • the software may be stored in a computer program product and loaded into computer system 500 using, e.g., but not limited to, removable storage drive 512 , hard drive 510 or the network communications interface card 522 , etc.
  • the control logic when executed by the processor 504 , may cause the processor 504 to perform the functions of the invention as described herein.
  • the computer software may run as a standalone software application program 108 running atop an operating system 204 , or may be integrated into the operating system 204 .
  • the invention may be implemented primarily in hardware using, for example, but not limited to, hardware components such as application specific integrated circuits (ASICs), field programmable gateways (FPGAs) or one or more state machines, etc.
  • ASICs application specific integrated circuits
  • FPGAs field programmable gateways
  • state machines etc.
  • the invention may be implemented primarily in firmware.
  • the invention may be implemented using a combination of any of, e.g., but not limited to, hardware, firmware, and software, etc.

Abstract

A system, method, and computer program product may include receiving, by at least one processor, a command selecting a data file for transfer across a network for storage at a remote storage facility, receiving, by the at least one processor, a parameter selection comprising a user selected transfer time, applying, by the at least one processor, the parameter selection to the data file, queuing, by the at least one processor, the data file in a queue for transmission to said remote storage facility at said transfer time, and transferring, by the at least one processor, the data file to the remote storage facility at the user selected transfer time.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • The present application claims the benefit of and is also a continuation of U.S. patent application Ser. No. 11/367,038, filed Mar. 3, 2006, entitled “A SYSTEM AND METHOD OF STORING DATA FILES AT A REMOTE STORAGE FACILITY,” to Devolites, (Attorney Docket No. 42749-219626), of common assignee to the present invention, the contents of which are incorporated herein by reference in their entirety.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The invention generally relates to a system for remotely storing data files, and more particularly to a system for transferring data files from a client across a network to a remote storage facility.
  • 2. Related Art
  • Losing data is a significant problem for computer systems and electronic devices, and for users of computer systems and electronic devices. Sophistication of computer users varies greatly and may sometimes add to the loss of data. Conventional methods of storing data may store the data locally on a hard drive or a flash memory of a computing device. However, computing devices are vulnerable to viruses, instability in operating systems, storage device failures, and damage to the computer system, all of which may lead to a loss of data and to user frustration. The frustration is particularly acute when data of importance is lost, such as work-related data or digital photograph data having sentimental value. While improvements in computer hard drive and other storage device technologies, such as redundant array of inexpensive disks (RAID) and mirroring, may allow some opportunity for data recovery, many times data may be lost forever. Data may be lost in many instances since conventional computer systems rely on the integrity of data stored at a storage device local to their computing device.
  • What is needed then is an improved storage system and method of protecting data that overcomes shortcomings of conventional offerings.
  • SUMMARY OF THE INVENTION
  • In an illustrative embodiment of the present invention, a system, a method, and a computer accessible media is disclosed.
  • According to one embodiment, a method may comprise receiving, by at least one processor, a command selecting a data file for transfer across a network for storage at a remote storage facility, receiving, by the at least one processor, a parameter selection comprising a user selected transfer time, applying, by the at least one processor, the parameter selection to the data file, queuing, by the at least one processor, the data file in a queue for transmission to the remote storage facility at the transfer time, and transferring, by the at least one processor, the data file to the remote storage facility at the user selected transfer time.
  • According to another embodiment, a system may comprise at least one storage device, and a network coupled to the at least one storage device that receives from a client device of a user coupled to the network, a data file via an upload transmission scheduled for a user selected time by the user of the client device, wherein the at least one storage device stores the data file according to a parameter selection.
  • According to another embodiment, a computer program product (CPP) embodied on a computer readable medium, the CPP comprising a graphical user interface (GUI) application, the GUI comprising: instructions for enabling at least one computer to receive a user selected request to queue a scheduled upload, and automatically transmit, according to a parameter selection, a data file to a remote storage facility at a user selectable transfer time for storage at the remote storage facility.
  • A method comprising: receiving by at least one computer at a storage facility service provider, a scheduled upload transmission of a data file, based on a parameter selection, from a remote client device of a user, the storage facility and the remote client device coupled to one another by a communications system, wherein the parameter selection comprises a user selected transfer time, and storing the data file on at least one storage device of the storage facility service provider based on the parameter selection.
  • A system comprising: means for receiving at a storage facility service provider, a scheduled upload transmission of a data file, based on a parameter selection, from a remote client device of a user, the storage facility and the remote client device coupled to one another via a communications system, wherein the parameter selection comprises a user selected transfer time, and means for storing the data file on at least one storage device of at least one computer of the storage facility service provider based on the parameter selection.
  • Moreover, the above features and advantages of the invention are illustrative, and not exhaustive, of those which can be achieved by the invention. Thus, these and other features and advantages of the invention will be apparent from the description herein, both as embodied herein and as modified in view of any variations which will be apparent to those skilled in the art.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The foregoing and other features and advantages of the invention will be apparent from the following, more particular description of the exemplary embodiments of the invention, as illustrated in the accompanying drawings. The left most digits in the corresponding reference number indicate the drawing in which an element first appears.
  • Exemplary embodiments of the invention are explained in greater detail by way of the drawings, where the same reference numerals refer to the same features.
  • FIG. 1 illustrates an exemplary embodiment of a system according to the present invention;
  • FIG. 2 illustrates an exemplary embodiment for a high level architecture of a client according to the present invention;
  • FIG. 3 illustrates an exemplary embodiment of a flow diagram illustrating an exemplary method for transferring a data file from a client to a remote storage facility for storage according to the present invention;
  • FIG. 4 illustrates an exemplary embodiment of a flow diagram depicting an exemplary method of retrieving a data file from the remote storage facility according to the present invention; and
  • FIG. 5 depicts an exemplary embodiment of a computer system that may be used in computing devices such as, e.g., but not limited to, the client or the remote storage facility according to the present invention.
  • DETAILED DESCRIPTION OF VARIOUS EXEMPLARY EMBODIMENTS OF THE INVENTION
  • Exemplary embodiments of the invention are discussed in detail below. In describing embodiments, specific terminology is employed for the sake of clarity. However, the invention is not intended to be limited to the specific terminology so selected. While specific exemplary embodiments are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations can be used without parting from the spirit and scope of the invention.
  • An exemplary embodiment of the present invention generally relates to a method and system for storing a data file at a remote storage facility. The method and system may be particularly useful for storage of imaged documents, data files, and the like. At a client, a user selection of a “store as” command may be received at a graphical user interface (GUI) application program from a user selecting a data file for transfer across a network for storage at a remote storage facility. After the data file is selected, the GUI may prompt the user to enter a file name for the data file. The client may receive a parameter selection at the GUI selecting, for example, but not limited to, indexing information, a compression level, a security level and/or a transfer time, etc., and may apply the parameter selection to the data file. The data file may then be placed in a queue for later transmission to the remote storage facility. The client may at a later time initiate a connection across a network with the remote storage facility and may transfer the data file from the queue to the remote storage facility at the transfer time.
  • The invention is initially discussed with reference to FIG. 1. FIG. 1 illustrates an exemplary embodiment of a system according to the present invention. FIG. 1 depicts a system 100 including, e.g., but not limited to, a client 102, a network 104, and a remote storage facility 106. Client 102 may be capable of executing one or more application programs 108 which may be implemented in hardware, firmware, and/or software. The system 100 and application programs 108 may be used to implement a “store as” function, according to an exemplary embodiment of the present invention, where a backup copy of a data file of the client 102 may be stored remotely at the remote storage facility 106 via a queued transfer. The client 102 may be any device capable of manipulating or storing a data file. The client 102 may be a personal computer, as depicted, or may also be, e.g., but not limited to, an electronic device, a notebook, a laptop computer, a handheld, a cellular phone, a browser based cellular phone useable with a broadband connection, a mobile phone, a personal digital assistant (PDA), a browser based PDA useable with a broadband connection, a communications device, a 3G (or 3.25G, 3.5G, 3.75G, 4G, etc.) mobile phone, or other known computing devices that may store and transfer data files. The data file may be any file containing digital data or computer software, such as, e.g., but not limited to, a word processing document, a computer program, an algorithm, a scanned document, an image, audio and/or video data, or other known types of programs and/or data.
  • The client 102 may be coupled to the network 104 via a connection 110. The connection 110 may be a wired and/or wireless connection to the network 104. The network 104 may be, e.g., but not limited to, a computer network, such as the Internet, a local area network (LAN), a wide area network (WAN), a wireless LAN (WLAN), a fiber optic network, a wireless WAN, a Cellular Digital Packet Data (CDPD) network, a Wi-Fi network, a WiMax network, a wired data network, a wireless data network, or other known data networks. The client 102 may connect to the network 104 through, e.g., but not limited to, a LAN, an internet service provider, a broadband connection, or other known methods of connecting to a computer network. It is noted that the above description is a simple description of a computer network. The details of computer networks are well known in the art, and are not included herein to prevent obscuring the invention. the invention.
  • The remote storage facility 106 may be coupled to the network 104 through a connection 112. The connection 112 may be a wired and/or wireless connection to the network 104. The client 102, the connection 110, the network 104, the connection 112, and the remote storage facility 106 may permit the transfer of data files between the client 102 and the remote storage facility 106. In an exemplary embodiment, the data files may be queued for later transfer.
  • The remote storage facility 106 may store the data files and permit the client 102 access to the data files when desired by the user. The remote storage facility 106 may include one or more servers at one or more locations as well as other equipment such as, e.g., but not limited to, communications and/or storage devices. The remote storage facility 106 may also store multiple copies of the data files on multiple servers at multiple locations. The exemplary embodiment of the present invention may allow a user to backup important data files at the remote storage facility 106 for later access. Storing the data files may also allow a user to retrieve backup copies of data files if anything should happen to the client 102 or the local copy of the data file stored at the client 102. For the remote storage service, in an exemplary embodiment, the user may pay a fee, such as a periodic fee or a per one or more accesses fee, for storing to and/or accessing data from the remote storage facility 106. Alternatively, a company may purchase or contract to use the remote storage facility (RSF) 106 for use by the employees of the company to backup important data files. In a further alternative embodiment, the fee may be charged to a network service provider. The RSF 106 in an exemplary embodiment may include, e.g., but not limited to, a secure storage facility including physical and information security, may include any of a number of well-known conventional technologies including, raised floor, rack mounted, redundant, RAID or mirrored, fault tolerant, mass storage system, which may include, e.g., but not limited to, webservers, application servers, database servers, traffic balancing technologies, archival technologies, public/private key encryption, security and cryptography devices, authentication services, and search engine servers, etc.
  • FIG. 2 illustrates an exemplary embodiment of a high level architecture 200 of an exemplary client 102 according to the present invention. The architecture of the client 102 may include hardware (HW) 202, an operating system (OS) 204, and application programs 108, which, in an exemplary embodiment may be various software applications. The software applications may include, in an exemplary embodiment, a graphical user interface (GUI) application 206, a queue application 208, a parameter selection application 210, and/or a transmission application 212. Alternatively, these software application programs 108 may be embodied as a single software application program and/or integrated into the OS 204, and/or the HW 202. These software application programs 108 and the operations involved with storing and opening files from the remote storage facility 106, according to an exemplary embodiment, are described below.
  • FIG. 3 illustrates an exemplary embodiment of a flow diagram 300 depicting an exemplary method for transferring a data file from the client 102 for storage at a RSF 106 according to the present invention. Flow diagram 300 may begin with 301 and may continue immediately with 302.
  • In 302, a user may enter, and client 102 may receive, a user selection identifying whether to save a data file locally on the client 102 by performing a “save as” command which may cause flow diagram to proceed with 304, or to store the file remotely at the remote storage terminal 106 by performing a “store as” command, which may cause flow diagram 300 to continue with 306. The user selection may be entered using an input device such as, e.g., but not limited to, a mouse 516, keyboard 518, or the like, at a GUI presented to the user by the GUI application 206 at an output device such as, e.g., but not limited to, a display 530 of the client 102 (the input and output devices are described further below with reference to FIG. 5). The GUI may have a drop down menu to initiate a “save as” function or a “store as” function, and/or the GUI may have an icon where the user may drag and/or drop a data file to the icon to initiate the “save as” function or the “store as” function.
  • In 304, if the user has selected a “save as” command, the data file may be saved locally on a storage device 510 such as, e.g., but not limited to, a hard disk of the client 102. From From 304, flow diagram 300 may continue to 316 and end.
  • In 306, if the user has selected a “store as” command, the GUI may prompt the user to enter a file name for the data file. Alternatively, the GUI application 206 may retrieve a previously stored file name. Once received, the file name may be associated with the data file so that the user may identify the data file. Optionally, the client may also perform a “save as” function of the data file when the “store as” function is selected. Performing both a “save as” function and a “store as” function may be used to synchronize the saved and stored files so that they may contain the same data. From 306, flow diagram 300 may continue with 308.
  • In 308, the GUI may prompt the user to select any of various parameter selections and may receive the user parameter selections. Alternatively, the user may have a preset parameter selection such as, e.g., but not limited to, default and/or previously user selected administrative parameters that may be used for each data file. The parameter selection may be one or more of e.g., but not limited to, administrative parameters, index information, a compression level, a security level, and/or a transfer time.
  • In an exemplary embodiment, a user may set certain administrative parameters such as, e.g., but not limited to, a retention limit including, e.g., but not limited to, retain for a period of time, indefinitely, etc. Any of various well-known document retention and destruction options may be available including, e.g., overwrite/destruction.
  • Index information may be used to index the data file and may be used, e.g., for search purposes when a user may desire to retrieve the file from the remote storage facility 106. Index information may include e.g., but not limited to, metatag data information, document management profile information, versioning, tags, etc. The metatag data may be added to the data file to make the file a searchable data file to facilitate searching when retrieving the data file from the remote storage facility 106. Alternatively, if metatag data is not added, the data file may be a searchable data file based on words within the data file.
  • The compression level may indicate a level of compression that the user may desire to apply to the data file. A user may select any of various well-known levels of compression, such compression, such as, e.g., but not limited to, motion picture experts group (MPEG), Joint Photographic Experts Group (JPEG), tagged image file (TIF), portable document format (PDF), and/or any other audio, video and/or data format compression, or any other compression technique that is available to reduce the size of the data file for transmission and storage.
  • The security level may include, e.g., but not limited, 128 bit (or other) encryption, and/or public/private key (PKI) encryption, hash codes, authentication, verification, personal identification number (PIN) and/or password-enabled encryption, etc. The security level may be used to, e.g., but not limited to, select the amount of encryption which may be applied to the data file. The security level may, e.g., set a password for the data file and may be used in authenticating anyone who may attempt to access the data file.
  • The transfer time may be a user-selectable time for when the data file may be transferred from the client 102 to the remote storage facility 106 across the network 104. The system may also have a set transfer time, such as, e.g., on a periodic or aperiodic basic, at a low communication services toll time, at a low network traffic utilization time, etc. Further, the user may, e.g., provide a relative priority to various files, or to set up an automated periodic store as function. For example, a user may select the transfer time to be at 3:00 a.m. Eastern, since less people are typically using the network 104 in the USA at this time.
  • Once the client 102 has received in 308 the parameter selection, the parameter selection software application 210 may associate the parameter selection with the data file, as well as, e.g., process the data file according to the parameter selection entered by the user. From 308, flow diagram 300 may continue with 310.
  • In 310, the queue software application 208 may place the data file in an outbound queue according to the parameter selection thereby queuing the data file for transmission across the network 104 to the remote storage facility 106. The queue software application 208 may monitor a computer or network clock and may, e.g., but not limited to, not transmit the data file from the queue until the selected transfer time.
  • At the transfer time, the transmission software application program 212 may identify a service level agreement and may verify that the client 102 may send the data file. The service level agreement (SLA) may include, e.g., but not limited to, an agreement that may indicate the amount of bandwidth available to the user, the number of data files a user may be allowed to transfer to the remote storage facility 106, the maximum size and/or amount of storage available to a user for storing data files, the amount of storage available and/or used by the user, and/or other data transmission or storage agreements, as will be appreciated by those skilled in the art. The SLA may permit transfer and/or storage of the data file, or may prevent the transfer if transferring the data file would violate the SLA. If the data file is transferable according to the SLA, then diagram 300 may continue with 312.
  • In 312, the transmission software application 212 of the client 102 may initiate a connection with the remote storage facility 106 across the network 104 at the transfer time. Alternatively, the connection may already be setup and the transfer for may commence according to the parameter selection of 308. Once the connection is setup, the transmission software application 212 may transfer the data file from the queue to the network 104 for transport to the remote storage facility 106. From 312, flow diagram 300 may continue with 314.
  • In 314, the remote storage facility 106 may receive and store the data file. During storage and/or otherwise, the remote storage facility 106 may process the indexing information of the data file for indexing. The remote storage facility 106 may process the metatag data of the indexing information captured in parameter selection in 308 that may be added to the data file and may permit easy retrieval by the user. Once the indexing information of the data file is processed, the remote storage facility 106 may store the data file according to the indexing information, retention parameters, and other parameter selections. After the data file is indexed and stored, the remote storage facility 106 may safeguard the data file and may wait for a user to send a request to retrieve the data file as discussed further below with reference to FIG. 4. The remote storage facility 106 may also include antivirus and virus scanning capabilities that may scan the data file before and during storage. From 314, flow diagram 300 may continue with 316, and may immediately end.
  • FIG. 4 illustrates an exemplary embodiment of a flow diagram 400 which depicts an exemplary method of retrieving a data file from the remote storage facility 106 according to the present invention. A user may interface with the GUI presented by the GUI software application 206 of the client 102 to request access to the remote storage facility 106 according to an exemplary embodiment.
  • Flow diagram 400 may begin with 401 and may continue immediately with 402. When a user desires access to a data filed stored at the remote storage facility 106, the user may interact with the GUI of the client 102 to generate a request to access a “stored as” file. In 402, the user interacts with the GUI application 206 to generate a request to access the remote storage facility 106, and the transmission software application 212 of the client 102 may generate a connection with the remote storage facility 106 across the network 104, if not already connected. The request may identify a specific data file, and/or may instead be a search request to browse data files stored at the remote storage facility 106. From 402, flow diagram 400 may continue with 404.
  • In 404, the remote storage facility 106 may receive and process the request from the client 102. According to an exemplary embodiment, the user may select any of various parameter selections for how the user wishes to access the stored data file, such as, e.g., but not limited to, parameter selections as discussed above with reference to 308 in FIG. 3. From 404, diagram 400 may continue with 406.
  • In 406, the remote storage facility 106 may initiate an authentication sequence to authenticate the identity of the client 102 and the user. Alternatively, the request generated by the client 102 may include information to authenticate the client 102 and the user. The authentication sequence may include, requiring the user to enter an identification code, and/or other information that may uniquely identify the user. The authentication may occur where the identification code entered by the user may be compared with a previously stored identification code. From 406, flow diagram 400 may continue with 408.
  • In 408, once the user has been authenticated, the remote storage facility 106 may, e.g., but not limited to, send a browser command and browser data to launch a browser application at the client 102. Alternatively, the browser application may be launched when the user generates the request. The browser data may include the data file specified in the request and/or may include information to display in the browser application at the display 530 of the client 102 to allow the user to search the data files stored by the user at the remote storage facility 106. For example, in an exemplary embodiment, the browser may display a number of computer file folders having data files previously stored by the user at the remote storage facility 106.
  • The browser at the client 102 may also accept search terms or may display an indexed list of files corresponding to the indexing information specified by the user in 308 during the “store as” command described above with reference to FIG. 3. A user may enter one or more search terms at the browser including, e.g., but not limited to, a date, a word, a letter sequence, a number sequence, or a letter and number sequence for searching through the data files associated with the user stored at the remote storage facility 106. Any of various well known search methods employed by search engines, may be utilized, including, e.g., but not limited to, structured query language (SQL), Boolean search, natural language, etc. The remote storage facility 106 may then receive the search terms and generate a results list of data files that may correspond to the search terms. The results list, in an exemplary embodiment, may be ranked based on the relationship of the data file with the entered search terms using well known methods conventionally employed by search engines and the like. Once generated, the RSF 106 may provide the results list to the client 102 for presentation in the browser.
  • The browser may also allow the user to perform certain administrative functions. Administrative functions may include, e.g., but not limited to, deleting files stored at the remote storage facility 106, changing the indexing information of the data files, changing the security or encryption level, adding a password to a data file, etc. If the user may desire to access one or more of the data files, the user may indicate requested files in the browser. From 408, flow diagram 400 may continue with 410.
  • In 410, once one or more data files have been identified and requested, the remote storage facility 106 may retrieve and may transfer the data files to the client 102. Alternatively, the browser may prompt the user to enter a password if a data file is password protected. The transfer of the data file may occur immediately upon receipt of the request, or may occur at a later transfer time, which may be specified by the user and/or according to an SLA. Upon receipt at the client 102, the user may have the option of locally saving the retrieved data file under a new name or at a new location on the client 102, or of replacing the previous version of the data file, which may be damaged or may have missing data, saved locally on the client 102 with the stored as data file received from the remote storage facility 106. Alternatively, the client 102 may compare the received stored as data file and the locally saved data file and only replace the missing and/or damaged portion of the locally saved data file with data from the retrieved data file. From 410, flow diagram 400 may continue with 412 where it may immediately end. Thus, the system 100 as discussed in the above exemplary embodiments may permit a user to save data locally as well as, or alternatively, storing remotely at a remote storage facility 106 thereby providing the user of the client 102 with the ability to protect data files from loss due to problems with the client 102. Advantageously, the system according to the present invention may in another exemplary embodiment be used for transfer of data from one computer of a user to another computer of the user, for example in the case of system upgrades or replacements.
  • An Exemplary Computer System
  • FIG. 5 depicts an exemplary embodiment of a computer system that may be used in computing and/or communications devices such as, e.g., but not limited to, the client 102 or the remote storage facility 106 according to the present invention. The present invention (or any part(s) or function(s) thereof) may be implemented using hardware, software, firmware, or a combination thereof and may be implemented in one or more computer systems or other processing systems. In fact, in one exemplary embodiment, the invention may be directed toward one or more computer systems capable of carrying out the functionality described herein. An example of a computer system 500 is shown in FIG. 5, depicting an exemplary embodiment of a block diagram of an exemplary computer system useful for implementing the present invention. Specifically, FIG. 5 illustrates an example computer 500, which in an exemplary embodiment may be, e.g., (but not limited to) a personal computer (PC) system running an operating system 204 such as, e.g., (but not limited to) WINDOWS MOBILE™ for POCKET PC, or MICROSOFT® WINDOWS® NT/98/2000/XP/CE, etc., available from MICROSOFT® Corporation of Redmond, Wash., U.S.A., SOLARIS® from SUN® Microsystems of Santa Clara, Calif., U.S.A., OS/2 from IBM® Corporation of Armonk, N.Y., U.S.A., Mac/OS from APPLE® Corporation of Cupertino, Calif., U.S.A., etc., or any of various versions of UNIX® (a trademark of the Open Group of San Francisco, Calif., USA) including, e.g., LINUX®, HPUX®, IBM AIX®, and SCO/UNIX®, etc.
  • However, the invention may not be limited to these platforms. Instead, the invention may be implemented on any appropriate computer or communications system running any appropriate operating system 204. In one exemplary embodiment, the present invention may be implemented on a computer system operating as discussed herein. An exemplary computer system, computer 500 is shown in FIG. 5. Other components of the invention, such as, e.g., (but not limited to) a computing device, a communications device, a telephone, a personal digital assistant (PDA), a personal computer (PC), a handheld PC, client workstations, thin clients, thick clients, proxy servers, network communication servers, remote access devices, client computers, server computers, routers, web servers, data, media, audio, video, telephony or streaming technology servers, etc., may also be implemented using a computer such as that shown in FIG. 5.
  • The computer system 500 may include one or more processors, such as, e.g., but not limited to, processor(s) 504. The processor(s) 504 may be connected to a communication infrastructure 502 (e.g., but not limited to, a communications bus, cross-over bar, or network, etc.). Various exemplary software embodiments may be described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art(s) how to implement the invention using other computer systems and/or architectures. architectures.
  • Computer system 500 may include any of a number of output devices including, but not limited to, a display interface 520 that may forward, e.g., but not limited to, graphics, text, and other data, etc., from the communication infrastructure 502 (or from a frame buffer, etc., not shown) for display on a display unit 530. Other output devices such as, e.g., printers, etc., may also be used.
  • The computer system 500 may also include, e.g., but may not be limited to, a main memory 506, random access memory (RAM), and a secondary memory 508, etc. The secondary memory 508 may include, for example, (but not limited to) a storage device 510 (which may include a read only memory (ROM), a hard disk, a flash memory or other non-volatile memory, a redundant array of inexpensive disks (RAID), a storage area network (SAN), a direct access storage device (DASD), and/or small computer system interface (SCSI) or other storage subsystem controller—controlled storage device) and/or a removable storage device 512, representing, e.g., but not limited to, a floppy diskette drive, a magnetic tape drive, an optical disk drive, a magneto-optical (MO) drive, a compact disk CD-ROM drive, a digital versatile disk drive (DVD), a USB storage device, etc. The removable storage drive 512 may, e.g., but not limited to, read from and/or write to a removable storage unit 514 in a well known manner. Removable storage unit 514, also called a program storage device or a computer program product, may represent, e.g., but not limited to, a floppy disk, magnetic tape, optical disk, CD, DVD, a program cartridge (such as, e.g., but not limited to, those found in video game devices), a removable memory chip (such as, e.g., but not limited to, an erasable programmable read only memory (EPROM), or programmable read only memory (PROM) etc., which may be read from and written to by removable storage drive 512. As will be appreciated, the removable storage unit 514 may include a computer usable storage medium having stored therein computer software and/or data. In alternative exemplary embodiments, secondary memory 508 may include other similar devices for allowing computer programs or other instructions to be loaded into computer system 500.
  • Computer 500 may also include an input device such as, e.g., (but not limited to) a mouse 516 or other pointing device such as a digitizer, a touch screen type display 530, and a keyboard 518 or other data entry device (none of which are labeled).
  • Computer 500 may include input/output (I/O) devices such as, e.g., (but not limited to) a network communications interface (NIC) card 522, coupler cable or interface 526 and communications path 528, etc. These devices may include, e.g., but not limited to, a network interface card, and modems (neither are labeled). The network communications interface card 522 may allow software and data to be transferred between computer system 500 and external devices. Examples of the network communications interface card 522 may include, e.g., but may not be limited to, a modem, a network interface (such as, e.g., an Ethernet card), a communications port, a Personal Computer Memory Card International Association (PCMCIA) or PC card slot and card, etc. Software and data transferred via the network communications interface card 522 may be in the form of signals which may be electronic, electromagnetic, optical or other signals capable of being received by the network communications interface card 522. These signals may be provided to the network communications interface card 522 via, e.g., but not limited to, a communications path (e.g., but not limited to, a channel) and onto, e.g., but not limited to, network 104, and other devices including, e.g., but not limited to remote storage facility 106. This communications path may carry signals, which may include, e.g., but are not limited to, propagated signals, and may be implemented using, e.g., but not limited to, wire or cable, fiber optics, a telephone line, a cellular link, an radio frequency (RF) link and other communications channels, etc.
  • References to “one embodiment,” “an embodiment,” “example embodiment,” “various embodiments,” etc., may indicate that the embodiment(s) of the invention so described may include a particular feature, structure, or characteristic, but not every embodiment necessarily includes the particular feature, structure, or characteristic. Further, repeated use of the phrase “in one embodiment,” or “in an exemplary embodiment,” do not necessarily refer to the same embodiment, although they may.
  • Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the specification discussions utilizing terms such as “processing,” “computing,” “calculating,” “determining,” or the like, refer to the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulate and/or transform data represented as physical, such as electronic, quantities within the computing system's registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices.
  • In a similar manner, the term “processor” may refer to any device or portion of a device that processes electronic data from registers and/or memory to transform that electronic data into other electronic data that may be stored in registers and/or memory. A “computing platform” may comprise one or more processors.
  • Embodiments of the present invention may include apparatuses for performing the operations herein. An apparatus may be specially constructed for the desired purposes, or it may comprise a general purpose device selectively activated or reconfigured by a program stored in the device.
  • Embodiments of the invention may be implemented in one or a combination of hardware, firmware, and software. Embodiments of the invention may also be implemented as instructions stored on a machine-readable medium, which may be read and executed by a computing platform to perform the operations described herein. A machine-readable medium may include any mechanism for storing information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium may include read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; and others.
  • Computer programs 108 (also called computer control logic), may include object oriented computer programs, and may be stored in main memory 506 and/or the secondary memory 508 and/or removable storage units 514, also called computer program products. Such computer programs, when executed, may enable the computer system 500 to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, may enable the processor 504 to provide a method to resolve conflicts during data synchronization according to an exemplary embodiment of the present invention. Accordingly, such computer programs may represent controllers of the computer system 500.
  • In another exemplary embodiment, the invention may be directed to a computer program product comprising a computer readable medium having control logic (computer software) stored therein. The control logic, when executed by the processor 504, may cause the processor 504 to perform the functions of the invention as described herein. In another exemplary embodiment where the invention may be implemented using software, the software may be stored in a computer program product and loaded into computer system 500 using, e.g., but not limited to, removable storage drive 512, hard drive 510 or the network communications interface card 522, etc. The control logic (software), when executed by the processor 504, may cause the processor 504 to perform the functions of the invention as described herein. The computer software may run as a standalone software application program 108 running atop an operating system 204, or may be integrated into the operating system 204.
  • In yet another embodiment, the invention may be implemented primarily in hardware using, for example, but not limited to, hardware components such as application specific integrated circuits (ASICs), field programmable gateways (FPGAs) or one or more state machines, etc. Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s).
  • In another exemplary embodiment, the invention may be implemented primarily in firmware.
  • In yet another exemplary embodiment, the invention may be implemented using a combination of any of, e.g., but not limited to, hardware, firmware, and software, etc.
  • The embodiments and examples discussed herein are non-limiting examples.
  • The invention is described in detail with respect to exemplary embodiments, and it it will now be apparent from the foregoing to those skilled in the art that changes and modifications may be made without departing from the invention in its broader aspects, and the invention, therefore, as defined in the claims is intended to cover all such changes and modifications as fall within the true spirit of the invention.

Claims (43)

1. A method comprising:
receiving, by at least one processor, a command selecting a data file for transfer across a network for storage at a remote storage facility;
receiving, by the at least one processor, a parameter selection comprising a user selected transfer time;
applying, by the at least one processor, said parameter selection to said data file;
queuing, by the at least one processor, said data file in a queue for transmission to said remote storage facility at said transfer time; and
transferring, by the at least one processor, said data file to said remote storage facility at said user selected transfer time.
2. The method of claim 1, wherein said parameter selection further comprises at least one of an administrative parameter, indexing information, a compression level, an encryption level, or a security level.
3. The method of claim 2, wherein said indexing information comprises adding metatag data to said data file to create a searchable data file.
4. The method according to claim 1, wherein said command comprises dragging and dropping of said data file to an icon on a graphical user interface (GUI).
5. The method according to claim 1, wherein said transferring said data file further comprises:
identifying a service level agreement (SLA); and
determining whether to transfer said data file based on enforcing said SLA.
6. The method according to claim 5, wherein said SLA indicates a maximum size of data said user is permitted to store at said remote storage facility.
7. The method according to claim 2, wherein said transferring said data file further comprises encrypting said data file according to at least one of said encryption level or said security level.
8. The method according to claim 2, wherein said transferring said data file further comprises at least one of compressing said data file according to said compression level or transferring said data file wherein said data file was previously compressed, wherein said compression comprises at least one of Motion Picture Experts Group (MPEG), Joint Photographic Experts Group (JPEG), Tagged Image File Format (TIFF), Portable Document Format (PDF), an audio format compression, a video format compression or a data format compression.
9. The method according to claim 1, wherein said transferring said data file further comprises initiating a connection over said network.
10. The method according to claim 1, further comprising:
receiving a request from the user of said data file;
sending said request to retrieve said data file;
initiating an authentication sequence; and
receiving said data file from said remote storage facility.
11. The method according to claim 1, further comprising:
receiving at least one search term of a search request from a user;
sending said search request;
initiating a user authentication sequence;
receiving a browser command; and
sending said at least one search term.
12. The method according to claim 11, further comprising receiving a results list of one or more data files corresponding to said search terms.
13. The method according to claim 12, wherein said results list of one or more data files is generated in response to the user entering at least one of a date, a word, a letter sequence, a number sequence, or a letter and number sequence at said client.
14. The method according to claim 1, further comprising receiving from the user fee payment information for accessing or storing said data file at said remote storage facility.
15. The method according to claim 1, further comprising providing fee information to the user for at least one of accessing or storing said data file at said remote storage facility.
16. The method according to 1, wherein said storage is provided as a service to the user in exchange for a fee, wherein said fee comprises a periodic fee or an aperiodic fee.
17. The method according to 16, wherein said fee is charged to at least one of the user or a network service provider.
18. The method according to claim 1, further comprising:
receiving a request from the user;
sending said request to said remote storage facility;
initiating an authentication sequence of the user; and
authenticating the user; and
addressing said request.
19. The method according to claim 18, wherein said initiating said authentication sequence further comprises:
receiving identification information from the user; and
comparing said identification information to stored identification information.
20. A system comprising:
at least one storage device; and
a network coupled to said at least one storage device that receives from a client device of a user coupled to said network, a data file via an upload transmission scheduled for a user selected time by the user of the client device;
wherein said at least one storage device stores said data file according to a parameter selection.
21. The system according to claim 20, wherein said parameter selection further comprises at least one of indexing information, a compression level, or a security level.
22. A computer program product (CPP) embodied on a computer readable medium, the CPP comprising:
a graphical user interface (GUI) application, said GUI comprising:
instructions for enabling at least one computer to receive a user selected request to queue a scheduled upload, and automatically transmit, according to a parameter selection, a data file to a remote storage facility at a user selectable transfer time for storage at the remote storage facility.
23. The GUI of claim 22, wherein said GUI application is further adapted to enable the user to access said data file from said remote storage facility.
24. A method comprising:
receiving by at least one computer at a storage facility service provider, a scheduled upload transmission of a data file, based on a parameter selection, from a remote client device of a user, the storage facility and the remote client device coupled to one another by a communications system,
wherein said parameter selection comprises a user selected transfer time; and
storing said data file on at least one storage device of the storage facility service provider based on said parameter selection.
25. The method of claim 24, wherein said parameter selection further comprises at least one of an administrative parameter, indexing information, a compression level, an encryption level, or a security level.
26. The method of claim 25, wherein said administrative parameter comprises at least one of a retention limit or a document retention option.
27. The method according to claim 24, wherein said receiving comprises:
identifying said service level agreement (SLA); and
determining whether to receive said data file based on enforcing said SLA.
28. The method according to claim 24, wherein said SLA indicates a maximum size of data said user is permitted to store at said storage facility service provider.
29. The method according to claim 25, wherein said storing further comprises encrypting and storing said data file according to at least one of said encryption level or said security level.
30. The method according to claim 29, wherein said encrypting comprises at least one of authentication, password, public/private key (PKI) encryption, hash codes, authentication, verification, personal identification number (PIN) or password-enabled encryption.
31. The method according to claim 24 wherein said receiving further comprises at least one of compressing said data file according to said compression level or receiving said data file wherein said data file was previously compressed, wherein said compression comprises at least one of Motion Picture Experts Group (MPEG), Joint Photographic Experts Group (JPEG), Tagged Image File Format (TIFF), Portable Document Format (PDF), an audio format compression, a video format compression or a data format compression.
32. The method according to claim 24, further comprising:
receiving a request at said storage facility service provider to retrieve said data file;
initiating an authentication sequence between said client device and said storage facility service provider; and
transferring said data file from said storage facility service provider to said client device.
33. The method according to claim 24, further comprising:
receiving a search request at said storage facility service provider;
initiating a user authentication sequence;
providing a prompt to said client device;
receiving search terms from said client device; and
generating a results list of one or more data files corresponding to said search terms.
34. The method according to claim 33, further comprising providing said results list of one or more data files to said client device.
35. The method according to claim 33, wherein said results list of one or more data files is generated in response to the user entering at least one of a date, a word, a letter sequence, a number sequence, or a letter and number sequence at said client device.
36. The method according to claim 24, further comprising receiving from, the remote client device, fee payment information for accessing or storing said data file stored at said storage facility service provider.
37. The method according to claim 24, further comprising providing fee information to the user for at least one of accessing or storing said data file at said storage facility service provider.
38. The method according to 24, wherein said storage is provided as a service to the user by the first entity in exchange for a fee, wherein said fee comprises a periodic fee or an aperiodic fee.
39. The method according to 38, wherein said fee is charged to at least one of the user or a network service provider.
40. The method according to claim 24, further comprising:
receiving a request at said storage facility service provider;
initiating an authentication sequence; and
authenticating the user.
41. The method according to claim 40, wherein said initiating an authentication sequence further comprises:
receiving identification information from the user; and
comparing said identification information with stored identification information.
42. The method according to claim 41, wherein identification information comprises at least one of: password, user information, personal identification number (PIN), verification information, or authentication information.
43. A system comprising:
means for receiving at a storage facility service provider, a scheduled upload transmission of a data file, based on a parameter selection, from a remote client device of a user, the storage facility and the remote client device coupled to one another via a communications system;
wherein said parameter selection comprises a user selected transfer time; and
means for storing said data file on at least one storage device of at least one computer of said storage facility service provider based on said parameter selection.
US12/728,723 2006-03-03 2010-03-22 System and method of storing data files at a remote storage facility Abandoned US20100179883A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/728,723 US20100179883A1 (en) 2006-03-03 2010-03-22 System and method of storing data files at a remote storage facility

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/367,038 US7702781B2 (en) 2006-03-03 2006-03-03 System and method of storing data files at a remote storage facility
US12/728,723 US20100179883A1 (en) 2006-03-03 2010-03-22 System and method of storing data files at a remote storage facility

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/367,038 Continuation US7702781B2 (en) 2006-03-03 2006-03-03 System and method of storing data files at a remote storage facility

Publications (1)

Publication Number Publication Date
US20100179883A1 true US20100179883A1 (en) 2010-07-15

Family

ID=38472650

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/367,038 Active 2027-05-01 US7702781B2 (en) 2006-03-03 2006-03-03 System and method of storing data files at a remote storage facility
US12/728,723 Abandoned US20100179883A1 (en) 2006-03-03 2010-03-22 System and method of storing data files at a remote storage facility

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/367,038 Active 2027-05-01 US7702781B2 (en) 2006-03-03 2006-03-03 System and method of storing data files at a remote storage facility

Country Status (1)

Country Link
US (2) US7702781B2 (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110153560A1 (en) * 2009-12-18 2011-06-23 Victor Bryant Apparatus, method and article to manage electronic or digital documents in networked environment
US20110161375A1 (en) * 2009-12-24 2011-06-30 Doug Tedder Systems, methods and articles for template based generation of markup documents to access back office systems
US20120254270A1 (en) * 2011-03-30 2012-10-04 Buffalo Inc. Data management apparatus, data management method, and computer program product
US20130094567A1 (en) * 2011-10-18 2013-04-18 Lsi Corporation Apparatus and methods for performing block matching on a video stream
US8731973B2 (en) 2011-04-19 2014-05-20 Vertafore, Inc. Overlaying images in automated insurance policy form generation
US9225695B1 (en) 2014-06-10 2015-12-29 Lockheed Martin Corporation Storing and transmitting sensitive data
US9367435B2 (en) 2013-12-12 2016-06-14 Vertafore, Inc. Integration testing method and system for web services
US9384198B2 (en) 2010-12-10 2016-07-05 Vertafore, Inc. Agency management system and content management system integration
US9507814B2 (en) 2013-12-10 2016-11-29 Vertafore, Inc. Bit level comparator systems and methods
US9554163B2 (en) 1998-07-14 2017-01-24 Rovi Guides, Inc. Client-server based interactive television program guide system with remote server recording
US9600400B1 (en) 2015-10-29 2017-03-21 Vertafore, Inc. Performance testing of web application components using image differentiation
US9747556B2 (en) 2014-08-20 2017-08-29 Vertafore, Inc. Automated customized web portal template generation systems and methods
US20170249478A1 (en) * 2016-02-26 2017-08-31 Microsoft Technology Licensing, Llc Data privacy management system and method
US10188890B2 (en) 2013-12-26 2019-01-29 Icon Health & Fitness, Inc. Magnetic resistance mechanism in a cable machine
US10220259B2 (en) 2012-01-05 2019-03-05 Icon Health & Fitness, Inc. System and method for controlling an exercise device
US10226396B2 (en) 2014-06-20 2019-03-12 Icon Health & Fitness, Inc. Post workout massage device
US10272317B2 (en) 2016-03-18 2019-04-30 Icon Health & Fitness, Inc. Lighted pace feature in a treadmill
US10279212B2 (en) 2013-03-14 2019-05-07 Icon Health & Fitness, Inc. Strength training apparatus with flywheel and related methods
US10391361B2 (en) 2015-02-27 2019-08-27 Icon Health & Fitness, Inc. Simulating real-world terrain on an exercise device
US10426989B2 (en) 2014-06-09 2019-10-01 Icon Health & Fitness, Inc. Cable system incorporated into a treadmill
US10430789B1 (en) 2014-06-10 2019-10-01 Lockheed Martin Corporation System, method and computer program product for secure retail transactions (SRT)
US10433612B2 (en) 2014-03-10 2019-10-08 Icon Health & Fitness, Inc. Pressure sensor to quantify work
US10493349B2 (en) 2016-03-18 2019-12-03 Icon Health & Fitness, Inc. Display on exercise device
CN110581830A (en) * 2018-06-11 2019-12-17 广东信浓信息技术有限公司 Instant data encryption method and device
US10625137B2 (en) 2016-03-18 2020-04-21 Icon Health & Fitness, Inc. Coordinated displays in an exercise device
US10671705B2 (en) 2016-09-28 2020-06-02 Icon Health & Fitness, Inc. Customizing recipe recommendations
US11328079B2 (en) * 2014-03-12 2022-05-10 Samsung Electronics Co., Ltd. System and method of encrypting folder in device

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4183003B2 (en) * 2006-11-09 2008-11-19 ソニー株式会社 Information processing apparatus, information processing method, and program
WO2008134592A1 (en) * 2007-04-27 2008-11-06 Coupons, Inc. Coupon copy protection
WO2009062182A1 (en) * 2007-11-09 2009-05-14 Topia Technology Architecture for management of digital files across distributed network
US9354853B2 (en) * 2008-07-02 2016-05-31 Hewlett-Packard Development Company, L.P. Performing administrative tasks associated with a network-attached storage system at a client
JP2010015475A (en) * 2008-07-07 2010-01-21 Nec Personal Products Co Ltd Information processing terminal and client server system
US8560716B1 (en) * 2008-12-19 2013-10-15 Emc Corporation Time and bandwidth efficient recoveries of space reduced data
US8725690B1 (en) 2008-12-19 2014-05-13 Emc Corporation Time and bandwidth efficient backups of space reduced data
US9189807B2 (en) * 2009-01-15 2015-11-17 Cox Communications, Inc. In-network online storage with increased session bandwidth
US8688711B1 (en) 2009-03-31 2014-04-01 Emc Corporation Customizable relevancy criteria
US9626305B1 (en) 2009-03-31 2017-04-18 EMC IP Holding Company LLC Complementary space reduction
US9537705B1 (en) 2009-03-31 2017-01-03 EMC IP Holding Company LLC Global space reduction groups
US8656057B1 (en) * 2009-04-01 2014-02-18 Emc Corporation Opportunistic restore
US8615548B1 (en) * 2009-11-17 2013-12-24 Applied Micro Circuits Corporation System and method for deferred data downloading
EP2375344B1 (en) * 2010-04-08 2020-02-12 Accenture Global Services Limited Digital content supply system
US8886664B2 (en) * 2010-05-13 2014-11-11 Microsoft Corporation Decreasing duplicates and loops in an activity record
KR20110128567A (en) * 2010-05-24 2011-11-30 삼성전자주식회사 Method for controlling objects of user interface and apparatus of enabling the method
US20120066322A1 (en) * 2010-09-15 2012-03-15 Veragen, Inc. Computer-network-based system and methodology for enhancing personal-information storage and transfer control
WO2012061194A2 (en) * 2010-11-01 2012-05-10 Google Inc. Mobile device-based bandwidth throttling
EP2458512A1 (en) * 2010-11-29 2012-05-30 Deutsche Telekom AG Mobile data storage
US10484452B2 (en) * 2015-06-22 2019-11-19 Ricoh Company, Ltd. Approach for sharing electronic documents during electronic meetings
US10554728B2 (en) 2015-10-22 2020-02-04 Ricoh Company, Ltd. Approach for sharing electronic documents during electronic meetings
US10216449B1 (en) * 2016-12-23 2019-02-26 EMC IP Holding Company LLC Extended snapshot using backup and microservice
US11442892B2 (en) * 2018-02-22 2022-09-13 Microsoft Technology Licensing, Llc File and data migration to storage system
US10687062B1 (en) * 2019-02-22 2020-06-16 Google Llc Compression across multiple images

Citations (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US641943A (en) * 1899-09-01 1900-01-23 William Dudley Easley Cane-header.
US3718906A (en) * 1971-06-01 1973-02-27 R Lightner Vending system for remotely accessible stored information
US3866182A (en) * 1968-10-17 1975-02-11 Fujitsu Ltd System for transferring information between memory banks
US3934079A (en) * 1973-10-26 1976-01-20 Jerrold Electronics Corporation Bilateral communications system for distributing commerical and premium video signaling on an accountable basis
US4007355A (en) * 1974-03-25 1977-02-08 Societe Anonyme Dite: Societe Internationale Pour L'innovation Data-transfer system
US4310883A (en) * 1978-02-13 1982-01-12 International Business Machines Corporation Method and apparatus for assigning data sets to virtual volumes in a mass store
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US4901223A (en) * 1986-04-30 1990-02-13 International Business Machines Corporation Method and apparatus for application software control of echo response
US4982234A (en) * 1989-03-01 1991-01-01 Xerox Corporation Exception grouping for machine programming
US4982324A (en) * 1988-12-19 1991-01-01 International Business Machines Corporation Method of and system for using device drivers to couple the communication and data storage of remote computer systems
US4987454A (en) * 1988-06-17 1991-01-22 Minolta Camera Kabushiki Kaisha Developing method for developing electrostatic latent image
US4994963A (en) * 1988-11-01 1991-02-19 Icon Systems International, Inc. System and method for sharing resources of a host computer among a plurality of remote computers
US5089958A (en) * 1989-01-23 1992-02-18 Vortex Systems, Inc. Fault tolerant computer backup system
US5181238A (en) * 1989-05-31 1993-01-19 At&T Bell Laboratories Authenticated communications access service
US5182770A (en) * 1991-04-19 1993-01-26 Geza Medveczky System and apparatus for protecting computer software
US5276867A (en) * 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data storage system with improved data migration
US5276441A (en) * 1989-07-08 1994-01-04 Sharp Kabushiki Kaisha Communication charge manageable digital communication unit and a method of managing communication charge
US5276865A (en) * 1992-05-06 1994-01-04 Thorpe Tracy J Automatic computer back-up system
US5379418A (en) * 1990-02-28 1995-01-03 Hitachi, Ltd. Highly reliable online system
US5383129A (en) * 1993-08-31 1995-01-17 Xerox Corporation Method of estimating cost of printing materials used to print a job on a printing apparatus
US5388211A (en) * 1989-04-28 1995-02-07 Softel, Inc. Method and apparatus for remotely controlling and monitoring the use of computer software
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US5495533A (en) * 1994-04-29 1996-02-27 International Business Machines Corporation Personal key archive
US5594663A (en) * 1995-01-23 1997-01-14 Hewlett-Packard Company Remote diagnostic tool
US5606719A (en) * 1988-05-26 1997-02-25 Digital Equipment Corporation Temporary state preservation for a distributed file service
US5857208A (en) * 1996-05-31 1999-01-05 Emc Corporation Method and apparatus for performing point in time backup operation in a computer system
US5861883A (en) * 1997-05-13 1999-01-19 International Business Machines Corp. Method and system for portably enabling awareness, touring, and conferencing over the world-wide web using proxies and shared-state servers
US6014651A (en) * 1993-11-04 2000-01-11 Crawford; Christopher M. Commercial online software distribution systems and methods using encryption for security
US6014658A (en) * 1997-12-01 2000-01-11 Micron Electronics, Inc. Using a database for managing solutions to problems
US6021433A (en) * 1996-01-26 2000-02-01 Wireless Internet, Inc. System and method for transmission of data
US6023710A (en) * 1997-12-23 2000-02-08 Microsoft Corporation System and method for long-term administration of archival storage
US6023506A (en) * 1995-10-26 2000-02-08 Hitachi, Ltd. Data encryption control apparatus and method
US6029232A (en) * 1995-12-18 2000-02-22 Nec Corporation Data backup system in terminal device connected to data communications network
US6032223A (en) * 1997-10-15 2000-02-29 Dell Usa, L.P. System and method for determining a RAM disk logical drive designation
US6173376B1 (en) * 1996-10-03 2001-01-09 International Business Machines Corp. Data backup and restore method and system in a multisystem environment
US6189079B1 (en) * 1998-05-22 2001-02-13 International Business Machines Corporation Data copy between peer-to-peer controllers
US6339826B2 (en) * 1998-05-05 2002-01-15 International Business Machines Corp. Client-server system for maintaining a user desktop consistent with server application user access permissions
US6345282B1 (en) * 1999-09-30 2002-02-05 Nortel Networks Limited Multi-processor data synchronization method and apparatus
US6351776B1 (en) * 1999-11-04 2002-02-26 Xdrive, Inc. Shared internet storage resource, user interface system, and method
US6505216B1 (en) * 1999-10-01 2003-01-07 Emc Corporation Methods and apparatus for backing-up and restoring files using multiple trails
US20030011681A1 (en) * 1999-05-28 2003-01-16 Nikon Corporation Digital image storage and digital image storage system
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US6519772B1 (en) * 1996-04-15 2003-02-11 Autodesk Canada Inc. Video data storage
US6526418B1 (en) * 1999-12-16 2003-02-25 Livevault Corporation Systems and methods for backing up data files
US20040014489A1 (en) * 2002-07-22 2004-01-22 Matsushita Electric Industrial Co., Ltd. Cellular mobile phone
US20040172588A1 (en) * 1996-08-21 2004-09-02 Mattaway Shane D. Collaborative multimedia architecture for packet-switched data networks
US6839747B1 (en) * 1998-06-30 2005-01-04 Emc Corporation User interface for managing storage in a storage system coupled to a network
US6842770B1 (en) * 2000-08-18 2005-01-11 Apple Computer, Inc. Method and system for seamlessly accessing remotely stored files
US6845395B1 (en) * 1999-06-30 2005-01-18 Emc Corporation Method and apparatus for identifying network devices on a storage network
US6847984B1 (en) * 1999-12-16 2005-01-25 Livevault Corporation Systems and methods for backing up data files
US6850916B1 (en) * 1998-04-27 2005-02-01 Esignx Corporation Portable electronic charge and authorization devices and methods therefor
US6859924B1 (en) * 1998-06-04 2005-02-22 Gateway, Inc. System restore apparatus and method employing virtual restore disk
US20050144189A1 (en) * 2002-07-19 2005-06-30 Keay Edwards Electronic item management and archival system and method of operating the same
US20050165722A1 (en) * 2004-01-27 2005-07-28 International Business Machines Corporation Method, system, and program for storing data for retrieval and transfer
US20060004820A1 (en) * 2004-07-01 2006-01-05 Claudatos Christopher H Storage pools for information management
US6986043B2 (en) * 1997-09-16 2006-01-10 Microsoft Corporation Encrypting file system and method
US6996563B2 (en) * 2000-04-11 2006-02-07 Sony Corporation Communication system, communication method, distribution apparatus, distribution method and terminal apparatus
US20060031770A1 (en) * 2004-08-05 2006-02-09 Mcmenamin Marie Methods, systems, and storage mediums for providing multi-media content storage and management services
US6999945B1 (en) * 1998-01-29 2006-02-14 Automated Business Companies Multiple customer and multiple location PC service provider system
US7007152B2 (en) * 2001-12-28 2006-02-28 Storage Technology Corporation Volume translation apparatus and method
US7007041B2 (en) * 2000-01-25 2006-02-28 Fusionone, Inc. Synchronization system application object interface
US20060248165A1 (en) * 2005-04-27 2006-11-02 Sridhar S Systems and methods of specifying service level criteria
US7159050B2 (en) * 2004-01-27 2007-01-02 Hitachi, Ltd. File input/output control device and method for the same
US7165152B2 (en) * 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
US7166062B1 (en) * 1999-07-08 2007-01-23 Icon Ip, Inc. System for interaction with exercise device
US7166064B2 (en) * 1999-07-08 2007-01-23 Icon Ip, Inc. Systems and methods for enabling two-way communication between one or more exercise devices and computer devices and for enabling users of the one or more exercise devices to competitively exercise
US7177887B2 (en) * 2001-03-15 2007-02-13 Qing Yang Remote online information back-up system
US20070038884A1 (en) * 2005-08-10 2007-02-15 Spare Backup, Inc. System and method of remote storage of data using client software
US7181756B1 (en) * 1998-06-17 2007-02-20 Microsoft Corporation Television/internet terminal user interface
US7181421B2 (en) * 1998-01-16 2007-02-20 Sbc Properties, L.P. Method and system for tracking computer system usage through a remote access security device
US7181738B2 (en) * 2000-01-06 2007-02-20 Chan Kam-Fu Running ramdisk-based Microsoft Windows 95/98/ME
US7184976B1 (en) * 1999-09-09 2007-02-27 Canon Kabushiki Kaisha Apparatus which can be connected to network, and charging management system
US7320033B2 (en) * 2001-07-27 2008-01-15 Intel Corporation Dynamic local drive and printer sharing
US7321927B2 (en) * 2005-12-12 2008-01-22 Hitachi, Ltd. Controlling method, computer system, and processing program of booting up a computer
US20080052328A1 (en) * 2006-07-10 2008-02-28 Elephantdrive, Inc. Abstracted and optimized online backup and digital asset management service
US7480715B1 (en) * 2002-01-25 2009-01-20 Vig Acquisitions Ltd., L.L.C. System and method for performing a predictive threat assessment based on risk factors
US7643824B2 (en) * 2004-02-27 2010-01-05 Cooligy Inc Wireless telephone data backup system
US7644422B2 (en) * 1996-12-11 2010-01-05 The Nielsen Company (Us), Llc Interactive service device metering systems
US7647243B2 (en) * 1995-11-07 2010-01-12 Ebay Inc. Electronic marketplace system and method for creation of a two-tiered pricing scheme
US7647364B2 (en) * 1999-07-09 2010-01-12 Whitserve Llc Onsite backup of internet-based data in a requested format
US7650419B2 (en) * 1998-09-17 2010-01-19 Axxs Technologies Corporation Multi-media remote data access terminals and system
US7650621B2 (en) * 2000-10-11 2010-01-19 United Video Properties, Inc. Systems and methods for providing storage of data on servers in an on-demand media delivery system
US7650510B2 (en) * 2002-04-30 2010-01-19 General Dynamics Advanced Information Systems, Inc. Method and apparatus for in-line serial data encryption
US7653687B2 (en) * 1994-05-31 2010-01-26 Reisman Richard R Method for distributing content to a user station
US7865567B1 (en) * 1993-12-02 2011-01-04 Discovery Patent Holdings, Llc Virtual on-demand electronic book
US7865405B2 (en) * 1992-12-09 2011-01-04 Discovery Patent Holdings, Llc Electronic book having electronic commerce features
US7862478B2 (en) * 1999-07-08 2011-01-04 Icon Ip, Inc. System and methods for controlling the operation of one or more exercise devices and providing motivational programming
US7870585B2 (en) * 1998-07-14 2011-01-11 United Video Properties, Inc. Client-server based interactive television program guide system with remote server recording
US7870271B2 (en) * 2002-11-12 2011-01-11 Charles Frank Disk drive partitioning methods and apparatus
US7877799B2 (en) * 2000-08-18 2011-01-25 Hewlett-Packard Development Company, L.P. Performance of a service on a computing platform
US8092307B2 (en) * 1996-11-14 2012-01-10 Bally Gaming International, Inc. Network gaming system
US8095949B1 (en) * 1993-12-02 2012-01-10 Adrea, LLC Electronic book with restricted access features
US8099471B2 (en) * 2000-05-23 2012-01-17 Intel Corporation Method and system for communicating between memory regions
US8108636B2 (en) * 2008-12-31 2012-01-31 Decho Corporation Providing backups using a portable storage device
US8108492B2 (en) * 1995-11-13 2012-01-31 Lakshmi Arunachalam Web application network portal

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7065586B2 (en) * 2000-12-22 2006-06-20 Radiance Technologies, Inc. System and method for scheduling and executing data transfers over a network
AU2002310411A1 (en) * 2001-06-14 2003-01-02 Cariden Technologies Incorporated Methods and systems to generate and implement a changeover sequence to reconfigure a connection-oriented network
US20020198963A1 (en) * 2001-06-21 2002-12-26 Wu Alex C. Method of timer based download and playback scheme for internet browser
US20040174562A1 (en) * 2003-03-03 2004-09-09 Edwards Mark J. Method and apparatus for image processing ordering utilizing a scanned proof-less order form to generate image order information
US7373451B2 (en) * 2003-12-08 2008-05-13 The Board Of Trustees Of The Leland Stanford Junior University Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers

Patent Citations (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US641943A (en) * 1899-09-01 1900-01-23 William Dudley Easley Cane-header.
US3866182A (en) * 1968-10-17 1975-02-11 Fujitsu Ltd System for transferring information between memory banks
US3718906A (en) * 1971-06-01 1973-02-27 R Lightner Vending system for remotely accessible stored information
US3934079A (en) * 1973-10-26 1976-01-20 Jerrold Electronics Corporation Bilateral communications system for distributing commerical and premium video signaling on an accountable basis
US4007355A (en) * 1974-03-25 1977-02-08 Societe Anonyme Dite: Societe Internationale Pour L'innovation Data-transfer system
US4310883A (en) * 1978-02-13 1982-01-12 International Business Machines Corporation Method and apparatus for assigning data sets to virtual volumes in a mass store
US4901223A (en) * 1986-04-30 1990-02-13 International Business Machines Corporation Method and apparatus for application software control of echo response
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US5606719A (en) * 1988-05-26 1997-02-25 Digital Equipment Corporation Temporary state preservation for a distributed file service
US4987454A (en) * 1988-06-17 1991-01-22 Minolta Camera Kabushiki Kaisha Developing method for developing electrostatic latent image
US4994963A (en) * 1988-11-01 1991-02-19 Icon Systems International, Inc. System and method for sharing resources of a host computer among a plurality of remote computers
US4982324A (en) * 1988-12-19 1991-01-01 International Business Machines Corporation Method of and system for using device drivers to couple the communication and data storage of remote computer systems
US5089958A (en) * 1989-01-23 1992-02-18 Vortex Systems, Inc. Fault tolerant computer backup system
US4982234A (en) * 1989-03-01 1991-01-01 Xerox Corporation Exception grouping for machine programming
US5388211A (en) * 1989-04-28 1995-02-07 Softel, Inc. Method and apparatus for remotely controlling and monitoring the use of computer software
US5181238A (en) * 1989-05-31 1993-01-19 At&T Bell Laboratories Authenticated communications access service
US5276441A (en) * 1989-07-08 1994-01-04 Sharp Kabushiki Kaisha Communication charge manageable digital communication unit and a method of managing communication charge
US5276867A (en) * 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data storage system with improved data migration
US5379418A (en) * 1990-02-28 1995-01-03 Hitachi, Ltd. Highly reliable online system
US5182770A (en) * 1991-04-19 1993-01-26 Geza Medveczky System and apparatus for protecting computer software
US5276865A (en) * 1992-05-06 1994-01-04 Thorpe Tracy J Automatic computer back-up system
US7865405B2 (en) * 1992-12-09 2011-01-04 Discovery Patent Holdings, Llc Electronic book having electronic commerce features
US5383129A (en) * 1993-08-31 1995-01-17 Xerox Corporation Method of estimating cost of printing materials used to print a job on a printing apparatus
US6014651A (en) * 1993-11-04 2000-01-11 Crawford; Christopher M. Commercial online software distribution systems and methods using encryption for security
US7865567B1 (en) * 1993-12-02 2011-01-04 Discovery Patent Holdings, Llc Virtual on-demand electronic book
US8095949B1 (en) * 1993-12-02 2012-01-10 Adrea, LLC Electronic book with restricted access features
US5495533A (en) * 1994-04-29 1996-02-27 International Business Machines Corporation Personal key archive
US7653687B2 (en) * 1994-05-31 2010-01-26 Reisman Richard R Method for distributing content to a user station
US5594663A (en) * 1995-01-23 1997-01-14 Hewlett-Packard Company Remote diagnostic tool
US6023506A (en) * 1995-10-26 2000-02-08 Hitachi, Ltd. Data encryption control apparatus and method
US7647243B2 (en) * 1995-11-07 2010-01-12 Ebay Inc. Electronic marketplace system and method for creation of a two-tiered pricing scheme
US8108492B2 (en) * 1995-11-13 2012-01-31 Lakshmi Arunachalam Web application network portal
US6029232A (en) * 1995-12-18 2000-02-22 Nec Corporation Data backup system in terminal device connected to data communications network
US6032236A (en) * 1995-12-18 2000-02-29 Nec Corporation Data backup system in terminal device connected to data communications network
US6021433A (en) * 1996-01-26 2000-02-01 Wireless Internet, Inc. System and method for transmission of data
US6519772B1 (en) * 1996-04-15 2003-02-11 Autodesk Canada Inc. Video data storage
US5857208A (en) * 1996-05-31 1999-01-05 Emc Corporation Method and apparatus for performing point in time backup operation in a computer system
US20040172588A1 (en) * 1996-08-21 2004-09-02 Mattaway Shane D. Collaborative multimedia architecture for packet-switched data networks
US6173376B1 (en) * 1996-10-03 2001-01-09 International Business Machines Corp. Data backup and restore method and system in a multisystem environment
US8092307B2 (en) * 1996-11-14 2012-01-10 Bally Gaming International, Inc. Network gaming system
US7644422B2 (en) * 1996-12-11 2010-01-05 The Nielsen Company (Us), Llc Interactive service device metering systems
US5861883A (en) * 1997-05-13 1999-01-19 International Business Machines Corp. Method and system for portably enabling awareness, touring, and conferencing over the world-wide web using proxies and shared-state servers
US6986043B2 (en) * 1997-09-16 2006-01-10 Microsoft Corporation Encrypting file system and method
US6032223A (en) * 1997-10-15 2000-02-29 Dell Usa, L.P. System and method for determining a RAM disk logical drive designation
US6014658A (en) * 1997-12-01 2000-01-11 Micron Electronics, Inc. Using a database for managing solutions to problems
US6023710A (en) * 1997-12-23 2000-02-08 Microsoft Corporation System and method for long-term administration of archival storage
US7181421B2 (en) * 1998-01-16 2007-02-20 Sbc Properties, L.P. Method and system for tracking computer system usage through a remote access security device
US6999945B1 (en) * 1998-01-29 2006-02-14 Automated Business Companies Multiple customer and multiple location PC service provider system
US6850916B1 (en) * 1998-04-27 2005-02-01 Esignx Corporation Portable electronic charge and authorization devices and methods therefor
US6339826B2 (en) * 1998-05-05 2002-01-15 International Business Machines Corp. Client-server system for maintaining a user desktop consistent with server application user access permissions
US6189079B1 (en) * 1998-05-22 2001-02-13 International Business Machines Corporation Data copy between peer-to-peer controllers
US6859924B1 (en) * 1998-06-04 2005-02-22 Gateway, Inc. System restore apparatus and method employing virtual restore disk
US7181756B1 (en) * 1998-06-17 2007-02-20 Microsoft Corporation Television/internet terminal user interface
US7165152B2 (en) * 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
US6839747B1 (en) * 1998-06-30 2005-01-04 Emc Corporation User interface for managing storage in a storage system coupled to a network
US7870585B2 (en) * 1998-07-14 2011-01-11 United Video Properties, Inc. Client-server based interactive television program guide system with remote server recording
US7873978B2 (en) * 1998-07-14 2011-01-18 United Video Properties, Inc. Client-server based interactive television program guide system with remote server recording
US8091110B2 (en) * 1998-07-14 2012-01-03 United Video Properties, Inc. Client-server based interactive television program guide system with remote server recording
US7650419B2 (en) * 1998-09-17 2010-01-19 Axxs Technologies Corporation Multi-media remote data access terminals and system
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US20030011681A1 (en) * 1999-05-28 2003-01-16 Nikon Corporation Digital image storage and digital image storage system
US6845395B1 (en) * 1999-06-30 2005-01-18 Emc Corporation Method and apparatus for identifying network devices on a storage network
US7862478B2 (en) * 1999-07-08 2011-01-04 Icon Ip, Inc. System and methods for controlling the operation of one or more exercise devices and providing motivational programming
US7645213B2 (en) * 1999-07-08 2010-01-12 Watterson Scott R Systems for interaction with exercise device
US7166062B1 (en) * 1999-07-08 2007-01-23 Icon Ip, Inc. System for interaction with exercise device
US7166064B2 (en) * 1999-07-08 2007-01-23 Icon Ip, Inc. Systems and methods for enabling two-way communication between one or more exercise devices and computer devices and for enabling users of the one or more exercise devices to competitively exercise
US7647364B2 (en) * 1999-07-09 2010-01-12 Whitserve Llc Onsite backup of internet-based data in a requested format
US7184976B1 (en) * 1999-09-09 2007-02-27 Canon Kabushiki Kaisha Apparatus which can be connected to network, and charging management system
US6345282B1 (en) * 1999-09-30 2002-02-05 Nortel Networks Limited Multi-processor data synchronization method and apparatus
US6505216B1 (en) * 1999-10-01 2003-01-07 Emc Corporation Methods and apparatus for backing-up and restoring files using multiple trails
US6351776B1 (en) * 1999-11-04 2002-02-26 Xdrive, Inc. Shared internet storage resource, user interface system, and method
US7171472B2 (en) * 1999-11-04 2007-01-30 Xdrive, Llc Shared internet storage resource, user interface system, and method
US6985927B2 (en) * 1999-11-04 2006-01-10 Xdrive, Llc. Shared internet storage resource, user interface system, and method
US6526418B1 (en) * 1999-12-16 2003-02-25 Livevault Corporation Systems and methods for backing up data files
US6847984B1 (en) * 1999-12-16 2005-01-25 Livevault Corporation Systems and methods for backing up data files
US7181738B2 (en) * 2000-01-06 2007-02-20 Chan Kam-Fu Running ramdisk-based Microsoft Windows 95/98/ME
US7007041B2 (en) * 2000-01-25 2006-02-28 Fusionone, Inc. Synchronization system application object interface
US6996563B2 (en) * 2000-04-11 2006-02-07 Sony Corporation Communication system, communication method, distribution apparatus, distribution method and terminal apparatus
US8099471B2 (en) * 2000-05-23 2012-01-17 Intel Corporation Method and system for communicating between memory regions
US6842770B1 (en) * 2000-08-18 2005-01-11 Apple Computer, Inc. Method and system for seamlessly accessing remotely stored files
US7877799B2 (en) * 2000-08-18 2011-01-25 Hewlett-Packard Development Company, L.P. Performance of a service on a computing platform
US7650621B2 (en) * 2000-10-11 2010-01-19 United Video Properties, Inc. Systems and methods for providing storage of data on servers in an on-demand media delivery system
US7177887B2 (en) * 2001-03-15 2007-02-13 Qing Yang Remote online information back-up system
US7320033B2 (en) * 2001-07-27 2008-01-15 Intel Corporation Dynamic local drive and printer sharing
US7007152B2 (en) * 2001-12-28 2006-02-28 Storage Technology Corporation Volume translation apparatus and method
US7480715B1 (en) * 2002-01-25 2009-01-20 Vig Acquisitions Ltd., L.L.C. System and method for performing a predictive threat assessment based on risk factors
US7650510B2 (en) * 2002-04-30 2010-01-19 General Dynamics Advanced Information Systems, Inc. Method and apparatus for in-line serial data encryption
US20050144189A1 (en) * 2002-07-19 2005-06-30 Keay Edwards Electronic item management and archival system and method of operating the same
US7171186B2 (en) * 2002-07-22 2007-01-30 Matsushita Electric Industrial Co., Ltd. Cellular mobile phone with user-data backup and available time display functionality
US20040014489A1 (en) * 2002-07-22 2004-01-22 Matsushita Electric Industrial Co., Ltd. Cellular mobile phone
US7870271B2 (en) * 2002-11-12 2011-01-11 Charles Frank Disk drive partitioning methods and apparatus
US20050165722A1 (en) * 2004-01-27 2005-07-28 International Business Machines Corporation Method, system, and program for storing data for retrieval and transfer
US7159050B2 (en) * 2004-01-27 2007-01-02 Hitachi, Ltd. File input/output control device and method for the same
US7643824B2 (en) * 2004-02-27 2010-01-05 Cooligy Inc Wireless telephone data backup system
US20060004820A1 (en) * 2004-07-01 2006-01-05 Claudatos Christopher H Storage pools for information management
US20060031770A1 (en) * 2004-08-05 2006-02-09 Mcmenamin Marie Methods, systems, and storage mediums for providing multi-media content storage and management services
US20060248165A1 (en) * 2005-04-27 2006-11-02 Sridhar S Systems and methods of specifying service level criteria
US20070038884A1 (en) * 2005-08-10 2007-02-15 Spare Backup, Inc. System and method of remote storage of data using client software
US7321927B2 (en) * 2005-12-12 2008-01-22 Hitachi, Ltd. Controlling method, computer system, and processing program of booting up a computer
US7334027B2 (en) * 2005-12-12 2008-02-19 Hitachi, Ltd. Controlling method, computer system, and processing program of booting up a computer
US20080052328A1 (en) * 2006-07-10 2008-02-28 Elephantdrive, Inc. Abstracted and optimized online backup and digital asset management service
US8108636B2 (en) * 2008-12-31 2012-01-31 Decho Corporation Providing backups using a portable storage device

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9554163B2 (en) 1998-07-14 2017-01-24 Rovi Guides, Inc. Client-server based interactive television program guide system with remote server recording
US10298973B2 (en) 1998-07-14 2019-05-21 Rovi Guides, Inc. Client-server based interactive television program guide system with remote server recording
US10027998B2 (en) 1998-07-14 2018-07-17 Rovi Guides, Inc. Systems and methods for multi-tuner recording
US9063932B2 (en) * 2009-12-18 2015-06-23 Vertafore, Inc. Apparatus, method and article to manage electronic or digital documents in a networked environment
US20110153560A1 (en) * 2009-12-18 2011-06-23 Victor Bryant Apparatus, method and article to manage electronic or digital documents in networked environment
US20110161375A1 (en) * 2009-12-24 2011-06-30 Doug Tedder Systems, methods and articles for template based generation of markup documents to access back office systems
US8700682B2 (en) 2009-12-24 2014-04-15 Vertafore, Inc. Systems, methods and articles for template based generation of markup documents to access back office systems
US9384198B2 (en) 2010-12-10 2016-07-05 Vertafore, Inc. Agency management system and content management system integration
US20120254270A1 (en) * 2011-03-30 2012-10-04 Buffalo Inc. Data management apparatus, data management method, and computer program product
US8731973B2 (en) 2011-04-19 2014-05-20 Vertafore, Inc. Overlaying images in automated insurance policy form generation
US20130094567A1 (en) * 2011-10-18 2013-04-18 Lsi Corporation Apparatus and methods for performing block matching on a video stream
US10220259B2 (en) 2012-01-05 2019-03-05 Icon Health & Fitness, Inc. System and method for controlling an exercise device
US10279212B2 (en) 2013-03-14 2019-05-07 Icon Health & Fitness, Inc. Strength training apparatus with flywheel and related methods
US9507814B2 (en) 2013-12-10 2016-11-29 Vertafore, Inc. Bit level comparator systems and methods
US9367435B2 (en) 2013-12-12 2016-06-14 Vertafore, Inc. Integration testing method and system for web services
US10188890B2 (en) 2013-12-26 2019-01-29 Icon Health & Fitness, Inc. Magnetic resistance mechanism in a cable machine
US10433612B2 (en) 2014-03-10 2019-10-08 Icon Health & Fitness, Inc. Pressure sensor to quantify work
US11328079B2 (en) * 2014-03-12 2022-05-10 Samsung Electronics Co., Ltd. System and method of encrypting folder in device
US10426989B2 (en) 2014-06-09 2019-10-01 Icon Health & Fitness, Inc. Cable system incorporated into a treadmill
US10430789B1 (en) 2014-06-10 2019-10-01 Lockheed Martin Corporation System, method and computer program product for secure retail transactions (SRT)
US9419954B1 (en) 2014-06-10 2016-08-16 Lockheed Martin Corporation Storing and transmitting sensitive data
US9760738B1 (en) 2014-06-10 2017-09-12 Lockheed Martin Corporation Storing and transmitting sensitive data
US9311506B1 (en) * 2014-06-10 2016-04-12 Lockheed Martin Corporation Storing and transmitting sensitive data
US9225695B1 (en) 2014-06-10 2015-12-29 Lockheed Martin Corporation Storing and transmitting sensitive data
US10226396B2 (en) 2014-06-20 2019-03-12 Icon Health & Fitness, Inc. Post workout massage device
US11157830B2 (en) 2014-08-20 2021-10-26 Vertafore, Inc. Automated customized web portal template generation systems and methods
US9747556B2 (en) 2014-08-20 2017-08-29 Vertafore, Inc. Automated customized web portal template generation systems and methods
US10391361B2 (en) 2015-02-27 2019-08-27 Icon Health & Fitness, Inc. Simulating real-world terrain on an exercise device
US9600400B1 (en) 2015-10-29 2017-03-21 Vertafore, Inc. Performance testing of web application components using image differentiation
US20180232535A1 (en) * 2016-02-26 2018-08-16 Microsoft Technology Licensing, Llc Data privacy management system and method
US9946897B2 (en) * 2016-02-26 2018-04-17 Microsoft Technology Licensing, Llc Data privacy management system and method
US10445525B2 (en) * 2016-02-26 2019-10-15 Microsoft Technology Licensing, Llc Data privacy management system and method
US20170249478A1 (en) * 2016-02-26 2017-08-31 Microsoft Technology Licensing, Llc Data privacy management system and method
US10272317B2 (en) 2016-03-18 2019-04-30 Icon Health & Fitness, Inc. Lighted pace feature in a treadmill
US10493349B2 (en) 2016-03-18 2019-12-03 Icon Health & Fitness, Inc. Display on exercise device
US10625137B2 (en) 2016-03-18 2020-04-21 Icon Health & Fitness, Inc. Coordinated displays in an exercise device
US10671705B2 (en) 2016-09-28 2020-06-02 Icon Health & Fitness, Inc. Customizing recipe recommendations
CN110581830A (en) * 2018-06-11 2019-12-17 广东信浓信息技术有限公司 Instant data encryption method and device

Also Published As

Publication number Publication date
US20070208826A1 (en) 2007-09-06
US7702781B2 (en) 2010-04-20

Similar Documents

Publication Publication Date Title
US7702781B2 (en) System and method of storing data files at a remote storage facility
US11789723B2 (en) Software container registry service
US11789828B2 (en) Methods and systems relating to network based storage
US10002247B2 (en) Software container registry container image deployment
US10762229B2 (en) Secure searchable and shareable remote storage system and method
US10032032B2 (en) Software container registry inspection
EP3798877A1 (en) Software container registry service
US9246944B1 (en) Systems and methods for enforcing data loss prevention policies on mobile devices
US20050210054A1 (en) Information management system
US7685594B2 (en) Method and data structure for reconfiguring a software package
US8219766B1 (en) Systems and methods for identifying the presence of sensitive data in backups
EP3369030A1 (en) Methods and apparatus for mobile computing device security in testing facilities
US20050219076A1 (en) Information management system
US20100241619A1 (en) Backup apparatus with higher security and lower network bandwidth consumption
US8769627B1 (en) Systems and methods for validating ownership of deduplicated data
US9178860B2 (en) Out-of-path, content-addressed writes with untrusted clients
US9137219B1 (en) Methods and systems for securely managing multimedia data captured by mobile computing devices
US20130014252A1 (en) Portable computer accounts
CN101739522B (en) DRM file integrity protection method and device
US10467436B2 (en) Sharing regulated content stored on non-regulated storage platforms
US8260711B1 (en) Systems and methods for managing rights of data via dynamic taint analysis
US20220150241A1 (en) Permissions for backup-related operations
US20210006634A1 (en) Secure and private web browsing system and method
US8510505B1 (en) Method and apparatus for a virtual storage device
US9436840B2 (en) System and method for securely storing information

Legal Events

Date Code Title Description
AS Assignment

Owner name: TEOCO CORPORATION, VIRGINIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:DEVOLITES, JOHN A.;REEL/FRAME:024116/0544

Effective date: 20060424

AS Assignment

Owner name: BANK OF AMERICA, N.A., MARYLAND

Free format text: NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS;ASSIGNOR:TEOCO CORPORATION;REEL/FRAME:031764/0001

Effective date: 20100823

AS Assignment

Owner name: III HOLDINGS 1, LLC, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TEOCO CORPORATION;REEL/FRAME:032380/0367

Effective date: 20140212

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STCV Information on status: appeal procedure

Free format text: NOTICE OF APPEAL FILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: TEOCO CORPORATION, VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:064300/0334

Effective date: 20230628