Patent Publication Number: US-7596592-B2

Title: Method and a system of remotely controlling data transfer via a data transfer network

Description:
This application is the US national phase of international application PCT/GB02/101177 filed 14 Mar. 2002 which designated the U.S. 
   BACKGROUND 
   1. Technical Field 
   This invention relates to remotely controlling data transfer via a data transfer network, in particular a cellular network or cellular mobile communications system. 
   2. Related Art 
   With the development of present mobile networks and the introduction of new mobile networks, it is possible to access data, for example, from the internet from mobile handsets, eg. using wireless application protocol (WAP) phones. However, the varying distance between a handset and one or more antennas is such that the bandwidth available to users via their handsets cannot be guaranteed to consistently support high bandwidth downloads of data. This can result in the failure of a download, data may be lost, or the download may be interrupted. This situation could have a negative impact on the user perception of the network quality. 
   BRIEF SUMMARY 
   The present invention provides a solution to this problem. The inventors of the present invention have devised a system which allows a mobile handset user to transfer data he wishes to download to a remote location, i.e. a location other than that at which user and handset are located, where the consistency of bandwidth availability is not an issue. For example, the present invention allows a handset user to transfer data using his mobile handset to a personal computer to which he has access and which is connected to the internet. Once downloaded to the remote location, the user may then access the data as and when required. 
   According to a first aspect of the invention, there is provided a method of remote data transfer via a data transfer network comprising the steps of:
         storing at a first data processing facility routing data associated with a first terminal for data transfer to a second remote terminal,   from said first terminal communicating via said first data processing facility data with said network,   via said network identifying at said second data processing facility data to be transferred to said second remote terminal,   instructing said second data processing facility via said first data processing facility to transfer said data, said first data processing facility accessing said stored routing data associated with said first terminal and instructing said second data processing facility to transfer said data to be transferred to said second remote terminal using said routing data.       

   According to a second aspect of the invention, there is provided a system for enabling remote data transfer via a data transfer network, said system comprising: a data transfer network including a first data processing facility and a second data processing facility for storing data to be transferred, 
   a first terminal connected to said first data processing facility and to said second data processing facility via said network, 
   a second remote terminal connected to said network, 
   said first data processing facility including means for storing routing data associated with said first terminal for data transfer to said second remote terminal, said first data processing facility being adapted to use said routing data when instructed by said first terminal to transfer data from said second data processing facility to said remote terminal. 
   The invention enables a network operator to better manage customers expectations of bandwidth availability and perception of quality of service. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     An embodiment of the invention will now be described with reference to the drawings, in which 
       FIG. 1  illustrates the general arrangement of the units participating in the service, 
       FIG. 2  is a flow diagram illustrating the steps carried out by the units participating in the service. 
   

   BRIEF DESCRIPTION OF EXEMPLARY EMBODIMENTS 
   The embodiment to be described in detail is a service which allows a user to identify data on a mobile handset which he wishes to download and then download that data at a second terminal, for example at the user&#39;s home terminal. 
   The embodiment illustrated in  FIG. 1  allows a user who is registered with the service with a standard mobile terminal  2 , for example a mobile phone, a personal digital assistant (PDA), a laptop computer, or any communications apparatus with access to a cellular communications network  4 , to identify a data file  7 , for example an image or sound file (such as standard format files currently known as Joint Photographic Experts Group (JPEG), Motion Picture Experts Group (MPEG), MP3 etc.) located at a uniform resource locator (URL) address, using the mobile terminal and downloading that data to a second terminal, for example using file transfer protocol (FTP). 
   The user&#39;s mobile terminal  2  is in communication with a cellular server  6  via a cellular communications network  4  through which it may access a network of computers  10 , typically various local area networks (LANs) connected to an information exchange network such as the internet  10  or a local exchange network such as an intranet. Communications and data exchange is managed by cellular server  4  using a database  8  which stores user service registration data. A user will normally have registered as a user of this data transfer service by indicating the particular remote terminal  14  linked to the internet  10  and to which data is to be transferred. The database then stores data identifying the user, the user&#39;s cellular handset  2  and associated therewith routing data or address data which identifies the second terminal  14 . This database is preferably a lightweight directory access protocol (LDAP) database, which is structured specifically to facilitate looking up addresses. Such routing data or address data in particular data identifies a home server  12  via which the second terminal  14  is in communication with the internet. Such an address may be dynamically allocated by the home server when the user logs on via a home computer (as second remote terminal), as is the case for private users. Alternatively, it may be a dedicated URL address. 
   To enable remote data transfer a user must first have subscribed to the present service with the provider, e.g. the cellular network provider. The provider will secure managed access to the user&#39;s home PC using software which is either downloaded to the user&#39;s home server from a download facility, or may be accessed via a generic lookup server. The provider also enters the routing data into the LDAP database. When subscribing, the user may customize his settings, by specifying the extension mappings for different types of file downloads. Thus a movie or video file download and audio file downloads will require different MIME type extensions (.avi or .mov and .mp3 respectively). 
   An example of a download facility or generic lookup service is provided by JINI™ Java based network technology developed by Sun Microsystems, in which different devices (servers) offering different services connect together to form a community network on which all these services are freely available to outside users. This technology uses a lookup service with which devices and services register. An outside user uses the lookup service to locate services and download the relevant software. 
   A mobile user data transfer session is now detailed 
   Via the user&#39;s mobile handset, which may be a third generation (UMTS) or a WAP enabled handset, a user logs on to the remote data transfer service by submitting user specific data, such as username and password, to the cellular server, which may be a WAP proxy server. The cellular server then authenticates the user specific data against data stored in the LDAP database to ensure that the user subscribes to the present service, and accesses the remote terminal routing data associated with the submitted user specific data. 
   At this stage the user may also submit extensions for a desired session transfer format. For example, video and audio files may be found in a variety of formats depending on how the data has been digitised. Each format has a different “extension” associated with it, such as MP3, WAV or AU for audio files or “avi” or “.mov” for video files. In order for each of these files to be played at the remote location, the terminal at the remote location must be configured to process each format. The user has the option at this stage to submit the extensions, i.e. the format, in which he wishes data to be downloaded. 
   Once connected to the service the user then engages in a normal (WAP or UMTS) session, for example accessing various addresses on the internet. 
   Upon locating a desired file, for example a video file, the user selects the file on the cellular handset. This file will be associated with a URL address, to which the user is normally connected directly for data transfer (i.e. in non remote data transfer mode). The remote data transfer enabled cellular server translates the associated URL address to activate the relevant software at the home server. This is done, for example, by incorporating the associated URL as argument in a new URL address which points to download facility or lookup server selected at the home server. In this example, a video file with URL address
         “http://www.vid.com/movie.avi”
 
becomes
       

   “http://openworld.jini/proxy.java?url=http://www.vid.com/movie.avi&amp;linktext=v ideo” 
   which activates the home server to access the relevant software to download the file of the desired format to the desired address. The portion of the rewritten url which reads “http://www.vid.com/movie.avi&amp;linktext=video” is referred to as the arguments, and represents the data for download to the remote location. 
   The data exchange between the various units involved in the above embodiment may be realized as schematically shown in the flow diagram of  FIG. 2 . In step  20  the user via mobile handset  2  connects to the cellular server  6  to access a communications network such as the internet. At step  22  the cellular server  6  then queries the LDAP database  8  to look up the server  12  URL associated with a second terminal  14  to which the user has access. The server  12  may, for example, be the server associated with the user&#39;s home computer, i.e. the user&#39;s home server  12 . The second terminal  14  is preferably one having a high bandwidth access. However, it is not limited in this respect and may also be a second cellular handset. At step  24 , the LDAP database  8  returns the URL address associated with the second terminal  14  to the cellular server  6 . This URL address received by the cellular server  6  in step  26  then enables the cellular server  6  to connect to the designated home server  12  to request a “service stub”. A “service stub” is information indicating how communication is to be conducted with the server  12 . Devices in a network using Jini technology are linked together using Remote Method Invocation (RMI), which is a Java program. The RMI uses a “service stub” and “skeleton”. Both of these are software programs. The “service stub” is a small piece of code which tells the cellular server how to communicate with the skeleton, which is situated at the second server. At step  28 , the “service stub” is returned from the home server  12  to the cellular server  6 . Once the “service stub” has been received at the cellular server  6 , it is able to communicate with the second server  14 . Receipt of the stub causes the cellular server  6  at step  30  to pass the arguments, i.e the data for download at the remote location, to the user&#39;s Jini service at the user&#39;s home server  12 . At step  32 , the user&#39;s Jini service at the home server  12  downloads the file, for example, the video file as local thread process on the user&#39;s home PC  14 , as shown in step  34 . Once the arguments have been forwarded to the user&#39;s home server  12 , the data for download may either be downloaded immediately to the user&#39;s PC  14 . Alternatively, the data may be downloaded later, when the user next logs on to his home PC  14 .