Adaptive synchronization of service data
Abstract
Service data synchronization method for a user (209) between synchronization data storage means (219) and a first service data storage device (215) associated with the user (209), storing each of the means (219) for storing synchronization data and the first device (215) for storing service data with the service data and synchronizing the service data at synchronization intervals, characterized in that: a change in the frequency of use of the service data is detected by an additional device (211, 205, 207) for storing the service data associated with the user, said use of the service data corresponding to the service data service stored on the synchronization data storage means (219); and when said change of the frequency of use of the service data by the additional device (211, 205, 207) of service data storage has been detected, a frequency of synchronization of the service data between the means is changed ( 219) synchronization data storage and the first service data storage device (215).

Term
Term ended
Projected expiry passed 30 April 2023, 3.4 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
21 claims: 4 independent, 17 dependent
- 1ES 2 335 487 T3 REIVINDICACIONES 1. Método de sincronización de datos de servicio para un usuario (209) entre unos medios (219) de almacenamiento de datos de sincronización y un primer dispositivo (215) de almacenamiento de datos de servicio asociado al usuario (209), almacenando cada uno de los medios (219) de almacenamiento de datos de sincronización y del primer dispositivo (215) de almacenamiento de datos de servicio los datos de servicio y efectuándose la sincronización de los datos de servicio a intervalos de sincronización, caracterizado porque:se detecta un cambio en la frecuencia de uso de los datos de servicio por un dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio asociado al usuario, correspondiéndose dicho uso de los datos de servicio con los datos de servicio almacenados en los medios (219) de almacenamiento de datos de sincronización;y cuando se ha detectado dicho cambio de la frecuencia de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, se cambia una frecuencia de sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 2Método de sincronización de datos de servicio según la reivindicación 1, que comprende:detectar una reducción de la frecuencia de dicho uso de los datos de servicio por el dispositivo adicional (211,205, 207) de almacenamiento de datos de servicio;y cuando se ha detectado dicha reducción de la frecuencia de uso de los datos de servicio por el dispositivo adicional (211,205,207) de almacenamiento de datos de servicio, reducir la frecuencia de sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 3Método de sincronización de datos de servicio según la reivindicación 2, en el que la frecuencia de sincronización de los datos de servicio se reduce en una magnitud creciente para cada reducción de frecuencia de uso de los datos de servicio por debajo de un valor umbral y se reduce en una magnitud decreciente para cada reducción de la frecuencia de uso de los datos de servicio por encima del valor umbral.
- 4Método de sincronización de datos de servicio según la reivindicación 1, que comprende:detectar un aumento de la frecuencia de dicho uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio;y cuando se ha detectado dicho aumento de la frecuencia de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, aumentar una frecuencia de sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 5Método de sincronización de datos de servicio según la reivindicación 4, en el que la frecuencia de sincronización de los datos de servicio se aumenta en una magnitud creciente para cada aumento de frecuencia de uso de datos de servicio por debajo de un valor umbral y se aumenta en una magnitud decreciente para cada aumento de frecuencia de uso de los datos de servicio por encima del valor umbral.
- 6Método de sincronización de datos de servicio según la reivindicación 4 ó 5, que comprende además:cuando se ha detectado dicho aumento de frecuencia de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, aumentar una cantidad de los datos de servicio sincronizados durante la sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos.
- 7Método de sincronización de datos de servicio según la reivindicación 6, en el que la cantidad de los datos de servicio sincronizados durante la sincronización de los datos de servicio se aumenta en una magnitud creciente para cada aumento de frecuencia de uso de los datos de servicio por debajo de un valor umbral y se aumenta en una magnitud decreciente para cada aumento de frecuencia de uso de los datos de servicio por encima del valor umbral.
- 8Método de sincronización de datos de servicio según la reivindicación 6, que comprende además:detectar una reducción de frecuencia de dicho uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio;y cuando se ha detectado dicha reducción de frecuencia de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, reducir una cantidad de los datos de servicio sincronizados durante la sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos. ES 2 335 487 T3
- 9Método de sincronización de datos de servicio según la reivindicación 8, en el que la cantidad de los datos de servicio sincronizados durante la sincronización de datos de servicio se reduce en una magnitud creciente para cada reducción de frecuencia de uso de los datos de servicio por debajo de un valor umbral y se reduce en una magnitud decreciente para cada reducción de frecuencia de uso de los datos de servicio por encima del valor umbral.
- 10Método de sincronización de datos de servicio según la reivindicación 1, que comprende además:detectar un aumento de una cantidad de dicho uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio;y cuando se ha detectado dicho aumento de una cantidad de dicho uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, aumentar una cantidad de los datos de servicio sincronizados durante la sincronización de datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 11Método de sincronización de datos de servicio según la reivindicación 10, que comprende además:detectar una reducción de una cantidad de dicho uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio;y cuando se ha detectado dicha reducción de una cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, reducir una cantidad de los datos de servicio sincronizados durante la sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 12Método de sincronización de datos de servicio según la reivindicación 11, en el que la cantidad de los datos de servicio sincronizados durante la sincronización de los datos de servicio se reduce en una magnitud creciente para cada reducción de la cantidad de uso de los datos de servicio por el dispositivo adicional (211,205,207) de almacenamiento de datos de servicio por debajo de un valor umbral y se reduce en una magnitud decreciente de cada reducción de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por encima del valor umbral.
- 13Método de sincronización de datos de servicio según la reivindicación 10, en el que la cantidad de los datos de servicio sincronizados durante la sincronización de datos de servicio se aumenta en una magnitud creciente para cada aumento de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por debajo de un valor umbral y se aumenta en una magnitud decreciente para cada aumento de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por encima del valor umbral.
- 14Método de sincronización de datos de servicio según la reivindicación 10, que comprende además:cuando se ha detectado dicho aumento de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, aumentar una frecuencia de sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 15Método de sincronización de datos de servicio según la reivindicación 14, en el que la frecuencia de sincronización de los datos de servicio se aumenta en una magnitud creciente para cada aumento de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por debajo de un valor umbral y se aumenta en una magnitud decreciente para cada aumento de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por encima del valor umbral.
- 16Método de sincronización de datos de servicio según la reivindicación 14, que comprende además:detectar una reducción de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio;y cuando se ha detectado dicha reducción de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio, reducir una frecuencia de sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
- 17Método de sincronización de datos de servicio según la reivindicación 16, en el que la frecuencia de sincronización de los datos de servicio se reduce en una magnitud creciente para cada reducción de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por debajo de un valor umbral y se reduce en una magnitud decreciente para cada reducción de la cantidad de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio por encima del valor umbral. ES 2 335 487 T3
- 18Método de sincronización de datos de servicio según cualquiera de las reivindicaciones anteriores, en el que el primer dispositivo (215) de almacenamiento de datos de servicio consiste en unos medios institucionales de almacenamiento de datos, mantenidos por una institución asociada al usuario.
- 19Método de sincronización de datos de servicio según la reivindicación 18, en el que los primeros medios (215) de almacenamiento de datos de servicio son unos medios de almacenamiento de datos Exchange ® de Microsoft, unos medios de almacenamiento de datos Outlook de Microsoft, unos medios de almacenamiento de datos Domino de Lotus o unos medios de almacenamiento de datos Notes ® de Lotus.
- 20Método de sincronización de datos de servicio según cualquiera de las reivindicaciones anteriores, en el que el dispositivo adicional de almacenamiento de datos de servicio comprende un dispositivo móvil de información personal.
- 21Sistema para sincronizar datos de servicio para un usuario (209) entre unos medios (219) de almacenamiento de datos de sincronización y un primer dispositivo (215) de almacenamiento de datos de servicio asociado al usuario (209), estando dispuestos los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio para almacenar los datos de servicio, y efectuándose la sincronización de los datos de servicio a intervalos de sincronización, caracterizado porque el sistema comprende:una unidad (309) de detección de datos de servicio del usuario dispuesta para detectar un cambio de frecuencia de uso de los datos de servicio por un dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio asociado al usuario, correspondiéndose dicho uso de los datos de servicio con los datos de servicio almacenados en los medios (219) de almacenamiento de datos de sincronización;y una unidad (311) de adaptación de sincronización, sensible a la detección de dicho cambio de frecuencia de uso de los datos de servicio por el dispositivo adicional (211, 205, 207) de almacenamiento de datos de servicio para cambiar una frecuencia de sincronización de los datos de servicio entre los medios (219) de almacenamiento de datos de sincronización y el primer dispositivo (215) de almacenamiento de datos de servicio.
Independent claims21
68 paragraphs in 3 sections, as filed
ES 2 335 487 T3
DESCRIPTION
Adaptive synchronization of service data.
The present application claims priority, according to article 35 USC §119 (e), with respect to the provisional US patent application No. 60 / 376,962 pending, filed on April 30, 2002, entitled "Adaptive Synchronization Of Service Data" .
Field of the invention
Various aspects of the present invention relate to a method and a device for adaptively changing the synchronization parameters to synchronize service data between institutional data storage means associated with a user and a service provider that provides telecommunications services for the user. Username.
Background of the invention
Many users of telecommunications services obtain their services for or through a company or other institution. In this way, a user can obtain a wireless telephone service, an e-mail service, a voice dialing service or the like for use as an employee of a company. With this provision, the institution, the user, or both may want the service provider to provide its services using specific data, hereinafter referred to as service data, comprising data stored in the database of the institution. For example, a user may subscribe to a voice activated dialing (VAD) service for work. In that case, the user or the user's employer might want the service provider to provide the service using service data that includes the contact information stored in the employer's business database.
However, service providers face “firewall opposition” when they attempt to provide services to end users based on institutional databases for private use. Specifically, service providers must deploy their services using an infrastructure hosted in their data centers and / or networks, even though these data centers and networks are located outside the security systems or "firewalls" that many institutions use to protect their data. networks and infrastructure for private use with respect to unauthorized access. Thus, using the example of a voice activated dialing (VAD) service noted above, the employer's contact information can be stored and maintained on a server such as a Microsoft Exchange® server or a Lotus Domino® server. located behind the employer's corporate firewall.
For the end user in this example, the simplest solution would be to have the service provider's VAD system access the Microsoft Exchange® or Lotus Domino® server directly and extract the user's contact information directly, without requiring the user was implicated (other than perhaps providing the user's username and password in order to give the provider initial access to the Exchange server<sup>®</sup> from Microsoft or Domino<sup>®</sup> of the employer's Lotus). However, this approach, while the simplest for the end user and desirable from the service provider's point of view, is not an approach that is typically endorsed by the institution. For one thing, the institution will not want its end users to store business credentials (used to access the institution's servers) on a system located outside of the institution's domain. On the other hand, if a single service provider system attempts to access data within an institution's server on behalf of multiple end users, the institution may find it difficult to differentiate this legitimate access from being attacked by a hacker, as that have similar characteristics.
A conventional solution to this "firewall opposition" is to deploy a Virtual Private Network (VPN) that securely bridges the service provider's network and infrastructure to the institution's network and infrastructure. However, Virtual Private Networks have a disadvantage in that they require the participation of the institution and the deployment and support of significant resources. This disadvantage can be especially cumbersome for larger companies or institutions where relationships with several different service providers and / or multiple networks are likely to be in place (e.g. for different geographic regions, business units, subsidiaries, etc.) .
Still another disadvantage associated with Virtual Private Networks is that they are based on the "tunneling" of a secure communications session within a non-secure communications session that is transported through the public Internet network. Although this technique avoids the costs associated with building large private networks, it can lead to performance problems, as the “tunneling” process induces additional latency over and above the latency already inherent in communication over the Internet. . In addition, as Virtual Private Networks are built on top of the Internet, over which neither the service provider nor the institution can have full control, the performance of Virtual Private Networks can vary significantly depending on the time of day, geography, and a host of other external factors.
Another conventional solution to "firewall opposition" makes use of synchronization technology. With this technique, the data normally stored and managed on the institution's platforms, such as
ES 2 335 487 T3 servers Microsoft's Exchange® and Lotus Domino® servers, located behind the institution's firewall, are mirrored on one or more platforms maintained by the service provider. More particularly, a device behind the institution's firewall connects periodically to the service provider's system to (1) communicate changes made to user data through normal user interaction with the institution's systems, (2) ) determine if changes have been made to the user's service data as a result of the end user's interaction with the service provider, and (3), as required, transfer data between the institution's system and the service provider's system and, if not, synchronize multiple instances of the user's service data. This approach overcomes “firewall opposition” as the synchronization process can be initiated by a system operating within the institution's domain using an approved data transfer protocol, such as HTTP, its encrypted variant, HTTPS. , or any other suitable data transfer protocol.
This approach is based on these periodic connections, or “polling, as the institution's firewall prevents the service provider's systems from sending“ change requests ”to the institution's systems exactly when such change events occur. In other words, as the service provider's systems cannot directly communicate changes to the service data when, and only when, such changes occur, alternatively, the institution's systems must periodically “query” the service provider's systems for information. determine if changes have occurred, even if none have occurred. Failing to run a regular query could leave important changes out of sync, leading to user confusion or an even worse situation. For example, a time-critical email message initiated through the service provider's systems may go undelivered to one or more recipients for an unacceptable period of time, or a meeting initiated through the service provider's systems. The service provider's systems may not be reflected in the institution's systems in a timely manner, leading to a “duplicate reservation” or other conflict in the user's agenda.
However, the conventional synchronization solution does suffer from some problems. As the synchronization process is initiated by a device or system operating behind the institution's firewall and in the institution's domain, it is necessary for such solutions to use a “polling” approach in which the institution's system periodically polls the service provider's system, as noted above. Selecting the polling interval or "sync interval" offers significant trade-offs. This is due to the fact that each simultaneous connection has both a fixed and recurring cost component, and the shorter the synchronization interval, the greater the number of peak simultaneous connections during a given period of time.
Selecting the amount and type of data to sync during each sync process also presents significant trade-offs. Like the synchronization operation, data storage also has fixed and recurring costs, therefore it is not desirable to store any more data than is necessary. Furthermore, the magnitude of the synchronized data is related to the synchronization interval since it takes a finite amount of time to synchronize one or more data sets. Thus, the larger the size of each set of synchronized data and / or the greater the number of such sets, the longer the required synchronization interval. If not, the number of simultaneous sync communication sessions required to serve each end user would approach the number of global end users, which would be economically prohibitive.
Still further, both the synchronization interval and the magnitude of the synchronized data have an impact on end-user satisfaction. The shorter the sync interval, the more closely the sync process will emulate the responsiveness of a direct access model in which the service provider can access real-time data directly from the institution's systems and applications. Similarly, the greater the amount of data synchronized by the synchronization process, the more closely the synchronization process will emulate the responsiveness of the service provider that accesses all available data by interfacing directly with applications and systems of the institution. .
The conventional solution to these timing tradeoffs is to take one of the following approaches: (1) fixed sync interval, fixed amount of sync data, (2) fixed sync interval, user-defined amount of sync data, (3) user-defined sync interval, fixed amount of sync data , or (4) user-defined sync interval, user-defined amount of sync data. However, each of these approaches suffers from drawbacks. For example, the fixed sync interval approach, fixed amount of sync data, offers predictable costs and is straightforward as no configuration or decision making is required by the end user, although this approach uses an arbitrary sync interval and an arbitrary amount of sync data that may not meet the needs of all end users.
With the provision of the fixed sync interval, user-defined amount of sync data, storage costs are not predictable, and the end user must be involved in making a decision and setting the amount of sync data. On the other hand, users will tend to "maximize" the amounts of synchronized data, thereby increasing storage costs. With the user-defined sync interval approach, fixed amount of sync data, connection costs are not predictable, and the end user must be involved in making a decision and setting the sync interval.
ES 2 335 487 T3
Furthermore, users will tend to "minimize" their sync intervals, thereby increasing the costs of simultaneous connections. Lastly, with the provision of user-defined sync interval, user-defined amount of sync data, both connection costs and storage costs are unpredictable and the end user must be involved in a significant level of take. decision making and configuration to determine both the sync interval and the amounts of sync data. On the other hand, users will tend to minimize the sync interval and maximize the amounts of data synced, increasing both connection costs and storage costs.
International patent application WO 02/21777 describes an architecture to enable remote control of devices that can be monitored and controlled through electronic signals. A server is regularly accessed to retrieve orders that will be used by a monitoring system to change the status of a device. One of the problems of the system described in WO 02/21777 is how to set the synchronization time between the monitoring system and the server.
Brief summary of the invention
There is a need for synchronization techniques that allow a service provider to obtain more efficient synchronization parameters for synchronizing its service data with service data stored on institutional data storage media associated with a user. Embodiments of the invention are set forth in the appended claims. Various examples of the present invention advantageously provide a synchronization method and device that adaptively adjusts synchronization parameters, such as the synchronization interval and the amount of synchronized service data, based on each end user, in response to actual behavior. of the end user regarding the service data. In particular, data intensive users of services are rewarded with improved sync parameters, such as a combination of shorter sync intervals and increased amounts of sync data, providing performance closer to "shortcut" . On the other hand, light duty users are assigned lower cost sync parameters, such as longer sync intervals and / or reduced amounts of sync data.
Thus, the various embodiments of the invention make it possible to conserve and allocate synchronization resources to intensive users that would otherwise be wasted on light users. According to the invention, the synchronization parameters change continuously as user behavior changes, such as when a light user begins to use the service more intensively, to constantly optimize the resources used by the service provider both individually as a whole.
Brief description of the drawings
Fig. 1 shows an example of a programmable computer that can be used to implement various embodiments of the invention.
Fig. 2 shows a network using a synchronization device according to an embodiment of the invention.
Fig. 3 illustrates a synchronization device according to an embodiment of the invention.
Fig. 4 illustrates an example of a bell-shaped curve according to which the amount of timing can be increased or decreased in response, respectively, to increased or decreased use of service data.
Detailed description of examples of the invention
As is well known in the art, telecommunications service data used to provide telecommunications services, such as wireless telephone service, electronic mail, voice mail, and the like, are conventionally stored and manipulated by programmable computers. This type of computer can be implemented by, for example, an email account server, a wireless application protocol (WAP) gateway device, or a voicemail service server. Furthermore, this type of computer can be used to implement an adaptive timing device according to various embodiments of the invention.
Fig. 1 shows an example of a programmable computer system 101 capable of synchronizing service data between a telecommunications service provider and data storage means associated with an end user of the service provider's telecommunications services. The computer system 101 includes a processing unit 103, a system memory 105, and a system bus 107 that couples various system components, including system memory 105, to the processing unit 103. The system memory 105 may comprise a read-only memory (ROM) 109 and a random access memory (RAM) 111.
A basic input / output system 113 (BIOS) can be stored in read-only memory (ROM) 109, containing routines that help transfer information between elements within the computer system 101, such as during boot. If the computer system 101 is implemented by a personal computer, the same
ES 2 335 487 T3 may further comprise a hard disk drive 115 for reading and writing to a hard disk (not shown), a magnetic disk drive 117 for reading or writing to a removable magnetic disk (not shown), or a 119 optical disc for reading or writing to a removable optical disc (not shown) such as a CD-ROM or other optical media.
Various program modules can be stored in ROM 109, hard disk drive 115, magnetic disk drive 117, and optical disk drive 119. A user can enter commands and information into the computer system 101 through an input device 123, such as a keyboard, pointing device, touch screen, microphone, joystick, or any other suitable interface device. Obviously, the computer system 101 can use a variety of different input devices 123, as is known in the art. An output device 125, such as a monitor or other type of display device, is also included to convey information from the computer system 101 to the user. As will be appreciated by those skilled in the art, a variety of output devices 125, such as speakers and printers, may alternatively or additionally be included in the computer system 101.
To access both the computer systems used by one or more service providers and one or more data storage means associated with an end user, the computer system 101 is preferably capable of operating in a network environment using logical connections. to one or more remote computers, such as remote computer 127. The computer system 101 may be connectable to the remote computer 127 through a local area network (LAN) 129 or a wide area network (WAN) 131, such as the Internet. When used in a network environment, the computer system 101 can be connected to the network through an interface 133, such as a wireless transceiver, a modem, an Ethernet connection, or any other such interface. Although interface 133 is illustrated as an internal interface in Fig. 1, it may alternatively be an external interface as is well known in the art. Of course, it will be appreciated that the network connections shown in this figure are illustrative, and other means of establishing a communication link with other computers can be used to access an email account.
Fig. 2 illustrates a network 201 of devices comprising an adaptive synchronization device 203. The network 201 further includes a variety of service provider (or service operator) infrastructure systems 205. As is known in the art, these service provider infrastructure systems 205 are used to provide telecommunications services to a variety of telecommunications devices 207 used by an end user 209. For example, the service provider infrastructure system 205A may be a wireless application protocol gateway that communicates with a wireless telecommunications device, such as a wireless phone or personal information manager, using wireless markup language ( WML), Handheld Device Markup Language (HDML), or other suitable communication language.
Similarly, the service provider infrastructure system 205B may be a packet data gateway for transmitting and receiving information to, for example, a mobile personal information manager such as a Palm or Pocket PC based computing device. The packet data gateway 205B may communicate with the mobile personal information management device 207B using any suitable communication method, such as a binary synchronization process or an extensible markup language (XML). Still further, as shown in Fig. 2, the service provider infrastructure system 205C may be a voice service platform for transmitting voice messages and receiving voice messages from a wireless telephone 207C. Additionally, the network 201 may comprise one or more service provider data storage means 211. As is known in the art, these service data storage means 211 (eg, Internet email servers) store service data used by service operators to provide telecommunications services, such as email services, to the end user 209.
Referring again to FIG. 2, the adaptive synchronization device 203 is included in a subnet 213 associated with the end user 209. For example, the subnet 213 may be a network maintained by the end user's employer or any other institution at which associated with the end user, such as a school, a research center, or the like. Subnet 213 includes data storage means 215 that stores data associated with end user 209. In this way, the data storage means 215 can store data used by an Exchange server.<sup>®</sup> from Microsoft or a Domino server<sup>®</sup> containing contact information associated with the end user 209. If the end user 209 is a sales representative for an employer that maintains a subnet 213, then the data storage means 215 may, for example, comprise the name, the telephone number, email address, and other address information pertaining to employer sales prospects. Subnet 213 may also comprise a firewall 217 to protect subnet 213 from unauthorized access. Such firewalls are well known in the art, and therefore will not be described in detail herein.
As will be explained in detail later, the adaptive synchronization device 203 synchronizes the end user service data stored in the data storage means 215 on one side of the firewall 217 with service data corresponding to the end user 209 stored in a synchronization service data storage means 219 maintained on an opposite side of firewall 217. As seen in Fig. 2, the synchronization service data storage means 219 provides data
ES 2 335 487 T3 serving the service provider infrastructure systems 205 and the service provider data storage means 211. Using this arrangement, service providers can use service data stored behind firewall 217 on data storage means 215 without actually having to traverse firewall 217. Instead, the service provider infrastructure systems 205 and the service provider data storage means 211 can directly access the service data from the synchronization service data storage means 219.
FIG. 3 illustrates the adaptive timing device 203 in more detail. As seen in this figure, the adaptive timing device 203 includes a control unit 301, an input unit 303, and an output unit 305. The adaptive synchronization device 203 also includes a synchronization processing unit 307, a user service data access detection unit 309, and a synchronization adaptation unit 311. The control unit 301 operates in a manner that controls the exchange of information between each of the other control units 303 to 311.
As will be appreciated by those skilled in the art, one or more components of the adaptive timing device 203 can be embodied using software implemented in a computer system, such as the computer system 101 described in connection with FIG. 1 above. For example, the input unit 303, the output unit 305, the synchronization processing unit 307, the user service data access detection unit 309, and the synchronization adaptation unit 311 can each be realized. of them through software subroutines. The control unit 301 may in this case be a control software routine that makes calls to the various software subroutines that materialize the different units 303 to 311. Obviously, those skilled in the art will appreciate that one or more of the units 301 to 311 can also be realized by electronic circuitry.
The input unit 303 receives information provided from the outside from the adaptive timing device 203. For example, the input unit 303 may receive messages from the synchronization service data storage means 219 or receive service data from the data storage means 315. Similarly, the output unit 305 transmits information to devices outside of the adaptive timing device 203. In this way, the output unit 203 can transmit control messages to the synchronization service data storage means 219, transmit request messages requesting information from the data storage means 315, and transmit service data received by the input unit 303 from the data storage means 315 to the synchronization service data storage means 219. The operation of the input unit 303 and the output unit 305 is known in the art, and therefore will not be described in detail herein.
The synchronization unit 307 controls the synchronization of data between the data storage means 215 and the synchronization service data storage means 219. That is, the synchronization unit 307 functions to ensure that a user's service data stored in the synchronization service data storage means 219 is synchronized with the user's service data stored in the data storage means 215. Thus, if the data storage means 215 contains new user service data (or a fresh deletion of the user service data) that is not stored in the synchronization service data storage means 219, then the synchronization unit 307 updates the synchronization service data storage means 219 to include the new data (or the new data deletion) during a synchronization process. Similarly, if the synchronization service data storage means 219 contains new user service data (or a new deletion of the user service data) added by the user's use of the user service data. telecommunications of the service provider, which are not stored in the data storage media 215, then the synchronization unit 307 updates the data storage means 215 to include the new data (or the new data deletion) during a synchronization process.
Accordingly, the synchronization unit 307 can instruct the output unit 305 to transmit a request for the service data to the data storage means 215, it can instruct the input unit 303 to receive the requested service data from the data storage means 215, and then instructing the output unit 305 to forward the received service data to the synchronization service data storage means 219. Alternatively, the synchronization unit 307 may control a synchronization process that operates outside of the adaptive synchronization device 203 (for example, a synchronization process that involves direct communication between the data storage means 215 and the data storage means 219). sync service data, or involving another intermediate device between the data storage means 215 and the synchronization service data storage means 219).
The user service data retrieval detection unit 309 detects the retrieval of service data for the end user 209 from the synchronization service data storage means 219. More particularly, the user service data retrieval detection unit 309 detects the retrieval of service data for a user by a service provider infrastructure system 205 or a provider service data storage means 211 of services. According to some embodiments of the invention, the user service data retrieval detection unit 309 detects and records the event of each service data retrieval associated with the end user 209 from the service data storage means 219 of synchronization. With alternative embodiments of the invention,
ES 2 335 487 T3 the user service data retrieval detection unit 309 detects and records the amount of service data retrieved each time service data associated with the end user 209 is retrieved from the user data storage means 219 sync service. According to still other embodiments of the invention, the user service data retrieval detection unit 309 detects and records both the event of each service data retrieval associated with the end user 209 and the amount of retrieved service data.
Next, the timing adaptation unit 311 uses the information obtained by the user service data retrieval detection unit 309 to determine the extent of the retrieval of user service data from the data storage means 219. synchronization service, and to determine whether the magnitude of the recovery has increased or decreased. It should be noted that the timing adaptation unit 311 can determine the magnitude of the recovery in various ways. For example, with some embodiments of the invention, the timing adaptation unit 311 determines the amount of recovery based on the frequency of retrieval of the user's service data in the synchronization service data storage means 219. .
Furthermore, if the timing adaptation unit 311 determines the magnitude of the recovery of the user service data based on the frequency at which the service data has been retrieved, the frequency value can also be determined in various ways. For example, the synchronization adaptation unit 311 may determine the service data retrieval frequency based merely on the two most recent retrievals of the user's service data from the synchronization service data storage means 219. Thus, if the service provider infrastructure system 205A makes a first service data request for the user at 1:00 am, the service provider infrastructure system 205B makes a second service data request for the user. the user at 1:30 am and the service provider infrastructure system 205C would make a third service data request for the user at 1:45 am, then the timing adaptation unit 311 would determine that the user service data access frequency is once every 15 minutes.
Alternatively, the synchronization adaptation unit 311 could determine the recovery frequency by averaging the intervals out of a predetermined number of recoveries requested from the synchronization service data storage means 219 together. Thus, if the sync adaptation unit 311 determines the recovery frequency by averaging the intervals between the three most recent retrieval requests of service data for a user, then the synchronization adaptation unit 311 would determine a frequency of 22.5 minute recovery averaging the interval between the first request and the second request (i.e. 30 minutes) with the interval between the second request and the third request (that is, 15 minutes). Still further, the timing adaptation unit 311 could determine the retrieval frequency based on the number of requests for service data for a user received during a predetermined period of time, eg, every hour. With this embodiment, for the example above, the timing adaptation unit 311 would determine that the retrieval frequency is every twenty minutes (ie, the average of three retrieval requests in 60 minutes).
In alternative embodiments of the invention, the timing adaptation unit 311 may determine the extent of the recovery of user service data based on the amount of service data retrieved from the service data storage means 219 of the user. synchronization. As before, the amount of service data retrieved can be measured in a number of ways. Thus, the quantity value can be defined using record fields, individually retrieved, from the service data, based on a specified window of time during which the retrieved service data was accumulated, or by using the number of records retrieved from the synchronization service data storage means 219.
For example, if the retrieved service data for the user is email messages, the value of the amount of retrieved service data could be determined based on the number of retrieved email file folders. With alternative embodiments of the invention, the value of the amount of retrieved service data could be determined based on the specific period of time (eg, five days) during which the retrieved messages were received. For still other embodiments of the invention, the value of the amount of retrieved service data could be determined simply on the basis of the number of retrieved messages (eg, 50 email messages). As will be appreciated by those skilled in the art, the particular method for determining the amount of service data retrieved for a user can be determined according to any technique suitable for the desired application of the invention.
In still other embodiments of the invention, the timing adaptation unit 311 may determine the magnitude of the recovery based on user-initiated selection events. For example, if a user unsuccessfully tries to select data, such as an email message or appointment that falls outside the currently synchronized magnitude (for example, where that magnitude is initially determined, for example, by an interval of dates with respect to the date of that moment), then the timing adaptation unit 311 can immediately adjust the applicable data magnitude for the user in order to ensure that a subsequent request for the data is successful. When this is done, the timing adaptation unit 311 can also inform the user that the adjustment has been made and, based on the current interval at that time, when the user should retry the request. Other various embodiments
ES 2 335 487 T3 of the invention can even adjust the data magnitude predictively before an unsuccessful request for data actually occurs. For example, if the user has made multiple requests for data in a short period of time in which the data is near the current "cutoff" at that time for that particular data type, then the timing adaptation unit 311 you can proactively adjust the limit by assuming that a peak in activity near a "limit" is an indicator of a higher probability of a request for data beyond the "limit". The timing adaptation unit 311 can then readjust the data size if this activity pattern subsides.
According to still other embodiments of the invention, the timing adaptation unit 311 may determine the magnitude of retrieved service data for the user based on both the frequency of retrieval requests and the amount of data retrieved during each retrieval. . Thus, the timing adaptation unit 311 can determine both a retrieval frequency value and a retrieved service data quantity value. Alternatively, the timing adaptation unit 311 may determine a single recovery magnitude value using both a certain recovery frequency and a certain amount of recovered service data. For example, the timing adaptation unit 311 can multiply a determined recovery frequency by a first constant, multiply a determined recovery amount by a second constant, and then add the two resulting values to obtain a single recovery magnitude value. service data. Again, as will be appreciated by those skilled in the art, the particular method for determining a magnitude of retrieval of retrieved service data for a user can be determined using any suitable technique that is appropriate for the desired application of the invention.
As noted above, the timing adaptation unit 311 also determines whether the magnitude of the determined retrieval of retrieved service data for a user is an increase or decrease relative to the magnitude of the previously determined retrieval of service data. retrieved service for the user. Thus, if the timing adaptation unit 311 determines that the recovery magnitude is the recovery frequency based on the interval between the two most recent recovery requests, then for the above example (using the first, second and third requests), the synchronization adaptation unit 311 will determine a first recovery frequency of one every thirty minutes, and a second recovery frequency of one every fifteen minutes. With this example, the timing adaptation unit 311 would then determine that the second recovery frequency, and therefore the magnitude of the recovery, has increased relative to the first recovery frequency.
In addition to determining the amount of recovery of retrieved service data for a user and determining whether this amount of recovery is an increase or decrease from the amount of recovery previously determined, the synchronization adaptation unit 311 also determines the amount of synchronization to synchronize service data between the data storage means 215 and the synchronization service data storage means 219. More particularly, the timing adaptation unit 311 determines the amount of timing based on whether the determined recovery amount has increased or decreased relative to previously determined recovery amounts.
As used herein, the term "timing magnitude" includes any timing parameter that, when increased, improves the performance of the timing process (eg, the amount of data locked during a timing process). The term "timing magnitude" includes the inverse of any timing parameter that, when reduced, improves the performance of the timing process (eg, the inverse of the interval between timing processes, or the timing frequency).
In this way, the timing adaptation unit 311 can determine the amount of timing according to a variety of techniques. For some embodiments of the invention, the timing adaptation unit 311 determines that the amount of timing is the frequency with which the user service data stored in the data storage means 215 is synchronized with the user data. user service stored in the synchronization service data storage means 219. According to still other embodiments of the invention, the amount of synchronization is the amount of synchronized service data between the data storage means 215 and the synchronization service data storage means 219 during a synchronization process. With still other embodiments of the invention, the amount of timing includes both the amount of service data synchronized between the data storage means 215 and the synchronization service data storage means 219 and the frequency of synchronization. Of course, the magnitude of the timing may also be or comprise other timing parameters (or their inverses) as desirable for the particular application of the invention.
It should be noted that the timing adaptation unit 311 may determine the amount of timing based on an increase or decrease of any given type of recovery amount. Thus, the timing adaptation unit 311 may use an increase or decrease of a recovery magnitude comprising both the recovery frequency and the amount of retrieved service data to determine a timing magnitude comprising both the frequency Synchronization as the amount of synchronized service data. With this example, the timing adaptation unit 311 can increase
ES 2 335 487 T3 the synchronization frequency when the recovery frequency increases, and reduce the synchronization frequency when the recovery frequency is reduced. Similarly, the synchronization adaptation unit 311 can increase the amount of synchronized service data when the amount of retrieved service data increases, and reduce the amount of synchronized service data when the amount of retrieved service data is reduced.
With still other embodiments of the invention, the timing adaptation unit 311 may use an increase or decrease in a recovery quantity comprising both the recovery frequency and the amount of service data recovered to determine a synchronization quantity. comprising only the synchronization frequency, or only the amount of synchronized service data. In alternative embodiments of the invention, the timing adaptation unit 311 may use an increase or decrease of a recovery quantity comprising only the recovery frequency or only the amount of recovered service data to determine a quantity of the synchronization. comprising both the frequency of synchronization and the amount of data of synchronized services. As will be appreciated by those skilled in the art, upon review of the present application, an increase or decrease in any combination of types of recovery magnitude values can be used to determine an increase or decrease in any combination of types of quantity values. timing, as appropriate for the desired application of the invention.
It should also be noted that the timing adaptation unit 311 can determine the specific increase or decrease in the amount of timing according to a variety of techniques. According to some embodiments of the invention, for example, the timing adaptation unit 311 increases the amount of timing based on an increase in the amount of recovery along the lower half of a bell-shaped curve, such as the mean bell-shaped curve shown in Fig. 4.
As seen in this figure, the degree to which the magnitude of the synchronization increases significantly increases as the value of the magnitude of recovery from zero to a threshold value X increases. Then, as the value of the recovery magnitude continues to increase from the threshold value X to a maximum, the degree to which the magnitude of the timing increases decreases to zero. For example, a "light" end user whose use of telecommunications requires their service provider to have a relatively low amount of service data retrieval for user service data may have an initial sync interval of 45 minutes. When the magnitude of the user's service data recovery increases, the timing adaptation unit 311 could then cut the timing by one third to 15 minutes, and then with another increase in the recovery magnitude, again by one third, up to a sync interval of five minutes.
Advantageously, this arrangement takes into account sudden changes in user behavior. One of these particularly dangerous behavior changes is the “trade show effect”, or light users who occasionally quickly become heavy users for short periods of time (the danger is that they go through a poor user experience because the sync parameters have been set to be very high). For example, an end user who is a product manager for his employer may generally be a light user (that is, requiring his service provider to retrieve his service data very infrequently from the data storage media 291). sync service), although it relies quite heavily on the telecom services of the service provider when it is away for trade shows. While at trade shows, the user will experience obvious service data synchronization deficiencies only initially, since, according to the invention, the magnitude of service data synchronization increases the more telecommunication services are used.
According to some embodiments of the invention, the timing adaptation unit 311 will also reduce the amount of timing according to a coefficient corresponding to the middle of a bell-shaped curve. In this way, even if the operator decides to drastically cut the magnitude of the synchronization (for example, the synchronization interval) after an end user's first use of the service data (thus quickly improving the user experience), your costs will not increase significantly as the magnitude of the sync will be readjusted to become smaller as the user stops using the device. Only that short time interval will have incurred high costs for the provider, and the total cost over time is much lower than if, for example, the synchronization frequency were constant. It should be noted that the bell-shaped curve may be the same as the bell-shaped curve that governs the coefficient of increase. Alternatively, the timing matching unit 311 may provide a hysteresis effect by using a bell-shaped curve different from the coefficient of increasing the timing magnitude, or by reducing the timing magnitude according to a different pattern of coefficients as a whole.
The present invention has been described above by means of specific illustrative embodiments, and the features and advantages of the present invention will become apparent from the above description. Thus, the appended claims are intended to encompass all of these features and advantages of the invention. Furthermore, as numerous modifications and changes will be apparent to those skilled in the art, the specification is not intended to limit the invention to the exact construction and operation as illustrated and described. For example, the invention may comprise any one or more elements of the apparatus and methods described herein in any combination or sub-combination. Therefore, there is a
ES 2 335 487 T3 undetermined number of alternative combinations to define the invention, incorporating one or more elements of the specification (including drawings, claims, and summary of the invention) and any combinations or sub-combinations. Thus, all suitable modifications and equivalents can be considered to be within the scope of the appended claims.
Contents3
4 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4
36 members in 11 offices
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 37696202 | United States of America | P | |
| 37696202 | United States of America | P | |
| 03726541376962P | – | – | – |
| US20020376962P | – | – | – |
Members36
| Document | Office | Kind | |
|---|---|---|---|
| CA2449753A1 | Canada | A1 | |
| WO02099651A1 | World Intellectual Property Organization (WIPO) | A1 | |
| US2002199061A1 | United States of America | A1 | |
| WO02099651A9 | World Intellectual Property Organization (WIPO) | A9 | |
| CA2483887A1 | Canada | A1 | |
| WO03094029A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2003228771A1 | Australia | A1 | |
| US2004024910A1 | United States of America | A1 | |
| EP1393185A1 | European Patent Office (EPO) | A1 | |
| JP2004535632A | Japan | A | |
| NO20045179L | Norway | L | |
| EP1502199A1 | European Patent Office (EPO) | A1 | |
| JP2005524173A | Japan | A | |
| IL164938A0 | Israel | A0 | |
| EP1502199A4 | European Patent Office (EPO) | A4 | |
| US7228383B2 | United States of America | B2 | |
| EP1393185A4 | European Patent Office (EPO) | A4 | |
| US2008037593A1 | United States of America | A1 | |
| JP2009059376A | Japan | A | |
| EP1502199B1 | European Patent Office (EPO) | B1 | |
| AT448629T | Austria | T | |
| ATE448629T1 | Austria | T1 | |
| DE60329998D1 | Germany | D1 | |
| ES2335487T3This record | Spain | T3 | |
| EP2207328A1 | European Patent Office (EPO) | A1 | |
| JP4588443B2 | Japan | B2 | |
| EP1393185B1 | European Patent Office (EPO) | B1 | |
| AT503228T | Austria | T | |
| ATE503228T1 | Austria | T1 | |
| DE60239530D1 | Germany | D1 | |
| ES2362503T3 | Spain | T3 | |
| US2011246587A1 | United States of America | A1 | |
| EP2207328B1 | European Patent Office (EPO) | B1 | |
| US8412805B2 | United States of America | B2 | |
| ES2415740T3 | Spain | T3 | |
| US9407695B2 | United States of America | B2 |
Numbers
- Publication, DOCDB
- 2335487
- Publication, EPODOC
- ES2335487T
- Application
- 3726541
- Application, DOCDB
- 03726541
- Application, EPODOC
- ES20030726541T
Titles2
- Spanish
- SINCRONIZACION ADAPTATIVA DE DATOS DE SERVICIO.
- English
- ADAPTIVE SYNCHRONIZATION OF SERVICE DATA.
Classification
- CPC, 4
- H04L67/1095
- H04L51/224
- H04L67/535
- H04L67/62
- IPC, 4
- G06F12 00
- H04L29 08
- G06F15 00
- H04L12 58