Patent Description:
The Internet, which is a human-centered connectivity network where humans generate and consume information, is now evolving to the Internet of Things (IoT) where distributed entities, such as things, exchange and process information without human intervention.

In an edge computing environment, if a UE is moving, eventually a server which optimally served the UE will not be optimal anymore. This could be due to an increased distance of the server from the UE due to the UE's changing location. In another case the server may get overloaded, or crashes, and therefore the server is unable to fulfil the performance requirements of application clients in the UE. In such scenarios, the UE is expected to switch from the current server, called as a source server, to a new optimal server, called a target server. <NPL>, is a technical report capturing the study on application architecture for enabling edge applications over 3GPP networks.

In a densely deployed area where multiple edge server options are available, multiple target servers are available that could potentially be the optimal target server. The selection of the target server from the potential target servers should ideally be the responsibility of an Edge Enabler Client (EEC) in the UE, as it is aware of the preferences of the user and the application clients in the UE, which communicate with the target server. But with an edge enabler layer in a place, there could be many entities, including entities in the network or the edge that can detect a need of service continuity. In such scenarios it is not apparent as to how the target server is selected while taking the user and application preferences and performance requirements (Key Performance Indicators, KPIs) into account.

Accordingly, the aspects herein comprise a method for selecting a target Edge Application Server (EAS) in an edge computing system for a user equipment (UE), the method comprising sending, by an Edge Enabler Client (EEC) in the UE, a selection criteria for an Application Client in the UE to a source Edge Enabler Server (EES) for selecting the target EAS, determining by the source Edge Enabler Server, a need for an application context transfer for an application client in the UE, selecting by the source Edge Enabler Server (EES), the target Edge Application Server for the application context transfer based on the selection criteria received from the Edge Enabler Client, and sending by the source Edge Enabler Server (EES), a notification to the Edge Enabler Client about the selected target Edge Application Server and target Edge Enabler Server associated with the target Edge Application Server.

In certain aspects, determining by the source Edge Enabler Server (EES) the need for application context transfer for the Edge Enabler Client comprises one of monitoring by the source Edge Enabler Server (EES), a change in location of the UE; receiving by the source Edge Enabler Server (EES), a request for UE application context transfer from the Edge Application Server (EAS); receiving by the source Edge Enabler Server (EES), a request for UE application context transfer from the Edge Enabler Client; and monitoring by the source Edge Enabler Server (EES), an overload condition in a source Edge Application Server.

In another aspect the selection criteria are shared by the Edge Enabler Client as part of an initial registration request to the source Edge Enabler Server. In another aspect, the selection criteria are shared by the Edge Enabler Client as part of the Edge Application Server discovery request to the Edge Enabler Server.

In yet another aspect, the selection criteria include one of application client expected KPIs and Application Client minimum KPIs. The expected KPIs denote the expected performance in order for the Application Clients to receive currently required services from the EAS; and the minimum KPIs denote the minimum performance in order for the Application Clients to receive meaningful services from the EAS.

In yet another aspect, the selection criteria are related to one of a particular application or plurality of applications at the UE.

In certain aspects, the method further comprises sending by the Edge Enabler Client, an acknowledgement message to the source Edge Enabler Server triggering an application context transfer procedure; and initiating by the source Edge Enabler Server, the application context transfer of the Edge Enabler Client with the selected Edge Application Server.

In certain aspects, selecting the target Edge Application Server for the application context transfer based on the selection criteria by the source Edge Enabler Server comprises sending, by the source Edge Enabler Server, a request to the Edge Configuration Server to determine the potential target Edge Enabler Server, serving the Edge Application Server that the Edge Enabler Client requires based on the selection criteria; receiving, by the source Edge Enabler Server, a list of potential target Edge Application Server from the Edge Configuration Server in response to the request; sending, by the source Edge Enabler Server (252a), a request to one of the received Edge Enabler Server (<NUM>) to determine the potential target Edge Application Server (<NUM>), that the Edge Enabler Client (<NUM>) requires based on the selection criteria; receiving, by the source Edge Enabler Server (<NUM>), a list of potential target Edge Application Server (<NUM>) from at least one of the potential Edge Enabler Server (<NUM>) in response to the request; and selecting, by the source Edge Enabler Server, the target Edge Application Server for the application context transfer from the received potential target Edge Application Servers based on the selection criteria.

In yet another aspect, the target Edge Application Server is selected by the Edge Enabler Client at the UE.

These and other aspects of the invention herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating explanatory embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein, and the embodiments herein include all such modifications.

According to an embodiment of the present disclosure, a target Edge Application Server (EAS) can be selected efficiently and a service continuity is obtained.

In this disclosure, embodiments may be described and illustrated in terms of blocks which carry out a described function or functions. These blocks, which may be referred to herein as managers, units, modules, hardware components or the like, are physically implemented by analog and/or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits and the like, and may optionally be driven by firmware. The circuits may, for example, be embodied in one or more semiconductor chips, or on substrate supports such as printed circuit boards and the like. The circuits constituting a block may be implemented by dedicated hardware, or by a processor (e.g., one or more programmed microprocessors and associated circuitry), or by a combination of dedicated hardware to perform some functions of the block and a processor to perform other functions of the block. Each block of the embodiments may be physically separated into two or more interacting and discrete blocks without departing from the scope of the disclosure. Likewise, the blocks of the embodiments may be physically combined into more complex blocks without departing from the scope of the disclosure.

The accompanying drawings are used to help easily understand various technical features and it should be understood that the present disclosure is not limited by the accompanying drawings. As such, the present disclosure should be construed to extend to any alterations, and substitutes in addition to those which are particularly set out in the accompanying drawings.

Accordingly, the embodiments herein provide a different method and a UE which facilitate selection of a target server in different scenarios, by taking a user and application preferences and Application Client KPIs into account. The KPIs indicate a performance capacity of the server for example a storage space that is available at the server. In some embodiments, the KPIs may be a CPU/GPU, an available memory, a maximum round-trip time, a rate of requests the server can handle and the like.

When the UE is responsible for determining a need of a service continuity, the Edge Enabler Client (EEC) upon determining the need of an application context transfer discovers available target servers and selects the optimal one based on preferences of the user and/or an application client. To discover available target server, the EEC performs service provisioning and Enabler Application Server (EAS) discovery procedures to select the preferred target server from a list of discovered EAS. Further the method includes providing details of the target server to an Edge Enabler Server (EES) to initiate continuity procedures with the selected server.

However, in some scenarios, it can be advantageous for a server, namely, the Edge Enabler Server or the Edge Application Server, to be responsible for determining the need of the service continuity. In some embodiments, methods according to this disclosure provide that the Edge Enabler Server take into account the preferences of the Edge Enabler Client (EEC) and the Application Client to which the EES is serving, in order to select the appropriate target server for maintaining the continuity of the service by fulfilling the preferences and KPI requirements of the Application Client.

For clarity and better understanding of the specification, the scope of certain terms used in this disclosure should be construed, without limitation, to encompass the descriptions provided below.

In this disclosure, the terms "service continuity" and "Application Context Transfer (ACT)" may be used interchangeably, to refer to procedures wherein the user's application context is moved or transferred from a server to a new server to maintain continuity of the service when the application connects to the new server.

In this disclosure, the terms "Application Context Transfer (ACT)" and "Application Context Relocation (ACR)" may also be used interchangeably. ACT refers to the actual transfer of Application Context between the Application Servers. ACT is a part of the process called ACR, for continuation of service across Application Servers.

In certain embodiments, the Edge Enabler Client in <FIG> can be replaced with a source Edge Application Server to help select the target Edge Application Server.

<FIG> is sequence diagram illustrating an example of an Edge Enabler Client (EEC) (<NUM>) detecting a need of an Application Context Transfer (ACT) and providing a target Edge Application Server (EAS) (<NUM>) to a source Edge Enabler Server (EES) (<NUM>), according to the certain known embodiments.

Referring to <FIG>, an EEC (<NUM>) upon determining the need for the ACT, discovers and selects the target EAS (<NUM>). Further, the EEC (<NUM>) provides information of the determined target EAS (<NUM>) to the source Edge Enabler Server (<NUM>) in order to initiate the application context transfer with the target EAS (<NUM>).

Thus, as seen the existing arts do not discloses taking into consideration the preferences of the user and the application clients in the UE when the need of ACT is detected by the source EES.

Thus, it is desired to address the above-mentioned disadvantages or other shortcomings or at least provide a useful alternative.

Certain embodiments described herein address the above-described issues by providing a method and a UE for providing a selection criteria to a source EES for selecting an optimal target server for service continuity based on preferences of a user and application clients in the UE.

Various embodiments as described herein provide a method and device for selecting the optimal target server for service continuity based on the preferences of the user and the application clients in the UE using an EEC.

Various embodiments as described herein send a target EAS selection criteria by the EEC to a source EES, such that the source EES is aware about the preferences, such as KPI requirements, of the user and the application clients in the UE even before detection of a need for an ACT.

<FIG> illustrates, in block diagram format, an example of a UE (<NUM>) in an edge computing environment (<NUM>) and wherein the UE (<NUM>) is responsible for providing selection criteria for searching for an optimal target server based on an ACT request, according to certain embodiments as disclosed herein.

Referring to the illustrative example of <FIG>, an edge computing system (<NUM>) comprises a UE (<NUM>) communicating with a wireless network (<NUM>) through an edge (<NUM>).

The UE (<NUM>) may be, for example, a mobile device, a smart watch, a cellular phone, a smart phone, a Personal Digital Assistant (PDA), a tablet computer, a laptop computer, an Internet of things (IoT) device, an Artificial intelligence (AI) device or the like.

In certain embodiments, the UE (<NUM>) includes a memory (<NUM>), a processor (<NUM>), a communicator (<NUM>), an application client (<NUM>) collectively referenced and an Edge Enabler Client (<NUM>).

The wireless network (<NUM>) comprises an Edge Configuration Server (ECS) (<NUM>).

The edge (<NUM>) comprises an Edge Enabler Server (EES) (<NUM>) and a plurality of Edge Application Servers (EAS) (254a-254n). In certain embodiments, the EES (<NUM>) serving the UE (<NUM>) is termed as a source EES. In some embodiments, the EAS serving the UE (<NUM>) is termed as a source EAS. In certain embodiments edge (<NUM>) denotes the Edge Data Networks as defined by the 3GPP TS <NUM> technical standard.

In certain embodiments, the memory (<NUM>) in the UE (<NUM>) stores instructions to be executed by the processor (<NUM>) for selecting the optimal target EAS from the plurality of target EAS (254a-254n).

The memory (<NUM>) may include non-volatile storage elements. Examples of such non-volatile storage elements may include magnetic hard discs, optical discs, floppy discs, flash memories, or forms of electrically programmable memories (EPROM) or electrically erasable and programmable (EEPROM) memories. In addition, the memory (<NUM>) may, in some examples, be considered a non-transitory storage medium. The term "non-transitory" may indicate that the storage medium is not embodied in a carrier wave or a propagated signal. However, the term "non-transitory" should not be interpreted that the memory (<NUM>) is non-movable. In some examples, the memory (<NUM>) can be configured to store larger amounts of information than the memory. In certain examples, a non-transitory storage medium may store data that can, over time, change (e.g., in Random Access Memory (RAM) or cache). The memory (<NUM>) can be an internal storage, or it can be an external storage unit of the UE (<NUM>), a cloud storage, or any other type of external storage.

In certain embodiments, the processor (<NUM>) communicates with the memory (<NUM>), the communicator (<NUM>), the plurality of applications client (<NUM>), and the Edge Enabler Client (<NUM>).

The processor (<NUM>) is configured to execute instructions stored in the memory (<NUM>), including instructions for selection of the optimal target EAS from the plurality of target EAS (254a-254n).

The processor (<NUM>) may include one or a plurality of processors, be a general-purpose processor, such as a central processing unit (CPU), an application processor (AP), or the like, a graphics-only processing unit such as a graphics processing unit (GPU), a visual processing unit (VPU), and/or an Artificial intelligence (AI) dedicated processor such as a neural processing unit (NPU).

In certain embodiments, the communicator (<NUM>) is configured for communicating internally between internal hardware components and with external devices via one or more networks. The communicator (<NUM>) includes an electronic circuit specific to a standard that enables wired or wireless communication.

The plurality of application clients (218a-218n) in the UE (<NUM>) are applications either stored or currently running on the UE (<NUM>). The plurality of application clients (218a-218n) may include, for example, a streaming service application, a music application, a gaming application, and a social networking application.

Information about the application clients (218a-218n) is maintained by the Edge Enabler Client (<NUM>) at the UE (<NUM>).

The EEC (<NUM>) at the UE (<NUM>), tracks information about a service required by the different applications in the UE (<NUM>) and accordingly determines a need for an Application Context Transfer (ACT). The EEC (<NUM>) then sends ACT information to the source EES (<NUM>) present in the edge (<NUM>).

In certain embodiments, a user of the UE (<NUM>) may be using either one or more applications from the plurality of application clients (218a-218n). For example, if the user is viewing a video on the streaming application, then a service requirement of a network providing data to UE (<NUM>) is to provide uninterrupted video streaming with a best quality to the user. However, the user of the UE (<NUM>) may move to a different location while watching the video. In such a case, the EAS (<NUM>) to which the UE (<NUM>) is currently connected may cease to be the optimal EAS for the UE (<NUM>) at its new location. In order to achieve seamless video streaming, the UE (<NUM>) needs to connect to another optimal EAS.

In certain embodiments, the source EES (<NUM>) present in the edge (<NUM>) sends a request to the EEC (<NUM>) to determine the target EAS (<NUM>) upon detecting the ACT. The request from the source EES (252a) also acts as a notification or an indication to the Edge Enabler Client to (<NUM>) for preparing the Application Client (<NUM>) for a service continuity.

On receiving the request from the source Edge Enabler Server (<NUM>), the Edge Enabler Client (<NUM>) determines a potential target Edge Application Server (<NUM>). Once the Edge Enabler Client (<NUM>) has a list of potential targets, it uses the preferences of the user and the Application Client (<NUM>) along with KPI requirements of the Application Client (<NUM>) to select the optimal target Edge Application Server (<NUM>).

The Edge Enabler Client (<NUM>) sends details of the selected optimal target Edge Application Server (<NUM>) with which application context transfer should be initiated.

The source Edge Enabler Server (<NUM>) takes the information received from the EEC (<NUM>) into account and initiates application context transfer procedures with the selected target Edge Application Server (EAS) (<NUM>).

In certain embodiments, selection of the optimal target EAS (<NUM>) is performed by the source EES (<NUM>) present in the edge (<NUM>) upon detecting the ACT received from the EEC (<NUM>), wherein the potential target EAS (<NUM>) are selected by the EES (<NUM>).

In various embodiments, upon determining that the service continuity (i.e., ACT) is needed, the source Edge Enabler Server (<NUM>) contacts the Edge Configuration Server (<NUM>) to push a service provisioning update notification to the Edge Enabler Client (<NUM>). The service provisioning update notification comprises a list of potential target Edge Enabler Servers. Further, the source Edge Enabler Server (<NUM>) requests the Edge Enabler Client (<NUM>) to provide the selected Edge Application Server (<NUM>) for the application context transfer.

In some embodiments, the Edge Enabler Client (<NUM>) prepares a selection criteria to select the target Edge Application Server (<NUM>) in an event where the service continuity may be required. The selection criteria could be for a particular application or may apply to multiple applications. The Edge Enabler Client (<NUM>) utilizes the preferences of the user and Application Clients (<NUM>), including the KPI requirements of the Application Clients (<NUM>). Once prepared, the Edge Enabler Client (<NUM>) shares this selection criterion with the Edge Enabler Server (<NUM>). In some embodiments, the selection criteria can be shared by the Edge Enabler Client (<NUM>) as part of its registration request to the Edge Enabler Server (<NUM>). The Edge Enabler Server (<NUM>) stores the received criteria, and sends a response confirming receipt of the selection criteria. Further, the Edge Enabler Server (<NUM>) uses the criteria to determine the target Edge Application Server (<NUM>) in scenarios where the service continuity is needed.

Thus, as seen above, methods and devices according to various embodiments disclosed herein take into consideration the preference of the user and the applications.

Although <FIG> illustrates a given set of hardware components of the UE (<NUM>), but it is to be understood that other embodiments are possible and within the contemplated scope of this disclosure. In some embodiments, the UE (<NUM>) may include additional or fewer components than those shown in the Figure. Further, the labels or names of the components are used only for illustrative purpose and does not limit the scope of the disclosure. One or more components can be combined together as part of an architecture for performing functions of selecting the optimal target EAS from the plurality of target EAS (254a-254n).

<FIG> is a sequence diagram illustrating an example of the source Edge Enabler Server (<NUM>) requesting the Edge Enabler Client (<NUM>) to provide the target Edge Application Server details, according to some embodiments as disclosed herein.

Referring to the illustrative example of <FIG>, the source Edge Enabler Server (<NUM>), upon determining that the service continuity is needed, requests the Edge Enabler Client (<NUM>) to discover and select the target Edge Application Server (<NUM>) to which the application context should be transferred. Upon receiving the information of the selected target Edge Application Server (<NUM>) from the Edge Enabler Client (<NUM>), which may include the information of the target Edge Enabler Server also, the source Edge Enabler Server (<NUM>) performs the application context transfer procedure according to the operations described below.

At operation <NUM>, the source Edge Enabler Server (252a) detects the need for an application context transfer. In certain embodiments, the need for an application context transfer could be a result of a change in a location of the UE (<NUM>) detected by the source Edge Enabler Server (<NUM>) with or without help of the wireless network (<NUM>). In certain embodiments, the need for an application context transfer could be a result of a request from the source Edge Enabler Server (252a) or a request from the Edge Enabler Client (<NUM>) itself. In various embodiments the need for an application context transfer is based on certain events monitored by the source Edge Enabler Server (252a), like overload in source Edge Application Server (<NUM>). The above-mentioned scenarios are just some examples of how the source Edge Enabler Server (252a) detects the need for service continuity.

At operation <NUM>, upon determining the need for an application context transfer, the source Edge Enabler Server (252a) sends a request to the Edge Enabler Client (<NUM>) to determine the target Edge Application Server (<NUM>) for transferring the application context. This request also acts as a notification or an indication to the Edge Enabler Client (<NUM>) to prepare the Application Client (<NUM>) for the service continuity.

At operation <NUM>, upon receiving the request from the source Edge Enabler Server (<NUM>), the Edge Enabler Client (<NUM>) uses service provisioning procedures and an EAS discovery procedures as required, to determine the potential target Edge Enabler Server (252b1-252bn) and the potential target Edge Application Server (<NUM>) at operation <NUM>. The provisioning procedures and the EAS discovery procedures are as provided in the 3GPP TS <NUM>.

Once the Edge Enabler Client (<NUM>) has a list of potential targets, it uses the preferences of the user and the Application Client (<NUM>) along with the KPI requirements of the Application Client (<NUM>) to select the optimal target Edge Application Server (<NUM>) and, if required, the target Edge Enabler Server (252b1-252bn).

The Edge Enabler Client (<NUM>) in its response to the source Edge Enabler Server (<NUM>) includes the details of the selected optimal target Edge Enabler Server (<NUM>) or the target Edge Application Server (<NUM>) with which the application context transfer should be initiated at operation <NUM>.

At operation <NUM>, the source Edge Enabler Server (<NUM>) takes the information provided in step <NUM> into account and initiates the application context transfer procedures with the selected optimal target Edge Application Server (<NUM>).

In some embodiments, the source Edge Enabler Server (252a), as described in <FIG> is replaced with the target Edge Enabler Server (252b1-252bn). In such embodiments, the need for the Edge Enabler Client (<NUM>) to request for service provisioning (operation <NUM> i.e., discovering target Edge Enabler Servers), may be avoided. Also, if needed, the target Edge Enabler Server (252b1-252bn) provides a list of potential target Edge Application Servers (<NUM>) in its request to the Edge Enabler Client (<NUM>). , In such embodiments, the Edge Enabler Client (<NUM>) may not need to perform potential target Edge Application Server discovery according to operation <NUM>.

<FIG> is a sequence diagram illustrating an example of the source Edge Enabler Server (<NUM>) providing the list of potential targets to Edge Enabler Client (<NUM>) to select the target Edge Application Server (<NUM>), according to some embodiments as disclosed herein.

Referring to the non-limiting example of <FIG>, in some embodiments, the source Edge Enabler Server (252a), upon determining that the service continuity is needed, contacts the Edge Configuration Server (<NUM>) to discover the potential target Edge Enabler Servers (<NUM>). Further, the source Edge Enabler Server (<NUM>) discovers the details of the potential target Edge Application Servers (<NUM>) from the potential target Edge Enabler Servers (252b). Once the source Edge Enabler Server (252a) has determined the list of potential target Edge Application Servers (<NUM>), it sends the list to the Edge Enabler Client (<NUM>) to select the target Edge Application Server (<NUM>) from the provided list. Specifically, one example of providing the list of potential targets to select the target EAS comprises the following operations:
At operation <NUM>, the source Edge Enabler Server (252a) detects the need for the application context transfer. As discussed above, in certain embodiments, the need for the application context transfer could be a result of the change in the location of the UE (<NUM>) detected by the source Edge Enabler Server (<NUM>), with or without the help of the wireless network (<NUM>). In some embodiments, the need for the application context transfer could be the result of the request from the source Edge Enabler Server (<NUM>) or the request from the Edge Enabler Client itself (<NUM>). In some embodiments, the need for the application context transfer is based on certain events monitored by the Edge Enabler Server (<NUM>), such as an overload in the source Edge Application Server (<NUM>). The above-mentioned scenarios are a non-exhaustive set of examples of how the source Edge Enabler Server (<NUM>) detects the need for providing service continuity.

At operation <NUM>, upon determining the need for application context transfer, the source Edge Enabler Server (252a) sends a request to the Edge Configuration Server (<NUM>) to determine the potential target Edge Enabler Servers (252b) serving the Edge Application Server (<NUM>) which the Edge Enabler Client (<NUM>) requires.

At operation <NUM>, once the source Edge Enabler Sever (252a) has the list of potential target Edge Enabler Servers (252b), then the source Edge Enabler Sever (252a) contacts each of the potential target Edge Enabler Servers (252a) to obtain the details of the Edge Application Server (<NUM>) and creates the list of the potential target Edge Application Servers (<NUM>).

At operation <NUM>, once the source Edge Enabler Server (252a) has the list of potential target Edge Application Servers (<NUM>), the source Edge Enabler Server (252a) shares this list, including the details of the Edge Application Servers (<NUM>) with the Edge Enabler Client (<NUM>) to select the target Edge Application Server (<NUM>). In various embodiments, the source Edge Enabler Server (252a) skips operation <NUM> and shares the list of potential target Edge Enabler Servers (252b) to the Edge Enabler Client (<NUM>).

In certain embodiments, if the list of the potential target Edge Application Servers (<NUM>) is shared by the source Edge Enabler Server (252a), then the Edge Enabler Client (<NUM>) selects the target Edge Application Server (<NUM>) at <NUM>. Otherwise, if the list of potential target Edge Enabler Servers (252b) is shared by the source Edge Enabler Server (252a), then the Edge Enabler Client (<NUM>) performs the EAS discovery procedures with the potential target Edge Enabler Servers (252b) and further selects the target Edge Application Server (<NUM>) at <NUM>.

At operation <NUM>, once the target Edge Application Server (<NUM>) is selected by the Edge Enabler Client (<NUM>), taking into account the user and Application Client (<NUM>) preferences and the KPI requirements, the Edge Enabler Client (<NUM>) shares the details of the target Edge Application Server (<NUM>) with the source Edge Enabler Server (252a). The source Edge Enabler Server (252a) takes the information provided in operation <NUM> into account and initiates application context transfer procedures with the selected target Edge Application Server (252b).

<FIG> is a sequence diagram illustrating an example of the source Edge Enabler Server (252a) triggering the Edge Configuration Server (<NUM>) to send service provisioning update with the potential target Edge Enabler Servers (252b) to the Edge Enabler Client (<NUM>), according to the embodiments as disclosed herein.

Referring to the illustrative example of <FIG>, the source Edge Enabler Server (252a), upon determining that the service continuity is needed, contacts the Edge Configuration Server (<NUM>) to push the service provisioning update notification to the Edge Enabler Client (<NUM>). This service provisioning update notification will include a list of potential target Edge Enabler Servers (252b). Further the source Edge Enabler Server requests the Edge Enabler Client (<NUM>) to provide the selected Edge Application Server (<NUM>) for the application context transfer. The request from the source Edge Enabler Server (252a) triggers the EAS discovery by the Edge Enabler Client (<NUM>) to the potential target Edge Enabler Servers (<NUM>). The Edge Enabler Client (<NUM>) selects the target Edge Application Server (<NUM>) from the available servers and provide this information to the source Edge Enabler Server (252a) to initiate the application context transfer. An example of the above-summarized exchange is provided with reference to the operations described below.

At operation <NUM>, the source Edge Enabler Server (252a) detects the need for the application context transfer. As discussed above in certain embodiments, the need for the application context transfer could be a result of a change in a location of the UE (<NUM>) detected by the source Edge Enabler Server (<NUM>), with or without the help of the wireless network (<NUM>). In various embodiments, the need for the application context transfer could be a result of a request from the source Edge Enabler Server (<NUM>) or a request from the Edge Enabler Client itself (<NUM>). In some embodiments, the need or the application context transfer is based on certain events monitored by the Edge Enabler Server (<NUM>), such as an overload at the source Edge Application Server (<NUM>). The above-mentioned scenarios are just some examples of how the source Edge Enabler Server (<NUM>) detects the need for service continuity.

At operation <NUM>, upon determining the need for application context transfer, the source Edge Enabler Server (252a) sends the request to the Edge Configuration Server (<NUM>) to push the service provisioning notification the Edge Enabler Client (<NUM>). The request includes the EAS information such as EAS ID and can include a future location of the UE where it'd need the target Edge Application Server (<NUM>).

At operation <NUM>, the Edge Configuration Server (<NUM>) upon receiving this request from the source Edge Enabler Server (252a), determines the provisioning information containing the list of potential target Edge Enabler Servers (252b), and notifies to the Edge Enabler Client (<NUM>). In an alternate embodiment, the Edge Configuration Server (<NUM>) monitors the UE (<NUM>) and push the updated service provisioning based on the UE's (<NUM>) updated characteristics such as the current location; without the request from the source Edge Enabler Server (252a).

At operation <NUM>, once the Edge Enabler Client (<NUM>) is notified, the Edge Configuration Server (<NUM>) responds to the source Edge Enabler Server (252a).

At operation <NUM>, the source Edge Enabler Server (252a) sends a request to the Edge Enabler Client (<NUM>) to choose the target Edge Application Server (<NUM>).

At operation <NUM>, upon receiving the request from the source Edge Enabler Server (252a), the Edge Enabler Client (<NUM>) uses the EAS discovery procedures to determine the list of potential target Edge Application Servers (<NUM>). The Edge Enabler Client (<NUM>) selects the target Edge Application Server (<NUM>), taking into account the user and Application Client (<NUM>) preferences and the KPI requirements.

At operation <NUM>, the Edge Enabler Client (<NUM>) shares the details of the target Edge Application Server (<NUM>) including the details of the Edge Enabler Server (252b), with the source Edge Enabler Server (252a).

At operation <NUM>, the source Edge Enabler Server (252a) takes the information provided in operation <NUM> into account and initiates the application context transfer procedures with the selected target Edge Application Server (<NUM>).

In various embodiments, the methods described with reference to <FIG>, may require a real-time interaction between the source Edge Enabler Server (252a) and the Edge Enabler Client (<NUM>) for selection of the target Edge Application Server (<NUM>). However, such real-time interaction can add a delay in completing the overall service continuity procedure. To avoid this delay, in some embodiments, the Edge Enabler Client (<NUM>) configures the target Edge Application Server selection criteria in the source Edge Enabler Server (252a), for all the applications that may require the service continuity in future. Upon detecting the need for application context transfer, the source Edge Enabler Server (252a) uses the target Edge Application Server selection criteria, to discover and select the target Edge Enabler Server (252b) and the target Edge Application Server (<NUM>) on its own. The criteria may include application client KPIs, preferred ECSPs, EAS availability conditions (for e.g., available for at least <NUM> minutes) etc. and are provided by the Edge Enabler Client (<NUM>) in an explicit request to the source Edge Enabler Server or as part of the EEC (<NUM>) registration details or as part of the EAS discovery request.

If needed, the criteria may simply indicate that the source Edge Enabler Server (252a) can choose the target servers on its own. This can be due to multiple usage scenarios, for e.g., Edge Enabler Client (<NUM>) is not aware of any preferences of the user or the Application Client (<NUM>), including KPI requirements.

<FIG> is a sequence diagram illustrating an example of and Edge Enabler Client (<NUM>) configuring the target Edge Application Server selection criteria in the Edge Enabler Server (252a), according to various embodiments as disclosed herein.

<FIG> illustrates a procedure wherein the Edge Enabler Client (<NUM>) is providing the selection criteria to the source Edge Enabler Server (252a), wherein the procedure comprises the operations described below.

The Edge Enabler Client (<NUM>) prepares the selection criteria to select the target Edge Application Server (<NUM>) for applications that may require service continuity. The selection criteria may be for a particular application or may apply to the multiple applications in the UE (<NUM>). The Edge Enabler Client (<NUM>) utilizes the preferences of the user and Application Clients (<NUM>), including the KPI requirements of the Application Clients (<NUM>).

Once prepared, the Edge Enabler Client (<NUM>) shares the selection criterion with the source Edge Enabler Server (252a) at operation <NUM>. In an alternate embodiment, the selection criteria may be shared by the Edge Enabler Client (<NUM>) as part of a registration request to the source Edge Enabler Server (252a). In an alternate embodiment, the selection criteria may be shared by the Edge Enabler Client (<NUM>) as part of EAS discovery request to the source Edge Enabler Server (252a).

The source Edge Enabler Server (252a) stores the received criteria at operation <NUM>.

At operation <NUM>, the source Edge Enabler Server (252a) sends a response confirming receipt of the selection criteria. Further, the Edge Enabler Server (252a) uses the criteria to determine the target Edge Application Server (<NUM>) in scenarios where service continuity is needed.

<FIG> is a signalling diagram illustrating an example of the source Edge Enabler Server (252a) selecting the target Edge Application Server (<NUM>) based on the selection criteria received from the Edge Enabler Client (<NUM>), according to certain embodiments as disclosed herein.

<FIG> illustrates a procedure wherein the source Edge Enabler Server (252a), upon determining that the service continuity is needed, contacts the Edge Configuration Server (<NUM>) to discover the potential target Edge Enabler Servers (<NUM>). The source Edge Enabler Server (252a) discovers the details of the potential target Edge Application Servers (<NUM>) from the potential target Edge Enabler Servers (252b). Once the source Edge Enabler Server (252a) has determined the list of potential target Edge Application Servers (<NUM>), it also selects the target EAS (<NUM>) based on the selection criteria received from EEC (<NUM>) and notifies the details of the selected target EAS (<NUM>) and the EES at which the selected target EAS is registered at i.e., the target EES to EEC (<NUM>). In certain embodiments, this procedure comprises the operations described below.

At operation <NUM>, the source Edge Enabler Server (252a) detects the need for the application context transfer. As discussed above, in certain embodiments, the need for the application context transfer could be a result of a change in a location of the UE (<NUM>) detected by the source Edge Enabler Server (<NUM>) with or without the help of the wireless network (<NUM>). In various embodiments, the need for the application context transfer could be a result of a request from the source Edge Enabler Server (<NUM>) or a request from the Edge Enabler Client itself (<NUM>). In some embodiments, the need of the application context transfer is based on certain events monitored by the Edge Enabler Server (<NUM>), like overload in source Edge Application Server (<NUM>). The above-mentioned scenarios are just some examples of how the source Edge Enabler Server (<NUM>) detects the need for service continuity.

At operation <NUM>, upon determining the need for the application context transfer, the source Edge Enabler Server (252a) sends the request to the Edge Configuration Server (<NUM>) to determine the potential target Edge Enabler Servers (252b), serving the Edge Application Server (<NUM>) that the Edge Enabler Client (<NUM>) requires. If the Edge Enabler Server (252a) already has the details of potential target Edge Enabler Servers (252b), then this operation may be skipped.

At operation <NUM>, once the source Edge Enabler Sever (252a) has the list of potential target Edge Enabler Servers (252b), it contacts each of the potential target Edge Enabler Servers (252b) to obtain the details of the Edge Application Server (<NUM>) creating the list of potential target Edge Application Servers (<NUM>). If the Edge Enabler Server (252a) already has the details of potential target Edge Application Servers (<NUM>), then this operation may be skipped.

At operation <NUM>, once the Edge Enabler Server (252a) has the list of potential target Edge Application Servers (<NUM>), it selects the optimal target Edge Application Server (<NUM>) taking into account the user and Application Client (<NUM>) preferences and the KPI requirements received as selection criteria from the EEC (<NUM>).

At operation <NUM>, the Source Edge Enabler Server (252a) sends the information of the selected target Edge Application Server (<NUM>) and the EES at which the selected target EAS is registered at i.e., the target EES to the Edge Enabler Client (<NUM>).

At operation <NUM>, the Edge Enabler Client (<NUM>) provides the acknowledgement to the source Edge Enabler Server (252a) that could trigger the application context transfer procedures. In an alternate embodiment, the Edge Enabler Server (252a) can trigger the application context transfer procedures without an acknowledgement from the Edge Enabler Client (<NUM>).

At operation <NUM>, the source Edge Enabler Server (252a) initiates the application context transfer procedures with the selected target Edge Application Server (<NUM>). In an alternate embodiment, this step can occur without the involvement of the Edge Enabler Server (252a).

In some embodiments, operation <NUM> can be performed immediately after operation <NUM> in order to minimize a service disruption during continuity as per the service requirement.

In certain embodiments, the methods as depicted in <FIG> and <FIG> can be used in combination. In such scenario, the source Edge Enabler Server (252a) selects the target Edge Application Server (<NUM>) if it has received the selection criteria from the Edge Enabler Client (<NUM>) (method as proposed in <FIG>) or requests the Edge Enabler Client (<NUM>) to select the target Edge Application Server from the list of potential target Edge Application Servers (method as proposed in <FIG>).

<FIG> is a flow diagram illustrating an example method of selecting the optimal target Edge Application Server (<NUM>) based on the selection criteria stored at the Edge Enabler Server (252a), according to certain embodiments as disclosed herein.

At operation <NUM>, the Edge Enabler Client (EEC) (<NUM>) sends the selection criteria to the source Edge Enabler Server (252a) for selecting the target Edge Application Server (<NUM>). Further the source Edge Enabler Server (252a) stores the selection criteria.

At operation <NUM>, the source Edge Enabler Server (252a) detects the need for the application context transfer for the application client (<NUM>) in the UE (<NUM>).

At operation <NUM>, the source Edge Enabler Server (252a) selects the target EAS for the application context transfer based on the selection criteria.

At operation <NUM>, the source Edge Enabler Server (252a) sends a notification to the Edge Enabler Client (<NUM>) about the selected target EAS.

<FIG> is a block diagram illustrating an example of source edge enabler server according to certain embodiments of the present disclosure.

Referring to the illustrative example of <FIG>, the source edge enabler server may include a transceiver (<NUM>), a controller (or a processor) (<NUM>), and a memory (<NUM>).

The transceiver (<NUM>) is responsible for communication with other network entities. The transceiver (<NUM>) may communicate information, signals, or messages with other network entities, for example, an edge enabler client in a user equipment (UE).

The controller (<NUM>) may control to: receive, from an edge enabler client in the UE via the transceiver (<NUM>), a selection criteria for selecting the target edge application server, determine a need for an application context transfer for an application client in the UE, select the target edge application server for the application context transfer based on the selection criteria received from the edge enabler client, and transmit via the transceiver (<NUM>), to the edge enabler client, a notification about the selected target edge application server.

The memory (<NUM>) may store the information, signals, or messages received from the other network entities. The memory (<NUM>) may store information generated by the controller (<NUM>).

Claim 1:
A method performed by an edge enabler client in an edge computing system, the method comprising:
transmitting, to a source edge enabler server, information indicating selection criteria for a target edge application server selection; and
receiving, from the source edge enabler server, a notification about a target edge application server, which satisfies the selection criteria, for an application context relocation for an application client,
wherein the information indicating the selection criteria includes information indicating that a service continuity is required and minimum key performance indicators, KPIs, being required in order for the application client to receive service.