Edge application server discovery and identification of activated edge application servers and associated profiles
The method allows client devices to discover and select optimal edge application servers for media streaming in 5GMS systems, improving processing efficiency and performance through targeted discovery and activation of edge resources.
Patent Information
- Application Number
- JP2023565270
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-03-29
- Filing Date
- 2023-03-30
- Publication Date
- 2025-11-05
- Estimated Expiration
- 2043-03-30
AI Technical Summary
Existing 5GMS architectures lack efficient methods for client devices to discover and identify activated edge application servers (EAS) and their associated profiles, hindering optimal edge processing for media streaming.
A method for media streaming that involves determining a target EAS by sending a discovery request with filters, receiving a response indicating available EASs, and selecting a target EAS for communication, along with edge resource processing methods that include provisioning and activating EASs based on service criteria.
Enables efficient discovery and utilization of optimal edge application servers for media streaming, enhancing latency, response time, and bandwidth performance by leveraging edge processing capabilities.
Smart Images

Figure 0007764499000012 
Figure 0007764499000013 
Figure 0007764499000014
Abstract
Description
[Technical Field]
[0001] This application is based on and claims the benefit of priority to U.S. Non-provisional Application No. 18 / 127,996, filed March 29, 2023, U.S. Provisional Application No. 63 / 325,508, filed March 30, 2022, and U.S. Provisional Application No. 63 / 325,512, filed March 30, 2022, the contents of each of which are incorporated herein by reference in their entirety.
[0002] This application relates generally to Fifth Generation Media Streaming (5GMS) using edge processing, and more particularly to Edge Application Server (EAS) discovery and identification of activated EAS and associated EAS profiles. [Background technology]
[0003] The background art provided herein is intended to generally present the context for the present disclosure. The work of the instant inventors, to the extent that their work is described in this background art section, and aspects of the description that may not otherwise qualify as prior art at the time of filing of this application, are not admitted, expressly or implicitly, as prior art to the present disclosure.
[0004] Utilizing edge processing in a 5GMS architecture may be desirable due to the benefits that edge processing offers, such as latency, response time, bandwidth, and proximity of processing closer to the user equipment (UE). Therefore, a way for a client to provide edge services and / or obtain information about edge application servers may be desirable. Summary of the Invention
[0005] Aspects of the present disclosure provide methods and apparatus for media streaming and edge resource processing for 5GMS (Fifth Generation Media Streaming) applications.
[0006] In some implementations, a method for media streaming includes determining, by a user device, a target Edge Application Server (EAS) for a 5GMS (Fifth Generation Media Streaming) streaming session with a 5GMS-aware application of the user device; sending, by the user device, a discovery request to identify one or more available EASs for the streaming session, the discovery request including one or more discovery filters, the one or more discovery filters including one or more of a service key performance indicator (KPI), a service area, a service availability schedule, or a service continuity scenario; receiving, by the user device, a discovery request response indicating one or more available EASs that satisfy the discovery request; selecting, by the user device, a target EAS from among the one or more available EASs; and communicating, by the user device, a media stream during the streaming session with the target EAS.
[0007] In some other implementations, a method for media streaming includes receiving, by a 5GMS (Fifth Generation Media Streaming) application function (AF), edge resource information received from a 5GMS application provider via an M1 interface, the edge resource configuration being used to provision one or more edge application servers (EAS); and in response to receiving the edge resource information, sending, by the 5GMS AF, service access information indicating availability of the edge resources to a user device via an M5 interface, the service access information including an EAS discovery template used to discover a target EAS for the 5GMS streaming session.
[0008] In some other implementations, a method for edge resource processing includes determining, at a Fifth Generation Media Streaming (5GMS) application provider of a data network, to obtain a list of one or more activated edge application servers (EAS); at the 5GMS application provider, sending an activation EAS request to a 5GMS application function (AF) of the edge data network to obtain the list; and at the 5GMS application provider, receiving the list from the 5GMS AF.
[0009] In some other implementations, a device for streaming media and / or edge resource processing is disclosed. The device may include circuitry configured to perform any one of the implementations of the above methods.
[0010] Aspects of the present disclosure also provide a non-transitory computer-readable medium storing instructions that, when executed by a computer for streaming media and / or edge resource processing, cause the computer to perform any one of the implementations of the above methods. [Brief explanation of the drawings]
[0011] Further features, nature and various advantages of the disclosed subject matter will become more apparent from the following detailed description and accompanying drawings.
[0012] [Figure 1] 1 shows a block diagram of an exemplary edge-enabled Fifth Generation Media Streaming (5GMS) system.
[0013] [Figure 2] 1 shows a flowchart of an exemplary method of media streaming performed by a user device.
[0014] [Figure 3] 1 illustrates a flowchart of an exemplary method for media streaming performed by an edge network.
[0015] [Figure 4] 10 shows a flowchart of another exemplary method for media streaming performed by an edge network.
[0016] [Figure 5] 1 illustrates a flowchart of an exemplary method of edge resource processing performed by a 5GMS application provider.
[0017] [Figure 6] 1 shows a flowchart of an exemplary method of edge resource processing performed by a 5GMS Application Function (AF).
[0018] [Figure 7] 10 illustrates a flowchart of another exemplary method of edge resource processing performed by a 5G MS application provider.
[0019] [Figure 8]10 shows a flowchart of another exemplary method of edge resource processing performed by the 5GMS AF.
[0020] [Figure 9] FIG. 1 illustrates a block diagram of an exemplary computer system. DETAILED DESCRIPTION OF THE INVENTION
[0021] FIG. 1 is a block diagram of an edge-enabled 5GMS (Fifth Generation Media Streaming) system 100. Generally, a 5GMS system is a collection or assembly of one or more application functions (AFs), one or more application servers (ASs), and interfaces from a 5GMS architecture that are configured to support or perform mobile network operator (MNO) and third-party downlink media streaming services and MNO and third-party uploaded media streaming services. An edge-enabled 5GMS system has the functionality and architecture of a 5GMS system and is further configured to support or perform edge processing (e.g., media processing in an edge data network (DN)). Generally, the term "edge" refers to a location at or relatively close to a user. Correspondingly, edge processing (or edge computing) refers to computer processing performed by one or more computing devices that are considered to be located at or near a user device.
[0022] 1 , the edge-enabled 5GMS system 100 includes a user device 102, a data network (DN) 104, and an edge DN 106. Generally, a user device, such as user device 102, as described herein, may include a single electronic device or apparatus or multiple electronic devices or apparatuses (e.g., a network thereof) capable of communicating over a network. A user device may also include or be otherwise referred to as a user terminal, user terminal device, or user equipment (UE). Additionally, a user device may be or include, but is not limited to, a mobile device (such as a mobile phone, smartphone, smartwatch, tablet, laptop computer, vehicle, other watercraft (including, but not limited to, human-, motor-, or engine-powered devices such as automobiles, airplanes, trains, ships, or bicycles)) or a fixed or stationary device (such as, but not limited to, a desktop computer or other computing device that is not typically mobile for long periods of time, such as a home appliance, other relatively heavy devices including the Internet of Things (IoT), computing devices used in commercial or industrial environments, etc.).
[0023] Additionally, the DN 104 and the edge DN 106 may each include one or more computing devices configured to communicate signals with the user device 102. At least some of the communicated signals may be characterized as downlink or uplink. As used herein, the term downlink refers to the direction of transmission from the network (e.g., a DN or edge DN) to the user device. Correspondingly, the network is the source of the transmission and / or the information or content (e.g., media) contained in the transmission, and the user device is the consumer of the information or content, or acts as a consuming device. In this context, the network sends the downlink transmission, and the user device receives the downlink transmission. Also, as used herein, the term uplink refers to the direction of transmission from the user device to the network (e.g., a DN or edge DN). Correspondingly, the user device is the source of the transmission and / or the information or content (e.g., media) contained in the transmission, and the network is the consumer of the information or content, or acts as a consuming device. In this context, the user device sends the uplink transmission, and the network receives the uplink transmission.
[0024] 1, the user device 102, the DN 104, and the edge DN 106 may be configured to establish one or more media sessions and stream media during one or more media sessions. In at least some configurations, the user device 102, the DN 104, and the edge DN 106 may perform media streaming and associated functions to establish media streams and media in accordance with one or more 5GMS technical specifications, standards, and / or protocols, such as, for example, 3GPP (Third Generation Partnership Project) TS (Technical Specification) 26.501.
[0025] Additionally or alternatively, each of the user device 102, DN 104, and edge DN 106 may include one or more components or modules for enabling communication of media streams and / or establishing media streams and media sessions, such as in accordance with the 5GMS specification. Such components are collectively referred to herein as 5GMS components. In the configuration shown in FIG. 1, the 5GMS components include a 5GMS application provider 108, a 5GMS-aware application 110, a 5GMS client 112, a media session handler 114, a media stream handler 116, a 5GMS application function (AF) 118, and a 5GMS application server (AS) 120. In other configurations, the 5GMS components may include more or fewer than those shown in FIG. 1. Also, as described in further detail below, the 5GMS components may be configured to communicate with each other via or through one or more interfaces M. Unless explicitly stated otherwise, each of the 5GMS components may be configured to communicate in both the uplink and downlink directions, and each of the interfaces M may handle communications in both the uplink and downlink directions. In at least some configurations, one or more of the 5GMS components and / or one or more of the interfaces M may be separated into a downlink portion for handling downlink functions and an uplink portion for handling uplink functions. For simplicity, the separate downlink and uplink portions are not separately shown in FIG. 1 or referenced herein.
[0026] Generally, the 5GMS application provider 108 is a module of the DN 104 that uses 5GMS for streaming services and supplies or provides 5GMS-aware applications 110 to the user device 106. The 5GMS application provider 108 may perform, initiate, and / or establish provisioning sessions to configure 5GMS features for the 5GMS-aware applications 110. Additionally or alternatively, the 5GMS application provider 108 may provide functionality and / or procedures used by the 5GMS-aware applications 110 to enable the user device 106 to discover available streaming services and content offerings and to select specific services or content items for access. Additionally or alternatively, the 5GMS application provider 108 may perform service announcements that enable the 5GMS-aware applications 110 to obtain 5GMS service access information. Additionally or alternatively, the 5GMS application provider 108 uses 5GMS downlink (5GMSd) and / or 5GMS uplink (5GMSu) capabilities for downlink and / or uplink streaming services, respectively. Additionally or alternatively, the 5GMS application provider 108 has content-specific media capabilities such as media creation, encoding, formatting, etc. that use a 5GM5 interface to stream media to and from the 5GMS-aware application 110.
[0027] The 5GMS-aware application 110 is a module of the user device 102 that contains service logic for one or more 5GMS application services and participates in the delivery of downlink and / or uplink 5GMS services.
[0028] The 5GMS client 112 is a module of the user device 102 dedicated to 5GMS, providing interfaces and / or application programming interfaces (APIs) for modules within the user device 102 to communicate with each other and / or with modules or other components external to the user device 102 in accordance with 5GMS. In some configurations, such as that shown in FIG. 1, the 5GMS client 112 may include a media session handler 114 and a media stream handler 116, although other configurations may be possible in which one or both of the media session handler 114 or the media stream handler 116 are separate from the 5GMS client 112. In other configurations, the user device 102 may include the media session handler 114 and the media stream handler 116 without necessarily having a 5GMS client 112.
[0029] The media session handler 114 is a module of the user device 102 that communicates with the 5GMS Application Function (AF) to establish, control, and / or support communication and / or delivery of media during a media session. For at least some configurations, the media session handler 114 may perform additional functions, such as consumption and quality of experience (QoE) metrics collection and reporting. The media session handler 114 may also provide network assistance for downlink streaming delivery and / or by providing bitrate recommendations and / or estimations. Additionally or alternatively, for at least some configurations, the media session handler 114 may expose one or more APIs for use by the 5GMS-aware application 110.
[0030] The media stream handler 116 is a module of the user device 102 that communicates with a 5GMS application server (AS) for downlink and / or uplink streaming of media content. The media stream handler 116 may also provide services to the 5GMS-aware applications 110 for media capture and uplink streaming, and to the media session handler 114 for media session control. In at least some configurations, the media stream handler 116 may also comprise a media player that handles media content streaming and / or may provide one or more APIs to the 5GMS-aware applications 110 for media playback and / or may provide one or more APIs to the media session handler 114 for media session control.
[0031] The Edge DN 104 is a local data network including one or more computing devices that support and / or include an architecture configured to enable edge applications and / or edge computing or processing. The Edge DN 106 may include one or more 5GMS Application Functions (AFs) 118 and / or one or more Application Servers (ASs) 120. In the example configuration of FIG. 1, the Edge DN 106 includes one 5GMS AF 118 and two ASs 120(1), 120(2). Other configurations of one or more 5GMS AFs 118 and / or one or more 5GMS ASs 120 may be possible.
[0032] In general, the 5GMS AF 118 is a module that provides control functionality to the media session handler 114 of the user device 102 and / or the 5GMS application provider 108 of the data network 102. For at least some configurations, the 5GMS AF 118 may relay or initiate requests to different policy or charging function (PCF) processes.
[0033] Also, generally, the 5GMS AS 120 is an application server dedicated to 5G media streaming and hosts 5G media functions. The 5GMS AS 120 may communicate with the media stream handler 116 to stream media content. Additionally or alternatively, the 5GMS AS 120 may perform content hosting, including, but not limited to, retrieving media content from the 5GMS application provider 108 and caching the media content to reduce repeated retrieval of the same content.
[0034] The edge-enabled 5GMS system 100 may also include multiple interfaces or APIs used by the 5GMS components to communicate with each other. As shown in Figure 1, each Mi (where i is an integer) may be used between each two of the 5GMS components.
[0035] The M1 interface is used to provide data structures from the 5GMS application provider I08 to the 5GMS AF that configure characteristics of the 5GMS-aware application 110 during a provisioning session. The M1 interface may enable the 5GMS application provider 108 to provision the use of the edge-enabled 5GMS system 100 for downlink and uplink media streaming and obtain feedback. Additionally or alternatively, the 5GMS application provider I08 may use the M1 interface to provision resources within the edge DNI 06 for the 5GMS-aware application 110, for example, by configuring an edge processing resource template. For at least some configurations, the 5GMS application provider 108 may configure the following via the M1 interface: one or more conditions for activation of edge processing, such as a traffic descriptor, application identifier, or geographic location of the user device I02; a selection of client-driven or AF-driven management; EAS profile information for each EAS 124 that provides the application, such as service key performance indicators (KPIs), geographic location, and service continuity support; and / or application context relocation tolerance and requirements.
[0036] The M2 interface is the interface between the 5GMS 108 and the 5GMS AS 120 through which the 5GMS AS 120 retrieves media content from the 5GMS application provider 108.
[0037] The M3 interface is an interface between the 5GMS AF 118 and the 5GMS AS 120 and is used to exchange information for content hosting on the 5GMS AS 120. The M3 interface may also be used to enable selection of a preferred one of multiple 5GMS ASes 120 for a media session.
[0038] The M4 interface M4 is an interface between the 5GMS AS 120 and the media stream handler 116. The M4 interface is used to communicate one or more media streams of media content between the 5GMS AS 120 and the media stream handler 116 (in the uplink and / or downlink direction).
[0039] The M5 interface is an interface between the 5GMS AF 118 and the media session handler 114 and is used to communicate information for processing, controlling, reporting, and supporting media sessions. The 5GMS AF 118 and the media session handler 114 may also use the M5 interface to implement one or more security, authorization, and / or authentication mechanisms for the media session and / or report QoE metrics. Additionally or alternatively, the 5GMS AF 118 may communicate service access information to the media session handler 114 through the M5 interface to share configuration information related to edge processing. Additionally or alternatively, the 5GMS AF 118 may use the M5 interface to communicate consumption reporting and / or metrics reporting configuration information provisioned over the M1 interface and passed by the 5GMS AF 118 to the 5GMS client 112.
[0040] The M6 interface is an interface for communication between the media session handler 114 and the media stream handler 116, and / or between the media session handler 114 and the 5GMS-aware application 110, and between two or more of the 5GMS-aware application 110, the media session handler 114, and the media stream handler 116. The media session handler 114 and / or the media stream handler 116 may use the M6 interface to configure the 5GMS-aware application 110 with 5GMS functionality or otherwise enable the 5GMS-aware application 110 to utilize 5GMS functionality. Additionally or alternatively, the M6 interface may be used to configure 5GMS-related data reporting for the 5GMS-aware application 110.
[0041] The M7 interface is an interface between the media session handler 114 and the media stream handler 116, and between the media stream handler 116 and the 5GMS-aware application 110. The M7 interface allows the media session handler 114 and / or the 5GMS-aware application 110 to utilize the media player of the media stream handler 116, and / or may be used to configure QoE metrics to be measured and recorded and / or collect metric measurement logs by the user device 106. Additionally or alternatively, the M7 interface may be used to configure, activate, and / or deactivate media capture, media encoding, and / or media upstream client functionality.
[0042] The M8 interface is an interface between a 5GMS application provider 108 and a 5GMS-aware application 110. In any of various configurations, the 5GMS application provider 108 may use the M8 interface to provide various information directly to the 5GMS-aware application 110, including, by way of non-limiting example, service access information, remote control commands, and service announcement information.
[0043] Additionally, as previously mentioned, the 5GMS system 100 of FIG. 1 may be edge-enabled and / or capable of edge processing for 5G media streaming. The 5GMS system 100 may be edge-enabled by being configured with an edge component that provides one or more of the 5GMS components with edge computing or processing capabilities. In this regard, the 5GMS AF 118 and the 5GMS AS 120 may each be an edge-enabled component and / or configured to perform edge processing, as indicated by being part of the edge DN 106. Additionally, the user device 102 may be edge-enabled by being able to communicate with the edge-enabled 5GMS 118 and the edge-enabled 5GMS AS 120 for at least media streaming. The 5GMS AF 118 may be an edge-enabled component by including at least a first type of edge component referred to as an edge-enabled server (EES) 122. Each 5GMS AS 120 may also be an edge-enabled component by including a second type of edge component referred to as an edge application server (EAS) 124. Additionally, the user device 102 may be edge-enabled by including third and fourth types of edge components, referred to as an edge-enabled client (EEC) 126 and / or an application client 128, respectively. The edge components may also include an edge configuration server (ECS) 130. The edge components may communicate with each other according to one or more specifications, standards, and / or protocols, such as, for example, 3GPP TS 23.558.
[0044] In general, the EES 122 supports or is configured to perform functions that support the operation of the EAS 124 and the EEC 126, including provisioning configuration information to the EEC 126 and / or enabling the exchange of application data traffic with the EAS 124. In at least some embodiments, the EES 122 may also perform additional functions such as, by way of non-limiting example, interacting with a core network (not shown in FIG. 1 ) to access network function capabilities, performing context transfer with the EEC 126, supporting external exposure of network and service capabilities to the EAS, registration functions (including registration, renewal, and deregistration for the EEC 126 and the EAS 124), and / or triggering EAS instantiation upon request. Other functions performed by the EES 122 may also be possible.
[0045] Additionally, in general, the EAS 124 is configured to connect to the user device 102 and facilitate the service of 5G SMS-aware applications with edge computing capabilities. Additionally, the EAS 124 may consume core network capabilities, such as by invoking core network capabilities via an edge-enablement layer through the EES 122, by directly invoking core network function APIs, and / or by invoking core network capabilities through a capability publishing function. Additionally or alternatively, the EAS 124 may expose its service APIs to other EASs 124, such as by supporting an API provider domain function. Additionally or alternatively, the EAS 124 may consume EAS service APIs exposed by other EASs, such as by supporting an API invocation function. Other functions or actions performed by the EAS 124 may be possible.
[0046] Additionally, the EEC 126 is a module of the user device 102 configured to retrieve configuration information to enable the exchange of application data traffic with the EAS 124. Additionally, the EEC 126 may be configured to discover available EASs 124 in the edge DN 106. Additionally or alternatively, the EEC 126 may be configured to detect mobility events for the user device 106. In at least some configurations, such as that shown in FIG. 1, the EEC 126 may be part of or a component of the media session handler 114 of the user device 102, although other configurations in which the EEC 126 is a separate component from the media session handler 114 may also be possible.
[0047] Additionally, an application client (AC) 128 is a module of the user device 102 that identifies and / or connects to one or more EASs 124. For example, the AC 128 may determine to connect to the EAS 124 that it determines is best suited to the service needs of the 5G MS-aware application 110. In at least some configurations, such as that shown in FIG. 1, the AC 128 may be part of or a component of the 5G MS-aware application 110, although other configurations are possible in which the AC 128 is a separate component from the 5G MS-aware application 110.
[0048] Additionally, in general, the ECS 130 is a module that provides support functions for the EEC 126 to connect with the EES 122. For example, the ECS 130 may provide edge configuration information to the EEC 126. For at least some configurations, the edge configuration information may include at least one of information for the EEC 126 to distinguish between multiple EESs 126 or information for establishing connections with one or more EESs 122. In some configurations, the ECS 130 may also support registration, update, and / or deregistration of the EES 122 and / or interact with the core network to access network function capabilities. Other functions of the ECS 130 may also be possible. In at least some configurations, such as that shown in FIG. 1, the ECS 130 is a separate component from each of the user device 102, the DN 104, and the edge DN 106, although other configurations in which the ECS 130 is a component of the user device 102, the DN 104, or the edge DN 106 may also be possible.
[0049] Additionally, similar to the "M" interface used by 5GMS components, edge components may communicate with each other through multiple edge interfaces or APIs. As shown in Figure 1, each edge interface is denoted as EDGE-j, where j is an integer.
[0050] EDGE-1 is an interface between the EES 122 and the EEC 126. EDGE-1 may be used by the EES 122 and the EEC 126 to communicate information related to registration and deregistration of the EEC 126 with the EES 122, retrieval and provisioning of EAS configuration information, discovery of available EASs 124 within the Edge DN 106, and / or service continuity procedures.
[0051] EDGE-3 is an interface between EES 122 and EAS 124. EES 122 and EAS 124 may use EDGE-3 to register EAS 124 with EES 122 (which may include registering availability information such as time and / or location constraints), deregister EAS 124 from ESS, perform discovery of target EAS (T-EAS) information to support application context transfer (ACT), provide access to network capability information (such as location information), and / or request data session setup between AC 128 and EAS 124, including communication of QoS information. Other information may also be communicated and / or other functions may be performed using EDGE-3.
[0052] The EDGE-4 is an interface between the EEC 126 and the ECS 130. The ECS 130 may use the EDGE-4 to provision the EEC 126 with edge configuration information.
[0053] EDGE-5 is the interface between the EEC 126 and the application client 128 .
[0054] EDGE-6 is an interface between EES 122 and ECS 130. EES 122 and ECS 130 may use EDGE-6 to register EES 122 with ECS 130, deregister EES 122 from ECS 130, and / or retrieve target ESS information from ECS 130.
[0055] The EDGE-9 is the interface between two EESSs 122. Two EESSs 122 may use the EDGE-9 to discover target EAS information to support Application Context Relocation (ACR), to perform EESS context relocation procedures, and / or for transparent transfer of application context during Edge Enablement Layer (EEL) managed ACR.
[0056] Other edge interfaces, including those between edge components and core networks not shown in FIG. 1, may be part of or otherwise used in the edge-enabled 5GMS system 100 in various other exemplary configurations.
[0057] Additionally, as used herein, service access information is a set of one or more parameters and / or addresses used by a user device 102, such as a 5GMS client 112, to activate and control a streaming session. In at least some example configurations, the service access information may also include one or more parameters and / or addresses used to report services, content, and / or QoE metrics. In some configurations, the user device 102 may receive the service access information directly from the DN 104. In other configurations, the user device 102 may receive the service access information from the 5GMS AF 118 of the edge DN 106. By being edge-enabled, the media session handler 114 of the user device 102 may be configured to use the service access information to determine whether the media streaming session meets eligibility criteria for requesting edge resources.
[0058] As described above, during provisioning, the 5GMS application provider 108 may request deployment of edge resources and / or configure information regarding edge processing requirements for media streaming sessions. During the provisioning session, the 5GMS application provider 108 may configure information regarding its edge processing requirements using the M1 interface. As part of provisioning, the 5GMS application provider 108 may provision one or more new EASs 124 using the M1 interface. Using the M1 interface, the 5GMS application provider 108 may create, update, and / or retrieve edge resource configuration information. The 5GMS AF 118 may then share the configuration information regarding edge processing with the media session handler 114. The configuration information may be included as part of the service access information that the 5GMS AF 118 provides to the media session handler 114 via the M5 interface. Upon receiving the service access information from the 5GMS AF 118 by the media session handler 114, the EEC 126 may process the configuration information and then request edge processing for the streaming session from the EES 122 of the 5GMS AF 118 using EDGE-1. Table 1 below lists several parameters (also called properties) that may be included in the service access information that the 5GMS AF 118 provides to the media session handler 114. [Table 1-1] [Table 1-2] [Table 1-3] [Table 1-4] [Table 1-5] [Table 1-6]
[0059] As shown in the penultimate row of Table 1, the service access information may include an EAS discovery template (easDiscoveryTemplate), which may be a template for an EAS discovery filter used by the EEC 126 to discover and select from among one or more available EASs 124 as the target EAS 124 to serve the user device 102 during a media streaming session. Table 2 below lists several parameters or properties that may be included in part or in whole in the EAS discovery template that the 5GMS AF 118 provides to the media session handler 114. [Table 2-1] [Table 2-2]
[0060] In some example configurations, when the user device 102, such as via its media session handler 114, decides to communicate a media stream during a streaming session, the EEC 126 may send an EAS discovery request, such as via an EDGE-1 interface, to the EES 122 to obtain information about available EASs 124. In response to the EAS discovery request, the EEC 126 may receive an EAS discovery request response from the EES 122 indicating one or more available EASs 124 and their associated services from which the EEC 126 can identify or select a target EAS 124 to enter into the streaming session.
[0061] The discovery request sent by the EEC 126 may include one or more EAS discovery filters. An EAS discovery filter is a characteristic that the user device 102 wants the EAS 124 to have for a media streaming session. In some configurations, the one or more EAS discovery filters may be included as one or more information elements (IEs) in the discovery request. In at least some configurations, the one or more discovery filters that the EEC 126 includes in the EAS discovery request may match one or more parameters or properties of the EAS discovery template received from the 5GMS AF 118. Thus, the one or more discovery filters that the EEC 126 includes in the EAS discovery request may be responsive to or dependent on the EAS discovery template properties included in the EAS discovery template. Additionally, the EEC 126 may populate one or more discovery filters with one or more discovery filter values for the one or more discovery filters.
[0062] In response to receiving an EAS discovery request, the EES 122 may attempt to identify one or more available EASs 124 that satisfy one or more discovery filters included in the EAS discovery template. To determine the one or more available EASs 124, the EES 122 may perform a discovery filter value matching process in which the EES 122 attempts to match one or more discovery filter values with the capabilities of one or more registered or candidate EASs 124 known to the EES 122. As used herein, a candidate EAS 124 is an EAS 124 that the EES 122 is aware of, that is registered with the EES 122, or that the EES 122 otherwise considers to be a potentially available EAS 124 that can fulfill the EAS discovery request. The EES 122 may also use any of a variety of criteria for discovery filter value matching to evaluate whether a candidate EAS 124 should be an available EAS 124 (e.g., that satisfies one or more discovery filter values). For example, the EES 122 may identify a given candidate EAS 124 as an available EAS 124 if the given candidate EAS 124 has, for example, all discovery filter values, has at least (or exceeds) a threshold number of discovery filter values, or has one or more specific predetermined discovery filter values. Upon performing discovery filter value matching, the EES 122 may determine discovery filter value matching results that indicate zero or one or more available EASs 124 that satisfy the EAS discovery request.
[0063] Additionally, upon completing the discovery filter value matching, the EES 122 may generate a discovery request response including discovery filter value matching results indicating zero or more available EASs 124 determined from the discovery filter value matching. The discovery request response may also indicate characteristics of each of the one or more available EASs 124. The EES 122 may transmit the discovery request response to the EEC 126 via an EDGE-1 interface, for example.
[0064] Upon receiving the discovery request response, the EEC 126 may select a target EAS 124 from among the one or more available EASs 124 indicated in the discovery request response. In other words, the EEC 126 may select an available EAS 124 from among the one or more available EASs 124 to be the target EAS 124. As described above, the target EAS 124 may be the available EAS 124 that the EEC 126 determines to be the best or most suitable EAS 124 for communicating the media stream during a media stream with the 5GMS-aware application 110. In the event that there are multiple available EASs 124 indicated in the discovery request response, the EEC 126 may use any of a variety of criteria for selecting one available EAS 124 over the other available EASs 124 as the target EAS 124 for the streaming session. Upon selecting the target EAS 124, one or more components of the user device 102, such as one or more of the media session handler 114, the EEC 126, the media stream handler 116, the 5GMS-aware application 110, and / or the application client 128, may operate to establish a media session with the target EAS 124, such that the target EAS 124 communicates streaming media during the streaming session with the user device 102, such as the media stream handler 116, via the M4 interface.
[0065] 2 is a flowchart of an example method 200 of media streaming. Method 200 may be performed by a user device 102 that wishes to stream media (in the downlink and / or uplink directions) during a streaming session. At block 202, the user device 102 may determine to identify a target EAS 124 for the streaming session. Any of various modules or components of the user device 102 may make the determination for any of a variety of reasons. For example, the media session handler 114 and / or the EEC 126 may identify that a 5G MS-aware application 110 is attempting or wishes to communicate a media stream during a streaming session and then identify a target EAS 124 for the streaming session. As another example, the media session handler 114 and / or EEC 126 may identify the 5GMS-aware application 110 and / or application client 128 and then identify a target EAS 124 for the 5GMS-aware application 110 and / or application client 128 for future or upcoming media sessions involving the 5GMS-aware application 110. As another example, the media session handler 114 may receive service access information from the 5GMS AF 118, which may prompt the media session handler 114 and / or EEC 126 to identify a target EAS 124 for a streaming session with the 5GMS-aware application 110.
[0066] At block 204, the user device 102 may send a discovery request to the edge DN 106 to identify one or more available EASs 124 for the media session. For example, the EEC 126 may send the discovery request to the EES 122 via an EDGE-1 interface, as described above. The discovery request may include one or more discovery filters and associated one or more discovery filter values that indicate one or more characteristics that the EEC 126 wants the target EAS 124 to have. The one or more discovery filters may include one or more of the properties of the EAS discovery template listed above in Table 2. For example, one or more of the discovery filters may match one or more properties included in the EAS discovery template of the service access information that the media session handler 114 receives from the 5GMS AF 118. The EEC 126 may select or determine all or less than all of the properties included in the EAS discovery template as the one or more discovery filters to include in the discovery request.
[0067] In at least some implementations, at least one of the discovery filters may include at least one of a service key performance indicator (KPI) (serviceKpi), a service area (serviceArea), a service availability schedule (serviceAvailabilitySchedule), or a service continuity scenario (serviceContinuityScenarios). As described above, a service KPI is one or more service characteristics to be met by the EAS 124. A service area is a list of one or more geographic areas that the EAS 124 provides service to. A service availability schedule is an availability schedule for the EAS 124. A service continuity scenario is one or more application context relocation scenarios that the EAS 124 supports for service continuity.
[0068] At block 206, the user device 102 may receive a discovery request response corresponding to the discovery request, such as from the edge DN 106. For example, the ECC 126 may receive the discovery request response from the EES 122, such as via an EDGE-1 interface. The discovery request response may indicate one or more candidate EASs 124 that satisfy the discovery request, such as by having one or more of the discovery filter values indicated in the discovery request. At block 208, the user device 102, such as with the EEC 126, may select a target EAS 124 from among the one or more candidate EASs 124 indicated in the discovery request response. At block 210, the user device 102 may stream media (in the downlink and / or uplink directions) during a streaming session with the target EAS 124 that the user device 102 selected from the discovery request response. For example, the media stream handler 116 may stream media with the target EAS 124 via an M4 interface.
[0069] 3 shows a flowchart of an example method 300 of media streaming performed by an edge DN 106. At block 302, the edge DN 106 may receive a discovery request from a user device 102, the discovery request including one or more discovery filters and one or more associated discovery filter values. For example, the EES 122 of the edge network 106 may receive the discovery request from the EEC of the user device 102, such as via an EDGE-1 interface. In at least some implementations, one or more of the discovery filters may match one or more properties of an EAS discovery template that the edge network 106 sent to the user device 102. Correspondingly, in some implementations, the edge network 106 may send a discovery filter template, such as part of the service access information described above, including the one or more properties, at block 302, and may receive a discovery request after and / or in response to sending the discovery filter template. Also, in some example implementations, the edge DN 106 may send a discovery filter template, such as part of the service access information, after and / or in response to receiving configuration information regarding edge processing from the DN 104. For example, the 5GMS AF 118 may receive edge processing configuration information from the 5GMS application provider 108 of the DN 104 over an M1 interface during a provisioning session. In response to receiving the configuration information, the 5GMS AF 118 may send the service access information to the media session handler 114 over an M5 interface, etc. In at least some implementations, the information in the service access information, including one or more of the properties included in the EAS discovery template, may depend on the configuration information received from the 5GMS application provider 108.
[0070] Also, in at least some implementations, one or more discovery filters in the discovery request may include one or more of the properties included in the EAS discovery template that the edge DN 106 sends to the user device 102. The one or more properties may include one or more of the properties listed in the above EAS discovery template in Table 2. In at least some of these implementations, at least one of the discovery filters may include at least one of a service KPI (serviceKpi), a service area (serviceArea), a service availability schedule (serviceAvailabilitySchedule), or a service continuity scenario (serviceContinuityScenarios).
[0071] In block 304, in response to receiving the discovery request, the edge DN 106, such as via the EES 122, may identify one or more available EASs 124 that satisfy the discovery request. As previously described, the edge DN 106 may perform discovery value matching to determine which of the one or more candidate EASs 124 satisfy the discovery request and then identify them as one or more available EASs 124. In block 306, the edge DN 106, such as with the EES 122, may generate and transmit a discovery request response to the user device 102, such as the EEC 126, via the EDGE-1 interface, indicating the identified one or more available EASs 124. In block 308, one of the one or more available EASs 124 indicated in the discovery request response may communicate streaming media (in the downlink and / or uplink directions) during a streaming session subsequent to and / or in response to the discovery request response.
[0072] As mentioned above, in some implementations, the EAS discovery template that the edge network 106 sends to the user device 102 and / or the discovery request that the user device 102 sends to the edge network 106 may include at least one of the following properties: service KPIs (serviceKpi), service area (serviceArea), service availability schedule (serviceAvailabilitySchedule), or service continuity scenarios (serviceContinuityScenarios). In particular, these implementations may include one or more of these properties in combination with one or more additional properties including one or more of EAS provider IDs (easProviderIds), EAS type (easType), or one or more EAS features (easFeatures). Such implementations may be contrasted with other implementations that do not include any of the service KPIs (serviceKpi), service area (serviceArea), service availability schedule (serviceAvailabilitySchedule), or service continuity scenarios (serviceContinuityScenarios). For example, such other implementations may include only one or more of EAS provider IDs (easProviderIds), EAS types (easTypes), or one or more EAS features (easFeatures). However, by including at least one of service KPIs (serviceKpis), service areas (serviceAreas), service availability schedules (serviceAvailabilitySchedules), or service continuity scenarios (serviceContinuityScenarios) in the discovery request, the EES 122 may select an improved group of EASs 124 to participate in a streaming session with the user device 102.For example, the EES 122 may identify candidate EASs 124 that do not originally have these properties for a discovery request that does not include these properties, and / or may avoid identifying as a candidate a particular EAS 124 that is less than optimal because it does not have one or more of the specific service KPIs, specific service areas, specific service availability schedules, or specific service continuity scenarios that the EEC 126 wants the target EAS 124 to have.
[0073] Thus, in some implementations, the 5GMS-aware application 110 may instantiate the EAS 124. Generally, the EAS 124 is instantiated when the user device 102 and an application that streams media can be executed. In particular implementations, the EAS 124 may be instantiated for a streaming session when the 5GMS-aware application streams media content during the streaming session, and the EAS 124 executes an application to enable streaming of media content with or for the 5GMS-aware application. The edge server requirements received via the M1 interface are delivered to the user device (client) 102 over the M5 interface as part of the service access information. The user device (client) 102 may discover one or more matching available EASs 124 using one or more edge discovery interfaces (e.g., APIs).
[0074] As previously mentioned, the 5GMS application provider 108 may use the M1 interface to provision a new EAS 124. Through the M1 interface, the 5GMS application provider 108 may create, update, and / or retrieve edge resource configurations. In some implementations, the 5GMS application provider may do so using the operations listed below in Table 3. [Table 3]
[0075] Additionally, for at least some implementations, the 5GMS application provider 108 may use one or more properties for edge resource configuration listed in Table 4 below. [Table 4-1] [Table 4-2]
[0076] FIG. 4 is a flowchart of another example method 400 of media streaming performed by the edge DN 106. At block 402, the 5GMS AF 118 may receive edge resource information. The edge resource information may be received from the 5GMS application provider 108 via an M1 interface. Additionally or alternatively, the edge resource information may be used to create an edge resource configuration. Additionally or alternatively, the edge resource information may be used to provision one or more EASs 124. At block 404, the 5GMS AF 118 may send service access information to the user device 102, such as to the media session handler 114. As a service addition or alternatively, as described above, the 5GMS AF 118 may send the service access information to the user device 102 via an M5 interface. Additionally or alternatively, the service access information may include an EAS discovery template including one or more properties, as described above. In some implementations, the one or more properties may include one or more of a service KPI, a service area, a service availability schedule, or a service continuity scenario. Additionally, in some embodiments, the EES 118 may receive a discovery request in response to transmitting the service access information. The discovery request may include one or more discovery filters, at least one of which matches at least one property included in the EAS discovery template. The EES 118 may identify one or more available EASs 124 that satisfy the discovery request and transmit a discovery response identifying the one or more available EASs 124, as described above.
[0077] In some implementations, the 5GMS application provider 108 may desire or decide to obtain a list of activated EASs 124. Generally, an activated EAS 124 is an EAS 124 that has participated in a streaming session and / or streaming media with the user device. As described above, a target EAS 124 is an EAS that the user device 102 can select from among one or more available EASs 124 identified from the edge DN 106. If the user device 102 and the target EAS 124 are in a media streaming session, the target EAS 124 is an activated EAS 124. Depending on the number of activated EASs 124, the list may include zero or more activated EASs 124 at any of various times or circumstances. To obtain the list, the 5GMS application provider 108 may send an activate EAS request to the 5GMS AF 118 via interface M1, which indicates or instructs the 5GMS AF 118 to send or return the list to the 5GMS application provider 108. In some implementations, the activate EAS request may include an EAS identification (ID) flag (e.g., easIdFlag in Table 3). The EAS ID flag may indicate to the 5GMS AF 118 whether to return a list of activated EASs 124. For example, in some implementations, the EAS ID flag may have a first value (e.g., a Boolean logic "1" or logic "0" value) that indicates to the 5GMS AF 118 to return a list, or a second value (e.g., another Boolean logic "0" or logic "1" value) that indicates not to return a list.
[0078] In response to receiving the activate EAS request, the 5GMS AF 118 may retrieve a list of activated EASs 124 and return or transmit the list to the 5GMS application provider 108, such as via an M1 interface. In at least some implementations, the list may include the EAS IDs (e.g., easIds in Table 3) of the activated EASs 124 to indicate the activated EASs 124.
[0079] In some implementations, the activate EAS request may be part of an edge resource configuration request. For example, the edge resource configuration request may indicate or instruct the 5GMS AF 118 to retrieve an edge resource configuration and send the retrieved edge resource configuration to the 5GMS application provider 108. The edge resource configuration request may include one or more of the following properties in Table 4, including an edge resource configuration ID (edgeResourcesConfigurationId), an edge management mode (edgeManagementMode), eligibility criteria (eligibilityCriteria), EAS requirements (easRequirements), or EAS relocation requirements (easRelocationRequirements). The edge resource configuration request may further include an EAS ID flag that indicates whether the 5GMS AF 118 should include a list of activated EASs 124 with or as part of the edge resource configuration that it returns to the 5GMS application provider 108. Upon receiving the edge resource configuration request, the 5GMS AF 118 may check the EAS ID flag. If the EAS ID flag indicates to return a list of activated EAS124s (such as by being the first value), the 5GMS AF118 may retrieve the list of activated EAS124s, include the list of activated EAS124s with the rest of the edge resource configuration, and return the edge resource configuration with the list of activated EAS124s to the 5GMS application provider 108.
[0080] Additionally or alternatively, in some implementations, the activate EAS request and / or EAS ID flag may indicate or instruct the 5GMS AF 118 to retrieve a list of activated EASs 124 during an edge resource configuration retrieval operation. That is, regardless of whether the activate EAS request and / or EAS ID flag is part of or included in the edge resource configuration request, the activate EAS request and / or EAS ID flag may indicate to the 5GMS AF 118 to retrieve a list of activated EASs 124 during the edge resource configuration retrieval operation. Then, when the 5GMS AF 118 performs the edge resource configuration retrieval operation, the 5GMS AF 118 may retrieve the list of activated EASs 124 as part of the operation.
[0081] Upon receiving the list of activated EASs 124, the 5GMS application provider 108 may perform one or more actions associated with and / or using the EAS IDs. For example, the 5GMS application provider 108 may determine the health status of a given activated EAS 124, such as one or more processing powers used (e.g., central processing unit (CPU) power and / or graphics processing unit (GPU)), network bandwidth used, volatile memory used (e.g., random access memory (RAM)), and / or non-volatile memory (memory storage) used. Upon knowing the EAS ID, the 5GMS application provider 108 may use the EAS ID to obtain one or more health status parameters of the activated EAS identified by the EAS ID. As another example, the 5GMS application provider 108 may associate an EAS report with a particular EAS 124. For example, the 5GMS application provider 108 may receive reports related to a streaming session, such as consumption reports and / or QoE reports, including one or more of various parameters and / or statistics related to the streaming session, such as, by way of non-limiting example, the duration of the streaming session, the portion of media content communicated or consumed, popularity statistics, statistics related to the media content in the uplink and downlink directions, etc. Upon receiving the list of activated EASs 124, the 5GMS application provider 108 may link or associate a given report to a given activated EAS 124 using the activated EAS IDs included in the list.
[0082] Additionally, in some implementations, the 5GMS application provider 108 may obtain EAS profiles of one or more activated EASs 124. For at least some of these implementations, the 5GMS application provider 108 may retrieve the one or more activated EAS profiles from the EES 122. Notably, in these implementations, the 5GMS application provider 108 may communicate directly with the EES 122 via an interface 132 extending between the 5GMS application provider 108 and the EES 122 to obtain the EAS profiles of the activated EASs 124. As shown in FIG. 1 , the interface 132 is a different or separate interface from the M1 interface. The 5GMS application provider 108 may send an activate EAS profile request to the EES 122, such as via the interface 132. In response to receiving the request, the 5GMS application provider 108 may obtain the EAS profiles of the one or more activated EASs 124 and send or return the EAS profiles to the 5GMS application provider 108.
[0083] Further, in some implementations, the 5GMS application provider 108 may send an activate EAS profile request after receiving a list of activated EASs 124 from the 5GMS AF 118, such as via the M1 interface. After receiving the list of activated EASs 124, or in response to receiving it, the 5GMS application provider 108 may send an EAS profile request to the EES 122 that includes the list of activated EASs 124. In some implementations, the list of activated EASs 124 may include the EAS IDs (e.g., easId in Table 4) of the activated EASs 124, as described above. Correspondingly, in response to receiving the EAS IDs of the activated EASs 124, the 5GMS application provider 108 may include the EAS IDs in the activate EAS profile request that it sends to the EES 122. In response, the EES 122 may obtain the EAS profiles associated with the EAS IDs and return those EAS profiles to the 5GMS application provider 108 as part of its response to the activate EAS profile request.
[0084] In some embodiments, the 5GMS application provider 108 may use one or more of the received EAS profiles to evaluate or confirm the allocation of one or more activated EASs 124. For example, using the EAS profiles, the 5GMS application provider 108 may evaluate whether an activated EAS 124 associated with the EAS profile has been properly allocated or selected to participate in a media session. For example, the allocated EAS 124 may have an associated set of maximum operating parameters, such as maximum CPU power, maximum GPU power, volatile and / or non-volatile storage capacity, and / or maximum bandwidth. In various embodiments, one or more of the maximum operating parameters may be defined by a service KPI. Using the EAS profiles of the activated EASs 124, the 5GMS application provider 108 may evaluate or confirm whether the actual operating parameters are within the maximum operating parameters and then determine whether the activated EASs 124 have been properly allocated.
[0085] 5 is a flowchart of an example method 500 of edge resource processing. At block 502, the 5GMS application provider 108 may determine to obtain a list or record identifying one or more activated EASs 124 in the edge DN 106. At block 504, the 5GMS application provider 108 may send an activate EAS request to the 5GMS AF 118. In at least some implementations, the 5GMS application provider 108 may send the activate EAS request over an M1 interface. Also, in at least some implementations, the activate EAS request may include an EAS identification (ID) flag that indicates to the 5GMS AF 118 whether to return a list of activated EASs 124 to the 5GMS application provider 108. Additionally or alternatively, in at least some implementations, the activate EAS request and / or the EAS ID flag may be part of the edge resource configuration request. In block 506, the 5GMS application provider 108 may receive a list of one or more activated EASs 124 in response to and / or associated with the activation EAS request. In block 508, the 5GMS application provider 108 may determine one or more health statuses and / or link one or more reports regarding one or more streaming sessions with the one or more activated EASs 124 based on or using the list of one or more activated EASs 124, as described above.
[0086] 6 is a flowchart of an example method 600 of edge resource processing. At block 602, the 5GMS AF 118 may receive an activate EAS request and obtain a list or record identifying another activated EAS 124 in the edge DN 106. At block 604, the 5GMS AF 118 may identify the activated EAS 124 and indicate or include them in the list of activated EASs 124. At block 606, the 5GMS AF may send the list of activated EASs 124 to the 5GMS application provider 108. In some implementations, the 5GMS AF 118 may indicate that the activated EAS 124 may include the EAS ID of the activated EAS 124 in the list.
[0087] FIG. 7 is a flowchart of an example method 700 of edge resource processing. At block 702, the 5GMS application provider 108 may determine to obtain an EAS profile for the activated EAS 124. At block 704, the 5GMS application provider 108 may generate and / or transmit an activate EAS profile request to obtain the EAS profile. In some implementations, the 5GMS application provider 108 transmits the activate EAS profile request to the EES 122. Notably, in these implementations, the 5GMS application provider 108 transmits the activate EAS profile request to the EES 122 via an interface 132 that is separate or different from the M1 interface. As described, the separate interface 132 may extend between the 5GMS application provider 108 and the EES 122. Additionally or alternatively, in some implementations, the 5GMS application provider may include the EAS ID of the activated EAS 124 for which it wishes to receive the EAS profile. At block 706, the 5GMS application provider 108 may receive the EAS profile of the activated EAS 124 in response to the activate EAS profile request. In some implementations, the 5GMS application provider 108 may receive the EAS profile from the ESS 122. Notably, in these implementations, the 5GMS application provider 108 may receive the EAS profile via a separate interface 132 between the 5GMS application provider 108 and the EES 122. At block 708, the 5GMS application provider 108 may evaluate or confirm one or more assignments of one or more activated EASs 124 based on or using the EAS profile, as described above.
[0088] FIG. 8 is a flowchart of an example method 800 of edge resource processing. At block 802, the EES 122 may receive an activate EAS profile request. In some implementations, the EES 122 may receive the activate EAS profile request via an interface 132 that is different or separate from the M1 interface. At block 804, in response to receiving the activate EAS profile request, the EES 122 identifies or obtains an EAS profile. At block 806, the EES may send the EAS profile of the activated EAS 124 to the 5GMS application provider 108. In some implementations, the EES 122 may send the EAS profile via the separate interface 132. Additionally or alternatively, in some implementations, the activate EAS profile request may include EAS IDs, and the EES 122 may obtain the EAS profiles of the activated EASs identified by these EAS IDs (i.e., the EAS profiles associated with the EAS IDs).
[0089] Other methods of edge resource processing that combine one or more blocks of two or more of methods 400, 500, 700, and 800 may also be possible. For example, when the 5GMS application provider 108 generates the activate EAS profile request in block 704, the 5GMS application provider 108 may include the activated EASs 124 that it identified from the activate EAS request response received in block 406. For example, the 5GMS application provider 108 may receive a list of EAS IDs of the activated EASs 124 and then include the EAS IDs in the activate EAS profile request that it sends to the EES 122. Other similar methods that combine one or more blocks of methods 500 and 800 may also be performed.
[0090] Additionally, as used herein, the term module refers to an electronic device implemented in hardware alone or a combination of hardware and software and configured to implement or perform one or more functions or actions. For example, a module may include circuitry configured to execute computer-executable instructions, digital logic circuitry or a processor (e.g., a central processing unit (CPU)), memory that stores computer-executable instructions configured to be executed by a processor or controller, or any of various combinations thereof.
[0091] Furthermore, the techniques described above may be implemented as computer software using computer-readable instructions and physically stored on one or more computer-readable media. For example, Figure 9 illustrates a computer system 900 suitable for implementing certain embodiments of the disclosed subject matter.
[0092] Computer software may be coded using any suitable machine code or computer language that may be subject to assembly, compilation, linking, or similar mechanisms to create code containing instructions that may be executed by one or more computer central processing units (CPUs), graphics processing units (GPUs), etc., either directly or through interpretation, microcode execution, etc.
[0093] The instructions may be executed on various types of computers or components thereof, including, for example, personal computers, tablet computers, servers, smartphones, gaming devices, Internet of Things devices, and the like.
[0094] 9 for computer system 900 are exemplary in nature and are not intended to suggest any limitation as to the scope of use or functionality of the computer software implementing embodiments of the present disclosure, nor should the arrangement of components be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary embodiment of computer system 900.
[0095] Computer system 900 may include certain human interface input devices. Such human interface input devices may respond to input by one or more human users, for example, through tactile input (e.g., keystrokes, swipes, data glove movements), audio input (e.g., voice, clapping), visual input (e.g., gestures), and olfactory input (not depicted). Human interface devices may also be used to capture certain media not necessarily directly associated with conscious human input, such as audio (e.g., speech, music, ambient sounds), images (e.g., scanned images, photographic images obtained from still image cameras), and video (e.g., two-dimensional video, three-dimensional video including stereoscopic images).
[0096] The input human interface devices may include one or more of a keyboard 901, a mouse 902, a trackpad 903, a touchscreen 910, a data glove (not shown), a joystick 905, a microphone 906, a scanner 907, and a camera 908 (only one of each is depicted).
[0097] The computer system 900 may also include certain human interface output devices. Such human interface output devices may stimulate one or more of the human user's senses, for example, through tactile output, sound, light, and smell / taste. Such human interface output devices may include haptic output devices (e.g., touchscreen 910, data gloves (not shown), or haptic feedback via joystick 905, but which may not function as an input device), audio output devices (e.g., speakers 909, headphones (not depicted)), visual output devices (e.g., screens 1910, including CRT screens, LCD screens, plasma screens, OLED screens, each with or without tactile screen input capabilities, some of which may be capable of outputting two-dimensional visual output or even three-dimensional output through means such as stereoscopic output, virtual reality glasses (not depicted), holographic displays, smoke tanks (not depicted)), and printers (not depicted).
[0098] The computer system 900 may also include human-accessible storage devices and their associated media, such as optical media including CD / DVD ROM / RW 920 with CD / DVD or similar media 921, thumb drives 922, removable hard drives or solid state drives 923, legacy magnetic media such as tape and floppy disks (not shown), specialized ROM / ASIC / PLD-based devices such as security dongles (not shown), etc.
[0099] Those skilled in the art should also understand that the term "computer-readable medium" as used in connection with the presently disclosed subject matter does not encompass transmission media, carrier waves, or other transient signals.
[0100] The computer system 900 also includes an interface 954 to one or more communication networks 955. The networks can be, for example, wireless, wired, or optical. The networks can further be local, wide-area, metropolitan, vehicular, and industrial, real-time, delay-tolerant, and the like. Examples of networks include Ethernet, WLAN, cellular networks including GSM, 3G, 4G, 5G, LTE, and the like; TV wired and wireless wide-area digital networks including cable TV, satellite TV, and terrestrial broadcast TV; vehicular and industrial networks including CANbus; and the like. Certain networks typically require an external network interface adapter attached to a particular general-purpose data port or peripheral bus 949 (e.g., a USB port on the computer system 900); others are typically built into the core of the computer system 1800 by attachment to a system bus (e.g., an Ethernet interface on a PC computer system or a cellular network interface on a smartphone computer system), as described below. Using any of these networks, the computer system (900) can communicate with other entities. Such communications may be one-way receive only (e.g., broadcast television), one-way transmit only (e.g., from a CANbus to a particular CANbus), or bidirectional to other computer systems, for example, using local or wide area digital networks. Specific protocols and protocol stacks may be used in each of these networks and network interfaces, as described above.
[0101] The aforementioned human interface devices, human accessible storage, and network interfaces may be attached to the core 940 of the computer system 900 .
[0102] The core 940 may include one or more central processing units (CPUs) 941, graphics processing units (GPUs) 942, specialized programmable processing units in the form of field programmable gate areas (FPGAs) 943, hardware accelerators for specific tasks 944, graphics adapters 950, etc. These devices may be connected through a system bus 948, along with read-only memory (ROM) 945, random access memory 946, and internal mass storage 947 such as a non-user-accessible hard drive or SSD. In some computer systems, the system bus 948 may be accessible in the form of one or more physical plugs to allow expansion with additional CPUs, GPUs, etc. Peripheral devices may be attached directly to the core's system bus 948 or via a peripheral bus 949. In one example, a screen 910 may be connected to the graphics adapter 950. Architectures for peripheral buses include PCI, USB, etc.
[0103] The CPU 941, GPU 942, FPGA 943, and accelerator 944 can combine to execute specific instructions that may constitute the aforementioned computer code, which may be stored in ROM 945 or RAM 946. Temporary data may also be stored in RAM 946, while persistent data may be stored in, for example, internal mass storage 947. Fast storage and retrieval to any of the memory devices may be enabled through the use of cache memory, which may be closely associated with one or more of the CPU 941, GPU 942, mass storage 947, ROM 945, RAM 946, etc.
[0104] The computer-readable medium may have computer code thereon for performing various computer-implemented operations. The medium and computer code may be specially designed and constructed for the purposes of the present disclosure, or they may be of the kind well known and available to those skilled in the computer software arts.
[0105] As a non-limiting example, architecture 900, and specifically a computer system having core 940, can provide functionality as a result of a processor (including a CPU, GPU, FPGA, accelerator, etc.) executing software embodied in one or more tangible computer-readable media. Such computer-readable media can be media associated with the user-accessible mass storage introduced above, as well as specific storage of the core 940 that is non-transitory in nature, such as core internal mass storage 947, ROM 945, etc. Software implementing various embodiments of the present disclosure can be stored on such devices and executed by core 940. Computer-readable media can include one or more memory devices or chips, depending on particular needs. The software can cause core 940, and specifically the processor therein (including a CPU, GPU, FPGA, etc.), to perform particular processes or particular portions of particular processes described herein, including defining data structures stored in RAM 946 and modifying such data structures according to software-defined processes. Additionally or alternatively, a computer system may provide functionality as a result of logic hardwired or otherwise embodied in circuitry (e.g., accelerator 944), which may operate in place of or in conjunction with software to perform particular processes or portions of particular processes described herein. References to software may encompass logic, and vice versa, where appropriate. References to computer-readable media may encompass circuitry (such as an integrated circuit (IC)) that stores software for execution, circuitry that embodies logic for execution, or both, where appropriate. The present disclosure encompasses any suitable combination of hardware and software.
[0106] The subject matter of the present disclosure may also relate to or include, among other aspects, the following aspects:
[0107] In a first aspect, a method for media streaming includes the steps of: determining, by a user device, a target Edge Application Server (EAS) for a 5GMS (Fifth Generation Media Streaming) streaming session with a 5GMS-aware application of the user device; sending, by the user device, a discovery request to identify one or more available EASs for the streaming session, the discovery request including one or more discovery filters, the one or more discovery filters including one or more of a service key performance indicator (KPI), a service area, a service availability schedule, or a service continuity scenario; receiving, by the user device, a discovery request response indicating one or more available EASs that satisfy the discovery request; selecting, by the user device, a target EAS from among the one or more available EASs; and communicating, by the user device, a media stream during the streaming session with the target EAS.
[0108] A second aspect includes the first aspect, further including that the one or more discovery filters include a service KPI.
[0109] A third aspect includes any of the first and second aspects, and further includes that the one or more discovery filters include a service area.
[0110] A fourth aspect includes any of the first to third aspects, and further includes: the one or more discovery filters include a service availability schedule.
[0111] A fifth aspect includes any of the first to fourth aspects, and further includes that the one or more discovery filters include a service continuity scenario.
[0112] A sixth aspect includes any of the first to fifth aspects and further includes a step of receiving, by the user device, service access information from the edge data network, wherein the service access information includes an EAS discovery template including one or more of a service KPI, a service area, a service availability schedule, or a service continuity scenario.
[0113] A seventh aspect includes the sixth aspect, and further includes a step of setting, by the user device, one or more discovery filters to include one or more of a service KPI, a service area, a service availability schedule, or a service continuity scenario in response to an EAS discovery template of service access information including one or more of a service KPI, a service area, a service availability schedule, or a service continuity scenario.
[0114] An eighth aspect includes a method for media streaming, the method including: receiving, by a 5GMS (Fifth Generation Media Streaming) application function (AF), edge resource information received from a 5GMS application provider via an M1 interface, the edge resource configuration being used to provision one or more edge application servers (EAS); and in response to receiving the edge resource information, sending, by the 5GMS AF, service access information indicating availability of the edge resources to a user device via an M5 interface, the service access information including an EAS discovery template used for discovery of a target EAS for the 5GMS streaming session.
[0115] A ninth aspect includes the eighth aspect, and further includes, in response to sending the service access information, receiving, by an edge enablement server (EES) of the edge data network, a discovery request to identify one or more available EASs for the streaming session, wherein the discovery request includes at least one discovery filter that matches at least one property of the EAS discovery template; identifying, by the EES, one or more available EASs that satisfy the discovery request; and sending, by the EES, a discovery response that identifies the one or more available EASs.
[0116] A tenth aspect includes any of the eighth to ninth aspects, and further includes that the properties of the EAS discovery template include service key performance indicators (KPIs).
[0117] An eleventh aspect includes any of the eighth to tenth aspects, and further includes that the properties of the EAS discovery template include a service area.
[0118] A twelfth aspect includes any of the eighth to eleventh aspects, and further includes that the properties of the EAS discovery template include a service availability schedule.
[0119] A thirteenth aspect includes any of the eighth to twelfth aspects, and further includes that the properties of the EAS discovery template include a service continuity scenario.
[0120] A fourteenth aspect includes any of the eighth to thirteenth aspects, and further includes a step of communicating the media stream during a 5G SMS streaming session with the user device by the target EAS.
[0121] A fifteenth aspect includes a method for edge resource processing, the method including: determining, at a 5GMS (Fifth Generation Media Streaming) application provider of a data network, to obtain a list of one or more activated edge application servers (EAS); at the 5GMS application provider, sending an activation EAS request to a 5GMS application function (AF) of the edge data network to obtain the list; and at the 5GMS application provider, receiving the list from the 5GMS AF.
[0122] A sixteenth aspect includes the fifteenth aspect, further including that the activation EAS request is sent via an M1 interface between the 5GMS application provider and the 5GMS AF.
[0123] A seventeenth aspect includes any of the fifteenth to sixteenth aspects, further including that the list of one or more activated EASs is received via an M1 interface between the 5GMS application provider and the 5GMS AF.
[0124] An eighteenth aspect includes any of the fifteenth to seventeenth aspects, and further includes: the activated EAS request includes an EAS identification (ID) flag that indicates to the 5GMS AF whether to return a list of one or more activated EASs to the 5GMS application provider.
[0125] A 19th aspect includes any of the 15th to 18th aspects, and further includes a step of, at the 5GMS application provider, sending an edge resource configuration request to the 5GMS AF, wherein the activation EAS request is part of the edge resource configuration request.
[0126] A twentieth aspect includes any of the fifteenth to nineteenth aspects, and further includes a step of, at the 5GMS application provider, sending an activate EAS profile request to an edge-enabled server (EES) for one or more EAS profiles of the one or more activated EASs indicated in the list, wherein the activate EAS profile request is sent via an interface different from the M1 interface between the 5GMS application provider and the 5GMS AF.
[0127] A twenty-first aspect includes a media streaming device including a memory that stores a plurality of instructions, and a processor configured to execute the plurality of instructions and configured to implement any of the first to twentieth aspects when the plurality of instructions are executed.
[0128] A twenty-second aspect includes a non-transitory computer-readable storage medium storing a plurality of instructions executable by a processor, the plurality of instructions being configured, when executed by the processor, to cause the processor to implement any of the first through twentieth aspects.
[0129] In addition to the features mentioned in each of the independent aspects listed above, some examples may exhibit, alone or in combination, any feature mentioned in the dependent aspect and / or as disclosed in the above description and shown in the drawings.
[0130] While this disclosure has described several exemplary embodiments, there are alterations, substitutions, and various substitute equivalents that fall within the scope of this disclosure. It will thus be appreciated that those skilled in the art will be able to devise many systems and methods that, although not explicitly shown or described herein, embody the principles of the present disclosure and are within the spirit and scope of the present disclosure.
[0131] Appendix A: Acronyms 3GPP: Third Generation Partnership Project 5GMS: Fifth Generation Media Streaming AC: Application Client ACR: Application Context Relocation ACT: Application Context Transfer AF: Application Function AS: Application Server DN: Data Network EAS: Edge Application Server ECS: Edge Configuration Server EEC: Edge Enabler Client EEL: Edge Enabler Layer EES: Edge Enabler Server KPI: Key Performance Indicator UE: User Equipment
Claims
1. 1. A method of media streaming, comprising: determining, by a user device, identifying a target Edge Application Server (EAS) for a Fifth Generation Media Streaming (5GMS) streaming session with a 5GMS-aware application of the user device; receiving, by the user device, service access information from an edge data network via an M5 interface, the service access information including an EAS discovery template for configuring one or more discovery filters, the EAS discovery template being pre-configured by a 5GMS application provider; the user device sending, via an EDGE-1 interface, a discovery request to identify one or more available EASs for the streaming session, the discovery request including one or more discovery filters set based on the EAS discovery template, the one or more discovery filters including one or more of a service key performance indicator (KPI), a service area, a service availability schedule, or a service continuity scenario; receiving, by the user device, via the EDGE-1 interface, a discovery request response indicating the one or more available EASs that satisfy the discovery request, wherein the one or more available EASs that satisfy the discovery request are determined by a 5GMS Application Function (AF) through a matching process between the discovery request and the capabilities of candidate EASs; the user device selecting the target EAS from among the one or more available EASs; the user device communicating a media stream during the streaming session with the target EAS; A method comprising:
2. The method of claim 1 , wherein the one or more discovery filters include the service KPIs.
3. The method of claim 1 , wherein the one or more discovery filters include the service area.
4. The method of claim 1 , wherein the one or more discovery filters include the service availability schedule.
5. The method of claim 1 , wherein the one or more discovery filters include the service continuity scenario.
6. 10. The method of claim 1, further comprising: in response to receiving the EAS discovery template, the user device setting the one or more discovery filters to include one or more of the service KPI, the service area, the service availability schedule, or the service continuity scenario.
7. 1. A method of media streaming, comprising: a Fifth Generation Media Streaming (5GMS) application function (AF) receiving edge resource information from a 5GMS application provider via an M1 interface, the edge resource information being used to provision one or more Edge Application Servers (EAS); In response to receiving the edge resource information, the 5GMS AF sends service access information indicating availability of edge resources to a user device via an M5 interface, the service access information including an EAS discovery template used for discovering a target EAS for a streaming session, the EAS discovery template being pre-configured by the 5GMS application provider; and an edge-enabled server (EES) of an edge data network receiving a discovery request from the user device via an EDGE-1 interface to identify one or more available EASs for the streaming session, the discovery request including one or more discovery filters set in the user device based on the EAS discovery template, the one or more discovery filters including one or more of a service key performance indicator (KPI), a service area, a service availability schedule, or a service continuity scenario; the EES identifying one or more available EASs that satisfy the discovery request by a matching process between the discovery request and the capabilities of candidate EASs; the EES transmitting a discovery response to the user device via the EDGE-1 interface, the discovery response identifying the one or more available EASs; A method comprising:
8. The method of claim 7 , wherein the properties of the EAS discovery template include service key performance indicators (KPIs).
9. The method of claim 7 , wherein the properties of the EAS discovery template include a service area.
10. The method of claim 7 , wherein the properties of the EAS discovery template include a service availability schedule.
11. The method of claim 7 , wherein the properties of the EAS discovery template include a service continuity scenario.
12. The method of any one of claims 7 to 11, further comprising the step of the target EAS communicating a media stream during a 5G MS streaming session with the user device.
Citation Information
Patent Citations
Method and apparatus for selecting a target edge application server in an edge computing environment
WO2022019676A1