(19)
(11)EP 3 552 351 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
29.07.2020 Bulletin 2020/31

(21)Application number: 16816759.1

(22)Date of filing:  07.12.2016
(51)International Patent Classification (IPC): 
H04L 12/24(2006.01)
(86)International application number:
PCT/SE2016/051226
(87)International publication number:
WO 2018/106162 (14.06.2018 Gazette  2018/24)

(54)

METHOD AND MIGRATION MANAGING MODULE FOR MANAGING A MIGRATION OF A SERVICE

VERFAHREN UND MIGRATIONSVERWALTUNGSMODUL ZUR VERWALTUNG DER MIGRATION EINES DIENSTES

PROCÉDÉ ET MODULE DE GESTION DE MIGRATION POUR GÉRER UNE MIGRATION D'UN SERVICE


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(43)Date of publication of application:
16.10.2019 Bulletin 2019/42

(73)Proprietor: Telefonaktiebolaget LM Ericsson (PUBL)
164 83 Stockholm (SE)

(72)Inventors:
  • FU, Jing
    SE-171 70 Solna (SE)
  • LAN, Xiaoyu
    SE-183 63 Täby (SE)
  • MENG, Liyi
    SE-183 63 Täby (SE)

(74)Representative: Ericsson 
Patent Development Torshamnsgatan 21-23
164 80 Stockholm
164 80 Stockholm (SE)


(56)References cited: : 
WO-A1-2015/084230
US-A1- 2016 080 172
WO-A1-2016/126178
US-B1- 9 288 148
  
  • TALEB TARIK ET AL: "An analytical model for Follow Me Cloud", 2013 IEEE GLOBAL COMMUNICATIONS CONFERENCE (GLOBECOM), IEEE, 9 December 2013 (2013-12-09), pages 1291-1296, XP032605105, DOI: 10.1109/GLOCOM.2013.6831252 [retrieved on 2014-06-11]
  • GOMES ANDRE S ET AL: "Edge caching with mobility prediction in virtualized LTE mobile networks", FUTURE GENERATIONS COMPUTER SYSTEMS, ELSEVIER SCIENCE PUBLISHERS. AMSTERDAM, NL, vol. 70, 28 June 2016 (2016-06-28), pages 148-162, XP029902719, ISSN: 0167-739X, DOI: 10.1016/J.FUTURE.2016.06.022
  • SATRIA TRIADIMAS ARIEF ET AL: "Performance evaluation of ICN/CCN based service migration approach in virtualized LTE systems", 2014 IEEE 3RD INTERNATIONAL CONFERENCE ON CLOUD NETWORKING (CLOUDNET), IEEE, 8 October 2014 (2014-10-08), pages 461-467, XP032692347, DOI: 10.1109/CLOUDNET.2014.6969038 [retrieved on 2014-11-26]
  
Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


Description

TECHNICAL FIELD



[0001] Embodiments herein relate to wireless communication systems, such as telecommunication networks. In particular, a method and a migration managing module for managing a migration of a service being used by a mobile device over a radio access network are disclosed. A computer program and a computer program carrier, corresponding thereto, are also disclosed.

BACKGROUND



[0002] A telecommunication network is often used to access a service, such as a service for streaming of video and/or audio, a service performing language translation or the like. Generally, the service, which is operated by a so called content provider, may execute a certain function and/or may provide content to a user equipment, such as a cellular phone or the like. The services are often located in a so called cloud, such as a data and/or computer center. However, due to changing demands on the services, there has emerged technologies for placing services and/or content closer to the user equipment, e.g. in a base station of the telecommunication network. One such technology is referred to as Mobile-Edge Computing (MEC). MEC offers the content provider cloud-computing capabilities at an edge of the telecommunication network, i.e. in the base station(s) of the telecommunication network. MEC is characterized by low latency and high bandwidth as well as real-time access to radio network information that can be leveraged by services.

[0003] A known telecommunication system, such as a Long Term Evolution (LTE) system or the like, comprises a core network, an Internet and Multimedia Subsystem (IMS), a radio access network, including one or more base stations. In this context, a cloud system may utilize resources, at least in part, in any part of the telecommunication system, such as the radio access network, the core network and/or the IMS. This means for example that a base station of the telecommunication system serves as a computing resource within the cloud system. Other resources are storage, network capability and the like. A server of the cloud system, typically providing a service, renders content for the user equipment, and/or pre-fetch video, webpages, mails or the like. The cloud system can place the server in the base station, while the base station is a computing resource of the cloud system, in order to put data close to the user equipment and in order to make interaction with the service from the user equipment better, i.e. shorter latency, higher bitrate or the like. In this manner, performance in terms of user experience may be improved.

[0004] In order to maintain performance, the server and/or the service need(s) to move as the user equipment moves, or is handed-over, between base stations within the telecommunication network.

[0005] However, in existing cloud systems it is often desired to avoid that the server, or cloud server, moved, mainly because of large volume of data to transfer. Here, data may refer to code for performing a function, user content, audio-/video-files or the like. An act of moving the server from a first set of resources, such as a first base station, to a second set of resources, such as a second base station, is commonly referred to as migration of the service and/or the service. A problem of avoiding migration of the server/service between base stations is that performance, e.g. in terms of latency, may degrade. Degraded performance is severe for application with strict real-time requirements, such as augmented reality, online gaming, base station assisted video streaming, etc.

[0006] Nevertheless, some known technologies have been developed to enable the cloud system to adapt e.g. networked storage to conditions related to the server and/or service. For example, a service may use networked storage, as part of the cloud system mentioned above. The networked storage may be organized in a hierarchical manner that allows data to be stored locally, e.g. close to or at the base station, when deemed beneficial, and that allows data to be stored centrally, when deemed beneficial.

[0007] It shall be acknowledged that for telecommunication networks a Context Transfer Protocol (CXTP) has been specified in Request For Comments (RFC) 4067 provided by Internet Engineering Task Force (IETF). The CXTP allows for transferring a state of the user equipment from one base station to another base station in connection with a handover.

[0008] As mentioned above, a server and/or a service may be migrated from one base station to another. A volume of data that needs to be transferred in order to perform the migration may be very large, e.g. from KBs up to GBs. Therefore, it may not be straightforward to apply CXTP also for servers and/services since the migration of the server and/or the service requires a lot of more resources and a lot more time comparing to a transfer of a state of the user equipment in connection with a radio handover. Service migration is also discussed in the paper 'An analytical model for Follow Me Cloud' (Tarik et al) from Dec 2013. An important component to accomplish this migration is a Follow me Cloud (FMC) controller.

SUMMARY



[0009] In view of the above, an object may hence be to handle migration of a service used by a user equipment when the user equipment moves around in a wireless communication network, such as a telecommunication network of the above mentioned kind. According to an aspect, the object is achieved by a method, performed by a migration managing module, for managing a migration of a service being used by a mobile device over a radio access network. The migration managing module is configured with information about servers. The information about the servers comprises a respective server location measure for each server. The servers comprise a source server on which the service is executed. The radio access network comprises radio network nodes. Each radio network node of the radio network nodes is associated with a respective radio network node location measure. The migration managing module determines a point in time relating to completion of the migration of the service based on resource requirements related to the service. Moreover, the migration managing module determines a set of probability values associated with a set of radio network node of the radio access network. Each probability value of the set of probability values indicates probability of the mobile device being served, at the point in time, by a respective radio network node of the set of radio network nodes. For each radio network node of the set of radio network nodes, the migration managing module estimates a respective impact on a quality of the service. The respective impact on the quality is estimated while assuming the mobile device being served by said each radio network node. For said each radio network node, the migration managing module selects, from among the servers, at least one respective target server for which the respective server location measure of said at least one respective target server matches the respective radio network node location measure of said each radio network node, thereby obtaining a set of target servers comprising said at least one respective target server for said each radio network node. Furthermore, for each target server of the set of target servers, the migration managing module determines a respective cost of the migration based on the resource requirements related to the service. For said each target server, the migration managing module determines a respective tendency as a function of said each probability value, the respective cost and the respective impact, thereby obtaining a set of tendencies comprising the respective tendency for said each target server. Next, the migration managing module selects a target server of the set of target servers based on the set of tendencies. Then, the migration managing module performs the migration of the service from the source server to the target server.

[0010] According to another aspect, the object is achieved by a migration managing module configured for managing a migration of a service being used by a mobile device over a radio access network. The migration managing module is configured with information about servers. The information about the servers comprises a respective server location measure for each server. The servers comprise a source server on which the service is executed. The radio access network comprises radio network nodes. Each radio network node of the radio network nodes is associated with a respective radio network node location measure. The migration managing module is configured for determining a point in time relating to completion of the migration of the service based on resource requirements related to the service. Moreover, the migration managing module is configured for determining a set of probability values associated with a set of radio network node of the radio access network. Each probability value of the set of probability values indicates probability of the mobile device being served, at the point in time, by a respective radio network node of the set of radio network nodes. The migration managing module is configured for estimating a respective impact on a quality of the service for each radio network node of the set of radio network nodes. The respective impact on the quality is estimated while assuming the mobile device being served by said each radio network node. Furthermore, the migration managing module is configured for selecting, from among the servers and for said each radio network node, at least one respective target server for which the respective server location measure of said at least one respective target server matches the respective radio network node location measure of said each radio network node, thereby obtaining a set of target servers comprising said at least one respective target server for said each radio network node. The migration managing module is further configured for determining a respective cost of the migration based on the resource requirements related to the service for each target server of the set of target servers. The migration managing module is also configured for determining a respective tendency as a function of said each probability value, the respective cost and the respective impact for said each target server. In this manner, the migration managing module is configured for obtaining a set of tendencies comprising the respective tendency for said each target server. The migration managing module is configured for selecting a target server of the set of target servers based on the set of tendencies. The migration managing module is configured for performing the migration of the service from the source server to the target server.

[0011] According to further aspects, the object is achieved by a computer program and a computer program carrier corresponding to the aspects above.

[0012] As mentioned, the migration managing module determines, for each target server of the set of target servers, the respective cost of the migration based on the resource requirements related to the service. The respective cost is then used when the migration managing module determines, for said each target server, the respective tendency as the function of said each probability value, the respective cost and the respective impact. In this manner, the migration managing module obtains the set of tendencies, which may form a basis on which a decision to migrate or not migrate the service may be taken. Hence, the migration managing module selects the target server, if any, based on the set of tendencies. Thus, the migration managing module evaluates possible target servers and selects one while taking into account probability of handover, cost of migration and impact on service if no migration is performed.

[0013] An advantage is that the service is moved with the user equipment as the user equipment moved while taking into account probability of handover, cost of migration and impact on service as mentioned above. In this manner, e.g. services, in particular real-time service, are expected to be migrated while reducing, or even eliminating, service interruption due to handovers or the like.

BRIEF DESCRIPTION OF THE DRAWINGS



[0014] The various aspects of embodiments disclosed herein, including particular features and advantages thereof, will be readily understood from the following detailed description and the accompanying drawings, in which:

Figure 1 is a schematic overview of an exemplifying system in which embodiments herein may be implemented,

Figure 2 is a flowchart illustrating embodiments of the method in the migration managing module,

Figure 3 is a block diagram illustrating exemplifying modules for implementing the migration managing module,

Figure 4 is a further block diagram illustrating an exemplifying migration cost estimating module, and

Figure 5 is a yet further block diagram illustrating embodiments of the migration managing module.


DETAILED DESCRIPTION



[0015] Throughout the following description similar reference numerals have been used to denote similar features, such as nodes, actions, modules, circuits, parts, items, elements, units or the like, when applicable. In the Figures, features that appear in some embodiments are indicated by dashed lines.

[0016] In order to further emphasize on problems related to CXTP, which was mentioned in the background section, it deserves to be mentioned that a live-migration at handover may not be possible due to size of data to be migrated from a source base station to a target base station, which would cause that a service cannot be moved fast enough to the target base station, or in the vicinity thereof. Hence, an interruption in the service may occur. Moreover, if it were to be attempted that a user equipment should be continuously served by the service when located at the source base station, while the service is being set up at the target base station, it may very well happen that the service is interrupted.

[0017] Figure 1 depicts an exemplifying system 100 in which embodiments herein may be implemented. The system 100 may be a cloud system, such a data center, a cloud computing network, a cloud network, an operator cloud, a conventional data center, a computing and storage center, a disaggregated hardware system or the like.

[0018] The system may comprise a radio access network 101 or at least portions thereof. The radio access network 101 in this example an evolved UMTS Terrestrial Radio Access Network (eUTRAN), where UMTS stands for Universal Mobile Telecommunications System.

[0019] In other examples, the radio access network 101 may be any cellular or wireless access network related to e.g. UMTS, Worldwide Interoperability for Microwave Access (WiMAX), LTE Frequency Division Duplex (FDD), LTE Time Division Duplex (TDD), LTE Half-Duplex Frequency Division Duplex (HD-FDD), LTE operating in an unlicensed band, or a Wideband Code Division Multiple Access (WCDMA), Universal Terrestrial Radio Access (UTRA) TDD, Ultra-Mobile Broadband (UMB), Global System for Mobile communications (GSM) network, GSM/Enhanced Data Rate for GSM Evolution (EDGE) Radio Access Network (GERAN) network, EDGE network, a network comprising of any combination of Radio Access Technologies (RATs) such as e.g. Multi-Standard Radio (MSR) base stations, multi-RAT base stations etc., any 3rd Generation Partnership Project (3GPP) cellular network, Wi-Fi networks, Worldwide Interoperability for Microwave Access (WiMAX), 5G system or the like.

[0020] The system 100 may be said to comprise a migration managing module 110 for managing a migration of services between servers 120-123 of the system 100.

[0021] A source server 120 hosts a service 130 being used by, e.g. serving, a mobile device 140 over the radio access network 101.

[0022] The servers 120-123 may comprise at least one of virtual servers and physical machines. The virtual servers may be allocated on demand in case the system 100 comprises the disaggregated hardware system, such as Hyperscale Cloud or the like. In case the system is a conventional data center, the physical machines may typically refer to stand-alone fully functional computers, which may be coordinated to handle applications/services to be executed in the system 100.

[0023] The service 130 may be provided by an application executable on any one of the servers 120-123. The service 130 may for example be a streaming service providing audio and/or video, a voice-recognition service for providing e.g. translation, editable-text or similar, a command to enable voice activated control of applications or the like.

[0024] Furthermore, a set of radio network nodes 150-152 are shown in Figure 1. The radio access network 101 may comprise the radio network nodes 150-152.

[0025] As mentioned above, the system 100 comprises at least some parts of the radio access network 101. This may e.g. mean that resources of the radio network nodes 150-152 may constitute a portion of those resources that the system 100 handles for purposes of making the system 100 efficient.

[0026] The resources of the system 100 may be divided into one or more pools, where there may be computing pools, storage pools, network interface pools or the like. This may in particular apply in case the system 100 is the disaggregated hardware system. The computing pools may include resource in the form of processing units, such as processor, processing cores or kernels and the like. The storage pools may include memory pools, disk pools and the like. Typically, memory pools include various types of random access memory, flash memory, solid state memories or the like. Whereas disk pools typically include hard disks, magnetic tape, etc. In case the system 100 is the conventional data center, the resources may still be divided into pool, but a particular pool may more typically comprise a number of physical servers, which may be general purpose computers or may be special purpose computers e.g. directed towards providing computing capacity, memory capacity, network interface capacity or the like similarly to the pools mentioned above.

[0027] The resources may be organized into a hierarchical structure based on a resource location measure, e.g. geographical location, a measure of distance to an edge of the radio access network 101, etc. In such hierarchical structure, a higher level corresponds to a more centralized location, i.e. far away for the edge of the radio access network 101 and a lower level corresponds to a more peripheral location, i.e. relatively close to the edge of the radio access network 101. With this in mind, it is shall be noted that at least some resources of the radio access network 101 constitute a sub-set of the resources of the system 100 as a whole.

[0028] As an example, a server location measure for the source server 120, be it a virtual server or a physical machine, may be given by the resource location measure that forms the source server 120. Typically, in case of the conventional data center, the server location measure corresponds, e.g. equals to, the resource location measure for a particular physical machine that acts as the source server 120. However, in case of the disaggregated hardware system, the server location measure may be given by, e.g. as a weighted average of, a summation of, a product of etc., the resource location measures of the resources that forms a particular virtual server that acts as the source server 120. This means that each server 120-123 is associated with a respective server location measure, where each respective server location measure may be comprised among a set of server location measures. As a consequence, the servers are also organized into a hierarchical structure based on the set of server location measures.

[0029] When the service 130 is migrated within the system 100, it may be migrated in a horizontal manner 171, 172 and/or in a vertical manner 173, e.g. with respect to the hierarchical structure. The system 100 may for example comprise a first server on which the service 130 resides. A server location measure for the first server may be determined, as briefly described above, based on resource location measures of each resource that make up, or forms, the server. For example, a high value of the server location measure may correspond to a centrally located server, i.e. at a high level in the hierarchical structure. On the one hand, if the service 130 resides on a centrally located server, it is expected that handovers of the mobile device 140 at the edge of the radio access network 101 will not significantly impact quality of the service 130. On the other hand, if the service resides on a peripherally located server, e.g. the server has a low value of the server location measure and the server is thus located at a low level in the hierarchical structure, handovers of the mobile device 140 may very well significantly impact quality of the service 130. Peripherally may refer to a vicinity of the edge of the radio access network 101.

[0030] The aforementioned mobile device 140 may be served by the service 130, which may be considered to be an instance of the also mentioned application. As an example, it may be that there is one instance for the service 130 for each mobile device in case multiple mobile devices (not shown) are present in the radio access network 101.

[0031] In general, it may be preferred to push the service 130, e.g. the instance thereof, towards the edge of the radio access network 101 to improve performance, i.e. the service 130 may preferably be executed at, or by, a source radio network node 150 currently being associated with, e.g. serving, the mobile device 140.

[0032] The radio network nodes 150-152 may communicate 160 with the mobile device 140. This communication may include user transmissions and/or control transmissions. The user transmissions may include user data, payload data, content data etc. The control transmissions may include control information relating to e.g. scheduling, authentication, mobility, power control etc. The user transmissions are only relevant in case the first wireless device is in a cellular mode. The communication may include uplink transmission and/or downlink transmission. A transmission may be referred to as a data block.

[0033] As used herein, the term "radio network node" may refer to a Base Station System (BSS), a Radio Network Controller (RNC), a Radio Base Station (RBS), an evolved Node B (eNB), a control node controlling one or more Remote Radio Units (RRUs), an access point or the like.

[0034] As used herein, the term "mobile device" may refer to a wireless communication device, a user equipment, a machine-to-machine (M2M) device, a mobile phone, a cellular phone, a Personal Digital Assistant (PDA) equipped with radio communication capabilities, a smartphone, a laptop or personal computer (PC) equipped with an internal or external mobile broadband modem, a tablet PC with radio communication capabilities, a portable electronic radio communication device, a sensor device equipped with radio communication capabilities or the like. The sensor device may detect any kind of metric, such as wind, temperature, air pressure, humidity, light, electricity, sound, images etc. The term "user" may indirectly refer to the wireless device. Sometimes, the term "user" may be used to refer to the user equipment or the like as above. It shall be understood that the user may not necessarily involve a human user. The term "user" may also refer to a machine, a software component or the like using certain functions, methods and similar.

[0035] Figure 2 illustrates an exemplifying method according to embodiments herein when implemented in the system 100 of Figure 1.

[0036] The migration managing module 110 performs a method for managing a migration of a service 130 being used by a mobile device 140 over a radio access network 101.

[0037] The migration managing module 110 is configured with information about servers 120-123. The information about the servers 120-123 comprises a respective server location measure for each server 120-123. The respective server location measure may comprise at least one of geographical coordinates, an identity of a physical machine on which a respective server 120-123 among the servers 120-123 resides, an indication of delay between each of the servers 120-123 and the mobile device 140, an indication relating to network topological location of the servers 120-123 or the like. Briefly, network topological location refers to a physical or a logical position of a node in a network. Network topology thus defines a manner in which different nodes, such as the servers and the radio network nodes, of the network are placed and interconnected with each other. Common network topologies include e.g. star, tree, mesh, bus or the like.

[0038] Typically, the geographical coordinates are given as latitude and longitude. The network topological location may be expressed as a value indicating horizontal and/or vertical location in the hierarchical structure.

[0039] The migration managing module 110 may have the possibility to map the identity of a physical machine, related to each server 120-120, to geographical coordinates, e.g. through access of a data base including mapping from identities to geographical coordinates or a similar means.

[0040] In general, the information about the servers 120-123 indicates a topology, or hierarchical structure, based on the respective server location measures, which as mentioned may be expressed in terms of geographical distance, delay or the like.

[0041] As mentioned, the servers 120-123 comprise the source server 120 on which the service 130 is executed.

[0042] The radio access network 101 comprises radio network nodes 150-152. Each radio network node 150-152 of the radio network nodes 150-152 is associated with a respective radio network node location measure. The respective radio network node location measure may comprise at least one of geographical coordinates, an identity of a physical machine on which the radio network node 150-152 resides, an indication of delay between each of the radio network nodes 150-152 and the mobile device 140, an indication relating to network topological location of the radio network nodes 150-152, or the like. The same or similar explanations as for the servers apply also for the radio network nodes in view of the radio network node location measure. However, it is in particular noted that the migration managing module 110 may have the possibility to map the identity of a physical machine, related to each radio network node, to geographical coordinates, e.g. through access of a data base including mapping from identities to geographical coordinates or a similar means.

[0043] As mentioned, the service 130 may be provided by an application executable on any one of the servers 120-123. In some embodiments, the application is executing on the source server 120 before the migration. In some embodiments, the application is executing on the target server 121-123 after the migration.

[0044] One or more of the following actions may be performed in any suitable order.

[0045] As mentioned, the mobile device 140 may initially be served by the source radio network node 150. Furthermore, the service 130 serving the mobile device 140 may be hosted on the source server 120.

Action A010



[0046] The migration managing module 110 determines a point in time relating to completion of the migration of the service 130 based on resource requirements related to the service 130.

[0047] The resource requirements related to the service may comprise at least one of memory requirements for execution of the service 130, storage requirements for holding data relating to the service 130, computing requirements for execution of the service 130, and bandwidth requirements for providing the service 130 to the mobile device 140. The storage requirements, related to the storage pools, may indicate requirements for memory, disk and the like. Typically, memory include various types of random access memory, flash memory, solid state memory or the like. Whereas disk typically includes hard disks, magnetic tape, etc.

[0048] As a result of this action, the migration managing module 110 may use the point in time in action A020 below.

Action A020



[0049] The migration managing module 110 determines a set of probability values associated with a set of radio network node 150-152 of the radio access network 101. Each probability value of the set of probability values indicates probability of the mobile device 140 being served, at the point in time, by a respective radio network node 150-152 of the set of radio network nodes 150-152.

[0050] In this manner, the migration managing module 110 may find out likelihood of that the mobile device 140 is served by any one of the radio network nodes 150-152 at the point in time. As an example, this action may be performed by a radio handover prediction module that is described in more detail with reference to Figure 3 below.

Action A030



[0051] For each radio network node 150-152 of the set of radio network nodes 150-152, the migration managing module 110 estimates a respective impact on a quality of the service 130. The respective impact on the quality is estimated while assuming the mobile device 140 being served by said each radio network node 150-152.

[0052] The estimating A030 of the respective impact may be performed while the service 130 is continuously executed on the source server 120.

[0053] The respective impact may indicate degradation of the service 130 per unit time. The degradation may be directly proportional to bitrate of transmissions between the mobile device 140 and the service 130.

[0054] As an example, this action may be performed by a service impact estimation module that is described in more detail with reference to Figure 3 below.

Action A040



[0055] The migration managing module 110 selects from among the servers, for said each radio network node 150-152, at least one respective target server 121-123 for which the respective server location measure of said at least one respective target server 121-123 matches the respective radio network node location measure of said each radio network node 150-152, thereby obtaining a set of target servers 121-123 comprising said at least one respective target server 121-123 for said each radio network node 150-152.

[0056] As an example, assuming that the respective server location measure and the respective radio network node location measure is given by geographical coordinates, geographical coordinates for each server may be said to match geographical coordinates for said each radio network node 150-152 when the geographical coordinates for each server indicates a position than is within a certain distance from a position indicated by the geographical coordinates for said each radio network node 150-152.

[0057] The respective server location measure may, additionally or alternatively, be given by the indication of delay, where similar indications of delay, e.g. within a certain range, may identify matching of the respective server location measure and the respective radio network node location measure.

Action A050



[0058] The migration managing module 110 determines, for each target server 121-123 of the set of target servers 121-123, a respective cost of the migration based on the resource requirements related to the service 130.

[0059] As an example, this action may be performed by a server migration cost estimation module that is described in more detail with reference to Figure 3 below.

[0060] In one example, the respective cost of the migration is directly proportional to the resource requirements in terms of storage required for the service 130.

[0061] In other examples, the respective cost of the migration may be dependent on network load and/or network congestion expected to be caused by migration to said each target server 121-123. That is to say, when backend network becomes congested and/or heavily loaded due to the migration, the respective cost of the migration is considered to increase, or be higher.

Action A060



[0062] The migration managing module 110 determines, for said each target server 121-123, a respective tendency as a function of said each probability value, the respective cost and the respective impact, thereby obtaining a set of tendencies comprising the respective tendency for said each target server 121-123.

[0063] The function may define the respective tendency as directly proportional to said each probability value and the respective impact, and the function may further define the respective tendency as inversely proportional to the respective cost.

[0064] As an example, this action may be performed by a service placement decision module that is described in more detail with reference to Figure 3 below. Notably, the service placement decision module may also perform other actions.

Action A070



[0065] The migration managing module 110 selects a target server 121-123 of the set of target servers 121-123 based on the set of tendencies.

[0066] The target server 121-123 may be selected in various manners as follows.

[0067] In one example, the migration managing module 110 may select the target server 121-123 by selecting the target server 121-123 for which the respective tendency is among the greatest tendencies of the set of tendencies. In particular, the target server 121-123 with a maximum tendency among the set of tendencies may be selected. This means that the selecting A070 of the target server 121-123 may comprise selecting the target server 121-123 for which the respective tendency is among the greatest tendencies of the set of tendencies.

[0068] In another example, the migration managing module 110 may select the target server 121-123 by selecting the target server 121-123 for which the respective tendency is above a threshold value for tendency of migration. The threshold value may be an absolute value predetermined value and/or a relative value determined based on the set of tendencies, e.g. as mean of tendencies, a given percentile of the tendencies, highest quartile of the tendencies or the like. This means that the selecting A070 of the target server 121-123 may comprise selecting the target server 121-123 for which the respective tendency is above a threshold value for tendency of migration.

[0069] Additionally or alternatively, the migration managing module 110 may select the target server 121-123 by selecting only those target servers that have enough available resources, e.g. in terms of memory, computing capacity, etc., to be able to host the service. This means that the selecting A070 of said at least one target server 121-123 may comprise selecting said at least one target server 121-123 based the resource requirements related to the service 130.

[0070] As an example, this action may be performed by a service placement decision module that is described in more detail with reference to Figure 3 below. Notably, the service placement decision module may also perform other actions.

Action A080



[0071] The migration managing module 110 performs the migration of the service 130 from the source server 120 to the target server 121-123.

[0072] As described above, based on the set of tendencies, the method herein predictively and actively performs the migration of the service 130 while utilizing resources of radio network nodes for providing the target server 121-123. In this manner, it may be predicted to where the mobile device 140 moves, and then actively prepare the target server, e.g. in a target radio network node, i.e. the radio network node that the mobile device 140 is handed over to. Expressed differently, the method performs the migration based on predicting potential movement of the mobile device, cost of server migration, and impact on service if no migration is performed.

[0073] It shall be noted that the migration of the service 130 may include migration of executable code, resources used for execution, user session context, user caches, audio/video content or the like.

[0074] An advantage is that service responsiveness, e.g. time for response, bit rate, may be improved thanks to that service interruption due to movement of the mobile device may be avoided. Additionally, the migration managing module 110 may select the target server while making a trade-off between probability relating to handover, impact of service and cost of migration. In this manner, unnecessarily migration of the service may be avoided.

[0075] Services may prioritize migration differently. For example, services with very strict requirements on latency, such as Vehicle-To-Vehicle crash alarm reporting, may have a lower value of the threshold value for tendency of migration than other services.

[0076] Some examples of services that may benefit from a local cloud in the radio network node, i.e. the cloud system 100 may utilize resources also in the radio network nodes:
  • Personal assistant in cloud need to perform complex artificial intelligent computing based on the input events from mobile device.
  • Simultaneous interpreting requires low latency and complicated data processing, like voice recognition, context interpreting, and sound composing.
  • Virtual reality/Augmented reality rendering in cloud requires low latency and heavy image processing.
  • Vehicle-To-Vehicle applications put very high requirements on the connectivity. Both the availability must be higher and the delay needs to be reduced compared to today's mobile systems. Examples of applications are:

    ∘ Car crash alarm reporting

    ∘ Velocity control e.g. fixed distance between cars

  • Industrial campus process where multiple production equipments needs to communicate between each other, to a central control, logistics and to the facilities storage
  • Indoor LTE
    ∘ Devices in a building that needs to share high of volume data e.g. surveillance cameras, television sets, monitors, washing machines, electrical meters.
  • Device-To-Device
    ∘ video cameras, projectors, consoles, mobile phones, heart meters, training monitors


[0077] Figure 3 illustrates an exemplifying migration managing module 110 comprising a radio handover prediction module 301, a server migration cost estimation module 302, a service impact estimation module 303 and a service placement decision module 304.

[0078] Based on outputs from the three first mentioned modules, the service placement decision module 304 may decide if and/or where the service may be actively prepared in one or more target servers.

[0079] Generally, when predicting that the mobile device may be subject to a handover, service related data may be continuously copied into any possible target radio network node. When the handover takes place, server migration will also be concluded with committing a delta part of the data, i.e. the most recent data not already copied. Potentially, data could be copied to multiple targets when movement of the mobile is uncertain. But an actual migration of the service only happens when the mobile device eventually is handed over to the predicted target radio network node. In case the mobile device is not handed over to the predicted radio network node, the service simply continues to run on the source server. Already migrated data related to the service may be kept until expired.

Radio handover prediction module



[0080] The radio handover prediction module 301 predicts where the mobile device 140 is expected to move.

[0081] An output of radio handover estimation module is the set of probability values indication the probability that the mobile device 140 will perform a radio handover to different target radio network nodes in a specified time period, e.g. as given by the point in time. The specified time period may be the time required for the service 130 to be migrated to any target server 121-123. For example, if the migration takes 10 seconds, then the system 100, e.g. the migration managing module 110, may need 10 seconds to prepare and perform the migration. The system 100 may then need the probability values for the radio network nodes that the mobile device 140 have been handed over to in 10 seconds. An example is shown in Table 1, where with 50% probability the mobile device 140 will perform a handover to radio network node B101 in 10 seconds, and 30% probability to radio network node B102.

[0082] Machine learning approaches may be used for this kind of prediction, with input such as previous handovers, the mobile device's most recently visited radio network nodes, or cells. In addition handover profiles of all mobile devices could be used as input for this prediction. In addition to this kind of info, radio level events can be used for the prediction. For example, when a mobile device reports to its serving base station that it hears a neighboring cell with certain radio quality, this kind of information can also be used for the prediction.

[0083] User profiles including movement patterns, handover activities, and radio layer information are possible inputs of the prediction. Based on the prediction, the cloud server can be actively prepared in targeting base station(s).
Table 1 Output/input related to handover estimation module
Radio network nodeProbabilityTime threshold
B101 0.5 10 s
B102 0.3 10 s

Server migration cost estimation module



[0084] With reference to Figure 4, the server migration cost estimation module 401 estimates cost of migration e.g. in terms of at least one of time, resource requirements related to the service, network and computing load for performing the migration or the like.

[0085] An input may be amount of data that need to be transferred from the source server, such as the source radio network node, to the target server, such as the target radio network node(s). Notably, in some examples, a radio network node corresponds to a server. However, in some examples, one radio network node may host a portion of a server or even one or more servers. Additionally, it may be that the target server is not hosted by the target radio network node at all. Instead, the target server is only hosted in the vicinity of the target radio network node, where the location measures of the target server and the target radio network node, respectively, is used to match them together.

[0086] In case it is not a live migration, this data may include disk data, memory, CPU state, etc. If it is off-line migration, the cost also includes collection of session states from applications and reestablishment of the session in the target radio network node, and is also depend on load on the source and target radio network nodes. Additional input may be the available backhaul capacity between the source and target server. Finally, backhaul delay and time required for performing the handover may also be used as input to the server migration cost estimation module 302.

[0087] The cost may also depend on use case. Estimated time consumption for performing the migration may range from 100ms to minutes, and estimated amount of data may range from KBs up to GBs.

[0088] An exemplifying formula for estimation of the cost may be found as:

Server Migration Cost = P1 * data size + P2 * Backhaul load + P3 * Backhaul delay + P4* source radio network node load + P5 * target radio network node load,

where P1 to P3 and P5 are weight parameters, and should in general be positive. Notably, P4 is typically negative.

Data size: size of service in terms of storage requirements

Backhaul load: Load on connection between source and target radio network node and/or source and target server

Backhaul delay: Delay on connection between source and target radio network node and/or source and target server

Source radio network node load: Current load on source radio network node and/or source server

Target radio network node load: Current load on target radio network node and/or target server.



[0089] Since the migration may be horizontal or hierarchical with different targets alternative cost estimations may need to be performed for each possible target.

Service impact estimation module



[0090] The service impact estimation module 303 may estimate the potential impact on the service if no migration is performed.

[0091] The service impact estimation module monitors usage of the service, and provides a measure of impact per time unit for not performing migration of the service or possibly performing the migration of the service after handover. The impact is a measure of service degradation per time unit, where the impact may be service dependent. For non-migration case, if the mobile device is accessing the service frequently, the impact may be quite high, while if the mobile device is not accessing the service very frequently, the impact is expected to be low. For a lazy-migration case, i.e. migrating the service after handover, impact is similar to non-migration with an addition: a time duration required for migration. This is because during migration, the mobile device is served by the service while the service still resides on the source server. Longer time duration for migration means higher cost.

[0092] In general, for real time services, the cost for not performing cloud server migration is significantly higher than low priority background services!

[0093] Examples of the impact for not performing service migration. Here, the impact is quantifies as low, medium, and high, but it is of course contemplated that the impact may be quantified by any values, such as:
1, 2 and 3,
A, B and C,
10, 20 and 30, etc.
Service typeTime since last accessImpact
Delay sensitive service 10s High
Service that is less delay sensitive (e.g. video camera to cloud storage) >10 minutes Low

Service placement decision module



[0094] The service placement decision module 304 may decide whether or not to prepare and perform migration of the service, from the source server to the target server, which sometime may be realized by the target radio network node, by continuously evaluating outputs from the three modules mentioned above. The service migration may relate to initial service placement and/or migration of service due to e.g. handover.

[0095] For the initial service placement, the prediction may not be that accurate due to lacking history for the mobile device, data related to the service may be placed at a higher level in the hierarchical structure of resources. After the mobile device becomes active, the prediction is expected to become more and more accurate. The service is preferably be pushed the edge of the system. However, if prediction is accurate enough, the service may be placed at a good location from the beginning.

[0096] After initial placement, the system continuously predicts movement of the mobile device and determines the set of tendencies for each expected target server as:



[0097] The tendency may be compared to a threshold value. The threshold value for tendency of migration may be determined based on service type and/or type of user. Different service types may have different requirements concerning e.g. latency, memory requirements, bandwidth or the like. Likewise, different types of users, such as Very-Important-Person (VIP) users, gold subscribers, silver subscribers, bronze subscribers and the like, a may have different requirements concerning e.g. latency, memory requirements, bandwidth and the like. Typically, the different types of users have different quotas associated with their subscription-plans as negotiated with an operator. The service placement decision module may consider this by retrieving properties from applications, connecting to the service, of the mobile device. For mobile devices with multiple applications active, there may be cases where only the applications for the most critical services are respected.

[0098] Service impact and migration cost may need to be unified to improve results. Based on the output of the formula above, different migration strategies might be applied:
  • No migration, this is applied when many target servers end up with similar tendency and they are locate close to the source server. This may happen when the mobile device keeps moving around, e.g. a mobile device in a taxi is likely to keep travelling around city all the time. In this case, a solution may be to place the service in at a server in a higher level of the system, thus avoiding migration due to handovers between radio network nodes.
  • Horizontal migration, as migration 171, 172 in Figure 1. This is applied when there is single target server or single target radio network node that outruns others. This may happen when the mobile device moves between an office and a home in a working day.
  • Hierarchical migration, as migration 173 in Figure 1. This is applied when a couple of target servers get high tendency, but no obviously leading target server. This may happen when the mobile device goes from a stationary state into a mobility state, e.g. a traveler finally gets onboard a high speed train after a long waiting in railway station.


[0099] When tendency reach a threshold, the system will order the source server to initiate migration by starting to copy data in advance of a handover of the mobile device. A delta of the data is copied and migration is committed when the mobile device is actually handed over.

[0100] With reference to Figure 5, a schematic block diagram of embodiments of the migration managing module 110 of Figure 1 is shown.

[0101] The migration managing module 110 may comprise a processing module 501, such as a means for performing the methods described herein. The means may be embodied in the form of one or more hardware modules and/or one or more software modules

[0102] The migration managing module 110 may further comprise a memory 502. The memory may comprise, such as contain or store, instructions, e.g. in the form of a computer program 503, which may comprise computer readable code units.

[0103] According to some embodiments herein, the migration managing module 110 and/or the processing module 501 comprises a processing circuit 504 as an exemplifying hardware module, which may comprise one or more processors. Accordingly, the processing module 501 may be embodied in the form of, or 'realized by', the processing circuit 504. The instructions may be executable by the processing circuit 504, whereby the migration managing module 110 is operative to perform the methods of Figure 2. As another example, the instructions, when executed by the migration managing module 110 and/or the processing circuit 504, may cause the migration managing module 110 to perform the method according to Figure 2.

[0104] In view of the above, in one example, there is provided a migration managing module 110 configured for managing a migration of a service 130 being used by a mobile device 140 over a radio access network 101. As mentioned, the migration managing module 110 is configured with information about servers 120-123. The information about the servers 120-123 comprises a respective server location measure for each server 120-123. The servers 120-123 comprise a source server 120 on which the service 130 is executed. The radio access network 101 comprises radio network nodes 150-152. Each radio network node 150-152 of the radio network nodes 150-152 is associated with a respective radio network node location measure. Again, the memory 502 contains the instructions executable by said processing circuit 504 whereby the migration managing module 110 is operative for:

determining a point in time relating to completion of the migration of the service 130 based on resource requirements related to the service 130,

determining a set of probability values associated with a set of radio network node 150-152 of the radio access network 101. Each probability value of the set of probability values indicates probability of the mobile device 140 being served, at the point in time, by a respective radio network node 150-152 of the set of radio network nodes 150-152,

for each radio network node 150-152 of the set of radio network nodes 150-152, estimating a respective impact on a quality of the service 130. The respective impact on the quality is estimated while assuming the mobile device 140 being served by said each radio network node 150-152,

for said each radio network node 150-152, selecting, from among the servers, at least one respective target server 121-123 for which the respective server location measure of said at least one respective target server 121-123 matches the respective radio network node location measure of said each radio network node 150-152, thereby obtaining a set of target servers 121-123 comprising said at least one respective target server 121-123 for said each radio network node 150-152,

for each target server 121-123 of the set of target servers 121-123, determining a respective cost of the migration based on the resource requirements related to the service 130,

for said each target server 121-123, determining a respective tendency as a function of said each probability value, the respective cost and the respective impact, thereby obtaining a set of tendencies comprising the respective tendency for said each target server 121-123,

selecting a target server 121-123 of the set of target servers 121-123 based on the set of tendencies, and

performing the migration of the service 130 from the source server 120 to the target server 121-123.



[0105] Figure 5 further illustrates a carrier 505, or program carrier, which comprises the computer program 503 as described directly above.

[0106] In some embodiments, the migration managing module 110 and/or the processing module 501 may comprise one or more of a determining module 510, an estimating module 520, a selecting module 530, and a performing module 540 as exemplifying hardware modules. In other examples, one or more of the aforementioned exemplifying hardware modules may be implemented as one or more software modules.

[0107] The determining module 510 may comprise the radio handover prediction module 301. The determining module 510, or another determining module (not shown), may comprise the service migration cost estimation module 302.The estimating module 520 may comprise the service impact estimation module 303. The selecting module 530 may comprise the service placement decision module 304.

[0108] Moreover, the processing module 501 comprises an Input/Output unit 506, which may be exemplified by a receiving module and/or a sending module (not shown) when applicable.

[0109] Accordingly, the migration managing module 110 is configured for managing a migration of a service 130 being used by a mobile device 140 over a radio access network 101.

[0110] As mentioned, the migration managing module 110 is configured with information about servers 120-123. The information about the servers 120-123 comprises a respective server location measure for each server 120-123. The servers 120-123 comprise a source server 120 on which the service 130 is executed. The radio access network 101 comprises radio network nodes 150-152. Each radio network node 150-152 of the radio network nodes 150-152 is associated with a respective radio network node location measure.

[0111] Therefore, according to the various embodiments described above, the migration managing module 110 and/or the processing module 501 and/or the determining module 510 is configured for determining a point in time relating to completion of the migration of the service 130 based on resource requirements related to the service 130.

[0112] The migration managing module 110 and/or the processing module 501 and/or the determining module 510 is configured for determining a set of probability values associated with a set of radio network node 150-152 of the radio access network 101. Each probability value of the set of probability values indicates probability of the mobile device 140 being served, at the point in time, by a respective radio network node 150-152 of the set of radio network nodes 150-152.

[0113] The migration managing module 110 and/or the processing module 501 and/or the estimating module 520 is configured for estimating, for each radio network node 150-152 of the set of radio network nodes 150-152, a respective impact on a quality of the service 130. The respective impact on the quality is estimated while assuming the mobile device 140 being served by said each radio network node 150-152.

[0114] The migration managing module 110 and/or the processing module 501 and/or the selecting module 530 is configured for selecting from among the servers, for said each radio network node 150-152, at least one respective target server 121-123 for which the respective server location measure of said at least one respective target server 121-123 matches the respective radio network node location measure of said each radio network node 150-152, thereby obtaining a set of target servers 121-123 comprising said at least one respective target server 121-123 for said each radio network node 150-152.

[0115] The migration managing module 110 and/or the processing module 501 and/or the determining module 510 is configured for determining, for each target server 121-123 of the set of target servers 121-123, a respective cost of the migration based on the resource requirements related to the service 130.

[0116] Furthermore, the migration managing module 110 and/or the processing module 501 and/or the determining module 510 is configured for determining, for said each target server 121-123, a respective tendency as a function of said each probability value, the respective cost and the respective impact, thereby obtaining a set of tendencies comprising the respective tendency for said each target server 121-123.

[0117] The migration managing module 110 and/or the processing module 501 and/or the selecting module 530 is configured for selecting a target server 121-123 of the set of target servers 121-123 based on the set of tendencies.

[0118] Moreover, the migration managing module 110 and/or the processing module 501 and/or the performing module 540 is configured for performing the migration of the service 130 from the source server 120 to the target server 121-123.

[0119] The migration managing module 110 and/or the processing module 501 and/or the selecting module 530 may be configured for selecting the target server 121-123 by selecting the target server 121-123 for which the respective tendency is among the greatest tendencies of the set of tendencies.

[0120] The migration managing module 110 and/or the processing module 501 and/or the selecting module 530 may be configured for selecting the target server 121-123 by selecting the target server 121-123 for which the respective tendency is above a threshold value for tendency of migration.

[0121] The migration managing module 110 and/or the processing module 501 and/or the selecting module 530 may be configured for selecting said at least one target server 121-123 by selecting said at least one target server 121-123 based the resource requirements related to the service 130.

[0122] The migration managing module 110 and/or the processing module 501 and/or the estimating module 520 may be configured for estimating the respective impact while the service 130 is continuously executed on the source server 120.

[0123] The function may define the respective tendency as directly proportional to said each probability value and the respective impact, and the function may further define the respective tendency as inversely proportional to the respective cost.

[0124] The respective impact may indicate degradation of the service 130 per unit time. The degradation may be directly proportional to bitrate of transmissions between the mobile device 140 and the service 130.

[0125] The service 130 may be provided by an application executable on any one of the servers 120-123.

[0126] The resource requirements related to the service may comprise at least one of memory requirements for execution of the service 130, storage requirements for holding data relating to the service 130, computing requirements for execution of the service 130, and bandwidth requirements for providing the service 130 to the mobile device 140.

[0127] The servers 120-123 may comprise at least one of virtual servers and physical machines.

[0128] The respective radio network node location measure may comprise at least one of geographical coordinates and an identity of a physical machine on which the respective server 120-123 resides.

[0129] The respective server location measure may comprise at least one of geographical coordinates and an identity of a physical machine on which the radio network node 150-152 resides.

[0130] As used herein, the term "node", or "network node", may refer to one or more physical entities, such as devices, apparatuses, computers, servers or the like. This may mean that embodiments herein may be implemented in one physical entity. Alternatively, the embodiments herein may be implemented in a plurality of physical entities, such as an arrangement comprising said one or more physical entities, i.e. the embodiments may be implemented in a distributed manner, such as on a set of server machines of a cloud system.

[0131] As used herein, the term "module" may refer to one or more functional modules, each of which may be implemented as one or more hardware modules and/or one or more software modules and/or a combined software/hardware module in a node. In some examples, the module may represent a functional unit realized as software and/or hardware of the node.

[0132] As used herein, the term "computer program carrier", "program carrier", or "carrier", may refer to one of an electronic signal, an optical signal, a radio signal, and a computer readable medium. In some examples, the computer program carrier may exclude transitory, propagating signals, such as the electronic, optical and/or radio signal. Thus, in these examples, the computer program carrier may be a non-transitory carrier, such as a non-transitory computer readable medium.

[0133] As used herein, the term "processing module" may include one or more hardware modules, one or more software modules or a combination thereof. Any such module, be it a hardware, software or a combined hardware-software module, may be a determining means, estimating means, capturing means, associating means, comparing means, identification means, selecting means, receiving means, sending means or the like as disclosed herein. As an example, the expression "means" may be a module corresponding to the modules listed above in conjunction with the Figures.

[0134] As used herein, the term "software module" may refer to a software application, a Dynamic Link Library (DLL), a software component, a software object, an object according to Component Object Model (COM), a software component, a software function, a software engine, an executable binary software file or the like.

[0135] The terms "processing module" or "processing circuit" may herein encompass a processing unit, comprising e.g. one or more processors, an Application Specific integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA) or the like. The processing circuit or the like may comprise one or more processor kernels.

[0136] As used herein, the expression "configured to/for" may mean that a processing circuit is configured to, such as adapted to or operative to, by means of software configuration and/or hardware configuration, perform one or more of the actions described herein.

[0137] As used herein, the term "action" may refer to an action, a step, an operation, a response, a reaction, an activity or the like. It shall be noted that an action herein may be split into two or more sub-actions as applicable. Moreover, also as applicable, it shall be noted that two or more of the actions described herein may be merged into a single action.

[0138] As used herein, the term "memory" may refer to a hard disk, a magnetic storage medium, a portable computer diskette or disc, flash memory, random access memory (RAM) or the like. Furthermore, the term "memory" may refer to an internal register memory of a processor or the like.

[0139] As used herein, the term "computer readable medium" may be a Universal Serial Bus (USB) memory, a DVD-disc, a Blu-ray disc, a software module that is received as a stream of data, a Flash memory, a hard drive, a memory card, such as a MemoryStick, a Multimedia Card (MMC), Secure Digital (SD) card, etc. One or more of the aforementioned examples of computer readable medium may be provided as one or more computer program products.

[0140] As used herein, the term "computer readable code units" may be text of a computer program, parts of or an entire binary file representing a computer program in a compiled format or anything there between.

[0141] As used herein, the expression "transmit" and "send" are considered to be interchangeable. These expressions include transmission by broadcasting, uni-casting, group-casting and the like. In this context, a transmission by broadcasting may be received and decoded by any authorized device within range. In case of uni-casting, one specifically addressed device may receive and decode the transmission. In case of group-casting, a group of specifically addressed devices may receive and decode the transmission.

[0142] As used herein, the terms "number" and/or "value" may be any kind of digit, such as binary, real, imaginary or rational number or the like. Moreover, "number" and/or "value" may be one or more characters, such as a letter or a string of letters. "Number" and/or "value" may also be represented by a string of bits, i.e. zeros and/or ones.

[0143] As used herein, the term "set of' may refer to one or more of something. E.g. a set of devices may refer to one or more devices, a set of parameters may refer to one or more parameters or the like according to the embodiments herein.

[0144] As used herein, the expression "in some embodiments" has been used to indicate that the features of the embodiment described may be combined with any other embodiment disclosed herein.


Claims

1. A method, performed by a migration managing module (110), for managing a migration of a service (130) being used by a mobile device (140) over a radio access network (101), wherein the migration managing module (110) is configured with information about servers (120-123), wherein the information about the servers (120-123) comprises a respective server location measure for each server (120-123), wherein the server location measure comprises at least one of:

- geographical coordinates,

- an identity of a physical machine on which a respective server among the servers (120-123) resides,

- an indication of delay between each of the servers (120-123) and the mobile device (140),

- an indication relating to network topological location of the servers (120-123) wherein the servers (120-123) comprise a source server (120) on which the service (130) is executed, wherein the radio access network (101) comprises a set of radio network nodes (150-152), wherein each radio network node (150-152) of the set of radio network nodes (150-152) is associated with a respective radio network node location measure,

wherein the radio network node location measure comprises at least one of:

- geographical coordinates,

- an identity of a physical machine on which the radio network node (150-152) resides,

- an indication of delay between each of the radio network nodes (150-152) and the mobile device (140),

- an indication relating to network topological location of the radio network nodes (150-152),

wherein the method comprises:

determining (A010) a point in time relating to completion of the migration of the service (130) based on resource requirements related to the service (130),

determining (A020) a set of probability values associated with the set of radio network nodes (150-152) of the radio access network (101), wherein each probability value of the set of probability values indicates probability of the mobile device (140) being served, at the point in time, by a respective radio network node (150-152) of the set of radio network nodes (150-152),

for each radio network node (150-152) of the set of radio network nodes (150-152), estimating (A030) a respective impact on a quality of the service (130), wherein the respective impact on the quality is estimated while assuming the mobile device (140) being served by said each radio network node (150-152) while the service is continuously executed on the source server (120),

for said each radio network node (150-152), selecting (A040), from among the servers, at least one respective target server (121-123) for which the respective server location measure of said at least one respective target server (121-123) matches the respective radio network node location measure of said each radio network node (150-152), thereby obtaining a set of target servers (121-123) comprising said at least one respective target server (121-123) for said each radio network node (150-152),

for each target server (121-123) of the set of target servers (121-123), determining (A050) a respective cost of the migration based on the resource requirements related to the service (130),

for said each target server (121-123), determining (A060) a respective tendency as a function of said each probability value, the respective cost and the respective impact, thereby obtaining a set of tendencies comprising the respective tendency for said each target server (121-123),

selecting (A070) a target server (121-123) of the set of target servers (121-123) based on the set of tendencies, and

performing (A080) the migration of the service (130) from the source server (120) to the target server (121-123).


 
2. The method according to claim 1, wherein the function defines the respective tendency as directly proportional to said each probability value and the respective impact, and wherein the function further defines the respective tendency as inversely proportional to the respective cost.
 
3. The method according to any one of the preceding claims, wherein the selecting (A070) of the target server (121-123) comprises selecting the target server (121-123) for which the respective tendency is among the greatest tendencies of the set of tendencies.
 
4. The method according to any one of the preceding claims, wherein the selecting (A070) of the target server (121-123) comprises selecting the target server (121-123) for which the respective tendency is above a threshold value for tendency of migration.
 
5. The method according to any one of the preceding claims, wherein the selecting (A070) of said at least one target server (121-123) comprises selecting said at least one target server (121-123) based the resource requirements related to the service (130).
 
6. The method according to any one of the preceding claims, wherein the respective impact indicates degradation of the service (130) per unit time, wherein the degradation is directly proportional to bitrate of transmissions between the mobile device (140) and the service (130).
 
7. The method according to any one of the preceding claims, wherein the service (130) is provided by an application executable on any one of the servers (120-123).
 
8. The method according to any one of the preceding claims, wherein the resource requirements related to the service comprises at least one of memory requirements for execution of the service (130), storage requirements for holding data relating to the service (130), computing requirements for execution of the service (130), and bandwidth requirements for providing the service (130) to the mobile device (140).
 
9. The method according to any one of the preceding claims, wherein the estimating (A030) of the respective impact is performed while the service (130) is continuously executed on the source server (120).
 
10. A computer program (503), comprising computer readable code units which when executed on a migration managing module (110) causes the migration managing module (110) to perform the method according to any one of claims 1-9.
 
11. A carrier (505) comprising the computer program according to the preceding claim, wherein the carrier (505) is one of an electronic signal, an optical signal, a radio signal and a computer readable medium.
 
12. A migration managing module (110) configured for managing a migration of a service (130) being used by a mobile device (140) over a radio access network (101), wherein the migration managing module (110) is configured with information about servers (120-123), wherein the information about the servers (120-123) comprises a respective server location measure for each server (120-123), wherein the server location measure comprises at least one of:

- geographical coordinates,

- an identity of a physical machine on which a respective server among the servers (120-123) resides,

- an indication of delay between each of the servers (120-123) and the mobile device (140),

- an indication relating to network topological location of the servers (120-123) wherein the servers (120-123) comprise a source server (120) on which the service (130) is executed, wherein the radio access network (101) comprises a set of radio network nodes (150-152), wherein each radio network node (150-152) of the set of radio network nodes (150-152) is associated with a respective radio network node location measure wherein the radio network node location measure comprises at least one of:

- geographical coordinates,

- an identity of a physical machine on which the radio network node (150-152) resides,

- an indication of delay between each of the radio network nodes (150-152) and the mobile device (140),

- an indication relating to network topological location of the radio network nodes (150-152),

wherein the migration managing module (110) is configured for:

determining a point in time relating to completion of the migration of the service (130) based on resource requirements related to the service (130),

determining a set of probability values associated with the set of radio network nodes (150-152) of the radio access network (101), wherein each probability value of the set of probability values indicates probability of the mobile device (140) being served, at the point in time, by a respective radio network node (150-152) of the set of radio network nodes (150-152),

for each radio network node (150-152) of the set of radio network nodes (150-152), estimating a respective impact on a quality of the service (130), wherein the respective impact on the quality is estimated while assuming the mobile device (140) being served by said each radio network node (150-152) while the service is continuously executed on the source server (120),

for said each radio network node (150-152), selecting, from among the servers, at least one respective target server (121-123) for which the respective server location measure of said at least one respective target server (121-123) matches the respective radio network node location measure of said each radio network node (150-152), thereby obtaining a set of target servers (121-123) comprising said at least one respective target server (121-123) for said each radio network node (150-152),

for each target server (121-123) of the set of target servers (121-123), determining a respective cost of the migration based on the resource requirements related to the service (130),

for said each target server (121-123), determining a respective tendency as a function of said each probability value, the respective cost and the respective impact, thereby obtaining a set of tendencies comprising the respective tendency for said each target server (121-123),

selecting a target server (121-123) of the set of target servers (121-123) based on the set of tendencies, and

performing the migration of the service (130) from the source server (120) to the target server (121-123).


 
13. The migration managing module (110) according to claim 12, wherein the function defines the respective tendency as directly proportional to said each probability value and the respective impact, and wherein the function further defines the respective tendency as inversely proportional to the respective cost.
 
14. The migration managing module (110) according to any one of claims 12-13, wherein the migration managing module (110) is configured for selecting the target server (121-123) by selecting the target server (121-123) for which the respective tendency is among the greatest tendencies of the set of tendencies.
 
15. The migration managing module (110) according to any one of claims 12-14, wherein the migration managing module (110) is configured for selecting the target server (121-123) by selecting the target server (121-123) for which the respective tendency is above a threshold value for tendency of migration.
 
16. The migration managing module (110) according to any one of claims 12-15, wherein the migration managing module (110) is configured for selecting said at least one target server (121-123) by selecting said at least one target server (121-123) based the resource requirements related to the service (130).
 
17. The migration managing module (110) according to any one of claims 12-16, wherein the respective impact indicates degradation of the service (130) per unit time, wherein the degradation is directly proportional to bitrate of transmissions between the mobile device (140) and the service (130).
 
18. The migration managing module (110) according to any one of claims 12-17, wherein the service (130) is provided by an application executable on any one of the servers (120-123).
 
19. The migration managing module (110) according to any one of claims 12-18, wherein the resource requirements related to the service comprises at least one of memory requirements for execution of the service (130), storage requirements for holding data relating to the service (130), computing requirements for execution of the service (130), and bandwidth requirements for providing the service (130) to the mobile device (140).
 
20. The migration managing module (110) according to any one of claims 12-19, wherein the migration managing module (110) is configured for estimating the respective impact while the service (130) is continuously executed on the source server (120).
 


Ansprüche

1. Verfahren, das durch ein Migrationsverwaltungsmodul (110) durchgeführt wird, zum Verwalten einer Migration eines Dienstes (130), der von einem mobilen Gerät (140) genutzt wird, über ein Funkzugriffnetzwerk (101), wobei das Migrationsverwaltungsmodul (110) mit Informationen über Server (120-123) konfiguriert ist, wobei die Informationen über die Server (120-123) ein jeweiliges Serverstandortmaß für jeden Server (120-123) umfassen, wobei das Serverstandortmaß mindestens eines umfasst von:

- geografischen Koordinaten,

- einer Identität einer physischen Maschine, auf der ein jeweiliger Server unter den Servern (120-123) liegt,

- einer Verzögerungsangabe zwischen jedem der Server (120-123) und dem mobilen Gerät (140),

- einer Angabe bezüglich eines netzwerktopologischen Standorts der Server (120-123), wobei die Server (120-123) einen Quellserver (120) umfassen, auf dem der Dienst (130) ausgeführt wird, wobei das Funkzugriffnetzwerk (101) eine Menge von Funknetzwerkknoten (150-152) umfasst, wobei jeder Funknetzwerkknoten (150-152) der Menge von Funknetzwerkknoten (150-152) mit einem jeweiligen Funknetzwerkknotenstandortmaß verknüpft ist,

wobei das Funknetzwerkknotenstandortmaß mindestens eines umfasst von:

- geografischen Koordinaten,

- einer Identität einer physischen Maschine, auf der der Funknetzwerkknoten (150-152) liegt,

- einer Verzögerungsangabe zwischen jedem der Funknetzwerkknoten (150-152) und dem mobilen Gerät (140),

- einer Angabe bezüglich eines netzwerktopologischen Standorts der Funknetzwerkknoten (150-152),

wobei das Verfahren umfasst:

Ermitteln (A010) eines Zeitpunkts bezüglich Beendigung der Migration des Dienstes (130), basierend auf Ressourcenanforderungen bezüglich des Dienstes (130),

Ermitteln (A020) einer Menge von Wahrscheinlichkeitswerten, die mit der Menge von Funknetzwerkknoten (150-152) des Funkzugriffnetzwerks (101) verknüpft sind, wobei jeder Wahrscheinlichkeitswert der Menge von Wahrscheinlichkeitswerten eine Wahrscheinlichkeit des mobilen Geräts (140) angibt, dass es zu dem Zeitpunkt von einem jeweiligen Funknetzwerkknoten (150-152) der Menge von Funknetzwerkknoten (150-152) bedient wird,

für jeden Funknetzwerkknoten (150-152) der Menge von Funknetzwerkknoten (150-152), Schätzen (A030) einer jeweiligen Auswirkung auf eine Dienstqualität (130), wobei die jeweilige Auswirkung auf die Qualität geschätzt wird, während angenommen wird, dass das mobile Gerät (140) von jedem Funknetzwerkknoten (150-152) bedient wird, während der Dienst fortlaufend auf dem Quellserver (120) ausgeführt wird,

für jeden Funknetzwerkknoten (150-152), Auswählen (A040), aus den Servern, mindestens eines jeweiligen Zielservers (121-123), für den das jeweilige Serverstandortmaß des mindestens einen jeweiligen Zielservers (121-123) dem jeweiligen Funknetzwerkknotenstandortmaß jedes Funknetzwerkknotens (150-152) entspricht, wodurch eine Menge von Zielservern (121-123) erhalten wird, die mindestens einen jeweiligen Zielserver (121-123) für jeden Funknetzwerkknoten (150-152) umfasst,

für jeden Zielserver (121-123) der Menge von Zielservern (121-123), Ermitteln (A050) eines jeweiligen Aufwands der Migration, basierend auf den Ressourcenanforderungen bezüglich des Dienstes (130),

für jeden Zielserver (121-123), Ermitteln (A060) einer jeweiligen Tendenz als eine Funktion jedes Wahrscheinlichkeitswerts, des jeweiligen Aufwands und der jeweiligen Auswirkung, wodurch eine Menge von Tendenzen erhalten wird, die die jeweilige Tendenz für jeden Zielserver (121-123) umfasst,

Auswählen (A070) eines Zielservers (121-123) der Menge von Zielservern (121-123), basierend auf der Menge von Tendenzen, und

Durchführen (A080) der Migration des Dienstes (130) von dem Quellserver (120) zu dem Zielserver (121-123).


 
2. Verfahren nach Anspruch 1, wobei die Funktion die jeweilige Tendenz als direkt proportional zu jedem Wahrscheinlichkeitswert und der jeweiligen Auswirkung definiert und wobei die Funktion weiter die jeweilige Tendenz als umgekehrt proportional zu dem jeweiligen Aufwand definiert.
 
3. Verfahren nach einem der vorstehenden Ansprüche, wobei das Auswählen (A070) des Zielservers (121-123) Auswählen des Zielservers (121-123) umfasst, für den die jeweilige Tendenz unter den größten Tendenzen der Menge von Tendenzen ist.
 
4. Verfahren nach einem der vorstehenden Ansprüche, wobei das Auswählen (A070) des Zielservers (121-123) Auswählen des Zielservers (121-123) umfasst, für den die jeweilige Tendenz über einem Schwellenwert für Migrationstendenz ist.
 
5. Verfahren nach einem der vorstehenden Ansprüche, wobei das Auswählen (A070) des mindestens einen Zielservers (121-123) Auswählen des mindestens einen Zielservers (121-123) basierend auf den Ressourcenanforderungen umfasst, die sich auf den Dienst (130) beziehen.
 
6. Verfahren nach einem der vorstehenden Ansprüche, wobei die jeweilige Auswirkung eine Verschlechterung des Dienstes (130) pro Zeiteinheit angibt, wobei die Verschlechterung direkt proportional zu einer Bitrate von Übertragungen zwischen dem mobilen Gerät (140) und dem Dienst (130) ist.
 
7. Verfahren nach einem der vorstehenden Ansprüche, wobei der Dienst (130) von einer Anwendung bereitgestellt ist, die auf einem beliebigen der Server (120-123) bereitgestellt ist.
 
8. Verfahren nach einem der vorstehenden Ansprüche, wobei die auf den Dienst bezogenen Ressourcenanforderungen mindestens eines von Speicheranforderungen zur Ausführung des Dienstes (130), Speicheranforderungen zum Halten von Daten bezüglich des Dienstes (130), Berechnungsanforderungen zur Ausführung des Dienstes (130) und Bandbreitenanforderungen zum Bereitstellen des Dienstes (130) an das mobile Gerät (140) umfassen.
 
9. Verfahren nach einem der vorstehenden Ansprüche, wobei das Schätzen (A030) der jeweiligen Auswirkung durchgeführt wird, während der Dienst (130) fortlaufend auf dem Quellserver (120) ausgeführt wird.
 
10. Computerprogramm (503), umfassend Computer-lesbare Codeeinheiten, das, wenn auf einem Migrationsverwaltungsmodul (110) ausgeführt, das Migrationsverwaltungsmodul (110) veranlasst, das Verfahren nach einem der Ansprüche 1-9 durchzuführen.
 
11. Träger (505), umfassend das Computerprogramm nach dem vorstehenden Anspruch, wobei der Träger (505) eines von einem elektronischen Signal, einem optischen Signal, einem Funksignal und einem rechnerlesbaren Medium ist.
 
12. Migrationsverwaltungsmodul (110), das konfiguriert ist, eine Migration eines Dienstes (130) zu verwalten, der von einem mobilen Gerät (140) über ein Funkzugriffnetzwerk (101) verwendet wird, wobei das Migrationsverwaltungsmodul (110) mit Informationen über Server (120-123) konfiguriert ist, wobei die Informationen über die Server (120-123) ein jeweiliges Serverstandortmaß für jeden Server (120-123) umfassen, wobei das Serverstandortmaß mindestens eines umfasst von:

- geografischen Koordinaten,

- einer Identität einer physischen Maschine, auf der ein jeweiliger Server unter den Servern (120-123) liegt,

- einer Verzögerungsangabe zwischen jedem der Server (120-123) und dem mobilen Gerät (140),

- einer Angabe bezüglich eines netzwerktopologischen Standorts der Server (120-123), wobei die Server (120-123) einen Quellserver (120) umfassen, auf dem der Dienst (130) ausgeführt wird, wobei das Funkzugriffnetzwerk (101) eine Menge von Funknetzwerkknoten (150-152) umfasst, wobei jeder Funknetzwerkknoten (150-152) der Menge von Funknetzwerkknoten (150-152) mit einem jeweiligen Funknetzwerkknotenstandortmaß verknüpft ist, wobei das Funknetzwerkknotenstandortmaß mindestens eines umfasst von:

- geografischen Koordinaten,

- einer Identität einer physischen Maschine, auf der der Funknetzwerkknoten (150-152) liegt,

- einer Verzögerungsangabe zwischen jedem der Funknetzwerkknoten (150-152) und dem mobilen Gerät (140),

- einer Angabe bezüglich eines netzwerktopologischen Standorts der Funknetzwerkknoten (150-152),

wobei das Migrationsverwaltungsmodul (110) konfiguriert ist zum:

Ermitteln eines Zeitpunkts bezüglich Beendigung der Migration des Dienstes (130), basierend auf Ressourcenanforderungen bezüglich des Dienstes (130),

Ermitteln einer Menge von Wahrscheinlichkeitswerten, die mit der Menge von Funknetzwerkknoten (150-152) des Funkzugriffnetzwerks (101) verknüpft sind, wobei jeder Wahrscheinlichkeitswert der Menge von Wahrscheinlichkeitswerten eine Wahrscheinlichkeit des mobilen Geräts (140) angibt, dass es zu dem Zeitpunkt von einem jeweiligen Funknetzwerkknoten (150-152) der Menge von Funknetzwerkknoten (150-152) bedient wird,

für jeden Funknetzwerkknoten (150-152) der Menge von Funknetzwerkknoten (150-152), Schätzen einer jeweiligen Auswirkung auf eine Dienstqualität (130), wobei die jeweilige Auswirkung auf die Qualität geschätzt wird, während angenommen wird, dass das mobile Gerät (140) von jedem Funknetzwerkknoten (150-152) bedient wird, während der Dienst fortlaufend auf dem Quellserver (120) ausgeführt wird,

für jeden Funknetzwerkknoten (150-152), Auswählen, aus den Servern, mindestens eines jeweiligen Zielservers (121-123), für den das jeweilige Serverstandortmaß des mindestens einen jeweiligen Zielservers (121-123) dem jeweiligen Funknetzwerkknotenstandortmaß jedes Funknetzwerkknotens (150-152) entspricht, wodurch eine Menge von Zielservern (121-123) erhalten wird, die mindestens einen jeweiligen Zielserver (121-123) für jeden Funknetzwerkknoten (150-152) umfasst,

für jeden Zielserver (121-123) der Menge von Zielservern (121-123), Ermitteln eines jeweiligen Aufwands der Migration, basierend auf den Ressourcenanforderungen bezüglich des Dienstes (130),

für jeden Zielserver (121-123), Ermitteln einer jeweiligen Tendenz als eine Funktion jedes Wahrscheinlichkeitswerts, des jeweiligen Aufwands und der jeweiligen Auswirkung, wodurch eine Menge von Tendenzen erhalten wird, die die jeweilige Tendenz für jeden Zielserver (121-123) umfasst,

Auswählen eines Zielservers (121-123) der Menge von Zielservern (121-123), basierend auf der Menge von Tendenzen, und

Durchführen der Migration des Dienstes (130) von dem Quellserver (120) zu dem Zielserver (121-123).


 
13. Migrationsverwaltungsmodul (110) nach Anspruch 12, wobei die Funktion die jeweilige Tendenz als direkt proportional zu jedem Wahrscheinlichkeitswert und der jeweiligen Auswirkung definiert und wobei die Funktion weiter die jeweilige Tendenz als umgekehrt proportional zu dem jeweiligen Aufwand definiert.
 
14. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-13, wobei das Migrationsverwaltungsmodul (110) zum Auswählen des Zielservers (121-123) durch Auswählen des Zielservers (121-123) konfiguriert ist, für den die jeweilige Tendenz unter den größten Tendenzen der Menge von Tendenzen ist.
 
15. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-14, wobei das Migrationsverwaltungsmodul (110) zum Auswählen des Zielservers (121-123) durch Auswählen des Zielservers (121-123) konfiguriert ist, für den die jeweilige Tendenz über einem Schwellenwert für Migrationstendenz ist.
 
16. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-15, wobei das Migrationsverwaltungsmodul (110) zum Auswählen des mindestens einen Zielservers (121-123) durch Auswählen des mindestens einen Zielservers (121-123) konfiguriert ist, basierend auf den Ressourcenanforderungen, die sich auf den Dienst (130) beziehen.
 
17. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-16, wobei die jeweilige Auswirkung eine Verschlechterung des Dienstes (130) pro Zeiteinheit angibt, wobei die Verschlechterung direkt proportional zu einer Bitrate von Übertragungen zwischen dem mobilen Gerät (140) und dem Dienst (130) ist.
 
18. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-17, wobei der Dienst (130) von einer Anwendung bereitgestellt ist, die auf einem beliebigen der Server (120-123) ausführbar ist.
 
19. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-18, wobei die auf den Dienst bezogenen Ressourcenanforderungen mindestens eines von Speicheranforderungen zur Ausführung des Dienstes (130), Speicheranforderungen zum Halten von Daten bezüglich des Dienstes (130), Berechnungsanforderungen zur Ausführung des Dienstes (130) und Bandbreitenanforderungen zum Bereitstellen des Dienstes (130) an das mobile Gerät (140) umfassen.
 
20. Migrationsverwaltungsmodul (110) nach einem der Ansprüche 12-19, wobei das Migrationsverwaltungsmodul (110) zum Schätzen der jeweiligen Auswirkung konfiguriert ist, während der Dienst (130) fortlaufend auf dem Quellserver (120) ausgeführt wird.
 


Revendications

1. Procédé, effectué par un module de gestion de migration (110), pour gérer une migration d'un service (130) étant utilisé par un dispositif mobile (140) sur un réseau d'accès radio (101), dans lequel le module de gestion de migration (110) est configuré avec des informations concernant des serveurs (120-123), dans lequel les informations concernant les serveurs (120-123) comprennent une mesure de localisation de serveur respective pour chaque serveur (120-123), dans lequel la mesure de localisation de serveur comprend au moins l'un parmi :

- des coordonnées géographiques,

- une identité d'une machine physique sur laquelle un serveur respectif parmi les serveurs (120-123) réside,

- une indication d'un temps de propagation entre chacun des serveurs (120-123) et le dispositif mobile (140),

- une indication relative à une localisation topologique de réseau des serveurs (120-123)

dans lequel les serveurs (120-123) comprennent un serveur source (120) sur lequel le service (130) est exécuté, dans lequel le réseau d'accès radio (101) comprend un ensemble de nœuds de réseau radio (150-152), dans lequel chaque nœud de réseau radio (150-152) de l'ensemble de nœuds de réseau radio (150-152) est associé à une mesure de localisation de nœud de réseau radio respective,
dans lequel la mesure de localisation de nœud de réseau radio comprend au moins l'un parmi :

- des coordonnées géographiques,

- une identité d'une machine physique sur laquelle le nœud de réseau radio (150-152) réside,

- une indication d'un temps de propagation entre chacun des nœuds de réseau radio (150-152) et le dispositif mobile (140),

- une indication relative à une localisation topologique de réseau des nœuds de réseau radio (150-152),

dans lequel le procédé comprend les étapes consistant à :

déterminer (A010) un point dans le temps relatif à l'accomplissement de la migration du service (130) sur la base d'exigences de ressources relatives au service (130),

déterminer (A020) un ensemble de valeurs de probabilité associées à l'ensemble de nœuds de réseau radio (150-152) du réseau d'accès radio (101), dans lequel chaque valeur de probabilité de l'ensemble de valeurs de probabilité indique la probabilité du dispositif mobile (140) d'être servi, au point dans le temps, par un nœud de réseau radio respectif (150-152) de l'ensemble de nœuds de réseau radio (150-152),

pour chaque nœud de réseau radio (150-152) de l'ensemble de nœuds de réseau radio (150-152), estimer (A030) un impact respectif sur une qualité du service (130), dans lequel l'impact respectif sur la qualité est estimé tout en supposant que le dispositif mobile (140) est servi par ledit chaque nœud de réseau radio (150-152) tandis que le service est exécuté en continu sur le serveur source (120),

pour ledit chaque nœud de réseau radio (150-152), sélectionner (A040), parmi les serveurs, au moins un serveur cible respectif (121-123) pour lequel la mesure de localisation de serveur respective dudit au moins un serveur cible respectif (121-123) correspond à la mesure de localisation de nœud de réseau radio respective dudit chaque nœud de réseau radio (150-152), obtenant ainsi un ensemble de serveurs cibles (121-123) comprenant ledit au moins un serveur cible respectif (121-123) pour ledit chaque nœud de réseau radio (150-152),

pour chaque serveur cible (121-123) de l'ensemble de serveurs cibles (121-123), déterminer (A050) un coût respectif de la migration sur la base des exigences de ressources relatives au service (130),

pour ledit chaque serveur cible (121-123), déterminer (A060) une tendance respective, en fonction de ladite chaque valeur de probabilité, du coût respectif, et de l'impact respectif, obtenant ainsi un ensemble de tendances comprenant la tendance respective pour ledit chaque serveur cible (121-123),

sélectionner (A070) un serveur cible (121-123) de l'ensemble de serveurs cibles (121-123) sur la base de l'ensemble de tendances, et

effectuer (A080) la migration du service (130) depuis le serveur source (120) vers le serveur cible (121-123).


 
2. Procédé selon la revendication 1, dans lequel la fonction définit la tendance respective comme directement proportionnelle à ladite chaque valeur de probabilité et à l'impact respectif, et dans lequel la fonction définit en outre la tendance respective comme inversement proportionnelle au coût respectif.
 
3. Procédé selon l'une quelconque des revendications précédentes, dans lequel la sélection (A070) du serveur cible (121-123) comprend la sélection du serveur cible (121-123) pour lequel la tendance respective est parmi les tendances les plus élevées de l'ensemble de tendances.
 
4. Procédé selon l'une quelconque des revendications précédentes, dans lequel la sélection (A070) du serveur cible (121-123) comprend la sélection du serveur cible (121-123) pour lequel la tendance respective est supérieure à une valeur de seuil pour la tendance de migration.
 
5. Procédé selon l'une quelconque des revendications précédentes, dans lequel la sélection (A070) dudit au moins un serveur cible (121-123) comprend la sélection dudit au moins un serveur cible (121-123) sur la base des exigences de ressources relatives au service (130).
 
6. Procédé selon l'une quelconque des revendications précédentes, dans lequel l'impact respectif indique une dégradation du service (130) par unité de temps, dans lequel la dégradation est directement proportionnelle au débit binaire de transmissions entre le dispositif mobile (140) et le service (130).
 
7. Procédé selon l'une quelconque des revendications précédentes, dans lequel le service (130) est fourni par une application exécutable sur l'un quelconque parmi les serveurs (120-123).
 
8. Procédé selon l'une quelconque des revendications précédentes, dans lequel les exigences de ressources relatives au service comprennent au moins l'une parmi des exigences de mémoire pour l'exécution du service (130), des exigences de stockage pour la détention de données relatives au service (130), des exigences informatiques pour l'exécution du service (130), et des exigences de bande passante pour la fourniture du service (130) au dispositif mobile (140).
 
9. Procédé selon l'une quelconque des revendications précédentes, dans lequel l'estimation (A030) de l'impact respectif est effectuée tandis que le service (130) est exécuté en continu sur le serveur source (120).
 
10. Programme informatique (503), comprenant des unités de code lisibles par ordinateur qui, lorsqu'elles sont exécutées sur un module de gestion de migration (110), amènent le module de gestion de migration (110) à effectuer le procédé selon l'une quelconque des revendications 1 à 9.
 
11. Porteuse (505) comprenant le programme informatique selon la revendication précédente, dans lequel la porteuse (505) est l'un parmi un signal électronique, un signal optique, un signal radio et un support lisible sur ordinateur.
 
12. Module de gestion de migration (110) configuré pour gérer une migration d'un service (130) étant utilisé par un dispositif mobile (140) sur un réseau d'accès radio (101), dans lequel le module de gestion de migration (110) est configuré avec des informations concernant des serveurs (120-123), dans lequel les informations concernant les serveurs (120-123) comprennent une mesure de localisation de serveur respective pour chaque serveur (120-123), dans lequel la mesure de localisation de serveur comprend au moins l'un parmi :

- des coordonnées géographiques,

- une identité d'une machine physique sur laquelle un serveur respectif parmi les serveurs (120-123) réside,

- une indication d'un temps de propagation entre chacun des serveurs (120-123) et le dispositif mobile (140),

- une indication relative à une localisation topologique de réseau des serveurs (120-123)

dans lequel les serveurs (120-123) comprennent un serveur source (120) sur lequel le service (130) est exécuté, dans lequel le réseau d'accès radio (101) comprend un ensemble de nœuds de réseau radio (150-152), dans lequel chaque nœud de réseau radio (150-152) de l'ensemble de nœuds de réseau radio (150-152) est associé à une mesure de localisation de nœud de réseau radio respective, dans lequel la mesure de localisation de nœud de réseau radio comprend au moins l'un parmi :

- des coordonnées géographiques,

- une identité d'une machine physique sur laquelle le nœud de réseau radio (150-152) réside,

- une indication d'un temps de propagation entre chacun des nœuds de réseau radio (150-152) et le dispositif mobile (140),

- une indication relative à une localisation topologique de réseau des nœuds de réseau radio (150-152),

dans lequel le module de gestion de migration (110) est configuré pour :

déterminer un point dans le temps relatif à l'accomplissement de la migration du service (130) sur la base d'exigences de ressources relatives au service (130),

déterminer un ensemble de valeurs de probabilité associées à l'ensemble de nœuds de réseau radio (150-152) du réseau d'accès radio (101), dans lequel chaque valeur de probabilité de l'ensemble de valeurs de probabilité indique la probabilité du dispositif mobile (140) d'être servi, au point dans le temps, par un nœud de réseau radio respectif (150-152) de l'ensemble de nœuds de réseau radio (150-152),

pour chaque nœud de réseau radio (150-152) de l'ensemble de nœuds de réseau radio (150-152), estimer un impact respectif sur une qualité du service (130), dans lequel l'impact respectif sur la qualité est estimé tout en supposant que le dispositif mobile (140) est servi par ledit chaque nœud de réseau radio (150-152) tandis que le service est exécuté en continu sur le serveur source (120),

pour ledit chaque nœud de réseau radio (150-152), sélectionner, parmi les serveurs, au moins un serveur cible respectif (121-123) pour lequel la mesure de localisation de serveur respective dudit au moins un serveur cible respectif (121-123) correspond à la mesure de localisation de nœud de réseau radio respective dudit chaque nœud de réseau radio (150-152), obtenant ainsi un ensemble de serveurs cibles (121-123) comprenant ledit au moins un serveur cible respectif (121-123) pour ledit chaque nœud de réseau radio (150-152),

pour chaque serveur cible (121-123) de l'ensemble de serveurs cibles (121-123), déterminer un coût respectif de la migration sur la base des exigences de ressources relatives au service (130),

pour ledit chaque serveur cible (121-123), déterminer une tendance respective, en fonction de ladite chaque valeur de probabilité, du coût respectif, et de l'impact respectif, obtenant ainsi un ensemble de tendances comprenant la tendance respective pour ledit chaque serveur cible (121-123),

sélectionner un serveur cible (121-123) de l'ensemble de serveurs cibles (121-123) sur la base de l'ensemble de tendances, et

effectuer la migration du service (130) depuis le serveur source (120) vers le serveur cible (121-123).


 
13. Module de gestion de migration (110) selon la revendication 12, dans lequel la fonction définit la tendance respective comme directement proportionnelle à ladite chaque valeur de probabilité et à l'impact respectif, et dans lequel la fonction définit en outre la tendance respective comme inversement proportionnelle au coût respectif.
 
14. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 13, dans lequel le module de gestion de migration (110) est configuré pour sélectionner le serveur cible (121-123) en sélectionnant le serveur cible (121-123) pour lequel la tendance respective est parmi les tendances les plus élevées de l'ensemble de tendances.
 
15. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 14, dans lequel le module de gestion de migration (110) est configuré pour sélectionner le serveur cible (121-123) en sélectionnant le serveur cible (121-123) pour lequel la tendance respective est supérieure à une valeur de seuil pour la tendance de migration.
 
16. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 15, dans lequel le module de gestion de migration (110) est configuré pour sélectionner ledit au moins un serveur cible (121-123) en sélectionnant ledit au moins un serveur cible (121-123) sur la base des exigences de ressources relatives au service (130).
 
17. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 16, dans lequel l'impact respectif indique une dégradation du service (130) par unité de temps, dans lequel la dégradation est directement proportionnelle au débit binaire de transmissions entre le dispositif mobile (140) et le service (130).
 
18. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 17, dans lequel le service (130) est fourni par une application exécutable sur l'un quelconque parmi les serveurs (120-123).
 
19. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 18, dans lequel les exigences de ressources relatives au service comprennent au moins l'une parmi des exigences de mémoire pour l'exécution du service (130), des exigences de stockage pour la détention de données relatives au service (130), des exigences informatiques pour l'exécution du service (130), et des exigences de bande passante pour la fourniture du service (130) au dispositif mobile (140).
 
20. Module de gestion de migration (110) selon l'une quelconque des revendications 12 à 19, dans lequel le module de gestion de migration (110) est configuré pour estimer l'impact respectif tandis que le service (130) est exécuté en continu sur le serveur source (120).
 




Drawing

















Cited references

REFERENCES CITED IN THE DESCRIPTION



This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

Non-patent literature cited in the description