CROSS REFERENCE TO RELATED APPLICATIONSThis application claims the benefit of U.S. Provisional Application No. 61/451,024, filed Mar. 9, 2011, the entirety of which is incorporated by reference herein.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to a data saving method, and more particularly to a data saving method for a portable device via a third party.
2. Description of the Related Art
With the growth of the usage of the portable device, a problem has been raised: backing up data of the portable device. One solution is to connect the portable device to a computer or data storage device and store data therein. However, this solution is not convenient for a user. Another solution is directly connecting the portable device to a backup device via a specific communication interface, such as an internet interface.
BRIEF SUMMARY OF THE INVENTIONAn embodiment of the invention provides an operation method of a dock to back up a first data of a portable device to a backup server. The method comprises establishing a first data transmission path that the first data would be backed up to the backup server via a third party; establishing a second data transmission path that the first data would be backed up to the backup server via a router; establishing a third data transmission path that the first data would directly backed up to the backup server; selecting one data transmission path among the first, second and third data transmission paths according to a parameter; backing up the first data via the selected data transmission path.
Another embodiment of the invention provides a dock comprising a program and a controller. The controller executes the program and when the program is executed, the controller establishes a first data transmission path between the dock and a backup server via a third party, a second data transmission path between the dock and a backup server via a router and a third data transmission path that the dock is directly connects to the backup server. When the controller determines that a portable device is connected to the dock and a first data of the portable device needs to be backed up to the backup server, the controller selects one of the first data transmission path, the second data transmission path and the third data transmission to back up the first data to the backup server.
A detailed description is given in the following embodiments with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGSThe present invention can be more fully understood by reading the subsequent detailed description and examples with references made to the accompanying drawings, wherein:
FIG. 1 shows a backup system for a portable device.
FIG. 2 is a schematic diagram of a backup mechanism for a portable device according to an embodiment of the present innovation.
FIG. 3 is a schematic diagram of an embodiment of a dock according to the invention.
FIG. 4 is flowchart of an operation method of a dock according to an embodiment of the invention.
FIG. 5 is a flowchart of an operation method of a dock according to another embodiment of the present invention.
FIG. 6 is a flowchart of an operation method of a dock according to another embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTIONThe following description is of the best-contemplated mode of carrying out the invention. This description is made for the purpose of illustrating the general principles of the invention and should not be taken in a limiting sense. The scope of the invention is best determined by reference to the appended claims.
FIG. 1 shows a backup system for a portable device. Theportable device11 may be a smart phone, a personal digital assistant (PDA), a PDA phone or other similar device. Thedock12 is designed to provide external I/O interfaces for theportable device11. Theportable device11 comprises a backup program to store the data of theportable device11 to thebackup server13. The backup program is automatically activated when theportable device11 connects to thedock12.
When the backup program transmits and stores data of theportable device11 to thebackup server13, three transmission paths are provided for data transmission. First, the data-under-stored can be transmitted to thebackup server13 via athird party15. Second, the data-under-stored can be transmitted to thebackup server13 via arouter14. Third, the data-under-stored can be transmitted directly to thebackup server13. The backup program selects at least one transmission path to transmit the data-under-stored to thebackup server13. The backup program may transmit data to thebackup server13 via the described three transmission path simultaneously and thebackup server13 will select one transmission path that has the best network link quality to receive the data.
In another embodiment, the backup program uses a peer-to-peer file sharing mechanism to transmit the data via the described three transmission paths. For example, the backup program divides a first file into a plurality of data segments and then transmits the segments to thebackup server13 via the described three transmission paths. Due to the network link quality, the original transmission path chosen by thebackup server13 may not always have the best network link quality. Thus, thebackup server13 may monitor the status of data transmission (or the network link quality or the transmission speed) of the other two transmission path, and once thebackup server13 found that other transmission path (second transmission path) has better network link quality than the current transmission path, the backup changes the current transmission to the second transmission path and receives the remaining data segments via the second transmission path. Then, thebackup server13 combines all the data segments into the first file.
In a second embodiment, the backup program first transmits a test data to the backup server via the described three transmission paths to test the network link quality or transmission speed. When thebackup server13 receives the test data, thebackup server13 transmits an acknowledge information back to theportable device11. The portable device determines the network link quality of the three transmission paths according to the receiving time of the acknowledge information. The backup program may also record a label of priority of each transmission path. For example, the transmission path passing through thethird party15 is the first path and the priority is 2; the transmission path passing through therouter14 is the second path and the priority is 3, the transmission path directly to thebackup server13 is the third path and the priority is 1. If theportable device11 found that the first path and the second path are available for transmitting data, theportable device11 will chose the first path to transmit data. If the portable device found that the first and the third path are available for transmitting data, theportable device11 will chose the third path to transmit data.
In a third embodiment, the backup program transmits a first data to thebackup server13 simultaneously via the described three transmission paths and the backup program or thebackup server13 determines which transmission path is adopted according to some parameters during the data transmission, such as the network link quality or the transmission speed. Once the transmission path is determined, the backup program transmits the data via the adapted transmission path only.
In another situation, therouter14, theportable device11 and thebackup server13 are at the same local area network (LAN) or a private network, and thethird party15 is at another network. The backup program will prefer to transmit the data via therouter14 or directly to the backup. Therefore, the transmission paths used by the proposed backup method comprise two part, intranet transmission paths and internet transmission path, and the intranet transmission path is preferred. For example, user using theportable device11 is at his home or company and thebackup server13 is also at his home or company. A local area network, wired or wireless network, covered theportable device11, therouter14 and thebackup server13 is provided. When user wants to backup the data of the portable, the backup program will select to transmit and store data to thebackup server13 directly or via therouter14. In another situation, an access point (AP) providing the wireless network covered theportable device11, therouter14 and thebackup server13 is provided. The backup program may transmit and store data to thebackup server13 via the AP.
The described embodiments illustrate with the situation that the backup program is built in theportable device11. In another situation, the backup program is built in thedock12, and is activated when the portable device connects to thedock12. The operation of the backup program built in thedock12 is similar as the described backup program built in theportable device12, and not described here for brevity.
Furthermore, thedock12 may physically connect to a storage medium, such as a USB flash memory device, SD card, memory card or an external hard disk. The backup program built in thedock12 will automatically backup the data of theportable device11 to the storage medium when the portable device connects to thedock12. Please refer toFIG. 2.
FIG. 2 is a schematic diagram of a backup mechanism for a portable device according to an embodiment of the present innovation. Theportable device21 comprises afirst application program23 and astorage device24, such as a SD card, CF card or flash memory. Thebackup device22, which is connected to thedock12 ofFIG. 1, comprises ahost25 and acontroller26. When user wants to backup files stored in thestorage device24, the user uses thefirst application program23 to select and mark files to be backed up and thefirst application program23 output a log file indicating which files have to be backed up.
When thebackup device22 is electrically connected to theportable device21, thebackup device22 reads the log file of theportable device21 to know which files have to be backed up. Then, thebackup device22 acquires and stores the files to be backed up in thehost25. When thebackup device22 is connected to theportable device21, the control of theportable device21 is transferred to thecontroller26 of thebackup device22. After thebackup device22 finishes the file storing, thebackup device22 creates and store a host log file in theportable device21. The host log file records the status of file storing. Finally, thebackup device22 is disconnected from theportable device22, and thefirst application program23 reads the host log file.
The present data backup procedure mainly comprises three parts. First, before theportable device21 is connected to thebackup device22, thefirst application program23 is executed to select and mark files to be backed up by user. Thefirst application program23 then creates and stores a log file. The log file contains the information of the files to be backed up. The information may comprise file names of the file to be backed up.
Second, when theportable device21 is connected to thebackup device12, the control of theportable device21 is transfer to thebackup device22. In other word, theportable device21 can be seemed as a peripheral device of thebackup device22. Thebackup device22 reads the log file and stores the files to be backed up to thehost25. After storing, thebackup device22 creates and stores a host log file in theportable device11, and breaks down the connection to theportable device22.
Third, thefirst application program23 is executed and reads the host log file to know the status of the backup.
In the present innovation, the log file may not only record the information of the files to be backed up, but also a destination folder or path that the files have to be stored.
In another embodiment, the log file contains a timestamp and thebackup device22 also stores the log file from theportable device21. When thebackup device22 accesses the log file from theportable device21, thebackup device12 also reads a previous log file stored in thebackup device22, and thebackup device12 only stores the unstored files according to the log file and the previous log file. Thebackup device22 comprises a first log file database stores the log files from theportable device22, and theportable device21 comprises a second log file data storing the host log files created by thebackup device22. Each time theportable device21 backups the data or files to thebackup device22, thefirst application program23 or thebackup device22 can find a previous host log file or a previous log file to determine which files are new to backup. That also can be applied to the restore mechanism.
The host log file also contains a timestamp, and when thefirst application program13 creates the log file, thefirst application program23 will check a previous host log file to see whether the current selected files have been stored in thebackup device22. If yes, the current log file will exclude those stored files from the current log file. It is noted that, if the destination folder of destination path of those previously stored files is different from the current destination folder of destination path, those stored files still be stored in the current destination folder of destination path.
The described paragraphs are focused on the backup mechanism for theportable device21. Another restored mechanism for theportable device21 is discussed in the following. When user wants to restore some files from thebackup device22 to theportable device21, thefirst application program23 creates a first log file indicating which files have to be restored to theportable device21. When thebackup device22 is connected to theportable device21, thecontroller26 reads the first log file and restores the requested files to theportable device21. After restoring, thebackup device22 also creates and stores a first host log file to theportable device21.
Via thefirst application program23, user can appoint data between two dates to be restored from thebackup device22 to theportable device21. For example, if user wants to restore the pictures taken from Jan. 1, 2011 to Jan. 10, 2011, user can inputs some parameters, such as the date and the type information, via thefirst application program23 and then the first application program creates the log file according to the user's inputs. Furthermore, user can appoint which type of files to be backed up via the first application program. Similarly, this can also be applied to the restore mechanism.
In the present innovation, thebackup device22 may also comprises a second application program for backing up the data of theportable device11 or restoring the data from thebackup device22 to the portable device. Wireless connection mechanism, security mechanism or synchronization mechanism may also be applied to theportable device21 andbackup device22.
Thebackup device22 may communicate with theportable device21 via wireless interface, such as Wifi, WiMax, Bluetooth, IrDa or other wireless interface. When a distance between theportable device21 and thebackup device22 is shorter than a predetermined distance, thebackup device22 automatically mounts theportable device22 and backups the files in theportable device21. Furthermore, thebackup device22 can synchronize more than one portable device or other computing device and backup the data therein within a predetermined range.
FIG. 3 is a schematic diagram of an embodiment of a dock according to the invention. Thedock31 comprises aconnection port32, a controller, a chargingmodule34, aprogram35, anetwork module36, an I/O port37. Theconnection port32 connects to a portable device. Thecontroller33 executesprogram35 to establish three data transmission paths to a backup server via thenetwork module36 when thedock31 is turned on. Thecontroller33 establishes a first data transmission path between thedock31 and the backup server that data is transmitted to the backup server via a third party. Thecontroller33 establishes a second data transmission path between thedock31 and the backup server that data is transmitted to the backup server via a router. Thecontroller33 establishes a third data transmission path that data is directly transmitted to the backup server.
Thecontroller33 monitors the network quality of the three data transmission paths and determines priority of each data transmission path according to one network parameter, such as download speed or upload speed. In other embodiment, if the router and the backup server are in the same local area network, thecontroller33 may select the second data transmission path first. In other embodiment, if the third party and the backup server are in the same local area network, thecontroller33 may select the first data transmission path first. In other embodiment, if thedock31 and the backup server are in the same local area network, thecontroller33 may select the third data transmission path first.
Thedock31 is operated at two modes. In a first mode, thedock31 plays a role that backs up data from the portable device to the backup server only. In a second mode, thedock31 backs up data of the portable device and charges the portable device simultaneously. When the portable device connects to thedock31, thecontroller33 first determines which mode to be operated according to information or parameters of a log file. In other embodiment, thedock31 can charge the portable device only and the control dock would be transferred to the portable device. It means that the portable device can directly access a peripheral device that is connected to the I/O port37.
FIG. 4 is flowchart of an operation method of a dock according to an embodiment of the invention. In step S41, the dock establishes three data transmission paths to a backup device. In the step S42, a controller of the dock determines priority of each data transmission path according to a network parameter, such as downloading speed or uploading speed. In the step S43, the controller of the dock detects whether a portable device is connected to the dock. If no, the step S42 is executed and the controller of the dock dynamic adjusts the priority of each data transmission path. If yes, the step S44 is executed. The controller of the dock determines whether the portable device has data to be backed up. If no, the step S46 is executed. The control of the dock is transferred to the portable device and dock starts charging the portable device. If the portable device has data to be backed up, the step S45 is executed. The controller selects one data transmission path to back up the data of the portable according to the priority of each data transmission path.
FIG. 5 is a flowchart of an operation method of a dock according to another embodiment of the present invention. In step S51, a processor of a dock first determines whether a backup server can be accessed? If yes, the processor then executes step S56. If no, the processor then executes step S52. In step S52, the portable device transmits and stores the first data to a third party. After step S52, the third party then checks whether the backup server is available? If the backup server is still not available, the third party then waits for a predetermined time period (step S54), and then the third party executes the step S53 to check whether the backup server is available again? In other words, after the first data is stored in the third party, the third party continuously polls the backup server for a predetermined rate. If the third party finds that the backup server is available, the third party then transmits and stores the first data to the backup server in step S55.
In step S56, the processor of the dock establishes three transmission paths for backing up the data of the portable device. The portable device establishes a first data transmission path for backing up the first data to the backup server via a third party. The processor establishes a first data transmission path between the dock and the backup server that data is transmitted to the backup server via a third party. The processor establishes a second data transmission path between the dock and the backup server that data is transmitted to the backup server via a router. The processor establishes a third data transmission path that data is directly transmitted to the backup server.
After the three transmission paths are established, the processor selects one transmission path for backing up the data of the portable device according to a network parameter or an identification data of the portable device in step S57. The network parameter may be the network link quality, the transmission speed or a user's preference. In step S58, the portable device transmits and stores the data via the selected transmission determined in step S57.
FIG. 6 is a flowchart of an operation method of a dock according to another embodiment of the present invention. In step S61, the portable device receives inputs to select and mark the files to be backed up. A user can input parameters via a touch panel or keypad of the portable device. Furthermore, voice control may also be applied. In step S62, a first application program of the portable device creates a log file according to user's inputs. In step S63, the log file is transmitted to the dock via a NFC communication protocol. In step S64, a controller of the dock reads the log file and selects one data transmission path according to the log file. Before the portable device connects to or approaches to the dock, the dock had established three data transmission paths, such as described in previous paragraphs. In the step S65, the controller of the dock backs up data of the portable device to a backup server. When the controller finishes backing up data, the controller creates a host log file and stores the host log file in the portable device in the step S66, wherein the host log file contains information that which data transmission path is selected and the backup result.
While the invention has been described by way of example and in terms of the preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. To the contrary, it is intended to cover various modifications and similar arrangements (as would be apparent to those skilled in the art). Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.