Extended reality applications in mobile communication networks
The solution addresses the challenge of seamless split rendering session relocation in mobile networks by monitoring quality metrics and selecting new edge servers, ensuring continuous and high-quality extended reality experiences.
Patent Information
- Application Number
- PCT/EP2025/057751
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-02
- Filing Date
- 2025-03-21
- Publication Date
- 2025-10-09
AI Technical Summary
Current mobile communication networks lack efficient processes for handling edge server location and distribution, XR server network connectivity issues, split rendering load balancing and scaling, split rendering session management, and seamless relocation of split rendering sessions due to technical issues like power outages or network congestion, leading to service interruptions and degraded quality of experience.
Implement methods and systems for seamless split rendering session relocation by monitoring quality metrics (QoS, QoE, KPI) and selecting a new edge server based on these metrics, ensuring continuous XR media content delivery without interruption, using user equipment to facilitate the transition.
Ensures uninterrupted and high-quality extended reality experiences by dynamically relocating split rendering sessions to optimal servers, reducing latency and maintaining user experience quality.
Smart Images

Figure EP2025057751_09102025_PF_FP_ABST
Abstract
Description
EXTENDED REALITY APPLICATIONS IN MOBILE COMMUNICATIONNETWORKSFIELD
[0001] This disclosure generally relates to mobile communication networks such as a fifthgeneration (5G) communication networks, and more particularly to seamless split rendering session relocation between split rendering servers supporting extended reality applications in mobile communication networks.BACKGROUND
[0002] A mobile communication network enables communications between communication devices and servers, such as edge servers. A mobile communication network can include access networks, a core network and communication devices that communicate with the servers via the access network and the core network. Communications between a communication device and an access node of an access network may be over a wireless link (e.g., a radio link). A core of a communication network may establish data sessions between communication devices and servers for communicating data between clients on the communication devices and application functions hosted or running on the servers. Servers may include or host application functions that provide services to communication devices. For example, a server may include an extended reality (XR) application that provides an XR service to an XR client of a communication device via the mobile communication network.
[0003] A mobile communication device is often referred to as a user equipment (UE), user terminal, or a user device. A communication device a receiving and transmitting apparatus (e.g., a transceiver and / or a modem) for enabling communications, for example enabling wireless communications with an access network (e.g., a radio access network of a communication network or wireless or wired communications directly with other communication devices. The communication device may receive a carrier signal by a radio access network (e.g., a base station) of a radio access network of a communication network and transmit communications to the radio access network node (e.g., a base station) on a carrier signal.
[0004] A mobile communication network and communication devices are configured to operate in accordance with a given standards (e.g., protocols described in standards specifications, such as those provided by 3 GPP (Third Generation Partnership Project) or ETSI (European Telecommunications Standards Institute).SUMMARY
[0005] The scope of protection sought for various embodiments of the invention is set out by the independent claims. The embodiments and features, if any, described in this specification that do not fall under the scope of the independent claims are to be interpreted as examples useful for understanding various other embodiments of the invention.
[0006] Methods, apparatuses, and computer program products are provided for facilitating seamless split rendering session relocation when a quality of a rendered viewport for extended Reality (XR) media content received from an server (e.g., an edge server, a split rendering server) that is serving a UE becomes degraded. Another server (e.g., a new or different edge server, a new or different split rendering server) can replace the server that is serving the UE and the another server may be selected based on at least one metric associated with the split rendering session. The server that is serving the UE can continue during a transition period to provide rendered viewport-specific XR media content to the UE while an application function or UE determines to which other server the split rendering session should be relocated. In this context, the described methods, systems, and computer program products support seamless relocation of XR split rendering services.
[0007] According to a first aspect, there is described a method, a user equipment comprising means for, and a computer program product comprising instructions, comprising: transmitting, to an application function (AF) of a communication network, one or more metrics determined for a split rendering session associated with an extended reality (XR) media content stream, the split rendering session being established between the UE and a first edge server; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the first edge server, or a metric associated with the XR media content stream; receiving, from the AF, a list of edge servers, each edge server of the list capable of continuing the XR media content stream after relocation of the split rendering session from the first edge server to a respective edge server of the list; receiving, from the AF, metadata associated with the list of edge servers; and selecting, an edge server from the list of edge servers based on the metadata.
[0008] According to a second aspect there is described a method, a user equipment comprising means for, and a computer program product comprising instructions, comprising: receiving, from a user equipment, UE, one or more metrics determined for a split rendering session associated with an extended reality (XR) media content stream, the split renderingsession established between the UE and a first edge server; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the first edge server, or a metric associated with the XR media content stream; transmitting, to the UE, a list of edge servers, each edge server of the list capable of continuing the XR media content stream after relocation of the split rendering session from the first edge server to a respective edge server of the list without breaking the split rendering session; transmitting, to the UE, metadata associated with the list of edge servers for the UE to select a edge server from the list of edge servers based on the metadata.
[0009] According to a third aspect there is described a method, a user equipment comprising means for, and a computer program product comprising instructions, comprising: receiving, from a user equipment, UE, one or more metrics associated with a split rendering session, the split rendering session being established between the UE and an edge server; wherein the split rendering session is associated with an extended reality (XR) media content stream being provided to the UE by the edge server via a communication network; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the current split rendering server, or a metric associated with the XR media content stream; generating a list of edge servers which are suitable for continuing the XR media content stream by relocating the split rendering session from the edge server to another edge server without breaking the split rendering session, mapping the list of edge servers with the one or more metrics associated with the on-going split rendering session; and selecting the another edge server from the list of edge servers, based on the mapping.
[0010] According to aspects of the disclosure a session is continued by establishing new connection to the server without interrupting the XRM session and it is done by UE based on the QoS information or QoE information or other metrics related to the session.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Example embodiments will now be described by way of non-limiting example, with reference to the accompanying drawings, in which:
[0012] FIG. 1 illustrates an example architecture for a communications network, according to an embodiment;
[0013] FIG. 2A illustrates an example architecture for a communications network, according to an embodiment;
[0014] FIG. 2B illustrates an example architecture for a communications network, according to an embodiment;
[0015] Figure 3 illustrates an example 5G network with a split rendering (SR) media service enabler (MSE) architecture;
[0016] FIG. 4 illustrates an example core network apparatus for facilitating seamless split rendering session relocation between split rendering servers in an edge server network in response to degraded viewport quality, according to an embodiment;
[0017] FIG. 5 illustrates an example an apparatus for facilitating seamless split rendering session relocation between split rendering servers in an edge server network in response to degraded viewport quality, according to an embodiment;
[0018] FIG. 6 illustrates an example signalling flow description;
[0019] FIG. 7 shows, by way of example, a flowchart of a method;
[0020] FIG. 8 shows, by way of example, a flowchart of a method;
[0021] FIGS. 9A-9C shows, by way of example, a call flow;
[0022] FIGS. 10 A- 10C shows, by way of example, a call flow;
[0023] FIG. 11 shows, by way of example, a flowchart of a method; and
[0024] FIGS. 12A-12C shows, by way of example, a call flow.DETAILED DESCRIPTION
[0025] Mobile telecommunication services rely on a continuous connection to a communication network to work properly and take advantage of the full service. For new generations of mobile communication networks such as 5G networks currently under standardization by the 3rd Generation Partnership Project (3GPP), virtual reality applications executed by the mobile stations are to be supported, as specified e.g. by 3GPP TR 26.928, version 16.1.0, version 17.0.0, and 18.0.0, the entire disclosures of each of which are hereby incorporated herein by reference in their entireties for all purposes. Among these applications, extended Reality (XR) and Cloud Gaming are some of the most important 5G media applications under consideration in the industry. XR is an umbrella term for different types of realities and refers to all real-and-virtual combined environments and humanmachine interactions generated by computer technology and wearables. Different application domains of XR Applications include entertainment, healthcare, education, etc.
[0026] Third-Generation Partnership Project (3GPP) Technical Specification (TS) 23.558, defines architectural solutions for enabling Edge applications. The term ‘Edge application’ refers to user applications which are supported and hosted by server elements of particularnetworks, which are a part of the overall communication network referred to as an Edge network. Edge networks, also known as Edge Data Networks (EDN), are typically logically located between a core network [CN] of the communication network, a Cloud Data Network, and UEs. In some embodiments, an EDN may contain Edge Application Server(s) (EAS) and / or an Edge Enabler Server (EES). In some embodiments, operation of the EES may be supported by an Edge Configuration Server (ECS). The EDN that includes EAS(s) and / or EES(s) may also include EDGE-X interfaces to communicate with the servers of the network. The UE may contain an application client, which has the task for the proper execution of an MR application, AR application, VR application and / or XR application, and an Edge Enabler Client (EEC) as an interface to communicate with EDN network servers. More details about the EDN architecture and operation is disclosed in 3GPP TS 26.558, version 18.3.0, the entire disclosure of which is hereby incorporated herein by reference in its entirety for all purposes.
[0027] The EAS is the application server resident in the Edge Data Network, performing the server functions and is connected to the 3GPP core via Radio Access Network (RAN). The EES facilitates context transfer between EES(s) and EAS(s) and interacts with the 3 GPP core either directly (e.g. via PCF) or indirectly (e.g. via SCEF, NEF, and / or SCEF+NEF). Additionally, the EES provides configuration information to Edge Enabler Client enabling exchange of application data traffic with the EAS. The ECS provides supporting functions needed for the Edge Enabler Client to connect with an EES. Additionally, the ECS supports the EES in identifying other EESs (and EASs) in case of application relocations.Furthermore, EDGE-9 symbolizes the connection to another EDN. In case of a relocation from one EAS to another, EDGE-9 is the connection from a source EES to a target EES.
[0028] Time-critical communications is a concept in communication networks and protocols, such as in 5G, 6G, and other technologies, for enabling services with reliable low latency requirements such as XR, which encompasses various immersive technologies, such as Virtual Reality (VR), Mixed Reality (MR), and Augmented Reality (AR). In VR, users are totally immersed in a simulated digital environment or a digital replica of reality. MR encompasses all forms of technology that blend virtual elements with real-world surroundings. AR overlays digital information onto real-life images observed through a device.
[0029] XR connectivity requirements could be satisfied based on the split rendering media service enabler architecture and the targeted Quality of Experience (QoE), leading to a wide range of bit rates and strict latency requirements. To ensure XR applications work well over 5G networks, low-latency, high-quality is important. When the XR device is not powerfulenough to achieve performance indicators like required data rate and latency, offloading of some processing tasks to the cloud (cloud edge server) is carried out. This process is called split rendering. Split rendering systems may divide rendering of XR content such as VR or AR content between a server and a client. Most frequently, computation-intensive tasks like rendering are executed on a split rendering server (SRS). SRS can be a cloud render server as well as an edge render server. The XR device can communicate with the SRS through the network which can be 3GPP Radio Access Technology (RAT), and / or non-3GPP RAT.
[0030] In XR, VR, AR, and MR viewing environments, visual media content is generated for display at the user device, which can include a heads-up display or head-mounted display (HMD), or the like. The user device and / or display device (also referred to herein as a ‘split rendering client’) can be divided into sections or portions of 360 degrees of viewing perspective, which can be referred to as viewports, such that the visual media content can be generated for one or more viewports such that the rendered visual media content corresponds to a field of view (FOV) of the eyes of a user viewing the media content, inclusive of a stereoscopic offset to simulate natural parallax. As used herein, the term ‘viewport’ refers to a portion of the XR content to be rendered for a user based on pose information associated with the user and the user’s associated field of view (FOV) within the full virtual scene, of which only the portion designated as the viewport during an associated time is being rendered.
[0031] The rendered viewport can then be adjusted in real-time based on changes in a user’s perceived location, viewing direction, head movements, rate of change of movement of these characteristics, and other user movements or behaviors. To do this, the user device can track its own pose and movement based on a variety of sensors, gyroscopes, magnetometers, accelerometers, and / or the like, and the user device can then receive a full complement of rendered raw visual media content for the entire virtual environment being viewed and experienced by the user, and then the user device can clip the user motion and pose adjusted viewport from the rendered raw visual media content. However, such a solution requires the transmission of an unacceptably large amount of rendered raw visual media content, requires that the user device has exceedingly high computational capabilities, and incurs significant latency due to all rendering activities being carried out at the user device prior to display of the viewport during each associated period of time. The exceedingly high computational capabilities requirements, however, mean that the user device (e.g., virtual reality goggles, augmented reality glasses, heads-up display, head-mounted display, or the like) will be bulky and heavy due to increased battery capacity requirements, which will erode theimmersiveness of the user experience, and will require processing chips and graphics cards having higher processing capacity, which increases the cost of the user device.
[0032] In order to reduce the need for computational capacity at the user device, reduce the cost of the user devices, and reduce bandwidth requirements, the computational cost and latency cost of rendering the XR media content can be shared between the user device and one or more other devices. Split rendering sharing can be used to alleviate the XR media content rendering required to be carried out by the user device and reduce the latency of between the user’s movements and the corresponding changes in the XR scene. The primary goal of split rendering is to reduce the latency between the user's movements and the corresponding changes in the XR scene. This latency, often referred to as motion-to-photon latency, can cause discomfort and reduce the sense of immersion for a user. Split rendering addresses this by minimizing the time it takes to generate and display each frame of the XR media content. Additional detail regarding split rendering is provided in 3GPP TS 26.565, version 1.1.0, the entire contents of which are hereby incorporated herein by reference in its entirety for all purposes.
[0033] The XR application's rendering pipeline generates a stereo pair of images, called eye buffers, one for each eye, based on the virtual scene and the user's pose. The pose data is sent to the compositor, which uses this information to generate a warp mesh for each eye. The warp mesh corrects any discrepancies between the rendered image and the actual display output due to the user's movements. The compositor takes the eye buffers and applies lens distortion correction and warp adjustments based on the warp mesh. Once the image is corrected based on user movements and pose information, the corrected image is known as a warped frame. The compositor's output, the warped frame, is sent to the user device for display to the user. By using a compositor and split rendering services, the user device can achieve very low latency and minimize the motion-to-photon latency.
[0034] By offloading the warp and lens correction computations to a separate compositor, the GPU's workload is reduced, leading to improved rendering performance. The split rendering approach means that the final image displayed to the user is correctly aligned with their perspective, even if there are slight discrepancies due to rapid head movements or changes in the user's pose.
[0035] In the XR context, split rendering sessions are facilitated by provisioning a compositor, such as a split rendering server, to carry out split rendering services for a user device. However, over time, a compositor, such as a split rendering server, can becomeoverburdened, resource starved, or otherwise experience a reduction in rendering capacity, which can lead to a degradation in quality of the rendered visual media content.
[0036] Edge server provisioning for split rendering session services is often used to deliver high-quality extended reality (XR) experiences, particularly in scenarios where the rendering workload is distributed between different devices or subsystems. This provisioning involves setting up and managing servers at the edge of the network, closer to the end-users, to ensure low latency, efficient data transfer, and smooth communication between the XR devices, rendering hardware, and compositor.
[0037] The present disclosure addresses how to continue a SR session for seamless offloading of split rendering tasks to split rendering servers under certain challenging scenarios. For example, A typical use case for the split rendering MSE is immersive gaming. In this use case, the UE benefits from invoking split rendering by avoiding the download of the game to the phone and getting high quality graphics from edge rendering. Another use case that can benefit from split rendering is immersive communication, where users gather in a shared space and interact with each other and with the environment. Users may be represented by sophisticated Avatars and as the number of users increases the rendering will become more complex.
[0038] In the current state of technology, client-driven split rendering procedures are available that can operate well in reliable communication networks. When technical issues with edge server infrastructures (e.g., power outages, disaster recovery situations) and network congestion (e.g., audience spikes or localized congestion) are encountered, the offloading process may be degraded. In such cases, seamless and automation of XR split rendering session relocation is required. Further, relocating the session solely on the server side would result in service interruption and a drop in quality of experience (QoE) for the user.
[0039] However, there are not currently sufficient processes or methods in the relevant 3 GPP standards or elsewhere for handling edge server location and distribution, XR server network connectivity issues, split rendering load balancing and scaling, split rendering session management, split rendering server provisioning and deprovisioning, data transfer and compression, and other aspects of XR split rendering.
[0040] Also, in practical deployments of split rendering services over edge servers, there are cases where a split rendering session may need to be relocated for reasons that are independent from the split rendering client (e.g., user device), and that the split rendering client cannot detect and / or about which the split rendering client is not made aware. Asmentioned above, handling of split rendering session relocation entirely on the server side creates service interruptions and a degradation of QoE for the user if not carried out in cooperation with already established split rendering session(s). Currently, at the applicationlevel (e.g., end-to-end), split rendering session mobility is agnostic to user device handover between different access nodes (e.g., radio access network [RAN], gNodeB [gNB], etc.) and provides no mechanism for monitoring for XR media content quality degradation, network traffic degradation, QoS metric degradation, QoE metric degradation, server KPI degradation during XR split rendering, nor are any mechanisms in place for how to relocate split rendering sessions when such degradation occurs.
[0041] The term QoS is used herein to refer to performance characteristics of a network service, and is usually used to assure that the network performs at or above certain levels of quality. QoS metrics can be selected from among: a packet loss rate (which refers to the percentage of packets that are sent from a source device to a destination device but do not arrive), a bit rate, a bandwidth, a latency (which is the amount of time it takes for a packet to travel from a source to a destination), a throughput, a transmission delay, an availability, a jitter (a variance in packet latency over time), bandwidth allocation (which may be used to ensure that adequate bandwidth is allocated to data flows), and / or the like.
[0042] The term QoE is used herein to refer to measures of a customer's experience with a network service and is typically more user-centric. QoE metrics can be selected from among: user satisfaction (which measures how delivered content or a network service meets user’s expectations), perceptual quality (which is based on subjective opinions of users about the delivered content or network service), accessibility (which refers to the ease with which users can access the delivered content or network service), reliability (which refers to how often a delivered content stream or network serviceare available to the user device and / or user without interruption), and / or the like.
[0043] Some embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all, embodiments of implementing the concepts described hereinare shown. Indeed, various embodiments may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like reference numerals refer to like elements throughout. As used herein, the terms “data,” “content,” “information,” and similar terms may be used interchangeably to refer to data capable of being transmitted, received and / or stored in accordance withembodiments described herein. Thus, use of any such terms should not be taken to limit the spirit and scope of the described embodiments.
[0044] Additionally, as used herein, the term ‘circuitry’ refers to (a) hardware-only circuit implementations (e.g., implementations in analog circuitry and / or digital circuitry); (b) combinations of circuits and computer program product(s) comprising software and / or firmware instructions stored on one or more computer readable memories that work together to cause an apparatus to perform one or more functions described herein; and (c) circuits, such as, for example, a microprocessor(s) or a portion of a microprocessor s), that require software or firmware for operation even if the software or firmware is not physically present. This definition of ‘circuitry’ applies to all uses of this term herein, including in any claims. As a further example, as used herein, the term ‘circuitry’ also includes an implementation comprising one or more processors and / or portion(s) thereof and accompanying software and / or firmware. As another example, the term ‘circuitry’ as used herein also includes, for example, a baseband integrated circuit or applications processor integrated circuit for a mobile phone or a similar integrated circuit in a server, a cellular network device, other network device, and / or other computing device.
[0045] As defined herein, a “computer-readable storage medium,” which refers to a non- transitory physical storage medium (e.g., volatile or non-volatile memory device), can be differentiated from a “computer-readable transmission medium,” which refers to an electromagnetic signal. Such a medium may take many forms, including, but not limited to a non-transitory computer-readable storage medium (e.g., non-volatile media, volatile media), and transmission media. Transmission media include, for example, coaxial cables, copper wire, fiber optic cables, and carrier waves that travel through space without wires or cables, such as acoustic waves and electromagnetic waves, including radio, optical and infrared waves. Signals include man-made transient variations in amplitude, frequency, phase, polarization or other physical properties transmitted through the transmission media. Examples of non-transitory computer-readable media include a magnetic computer readable medium (e.g., a floppy disk, hard disk, magnetic tape, any other magnetic medium), an optical computer readable medium (e.g., a compact disc read only memory (CD-ROM), a digital versatile disc (DVD), a Blu-Ray disc, or the like), a random access memory (RAM), a programmable read only memory (PROM), an erasable programmable read only memory (EPROM), a FLASH-EPROM, or any other non-transitory medium from which a computer can read. The term computer-readable storage medium is used herein to refer to any computer-readable medium except transmission media. However, it will be appreciated thatwhere embodiments are described to use a computer-readable storage medium, other types of computer-readable mediums may be substituted for or used in addition to the computer- readable storage medium in alternative embodiments.
[0046] While various inventive embodiments have been described and illustrated herein, those of ordinary skill in the art will readily envision a variety of other means and / or structures for performing the function and / or obtaining the results and / or one or more of the advantages described herein, and each of such variations and / or modifications is deemed to be within the scope of the inventive embodiments described herein. More generally, those skilled in the art will readily appreciate that all parameters, dimensions, materials, and configurations described herein are meant to be examples and that the actual parameters, dimensions, materials, and / or configurations will depend upon the specific application or applications for which the inventive teachings is / are used. Those skilled in the art will recognize, or be able to ascertain using no more than routine experimentation, many equivalents to the specific inventive embodiments described herein. It is, therefore, to be understood that the foregoing embodiments are presented by way of example only and that, within the scope of the appended claims and equivalents thereto, inventive embodiments may be practiced otherwise than as specifically described and claimed. Inventive embodiments of the present disclosure are directed to each individual feature, system, article, material, kit, and / or method described herein. In addition, any combination of two or more such features, systems, articles, materials, kits, and / or methods, if such features, systems, articles, materials, kits, and / or methods are not mutually inconsistent, is included within the inventive scope of the present disclosure.
[0047] In the following, certain embodiments are explained with reference to mobile communication devices capable of communication via a wireless cellular system and mobile communication systems serving such mobile communication devices. Before explaining in detail the exemplifying embodiments, certain general principles of a wireless communication system, access systems thereof, and mobile communication devices are briefly explained with reference to FIG. 1-2B to assist in understanding the technology underlying the described examples.
[0048] According to some embodiments, a communication device or terminal can be provided for wireless access via cells, base stations or similar wireless transmitter and / or receiver nodes, providing access points for a radio access system.
[0049] Access points and hence communications there through are typically controlled by at least one appropriate controller apparatus so as to enable operation thereof and managementof mobile communication devices in communication therewith. In some embodiments, a control apparatus for a node may be integrated with, coupled to and / or otherwise provided for controlling the access points. In some embodiments, the control apparatus can be arranged to allow communications between a user equipment and a core network or a network entity of the core network. For this purpose, the control apparatus may comprises at least one memory, at least one data processing unit such as a processor or the like, and an input and / or output interface. Via the interface, the control apparatus can be coupled to relevant other components of the access point. The control apparatus can be configured to execute an appropriate software code to provide the control functions. It shall be appreciated that similar components can be provided in a control apparatus provided elsewhere in the network system, for example in a core network entity. The control apparatus can be interconnected with other control entities. The control apparatus and functions may be distributed between several control units. In some embodiments, each base station can comprise a control apparatus. In alternative embodiments, two or more base stations may share a control apparatus.
[0050] Access points and associated controllers may communicate with each other via a fixed line connection and / or via a radio interface. The logical connection between the base station nodes can be provided for example by an X2 or the like interface. This interface can be used for example for coordination of operation of the stations and performing reselection or handover operations.
[0051] The communication device or user equipment may comprise any suitable device capable of at least receiving wireless communication of data. For example, the device can be handheld data processing device equipped with radio receiver, data processing and user interface apparatus. Non-limiting examples include a mobile station (MS) such as a mobile phone or what is known as a ‘smart phone’, a portable computer such as a laptop or a tablet computer provided with a wireless interface card or other wireless interface facility, personal data assistant (PDA) provided with wireless communication capabilities, or any combinations of these or the like. Further examples include wearable wireless devices such as those integrated with watches or smart watches, eyewear, helmets, hats, clothing, ear pieces with wireless connectivityjewelry and so on, universal serial bus (USB) sticks with wireless capabilities, modem data cards, machine type devices or any combinations of these or the like.
[0052] In some embodiments, a communication device, e.g., configured for communication with the wireless network or a core network entity, may be exemplified by a handheld orotherwise mobile communication device (or user equipment (UE). A mobile communication device may be provided with wireless communication capabilities and appropriate electronic control apparatus for enabling operation thereof. Thus, the communication device may be provided with at least one data processing entity, for example a central processing unit and / or a core processor, at least one memory and other possible components such as additional processors and memories for use in software and hardware aided execution of tasks it is designed to perform. The data processing, storage and other relevant control apparatus can be provided on an appropriate circuit board and / or in chipsets. Data processing and memory functions provided by the control apparatus of the communication device are configured to cause control and signaling operations in accordance with certain embodiments as described later in this description. A user may control the operation of the communication device by means of a suitable user interface such as touch sensitive display screen or pad and / or a key pad, one of more actuator buttons, voice commands, combinations of these, or the like. A speaker and a microphone are also typically provided. Furthermore, a mobile communication device may comprise appropriate connectors (either wired or wireless) to other devices and / or for connecting external accessories, for example hands-free equipment, thereto.
[0053] In some embodiments, a communication device may communicate wirelessly via appropriate apparatus for receiving and transmitting signals. In some embodiments, a radio unit may be connected to the control apparatus of the device. The radio unit can comprise a radio part and associated antenna arrangement. The antenna arrangement may be arranged internally or externally to the communication device.
[0054] FIGS. 1-2B illustrate various exemplary architectures for a communications network 100 in which the various methods, apparatuses, and computer program products can be carried out and / or used. In some embodiments, the communications network 100 can comprise any suitable configuration, number, orientation, positioning, and / or dimensions of components and specialized equipment configured to provide air interface (e.g., New Radio (NR)) communication or connection between a user equipment 102 (UE 102) and a data network 116 (DN 116) via a core network 101 (CN 101) of the communications network 100. As illustrated in FIG. 1, a communications network 100 may be provided in which the UE 102 is in operable communication with the AN 104, such as by way of a transmission tower, a base station, a network node, or the like. In some embodiments, the AN 104 can communicate with the CN 101 or a component or entity thereof. In some embodiments, the CN 101 can facilitate communication between the UE 102 and the DN 116, such as for sending data, messages, requests, or the like. In some embodiments, the DN 116 or the CN101 can be in communication with an application server or application function 112 (AS / AF 112).
[0055] In the context of a fifth-generation (5G) network, such as illustrated in FIGSS. 2A and 2B, the communications network 100 may comprise a series of connected network devices and specialized hardware that is distributed throughout a service region or country, and one or more network entities, which may be stored at and / or hosted by one or more of the connected network devices or specialized hardware. In some embodiments, the UE 102 may connect to the AN 104, which can then relay the communications between the UE 102 and the CN 101, the CN 101 being connected to the DN 116, which may be in communication with one or more AS / AF 112. In some embodiments, the UE 102 may be in communication with a radio access network 104 (RAN 104 or (R)AN 104), which may act as a relay between the UE 102 and other components or services of the CN 101. For instance, in some embodiments, the UE 102 may communicate with the RAN 104, which may in turn communicate with an Access and Mobility Management Function 108 (AMF 108). In other instance or embodiments, the UE 102 may communicate directly with the AMF 108. In some embodiments, the AMF 108 may be in communication with one or more network functions (NFs), such as an Authentication Server Function 120 (AUSF 120), a Network Slice Selection Function 122 (NSSF 122), a Network Repository Function 124 (NRF 124), a Policy Charging Function 114 (PCF 114), a Network Data Analytics Function 126 (NWDAF 126), a Unified Data Management function 118 (UDM 118), the AS / AF 112, a Session Management Function 110 (SMF 110), and / or the like.
[0056] In some embodiments, such as illustrated in FIG. 2B, the SMF 110 may be in communication with one or more User Plane Functions 106 (UPF 106, UPF 106a, UPF 106b, collectively “UPF 106”). By way of example only, in some embodiments, the UPF 106 may be in communication with the RAN 104 and the DN 116. In other embodiments, the DN 116 may be in communication with a first UPF 106a and the RAN 104 may be in communication with a second UPF 106b, while the SMF 110 is in communication with both the first and second UPFs 106a, b and the first and second UPFs 106a, b are in communication each with the other.
[0057] In some embodiments, the UE 102 can comprise a single-mode or a dual -mode device such that the UE 102 can be connected to one or more RANs 104. In some embodiments, the RAN 104 may be configured to implement one or more radio access technologies (RATs), such as Bluetooth, Wi-Fi, and GSM, UMTS, LTE or 5G NR, among others, that can be used to connect the UE 102 to the CN 101. In some embodiments, the RAN 104 can comprise orbe implemented using a chip, such as a silicon chip, in the UE 102 that can be paired with or otherwise recognized by a similar chip in the CN 101, such that the RAN 104 can establish a connection or line of communication between the UE 102 and the CN 101 by identifying and pairing the chip within the UE 102 with the chip within the CN 101. In some embodiments, the RAN 104 can implement one or more base stations, towers or the like to communicate between the UE 102 and the AMF 108 of the CN 101.
[0058] In some embodiments, the communications network 100 or components thereof (e.g., base stations, towers, etc.) can be configured to communicate with a communication device (e.g., the UE 102) such as a cell phone or the like over multiple different frequency bands, e.g., FR1 (below 6 GHz), FR2 (mmWave), other suitable frequency bands, sub-bands thereof, and / or the like. In some embodiments, the communications network 100 can comprise or employ massive multiple input and multiple output (massive MIMO) antennas. In some embodiments, the communications network 100 can comprise multi-user MIMO (MU- MIMO) antennas. In some embodiments, the communications network 100 can employ edge computing whereby the computing servers are communicatively, physically, computationally, and / or temporally closer to the communications device (e.g., UE 102) in order to reduce latency and data traffic congestion. In some embodiments, the communications network 100 can employ other technologies, device, or techniques, such as small cell, low-powered RAN, beamforming of radio waves, WiFi-cellular convergence, non-orthogonal multiple access (NOMA), channel coding, and the like.
[0059] As illustrated in FIG. 2B, the UE 102 may be configured to communicate with the RAN 104 in a N1 interface, e.g., according to a non-access stratum (NAS) protocol. In some embodiments, RAN 104 can be configured to communicate with the CN 101 or a component thereof (e.g., the AMF 108) in a N2 interface, e.g., in a control plane between a base station of the RAN 104 and the AMF 108. In some embodiments, the RAN 104 can be configured to communicate with the UPF 106 in a N3 interface, e.g., in a user plane. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with other services or network entities within the CN 101 in various different interfaces and / or according to various different protocols. For instance, in some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the AUSF 120 in a Nausf interface or an N12 interface. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the NSSF 122 in a Nnssf interface. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the NRF 124 in a Nnrf interface. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicatewith the PCF 114 in a Npcf interface or an N7 interface. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the NWDAF 126 in a Nnwdaf interface. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the UDM 118 in a Nudm interface, an N8 interface, or an N10 interface. In some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the AS / AF 112 in a Naf interface. In some embodiments, the SMF 110 can be configured to communicate with the UPF 106 in a N4 interface, which may act as a bridge between the control plane and the user plane, such as acting as a conduit for a Protocol Data Unit (PDU) session during which information is transmitted between, e.g., the UE 102 and the CN 101 or components and / or services thereof.
[0060] It will be appreciated that example embodiments disclosed and / or otherwise described herein arise in the context of a telecommunications network, including but not limited to a telecommunications network that conforms to and / or otherwise incorporates aspects of a fifth-generation (5G) architecture. While FIGs. 1-2B illustrate various configurations and / or components of an exemplary architecture of the mobile communication network 100 (generally referred to as network 100 herein), many other systems, system configurations, networks, network entities, and pathways and / or protocols for communication therein are contemplated and considered within the scope of this present disclosure.
[0061] While the methods, devices, and computer program products described herein are described within the context of a fifth-generation (5G) core network and system, such as illustrated in FIGs. 1-2B and described hereinabove, the described methods, devices, and computer program products can nevertheless be applied in a broader context within any suitable telecommunications system, network, standard, or protocol.
[0062] Figure 3 illustrates an example 5G network with a split rendering (SR) media service enabler architecture. In the 5G network with a SR MSE architecture, 5G media function residing in a 5G edge server is a split rendering server (SRS). The 5G media function is responsible for negotiation for a split rendering (SR) session with a split rendering client (SRC), monitoring usage of resources of the 5G edge server on which the 5G media function resides and managing and / unning a split rendering process.
[0063] In the example of a 5G network with a SR MSE-architecture shown in Figure 3, a 5G Application Service Provider or 5G Application Provider (AP) provisions resources for splitrendering through RTC-1. The 5G application provider may be an entity providing applications to communication devices (e.g., UEs) which use split rendering, over a 5GNetwork. The 5G AP may be authorised to use resources and functionalities provided by the 5G network. Provisioning may include the 5G AP requesting the 5G network to allocate appropriate resources and Quality of Service profiles for a split rendering session. The resources, may for example, include means to carry out compute and render operations for a split rendering session.
[0064] The 5G AP may delivers (e.g., provides) media to a SRS through RTC-2. The communication between RTC AF and SRS is through RTC-3. RTC-3 is an interface may include the EDGE-3 interface (as described in clause 6.5.7 of 3GPP TS 23.558 V19.0). Signaling and media delivery between SRC and SRS is though RTC-4. The RTC AF may provide the split-rendering information to the Media Session Handler defined by RTC-5. SRC discovers the application through RTC-6 and handles the XR runtime. The SRC discovers the client media capabilities through the RTC-7 interface. The 5G Application and AP interact through RTC-8-8.
[0065] Aspects of the present disclosure introduce procedures for effectively managing split rendering session transitions during relocation. The disclosed approach includes, in some embodiments, monitoring for existing split rendering sessions and triggering relocation based on monitoring of media session degradation. This may lead to uninterrupted offloading in dynamic scenarios. Based on the relocation trigger result from monitoring, split rendering can be relocated or provisioned to a new server, and split rendering sessions can be efficiently transferred to a new server. Further negotiation between the two split rendering sessions, based on timing information, can facilitate seamless switching during relocation of a split rendering session. Further, extensions to the SplitRenderingConfiguration resource, along with the addition of a new application-specific message for split rendering transfer format, providing essential relocation information, are described.
[0066] 3GPP TR 26.928 defines the terms Virtual Reality (VR), Augmented Reality (AR), Mixed Reality (MR), and extended Reality (XR) are defined as follows:
[0067] Virtual reality (VR) is a rendered version of a delivered visual and audio scene. The rendering is designed to mimic the visual and audio sensory stimuli of the real world as naturally as possible to an observer or user as they move within the limits defined by the application. Virtual reality usually, but not necessarily, requires a user to wear a head mounted display (HIVID), to completely replace the user's field of view with a simulated visual component, and to wear headphones, to provide the user with the accompanying audio. Some form of head and motion tracking of the user in VR is usually employed to allow the simulated visual and audio components to be updated in order to ensure that, from the user'sperspective, items and sound sources remain consistent with the user's movements. Additional means to interact with the virtual reality simulation may be provided.
[0068] Augmented reality (AR) is when a user is provided with additional information or artificially generated items or content overlaid upon the user’s current environment. Such additional information or content will usually be visual and / or audible and the user’s observation of their current environment may be direct, with no intermediate sensing, processing and rendering, or indirect, where the user’s perception of their environment is relayed via sensors and may be enhanced or processed.
[0069] Mixed reality (MR) is an advanced form of AR where some virtual elements are inserted into the physical scene with the intent to provide the illusion that these elements are part of the real scene.
[0070] Extended reality (XR) refers to all real-and-virtual combined environments and human-machine interactions generated by computer technology and wearables. XR includes representative forms such as AR, MR and VR and the areas interpolated among them. The levels of virtuality range from partially sensory inputs to fully immersive VR. A key aspect of XR is the extension of human experiences especially relating to the senses of existence (represented by VR) and the acquisition of cognition (represented by AR). Likewise, the term XR is used herein as a superordinate category covering AR, MR and VR including purely virtual applications.
[0071] According to the descriptions of use cases of virtual reality applications such as XR applications given by 3GPP TR 22.842, version 17.2.0, the entire disclosure of which is hereby incorporated herein by reference in its entirety for all purposes, many of the XR applications are expected to be stateful, meaning that the applications have a state describing the UE application status at a certain point of time. Additionally, the fact that the UEs are expected to interact (e.g., in gaming applications) implies that the various LTEs' states should be shared among the LTEs. This introduces several challenges during a handover (HO) procedure: a) The target gNB should be prepared and have adequate radio resources to accommodate the UE executing the XR application. b) In case of a handover failure, the UE will experience service interruption, thus the network should try to ensure seamless handover (considering also application relocation) to avoid an interruption of the XR application. c) In case of a User Plane Function (UPF) relocation, the new UPF may not be able to offer the XR service.d) During the handover, the target EAS may not be properly prepared to take over the EAS functionalities from the previous EAS to avoid long delays.
[0072] The present disclosure addresses these challenges and generally relates to a handover in a communication network such as a mobile communication network, e.g., a 5G network. Note that the present disclosure relates to various types and generations of communication networks configured to communicate over the transmission medium using any of various radio access technologies (RATs), also referred to as wireless communication technologies, or telecommunication standards, such as GSM, UMTS (associated with, for example, WCDMA or TD-SCDMA air interfaces), LTE, LTE-Advanced (LTE-A), 5G new radio (5G NR), HSPA, 3GPP2 CDMA2000 (e.g, IxRTT, IxEV-DO, HRPD, eHRPD), etc.
[0073] The communication network is equipped with a plurality of base stations including a source base station and a target base station. The handing concerns a UE executing an XR application over a connection with the source base station. As used herein, the term "user equipment" may refer to any of various types of computer systems devices which are mobile or portable and which perform wireless communications. Examples of UEs include mobile telephones or smart phones, portable gaming devices, laptops, wearable devices (e.g., smart watch, smart glasses), Personal Digital Assistants (PDAs), portable Internet devices, music players, data storage devices, or other handheld devices, etc. In general, the term "UE" can be broadly defined to encompass any electronic, computing, and / or telecommunications device (or combination of devices) which is easily transported by a user and capable of wireless communication.
[0074] The present disclosure is particularly directed to enable the target base station (target gNodeB or gNB in 5G terminology) to support an XR application of the UE in terms of radio capabilities and regarding the resources at the Edge Data Network (EDN), as already introduced above. In embodiments, the target base station and the target EDN(s) are properly prepared to undertake the UE XR capabilities and the proper User Plane Function (UPF) is selected considering the XR capabilities of the Application Function (AF) regarding XR application aspects. Also, during handover, a proper UPF may be re-selected considering the XR capabilities of the target AF, also if the application were to be relocated during handover.
[0075] Turning now to FIG. 4, examples of a core network apparatus (CNA) (including the core network functions: UPF 106, AMF 108, SMF 110, PCF 114, and / or another NF and / or NRF) may be embodied in a core network apparatus 200 as configured in accordance with an example embodiment of the present disclosure. As described below in conjunction with the flowcharts of FIGs. 7, 8 and 11, the CNA 200 of an example embodiment may be configuredto perform the functions described herein. In any instance, the CNA 200 may more generally be a computing device or computing, such as a server, a standalone computer, a distributed computing system, or a cloud computing system. Regardless of the manner in which the CNA 200 is embodied, the apparatus of an example embodiment may be configured as shown in FIG. 4 so as to include, be associated with or otherwise be in communication with processing circuitry including, for example, a processor 202 and a memory device 204 and, in some embodiments, and / or a communication interface 206.
[0076] In the CNA 200, the processor 202 (and / or co-processors or any other circuitry assisting or otherwise associated with the processor 202) may be in communication with the memory device 204 via a bus for passing information among components of the CNA 200. The memory device 204 may include, for example, one or more volatile and / or non-volatile memories. In other words, for example, the memory device 204 may be an electronic storage device (e.g., a computer readable storage medium) comprising gates configured to store data (e.g., bits) that may be retrievable by a machine (e.g., a computing device like the processor 202). The memory device 204 may be configured to store information, data, content, applications, instructions, or the like for enabling the CNA 200 to carry out various operations of one or more core network functions in accordance with an example embodiment of the present disclosure. For example, the memory device 204 could be configured to buffer input data for processing by the processor 202. Additionally or alternatively, the memory device 204 could be configured to store instructions of core network functions for execution by the processor 202.
[0077] The processor 202 may be embodied in a number of different ways. For example, the processor 202 may be embodied as one or more of various hardware processing means such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing element with or without an accompanying DSP, or various other circuitry including integrated circuits such as, for example, an ASIC (application specific integrated circuit), an FPGA (field programmable gate array), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, or the like. As such, in some embodiments, the processor 202 may include one or more processing cores configured to perform independently. A multi-core processor may enable multiprocessing within a single physical package. Additionally or alternatively, the processor 202 may include one or more other processors configured in tandem via the bus to enable independent execution of instructions, pipelining and / or multithreading.
[0078] In an example embodiment, the processor 202 may be configured to execute instructions stored in the memory device 204 or otherwise accessible to the processor 202. Alternatively or additionally, the processor 202 may be configured to execute hard coded functionality. As such, whether configured by hardware or software methods, or by a combination thereof, the processor 202 may represent an entity (e.g., physically embodied in circuitry) capable of performing operations according to an embodiment of the present disclosure while configured accordingly. Thus, for example, when the processor 202 is embodied as an ASIC, FPGA or the like, the processor 202 may be specifically configured hardware for conducting the operations described herein.
[0079] Alternatively, as another example, when the processor 202 is embodied as an executor of instructions, the instructions may specifically configure the processor 202 to perform the algorithms and / or operations described herein when the instructions are executed. However, in some cases, the processor 202 may be a processor of a specific device (e.g., an encoder and / or a decoder) configured to employ an embodiment described herein by further configuration of the processor 202 by instructions for performing the algorithms and / or operations described herein. The processor 202 may include, among other things, a clock, an arithmetic logic unit (ALU) and logic gates configured to support operation of the processor 202.
[0080] In embodiments that include a communication interface 206, the communication interface 206 may be any means such as a device or circuitry embodied in either hardware or a combination of hardware and software that is configured to receive and / or transmit data from and / or to a network and / or any other device or module in communication with the CNA 200, such as an NF, an NRF (e.g., 124), a UE (e.g., 102), a RAN (e.g., 104) core network services, an application server and / or function (e.g., 112), a database or other storage device, etc. In this regard, the communication interface 206 may include, for example, an antenna (or multiple antennas) and supporting hardware and / or software for enabling communications with a wireless communication network. Additionally or alternatively, the communication interface 206 may include the circuitry for interacting with the antenna(s) to cause transmission of signals via the antenna(s) or to handle receipt of signals received via the antenna(s). In some environments, the communication interface 206 may alternatively or also support wired communication. As such, for example, the communication interface 206 may include a communication modem and / or other hardware and / or software for supporting communication via cable, digital subscriber line (DSL), universal serial bus (USB) or other mechanisms. In some embodiments, a session management function (e.g., 110) can comprisea 5GC session management function for any suitable CUPS architecture, such as for the gateway GPRS support node (GGSN-C), TWAG-C, BNG-CUPS, N4, Sxa, Sxb, Sxc, evolved packet core (EPC) SWG-C, EPC PGW-C, EPC TDF-C, and / or the like.
[0081] In some embodiments, the CNA 200 may represent a user equipment (e.g., 102) that is configured to be connected to other core network entities or network equipment. In some embodiments, user equipment can comprise a mobile telephone (cell phone) or the like.
[0082] As illustrated, the CNA 200 can include the processor 202 in communication with the memory 204 and configured to provide signals to and receive signals from the communication interface 206. In some embodiments, the communication interface 206 can include a transmitter and a receiver. In some embodiments, the processor 202 can be configured to control the functioning of the CNA 200, at least in part. In some embodiments, the processor 202 may be configured to control the functioning of the transmitter and receiver by effecting control signaling via electrical leads to the transmitter and receiver. Likewise, the processor 202 may be configured to control other elements of CNA 200 by effecting control signaling via electrical leads connecting the processor 202 to the other elements, such as a display or the memory 204. The processor 202 may, for example, be embodied in a variety of ways including circuitry, at least one processing core, one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits (for example, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), and / or the like), or some combination thereof. Accordingly, although illustrated in FIG. 4 as a single processor, in some example embodiments the processor 202 may comprise a plurality of processors or processing cores.
[0083] The CNA 200 may be capable of operating with one or more air interface standards, communication protocols, modulation types, access types, and / or the like. Signals sent and received by the processor 202 may include signaling information in accordance with an air interface standard of an applicable cellular system, and / or any number of different wireline or wireless networking techniques, comprising but not limited to Wi-Fi, wireless local access network (WLAN) techniques, such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, 802.16, 802.3, ADSL, DOCSIS, and / or the like. In addition, these signals may include speech data, user generated data, user requested data, and / or the like.
[0084] For example, the CNA 200 and / or a cellular modem therein may be capable of operating in accordance with various first generation (1G) communication protocols, second generation (2G or 2.5G) communication protocols, third-generation (3G) communication protocols, fourth-generation (4G) communication protocols, fifth-generation (5G) communication protocols, Internet Protocol Multimedia Subsystem (IMS) communication protocols (for example, session initiation protocol (SIP) and / or the like. For example, the CNA 200 may be capable of operating in accordance with 2G wireless communication protocols IS-136, Time Division Multiple Access TDMA, Global System for Mobile communications, GSM, IS-95, Code Division Multiple Access, CDMA, and / or the like. In addition, for example, the CNA 200 may be capable of operating in accordance with 2.5G wireless communication protocols General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), and / or the like. Further, for example, the CNA 200 may be capable of operating in accordance with 3G wireless communication protocols, such as Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 2000 (CDMA2000), Wideband Code Division Multiple Access (WCDMA), Time Division- Synchronous Code Division Multiple Access (TD-SCDMA), and / or the like. The CNA 200 may be additionally capable of operating in accordance with 3.9G wireless communication protocols, such as Long Term Evolution (LTE), Evolved Universal Terrestrial Radio Access Network (E-UTRAN), and / or the like. Additionally, for example, the CNA 200 may be capable of operating in accordance with 4G wireless communication protocols, such as LTE Advanced, 5G, and / or the like as well as similar wireless communication protocols that may be subsequently developed. In some embodiments, the CNA 200 may be capable of operating according to or within the framework of any suitable control and user plane separation (CUPS) architecture, such as for the gateway GPRS support node (GGSN-C), trusted wireless access gateway (TWAG-C), broadband network gateways (BNGs), N4, Sxa, Sxb, Sxc, evolved packet core (EPC) SWG-C, EPC PGW-C, EPC TDF-C, and / or the like.
[0085] It is understood that the processor 202 may include circuitry for implementing audio and / or video and logic functions of the CNA 200. For example, the processor 202 may comprise a digital signal processor device, a microprocessor device, an analog-to-digital converter, a digital-to-analog converter, and / or the like. Control and signal processing functions of the CNA 200 may be allocated between these devices according to their respective capabilities. The processor 202 may additionally comprise an internal voice coder (VC), an internal data modem (DM), and / or the like. Further, the processor 202 may include functionality to operate one or more software programs, which may be stored in memory 204.In general, the processor 202 and software instructions stored in memory 206 may be configured to cause the CNA 200 to perform actions. For example, the processor 202 may be capable of operating a connectivity program, such as a web browser. The connectivity program may allow the CNA 200 to transmit and receive web content, such as location-based content, according to a protocol, such as wireless application protocol, WAP, hypertext transfer protocol, HTTP, and / or the like.
[0086] In some embodiments, the CNA 200 may also comprise a user interface including, for example, an earphone or speaker, a ringer, a microphone, a display, a user input interface, and / or the like, which may be operationally coupled to the processor 202. The display may, as noted above, include a touch sensitive display, where a user may touch and / or gesture to make selections, enter values, and / or the like. The processor 202 may also include user interface circuitry configured to control at least some functions of one or more elements of the user interface, such as the speaker, the ringer, the microphone, the display, and / or the like. The processor 202 and / or user interface circuitry comprising the processor 202 may be configured to control one or more functions of one or more elements of the user interface through computer program instructions, for example, software and / or firmware, stored on the memory 204 accessible to the processor 202, for example, a volatile memory, a non-volatile memory, devices comprising the same, and / or the like. The CNA 200 may include a battery for powering various circuits related to the mobile terminal, for example, a circuit to provide mechanical vibration as a detectable output. The user input interface may comprise devices allowing the CNA 200 to receive data, such as a keypad (e.g., a virtual keyboard presented on a display or an externally coupled keyboard) and / or the like.
[0087] As shown in FIG. 4, CNA 200 may also include one or more mechanisms for sharing and / or obtaining data, illustrated as the communication interface 206. For example, the communication interface 206 of the CNA 200 may include a short-range radio frequency (RF) transceiver and / or interrogator, so data may be shared with and / or obtained from electronic devices in accordance with RF techniques. The CNA 200 may include other short- range transceivers, such as an infrared (IR) transceiver, a BluetoothTM (BT) transceiver operating using BluetoothTM wireless technology, a wireless universal serial bus (USB) transceiver, a BluetoothTM Low Energy transceiver, a ZigBee transceiver, an ANT transceiver, a cellular device-to-device transceiver, a wireless local area link transceiver, and / or any other short-range radio technology. In some embodiments, the CNA 200 and, in particular, the short-range transceiver may be capable of transmitting data to and / or receiving data from electronic devices within the proximity of the apparatus, such as within about 10meters, for example. The CNA 200 including the Wi-Fi or wireless local area networking modem may also be capable of transmitting and / or receiving data from electronic devices according to various wireless networking techniques, including 6LoWpan, Wi-Fi, Wi-Fi low power, WLAN techniques such as IEEE 802.11 techniques, IEEE 802.15 techniques, IEEE 802.16 techniques, and / or the like.
[0088] The CNA 200 may include volatile memory and / or non-volatile memory, which can comprise some or all of the memory 204 or can alternatively be a separate memory within or connected to the CNA 200. For example, volatile memory may include Random Access Memory (RAM) including dynamic and / or static RAM, on-chip or off-chip cache memory, and / or the like. Non-volatile memory, which may be embedded and / or removable, may include, for example, read-only memory, flash memory, magnetic storage devices, for example, hard disks, floppy disk drives, magnetic tape, optical disc drives and / or media, nonvolatile random access memory (NVRAM), and / or the like. Like volatile memory, nonvolatile memory may include a cache area for temporary storage of data. At least part of the volatile and / or non-volatile memory may be embedded in processor 202. The memories may store one or more software programs, instructions, pieces of information, data, and / or the like. For example, the memory 204 may store software or instructions of one or more network functions of the core network which may be used by the apparatus for performing operations disclosed herein.
[0089] The memories may comprise an identifier, such as an international mobile equipment identification (IMEI) code, capable of uniquely identifying CNA 200. The memories may comprise an identifier, such as an international mobile equipment identification (IMEI) code, capable of uniquely identifying CNA 200. In the example embodiment, the processor 202 may be configured using computer code stored at memory and / or to the provide operations disclosed herein with respect to the base stations, WLAN access points, network nodes including the UEs, and the like. Likewise, the CNA 200 can be configured to be any other component or network equipment from the core network.
[0090] Some of the embodiments disclosed herein may be implemented in software, hardware, application logic, or a combination of software, hardware, and application logic. The software, application logic, and / or hardware may reside on the memory 204, the processor 202, or electronic components, for example. In some example embodiment, the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media. In the context of this document, a “computer- readable medium” may be any non-transitory media that can contain, store, communicate,propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer or data processor circuitry, with examples depicted at FIG. 4, computer-readable medium may comprise a non-transitory computer-readable storage medium that may be any media that can contain or store the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.
[0091] FIG. 5 illustrates an example of an apparatus, which may be configured in accordance with an example embodiment of the present disclosure. The apparatus 300 may be a UE (e.g., UE 102) and may be configured to perform the functions, processes, and methods described herein, combinations thereof, variations thereof, or parts thereof. As described herein, the terms “UE”, “user device”, “terminal device”, “head-mounted display”, “XR device”, and “split rendering client” are often used interchangeably to refer to any apparatus, device, hardware, computing device, system, or sub-system configured to receive rendered XR media content from a provisioned split rendering server during a split rendering session, whether or not the receiving device is configured to display the XR media content, whether or not the receiving device is configured to measure, detect, calculate, sense, or otherwise determine a user’s pose information, and whether or not the receiving device is rendering another portion of the XR media content in parallel with the provisioned split rendering server. Also, as described herein, the terms “server”, “edge server”, and “split rendering server” are often used interchangeably to refer to any function, element, node, engine, apparatus, device, server, component, system, or sub-system configured to render XR media content during a split rendering session.
[0092] In some embodiments, the apparatus 300 is or comprises exemplary specialized hardware particularly dimensioned and configured to carry out any of the methods, processes, and approaches described herein. In some embodiments, the apparatus 300 can be a part of the system 100 or in communication with a component thereof. It will be appreciated that the apparatus 300 is provided as an example of one embodiment and should not be construed to narrow the scope or spirit of the invention in any way. In this regard, the scope of the disclosure encompasses many potential embodiments in addition to those illustrated and described herein. As such, while FIG. 5 illustrates one example of a configuration of an apparatus for carrying our or facilitating various of the disclosed approaches and methods for seamless split rendering server provisioning and split rendering session relocation, other wireless communication system, such as a 5G system, a 6G system, or other configurations may also be used to implement certain embodiments of the present disclosure.
[0093] The apparatus 300 may be embodied as a desktop computer, laptop computer, mobile terminal, mobile computer, mobile phone, mobile communication device, game device, digital camera and / or camcorder, audio and / or video player, television device, radio receiver, digital video recorder, positioning device, a chipset, a computing device comprising a chipset, any combination thereof, and / or the like. In some example embodiments, the apparatus 300 is embodied as a mobile computing device, such as mobile telephones, mobile computers, personal digital assistants (PDAs), pagers, laptop computers, desktop computers, gaming devices, televisions, e-papers, and other types of electronic systems, which may employ various embodiments described herein.
[0094] The apparatus 300 can include a computing device 302 including a processor 304, and storage, such as a non-volatile memory 306 and / or volatile memory 308. In some embodiments, the processor 304 may, for example, be embodied as various means including circuitry, one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits such as, for example, an ASIC (application specific integrated circuit) or FPGA (field programmable gate array), or some combination thereof. Accordingly, although illustrated in FIG. 5 as a single processor, in some embodiments the processor 304 comprises a plurality of processors. These signals sent and received by the processor 304 may include signaling information in accordance with an air interface standard of an applicable cellular system, and / or any number of different wireline or wireless networking techniques, comprising but not limited to Wi-Fi, wireless local access network (WLAN) techniques such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, 802.16, and / or the like. In addition, these signals may include speech data, user generated data, user requested data, and / or the like. In this regard, the mobile terminal may be capable of operating with one or more air interface standards, communication protocols, modulation types, access types, and / or the like. More particularly, the mobile terminal may be capable of operating in accordance with various first generation (1G), second generation (2G), 2.5G, third-generation (3G) communication protocols, fourth-generation (4G) communication protocols, fifth-generation (5G), sixthgeneration (6G), any band, frequency or protocol thereof, Internet Protocol Multimedia Subsystem (IMS) communication protocols (e.g., session initiation protocol (SIP)), and / or the like. For example, the mobile terminal may be capable of operating in accordance with 2G wireless communication protocols IS-136 (Time Division Multiple Access (TDMA)), GlobalSystem for Mobile communications (GSM), IS-95 (Code Division Multiple Access (CDMA)), and / or the like. Also, for example, the mobile terminal may be capable of operating in accordance with 2.5G wireless communication protocols General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), and / or the like. Further, for example, the mobile terminal may be capable of operating in accordance with 3G wireless communication protocols such as Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 2000 (CDMA2000), Wideband Code Division Multiple Access (WCDMA), Time Division-Synchronous Code Division Multiple Access (TD- SCDMA), and / or the like. The mobile terminal may be additionally capable of operating in accordance with 3.9G wireless communication protocols such as Long Term Evolution (LTE) or Evolved Universal Terrestrial Radio Access Network (E-UTRAN) and / or the like. Additionally, for example, the mobile terminal may be capable of operating in accordance with fourth-generation (4G) wireless communication protocols and / or the like as well as similar wireless communication protocols that may be developed in the future.
[0095] It is understood that the processor 304 may comprise circuitry for implementing audio and / or video and logic functions of the apparatus 300. For example, the processor 304 may comprise a digital signal processor device, a microprocessor device, an analog-to-digital converter, a digital-to-analog converter, and / or the like. Control and signal processing functions of the mobile terminal may be allocated between these devices according to their respective capabilities. The processor may additionally comprise an internal voice coder (VC), an internal data modem (DM), and / or the like. Further, the processor 304 may comprise functionality to operate one or more software programs, which may be stored in memory. For example, the processor 304 may be capable of operating a connectivity program, such as a web browser. The connectivity program may allow the apparatus 300 to transmit and receive web content, such as location-based content, according to a protocol, such as Wireless Application Protocol (WAP), hypertext transfer protocol (HTTP), and / or the like. The apparatus 300 may be capable of using a Transmission Control Protocol and / or Internet Protocol (TCP / IP) to transmit and receive web content across the internet or other networks.
[0096] The apparatus 300 may also comprise a user interface 312 including, for example, an earphone or speaker, a ringer, a microphone, a user display, a user input interface, and / or the like, which may be operationally coupled to the processor 304. In this regard, the processor 304 may comprise user interface circuitry configured to control at least some functions of one or more elements of the user interface, such as, for example, the speaker, the ringer, themicrophone, the display, and / or the like. The processor 304 and / or user interface circuitry comprising the processor 304 may be configured to control one or more functions of one or more elements of the user interface through computer program instructions (e.g., software and / or firmware) stored on a memory accessible to the processor 304 (e.g., non-volatile memory 306, volatile memory 308, and / or the like). Although not shown, the apparatus 300 may comprise a battery for powering various circuits related to the apparatus 300, for example, a circuit to provide mechanical vibration as a detectable output. The apparatus 300 can further comprise a display 314. In some embodiments, the display 314 may be of any type appropriate for the electronic device in question with some examples including a plasma display panel (PDP), a liquid crystal display (LCD), a light-emitting diode (LED), an organic light-emitting diode display (OLED), a projector, a holographic display, or the like. The user interface 312 may comprise devices allowing the apparatus 300 to receive data, such as a keypad, a touch display (e.g., some example embodiments wherein the display 314 is configured as a touch display), a joystick (not shown), and / or other input device. In embodiments including a keypad, the keypad may comprise numeric (0-9) and related keys (#, *), and / or other keys for operating the apparatus 300.
[0097] The apparatus 300 may comprise memory, such as the non-volatile memory 306 and / or the volatile memory 308, such as RAM, read only memory (ROM), non-volatile RAM (NVRAM), a subscriber identity module (SIM), a removable user identity module (R-UIM), and / or the like. In addition to the memory, the apparatus 300 may comprise other removable and / or fixed memory. In some embodiments, the volatile memory 308 may include Random Access Memory (RAM) including dynamic and / or static RAM, on-chip or off-chip cache memory, and / or the like. In some embodiments, the non-volatile memory 306, which may be embedded and / or removable, may include, for example, read-only memory, flash memory, magnetic storage devices (e.g., hard disks, floppy disk drives, magnetic tape, etc.), optical disc drives and / or media, non-volatile random access memory (NVRAM), and / or the like. Like the volatile memory 308, the non-volatile memory 306 may include a cache area for temporary storage of data. The memories may store one or more software programs, instructions, pieces of information, data, and / or the like which may be used by the mobile terminal for performing functions of the mobile terminal. For example, the memories may comprise an identifier, such as an international mobile equipment identification (IMEI) code, capable of uniquely identifying the apparatus 300.
[0098] In some example embodiments, the apparatus 300 includes various means for performing the various functions herein described. These means may comprise one or moreof the processor 304, the non-volatile memory 306, the volatile memory 308, the user interface 312, or the display 314. The means of the apparatus 300 as described herein may be embodied as, for example, circuitry, hardware elements (e.g., a suitably programmed processor, combinational logic circuit, and / or the like), a computer program product comprising computer-readable program instructions (e.g., software or firmware) stored on a computer-readable medium (e.g., storage 306 or 308) that is executable by a suitably configured processing device (e.g., the processor 304), or some combination thereof.
[0099] In some example embodiments, one or more of the means illustrated in FIG. 5 may be embodied as a chip or chip set. In other words, the apparatus 300 may comprise one or more physical packages (e.g., chips) including materials, components and / or wires on a structural assembly (e.g., a baseboard). The structural assembly may provide physical strength, conservation of size, and / or limitation of electrical interaction for component circuitry included thereon. In this regard, the processor 304, the memory 306 and / or 308, the user interface 312, and / or the display 314 may be embodied as a chip or chip set. The apparatus 300 may therefore, in some cases, be configured to or may comprise component(s) configured to implement embodiments described herein on a single chip or as a single “system on a chip.” As such, in some cases, a chip or chipset may constitute means for performing one or more operations for providing the functionalities described herein.
[0100] The processor 304 may, for example, be embodied as various means including one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits such as, for example, an ASIC (application specific integrated circuit) or FPGA (field programmable gate array), one or more other types of hardware processors, or some combination thereof. Accordingly, although illustrated in FIG. 5 as a single processor, in some embodiments the processor 304 comprises a plurality of processors. The plurality of processors may be in operative communication with each other and may be collectively configured to perform one or more functionalities of the apparatus 300, e.g., as described herein. The plurality of processors may be embodied on a single computing device or distributed across a plurality of computing devices collectively configured to function as the apparatus 300. In some embodiments, e.g., wherein the apparatus is embodied as an apparatus 300, the processor 304 may be embodied as or comprise the processor 304 (shown in FIG. 5). In some example embodiments, the processor 304 is configured to execute instructions stored in the memory306 and / or 308 or otherwise accessible to the processor 304. These instructions, when executed by the processor 304, may cause the apparatus 300 to perform one or more of the functionalities of the apparatus 300 as described herein. As such, whether configured by hardware or software methods, or by a combination thereof, the processor 304 may comprise an entity capable of performing operations according to embodiments of the present invention described herein while configured accordingly. Thus, for example, when the processor 304 is embodied as an ASIC, FPGA or the like, the processor 304 may comprise specifically configured hardware for conducting one or more operations described herein. Alternatively, as another example, when the processor 304 is embodied as an executor of instructions, such as may be stored in the memory 306 and / or 308, the instructions may specifically configure the processor 304 to perform one or more algorithms and operations described herein.
[0101] The memory 306 and / or 308 may comprise, for example, volatile memory, nonvolatile memory, or some combination thereof. In this regard, the memory 306 and / or 308 may comprise a non-transitory computer-readable storage medium. Although illustrated in FIG. 5 as a single memory, the memory 306 and / or 308 may comprise a plurality of memories. The plurality of memories may be embodied on a single computing device or may be distributed across a plurality of computing devices collectively configured to function as the apparatus 300. In various example embodiments, the memory 306 and / or 308 may comprise a hard disk, random access memory, cache memory, flash memory, a compact disc read only memory (CD-ROM), digital versatile disc read only memory (DVD-ROM), an optical disc, circuitry configured to store information, or some combination thereof. In some embodiments, the memory 306 and / or 308 may comprise the volatile memory 308 and / or the non-volatile memory 306 (shown in FIG. 5). The memory 306 and / or 308 may be configured to store information, data, applications, instructions, or the like for enabling the apparatus 300 to carry out various functions in accordance with various example embodiments. For example, in some example embodiments, the memory 306 and / or 308 is configured to buffer input data for processing by the processor 304. Additionally or alternatively, the memory 306 and / or 308 may be configured to store program instructions for execution by the processor 304. The memory 306 and / or 308 may store information in the form of static and / or dynamic information. The stored information may include, for example, images, content, media content, user data, application data, and / or the like. This stored information may be stored and / or used by the processor 304 during the course of performing its functionalities.
[0102] In some embodiments, the apparatus 300 can further comprise a communication interface (not shown) that may be embodied as any device or means embodied in circuitry,hardware, a computer program product comprising computer readable program instructions stored on a computer readable medium (e.g., the memory 306 and / or 308) and executed by a processing device (e.g., the processor 304), or a combination thereof that is configured to receive and / or transmit data from and / or to another computing device. In some example embodiments, the communication interface is at least partially embodied as or otherwise controlled by the processor 304. In this regard, the communication interface may be in communication with the processor 304, such as via a bus. The communication interface may include, for example, an antenna, a transmitter, a receiver, a transceiver and / or supporting hardware or software for enabling communications with one or more remote computing devices. In some embodiments, e.g., wherein the apparatus is embodied as an apparatus 300, the communication interface may be embodied as or comprise the transmitter and the receiver. The communication interface may be configured to receive and / or transmit data using any protocol that may be used for communications between computing devices. In this regard, the communication interface may be configured to receive and / or transmit data using any protocol that may be used for transmission of data over a wireless network, wireline network, some combination thereof, or the like by which the apparatus 300 and one or more computing devices may be in communication. As an example, the communication interface may be configured to receive and / or otherwise access content (e.g., web page content, streaming media content, and / or the like) over a network from a server or other content source. The communication interface may additionally be in communication with the memory 306 and / or 308, user interface 312 and / or the processor 304, such as via a bus.
[0103] Without in any way limiting the scope, interpretation, or application of the claims appearing below, a technical effect of one or more of the example embodiments disclosed herein may be improved user equipment or network equipment configuration. As such, any embodiment of a method, system, approach, device, apparatus, or computer program described or illustrated herein is understood to comprise any or all of the components, functionalities, elements, or steps of any other embodiment such that any method can be carried out by the CNA 200, the apparatus 300, or by any other suitable system or device, and likewise can be carried out according to a computer program code envisioned within the scope of this disclosure.
[0104] In some embodiments, edge server provisioning and split rendering session relocation can be facilitated, controlled, managed, or otherwise coordinated by a Real-Time Communication Application Function (RTC-AF), such as an RTC-AF in a fifth-generation core network (5GCN) or the like. An RTC-AF can be a hardware-based network function, alogical network function, a software-defined network function, a fully virtualized network function, or provided in any other suitable manner. An RTC-AF can be configured to communicate with a PCF (e.g., 114), an SMF (e.g., 110), a Network Exposure Function (NEF), a UDM (e.g., 118) a UPF (e.g., 106a, 106b), a gNodeB (e.g., 104), an AMF (e.g., 108), an AUSF (e.g., 120), a Security Edge Protection Proxy (SEPP), a UE (e.g., 102), an Application Provider, a Real-Time Communication Application Server (RTC-AS), one or more split rendering servers (SRS), a SWAP server, any other function, element, node, server, or component of a core network (e.g., 101) or a data network (e.g., 116), and / or the like.
[0105] Split rendering can leverage rendering resources in a network function as well as the rendering resources in the UE to provide a seamless experience. Adjusting the split of the rendering operations based on changes in UE or network conditions may enable a consistent QoE for the end users as investigated in academia. The adaptation of rendering operations based on UE capabilities is also considered in 3GPP studies into XR services, for example, TR 23.700-77 clause 5.8.1, TR 23.700-87 clause 6.9.3. In this regard, it is expected that the newly proposed SA4 WID will adopt the architectural aspects of split rendering from TS 26.565, 5GMS from TS 26.501 and IMS from TS 23.228. In particular, TS 26.565 specification defines a media service enabler for split rendering in the 5G system. In general, any split rendering architecture will contain the following functional entities:• A UE including Split-Rendering Client (SRC): This function is responsible to acquire the UE media capabilities and negotiate with the Application Server (AS) to agree on the split-rendering process.• Edge Server also herein referred to as Split-Rendering Server (SRS): This function is responsible for negotiation of SR session with SRC, monitoring the server’s edge resource usage, and managing / running the split rendering process.• Media Application Function (Media AF): AF responsible for provisioning, QoS allocation, and edge resource discovery of the media.• Application Provider (AP) or Application Service Provider: The application provider that offers the service.• Application: The (AR / VR / XR) application running on UE.• Media Session Handler (MSH): is the entity on UE that is responsible for the control plane communication with the AF.
[0106] FIG. 6 demonstrates a call flow 600 for setting up a split rendering session. In summary, from the high level call flow of FIG. 6, the following three steps are basic steps in order to establish any SR session:• Step 3 : The (XR / VR / AR) Application requests a split of the client media functions from an SRC 603.• Step 5: The SRC 603 and SRS 604 negotiate on the acceptable capabilities for the device and agree on the split option.• Step 8: The SRC 603 establishes the split rendering media session.
[0107] The disclosure herein is designed to optimize the existing split rendering process flows in order to further reduce the dependency on the time taken by the client in order to establish a new split rendering session. That is, the already existing solution calls for the application (XR application within the UE) to invoke the split rendering session (as seen in Step 3). At Step 3 as seen, the XR application sends the initial request to the Split Rendering Client (SRC) in order to establish a SR session. This in turn results in the “negotiation” set-up process between the SRC 603 and SRS 604 (as seen in Step 5). It is assumed that this negotiation process shall account for a certain amount of delay / latency while establishing the split rendering session. Depending upon the split rendering profile, the negotiation between the SRC 603 and the SRS 604 may be straight forward or go back and forth. Basically, a Profile could refer to a technology or a technique. 2D Pixel streaming profile, 3D pixel streaming profile, Advanced Split rendering profile, etc. are some of the profiles defined in TS 26.565. In the simplest case, the SRC 602 provides SRS the capabilities of the device and if SRS can accommodate the split-rendering processing that addresses the device’s needs and capabilities, it confirms by providing a description of the output format. In such scheme, the SRS is responsible to make the decision and no back-and-forth negotiation occurs.
[0108] In the current 3 GPP specifications where split rendering operations are specified, for instance in TS 26.565, the scenario where an ongoing SR session established between the SRC and the SRS has a sub-optimal QoE and the after effects (for example, due to change in network or SRS conditions) is not considered. The implication being that in such cases the SR session does not satisfy the QoE requirements of the end user. This would result in session termination and a new SR session would be negotiated, which isa “reactive” method to create split rendering session, i.e., the SR session is established after XR the application requests for a new SRS.
[0109] The embodiments described herein propose a method to establish a new split rendering session proactively which allows a UE to choose the most optimal edge server before the application sends the request to establish a new SR session. New procedures are proposed herein to establish a new split rendering session where-in by receiving feedback on the current QoE of the UE, an alternative split rendering session is established with a new edge server based on the changes in application layer QoE of the UE / SRC / client. The proposed method enables a consistent QoE to the user, without any request from the application to the remote rendering server. This shall directly result in eliminating Step 3 and Step 5 ((shown in FIG. 6 merely for explanatory purposes) and avoiding the back-and-forth negotiation between the SRC 603 and the SRS 604 and shall result in minimizing / avoiding the delay / latency caused due to the negotiation step up process in Step 5. As a result, a session is continued by establishing new connection to the server without interrupting the XRM session and it is done by UE based on the QoS information or QoE information or other metrics related to the session.
[0110] FIG. 7 shows, by way of example, a flowchart of a method 700 according to example embodiments. Each element of the flowchart may comprise one or more operations. The operations may be performed in hardware, software, firmware or a combination thereof. For example, the operations may be performed, individually or collectively, by a means, wherein the means may comprise at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the performance of the operations. The method 700 is carried out on a UE.[OHl] The method 700 comprises a first operation 701 of transmitting, to an application function (AF) of a communication network, one or more metrics associated with a split rendering session, the split rendering session being established between the UE and an edge server. The split rendering session is associated with an extended reality (XR) media content stream being provided to the UE by the edge server via the communication network. The one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the edge server, or a metric associated with the XR media content stream. The edge server may comprise a split rendering server (SRS).
[0112] The QoS metric is defined in accordance with previous definitions herein. The QoS metric may include at least one of the following: packet loss rate, bit rate, bandwidth, latency, variance in latency, throughput, packet delay variation, transmission delay, buffering delay, processing delay, availabilityjitter.
[0113] The QoE metric is defined in accordance with previous definitions herein. The QoE metric may include at least one of the following: video quality indicated by video frame rate, frame rate fluctuation, spatial information loss (blur), video bit rate, burst density, gap density, audio quality indicated by sample rate, or sample delay.
[0114] The method 700 comprises a second operation 702 of receiving, from the AF, a list of edge servers which are suitable for continuing the XR media content stream by relocating the split rendering session from the edge server to another edge server without breaking the split rendering session.
[0115] The method 700 comprises a third operation 703 of receiving, from the AF, metadata associated with the list of edge servers.
[0116] The method 700 comprises a fourth operation 704 of selecting, the another edge server from among the list of edge servers based on the metadata.
[0117] The method 700 may optionally comprise causing establishment of the split rendering session with the another edge server without breaking the split rendering session. The method 700 may also optionally comprise verifying the list of edge servers by comparing the list of edge servers with information relating to known edge servers stored at the UE.
[0118] In a ‘first alternative’ the list of edge servers is based on the at least one or more metrics associated with the split rendering session. The method 700 in the ‘first alternative’ may further comprise receiving, from the AF, the list of edge servers, after the transmitting, to the AF, the one or more metrics associated with the split rendering session. In other words, the list of edge servers can only be received once the at least one or more metrics have been received by the AF, since the AF needs the one or more metrics to determine the list of edge servers. In a ‘second alternative’ the list of edge servers is based on a pre-defined template of available edge servers for the split rendering session. In the ‘second alternative’, the method 700 may further comprise receiving, from the AF, the list of edge servers, prior to the transmitting, to the AF, the one or more metrics associated with the split rendering session. In other words, the AF may send the list of edge servers before receiving the at least one or more metrics, since the metrics are not required to determine the list of edge servers. Instead, the list of edge severs is based on a pre-defined template of available edge severs. The predetermined template of available edge servers may include servers that are already known to the network such as because they have been used before in a similar scenario or used recently by the UE. The respective first and second scenarios will be discussed in more detail herein.
[0119] FIG. 8 shows, by way of example, a flowchart of a method 800 according to example embodiments. Each element of the flowchart may comprise one or more operations. Theoperations may be performed in hardware, software, firmware or a combination thereof. For example, the operations may be performed, individually or collectively, by a means, wherein the means may comprise at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the performance of the operations. The method 800 may be carried out on an application function AF of a communication network or alternatively another feature of the communication network.
[0120] The method of FIG. 8 is the similar to the method of FIG 7, where FIG. 7 shows the method from the perspective of the UE and FIG. 8 shows the method from the perspective of the network.
[0121] The method 800 comprises a first operation 801 of receiving, from the UE, the one or more metrics associated with a split rendering session, the split rendering session being established between the UE and an edge server.
[0122] The method 800 comprises a second operation 802 of transmitting, to the UE, a list of edge servers which are suitable for continuing the XR media content stream by relocating the split rendering session from the edge server to another edge server without breaking the split rendering session.
[0123] The method 800 comprises a third operation 803 of transmitting, to the UE, metadata associated with the list of edge servers for the UE to select the another edge server from among the list of edge servers based on the metadata.
[0124] The method 800 may optionally include receiving, from the UE, an indication of the another edge server. The method 800 may also optionally include receiving, from the UE, a further indication that establishment of the split rendering session with the another edge server has commenced without breaking the split rendering session. The method 800 may also optionally include generating the list of edge servers by mapping available edge with the one or more metrics associated with the split rendering session.
[0125] In a ‘first alternative’ the list of edge servers is based on the at least one or more metrics associated with the split rendering session. The method 800 in the ‘first alternative’ may comprise transmitting, to the UE, the list of edge servers, after the receiving, from the UE, the one or more metrics associated with the split rendering session. In a ‘second alternative’ the list of edge servers is based on a pre-defined template of available edge servers for the split rendering session. In the ‘second alternative’, the method 800 may comprise transmitting, to the UE, the list of edge servers, prior to the receiving, from the UE, the one or more metrics associated with the split rendering session.
[0126] Two alternatives (referred to herein as the ‘first alternative’ and ‘second alternative’) for carrying out the method of FIGS 7 and 8 are outlined below.
[0127] The first alternative is based on a UE-driven scenario as shown in FIGS 9A-9C. The steps as shown in FIG 9A-9C are shown by way of demonstrative example and the method of the first alternative can feasibly be carried out in alternative ways.
[0128] In the call flow of FIG 9A-9, steps 1 to 10 are the same as those shown in FIG. 6. Step 11 to 29 indicate the newly proposed implementation
[0129] Step 11 illustrates an on-going split rendering session. Based on Step 1 to 10, an ongoing split rendering session is established.
[0130] At Steps 13 to 16 a QoE metrics configuration request from the 0AM. Once a SR session is established, the 0AM requests to configure, collect the QoE metrics of the currently on-going SR session. Communication methods for transmitting the QoE from the UE to the AF may include already existing reporting messages and dynamic adaptive streaming over HTTP (DASH) quality of experience (QoE)-related schemes. The steps described here shall follow any similar procedures to QoE collection process specified by 3GPP, i.e. for instance from TS 26.119.
[0131] At Steps 17 to 21 QoE metrics reporting to the 0AM takes place. Upon agreement between the MSH module of the client and the AF, the QoE metrics of the current session are reported from SRC to the AF and from the AF to the 0AM finally. In the typical XR split rendering architecture from the 3GPP TS26.565, the above information may be added, as one attribute of the report sent to the AF by the media session handler (MSH) through the RTC-5 interface. A minimal and maximal duration could be set during which the QoE metrics is reported and this shall be decided by the client. The steps described here also shall follow any similar procedures to QoE collection process specified by 3GPP, i.e. for instance from TS 26.119.
[0132] At Step 22 server (re)-selection algorithm is triggered. A server selection or reselection algorithm is triggered at this stage. This algorithm develops a matrix to map all the available remote rendering servers based on QoE metrics template. The server reselection algorithm could be proprietary. The objective of the algorithm is to monitor the changes in application layer QoE of the UE / SRC / client. Following this, it makes a selection of the presently available remote rendering servers which shall satisfy the current QoE requirements of a client.
[0133] At step 23, a template with the list of available remote rendering servers corresponding to the reported QoE. Upon receiving the reported QoE metrics, the AF willnow be able to send meta-data on the list of currently available remote rendering servers and their associated QoE metrics to the client. E.g. SRS-Instance A, 480p, SRS- Instance B, 720p, SRS- Instance C, 1080p, SRS-Instance D, 4k, etc. will be sent from AF to MSH via the RTC- 5 interface.
[0134] Step 18 to 23 can be performed periodically based on same QoE metrics configuration request during one split rendering session.
[0135] At Steps 24 to Steps 29 a new edge server is selected and a new split rendering session established, for example by the client. At Step 24 the AF sends the meta-data information of the new configuration information to the MSH of the client with the list of all available remote rendering servers by signalling a list of remote rendering servers, their capabilities and their associated QoE metrics to the client. At Step 25 the UE e.g. SRC is provided with meta-data information of the list of currently available remote rendering servers from the MSH and at step 26 the UE is able to select one of the best available remote rendering servers based on the signalling received from MSH. The UE attaches the selected server and sets up a connectiondiscovers the best edge server and sets up a connection to it. It provides information about its rendering capabilities and the XR runtime configuration via RTC-4 interface. In response, the UE creates a description of the split rendering output and the input it expects to receive from the client. The newly selected edge server in turn establishes a connection to the UE to stream pose and retrieve split rendering buffers. At Step 27 the newly selected edge server starts the split rendering process. Step 28 the UE (i.e. splitrendering client SRC) establishes the WebRTC session. In other words, the client is able to select one of the best available remote rendering servers based on the signalling received from MSH. The SRC sets up the connection to the best SRS. It provides information about its rendering capabilities and the XR runtime configuration via RTC-4 interface. In response, the SRS creates a description of the split rendering output and the input it expects to receive from the client. The SRC in turn establishes a connection to the SRS to stream pose and retrieve split rendering buffers.
[0136] The second alternative is based on a UE-driven scenario as shown in FIGS 10A-10C. The steps as shown in FIG 10 A- 10C are shown by way of demonstrative example and the method of the second alternative can feasibly be carried out in alternative ways.
[0137] The difference between the first alternative and the second alternative is that, in the second alternative at Step 12 a template with the list of available edge servers (i.e. remote rendering servers) corresponding to the reported QoE or Qos is sent before beginning the QoE or QoS metrics reporting. Typically, in use cases such as cloud gaming studios thenumber of available edge server instances would be limited, say level 1 to 10 of 20 different games, which makes roughly 200 edge server instances, where each level is associated to one instance of an edge server or one physical edge server and it is assumed that the list of edge servers available is not often changing. In such cases, it is possible to pre-configure the list of edge servers for each level and send this template to the client immediately after the initial session starts.
[0138] In the call flow of FIG 10A-C steps 1 to 10 are the same as those shown in FIG. 6. Steps 11 to 29 indicate the newly proposed implementation. Based on Step 1 to 10, an ongoing split rendering session is established. At Step 12 a template with the list of available edge servers corresponding to the reported QoE is sent to the UE. Here, the AF sends the predefined template with the list of available edge servers corresponding to a reported QoE to the UE before the QoE monitoring, collecting and reporting begins. In the example of cloud gaming, a cloud gaming studio will know in advance the list of available remote rendering servers via the RTC-5 interface, e.g. SRS-Instance A, 480p, SRS- Instance B, 720p, SRS- Instance C, 4k, etc. and would be possible to send that list as a template every time a new user / client initiates a game.
[0139] At Step 14 to 17 QoE metrics configuration request from the 0AM. Once a SR session is established, the 0AM requests to configure, collect the QoE metrics of the currently on-going SR session. Communication methods for transmitting the QoE from the UE to the AF may include already existing reporting messages and dynamic adaptive streaming over HTTP (DASH) quality of experience (QoE)-related schemes. The steps described here shall follow any similar procedures to QoE collection process specified by 3GPP, i.e. for instance from TS 26.119.
[0140] At Steps 17 to 22 QoE metrics reporting to the 0AM takes place. Upon agreement between the MSH module of the client and the AF, the QoE metrics of the current session are reported from SRC to the AF and from the AF to the 0AM finally. In the typical XR split rendering architecture from the 3GPP TS26.565, the above information may be added, as one attribute of the report sent to the application function (AF) by the media session handler (MSH) through the RTC-5 interface. A minimal and maximal duration could be set during which the QoE metrics is reported and this shall be decided by the client. The steps described here also shall follow any similar procedures to QoE collection process specified by 3GPP, i.e. for instance from TS 26.119.
[0141] At Steps 23 to Steps 24 a new edge server is selected and a new split rendering session established with the new edge server. This may be a continuation of the previous splitrendering session. At Step 23 the AF now sends the meta-data information of the new configuration information to the MSH of the client with the list of all available remote rendering servers by signalling a list of remote rendering servers, their capabilities and their associated QoE metrics to the client. At Step 24 the UE (and explicitly the SRC) is provided with meta-data information of the list of edge servers from the MSH. At Step 25 edge server selection algorithm is triggered. The objective of this algorithm is to select the best available edge servers which shall satisfy the current QoE requirements of the UE. The server reselection algorithm could be proprietary.
[0142] At Step 26 to steps 29 the best available remote rendering server is selected.
[0143] The UE discovers the best edge server from the list of edge servers and sets up a connection to it. It provides information about its rendering capabilities and the XR runtime configuration. In response, the new edge server creates a description of the split rendering output and the input it expects to receive from the client. The UE in turn establishes a connection to the edge server to stream pose and retrieve split rendering buffers. The UE sets up a connection to it. It provides information about its rendering capabilities and the XR runtime configuration via RTC-4 interface. In response, the edge creates a description of the split rendering output and the input it expects to receive from the UE. The UE in turn establishes a connection to the edge server to stream pose and retrieve split rendering buffers.
[0144] At Step 27 the newly selected edge server starts the split rendering process.
[0145] At Step 28 the UE establishes the WebRTC session. At Step 29 the SRC requests for a new split rendering session.
[0146] FIG. 11 shows, by way of example, a flowchart of a method 1100 according to example embodiments. Each element of the flowchart may comprise one or more operations. The operations may be performed in hardware, software, firmware or a combination thereof. For example, the operations may be performed, individually or collectively, by a means, wherein the means may comprise at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the performance of the operations. The method 1100 may be carried out on an application function AF of a communication network or alternatively another feature of the communication network.
[0147] The method 11 of FIG 11. Differs from the method of FIGS 7 and 8 because the UE is not given the decision to choose the best available edge server. The burden is put completely at the network-side and the AF does all the work and chooses the currently available best edge server based on the reported QoE and the known capabilities of the UE.
[0148] The method 1100 comprises a first operation 1101 of receiving, from a UE, one or more metrics associated with a split rendering session, the split rendering session being established between the UE and an edge server. The split rendering session is associated with an extended reality (XR) media content stream being provided to the UE by the edge server via a communication network and the one or more metrics comprise one or more of a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the current split rendering server, or a metric associated with the XR media content stream.
[0149] The method 1100 comprises a second operation 1102 of generating a list of edge servers which are suitable for continuing the XR media content stream by relocating the split rendering session from the edge server to another edge server without breaking the split rendering session.
[0150] The method 1100 comprises a third operation 1103 of mapping the list of edge servers with the one or more metrics associated with the on-going split rendering session.
[0151] The method 1100 comprises a fourth operation 1104 selecting the another edge server from the list of edge servers, based on the mapping.
[0152] The method 1100 may optionally further include transmitting, to the UE, an indication of the selected another edge server.
[0153] The method may also optionally include receiving, from the UE, a further indication that establishment of the split rendering session with the another edge server has commenced without breaking the split rendering session.
[0154] The QoS metric may include at least one of the following: packet loss rate, bit rate, bandwidth, latency, variance in latency, throughput, packet delay variation, transmission delay, buffering delay, processing delay, availabilityjitter.
[0155] The QoE metric may include at least one of the following: video quality indicated by video frame rate, frame rate fluctuation, spatial information loss (blur), video bit rate, burst density, gap density, audio quality indicated by sample rate, or sample delay.
[0156] An illustrative example for carrying out the method of FIG 11 are outlined below, this is herein referred to as the ‘third alternative’.
[0157] The second alternative is based on a network driven scenario as shown in FIGS 12A- 12C. The steps as shown in FIG 12A-12C are shown by way of demonstrative example and the method of third alternative can feasibly be carried out in alternative ways.
[0158] In the third alternative, Step 11 to 21 follows the same procedure as described in relation to FIG9A-C and the first alternative. That is, a split rendering session is on-going.QoE metrics are monitored, reported and collected from the UE to the AF and then to the OAM.
[0159] At Step 22 server selection algorithm is triggered. This algorithm develops a matrix to map all the available remote rendering servers based on QoE metrics template. The server reselection algorithm could be proprietary. The objective of the algorithm is to monitor the changes in application layer QoE of the UE and edge client. Following this, the AF makes a selection of the presently available edge servers which shall satisfy the current QoE requirements of a client.
[0160] At Step 23 a new edge server is selected. The client is allocated the single best available edge server directly without proposing a list of servers. The decision to allocate a best available edge server is directly made by the AF. The UE is unaware of the decision process for choosing the best available edge server.
[0161] At Step 24, the AF now sends the meta-data information of the new configuration information to the MSH of the client with the best available remote rendering server by signalling the best optimal remote rendering server, its capabilities and its associated QoE metrics to the client.
[0162] At step 26, the SRC discovers the best edge sever as selected by the AF, and sets up a connection to it. It provides information about its rendering capabilities and the XR runtime configuration via RTC-4 interface. In response, the edge server creates a description of the split rendering output and the input it expects to receive from the client. The UE in turn establishes a connection to the edge to stream pose and retrieve split rendering buffers. At Step 27 the newly selected edge server starts the split rendering process and at Step 28 the UE establishes the WebRTC session.
[0163] There are several example scenarios where the above referenced method and apparatus can be employed. In one scenario, a drone is controlled remotely which captures images, videos from a remote end and transports to a local technical. Here, the drone is connected to a local 5G core network. The edge server is hosted / collocated with the 5GC. In such scenarios, the XR baseline terminal architecture proposed in TS 26.565 Figure 5.1.2-1 and TS 26.119 clause 5.1 is split between the remotely controlled drone (“capturing end”), and the port technician (“rendered end”) who is equipped with an AR glasses via the edge server which is collocated with the 5GC (“rendering end”). It may be assumed that the drone and the XR glasses are wireless tethered via a local network, e.g. WiFi 6 / 6E connectivity.
[0164] Here, it shall be assumed that the drone hosts the Media Access Function module and a part of XR Runtime module (runtime functions, tracking etc.) and may play the role of onlycapturing the video / audio remotely in real-time, while it shall be assumed that the (XR) Application, XR Runtime module (to compose scenes, etc), the scene manager (and thin Presentation Engine), XR source management and Media Access Function is separately installed on the AR glasses which is the port technician. This way XR baseline terminal architecture is split in between 2 separate physical devices and the processing of individual devices is further reduced (in order to increase battery life, for instance).
[0165] The drone could be controlled remotely either:• by the port technician directly using a drone remote controller using the dedicated signalling channel or• by a remote pilot at the control centre using a drone management application.
[0166] The following steps demonstrate how the method may work in a drone scenario.
[0167] Step 1 : The port technician starts the mission (downlink command to the drone). In this case the mission is to inspect the RF modules and other external hardware (cabling, GPS antennas, etc.) of a newly installed base station at the port. The drone takes-off from the port. The command is given locally via the dedicated channel by the port technician to take-off. It shall be assumed that the drone has a pre-defined map of the port and the flight pattern is set to the drone.
[0168] Step 2: The drone captures real-time video / audio and streams the video / audio in the uplink direction to the control centre via the 5GC signalling. In parallel, the control centre monitors the current QoE of the captured real time video, while also monitoring the flight pattern.
[0169] Step 3 : Now the captured video is sent to the port technician in the downlink direction, who is served by an SRS (based on the received QoE from the drone) collocated with the 5GC.
[0170] Step 4: When the drone approaches the base station even closer, for better inspection, the port technician sends the command to the drone camera to zoom the captured video quality (let’s say from 480p to 4K) based on the received QoE from the drone.
[0171] Step 5: Upon receiving this command, the drone sends the enhanced captured video to the control centre.
[0172] Step 6: Now the newly captured high quality captured video is sent to the port technician in the downlink direction, who is automatically served by a new edge sever collocated (with the control centre).
[0173] Step 7: The above process of automatically allocating a new edge based on received QoE from the drone may be continued for other requirements, for instance, when there is a need to capture / monitor for a low latency service requirement, a new SRS that could satisfy this requirement could be assigned automatically.
[0174] Step 8: When the mission is complete, the port technician sends a command to the drone to return to port base in order to end the mission of the drone.
[0175] In a further scenario, the methods may be employed for remote surgery. The provision of high-quality surgery in medically underserved locations which may include rural areas, battlefields, and various forms of large space and sea mission vehicles such as submarines, outposts, and spacecrafts, where staff live for extended periods. The key components of the technology-mediated procedure are:1. High-resolution vision system: usually in the form of an endoscope with high- resolution image processing equipment to produce 3D images of the operative field.2. Telesensors: such as “cyber gloves” contain highly sensitive technology placed at critical points to pick up and measure the posture of the hands. They operate by measuring changes in resistance to an electrical current as the sensor is bent as the surgeon moves their hands.3. Haptic feedback technology: enables tactile feedback, allowing the surgeon to feel the tensile strength, texture, and depth of the tissue from a remote system.
[0176] Similar to the drone scenario, in the remote surgery scenario, at the capturing end, the high-resolution vision system usually in the form of an endoscope with high-resolution image processing equipment to produce 3D images transports to the rendering end, where the telesurgical tools combine several display systems to enable high-definition video feed to be transmitted to surgeons located remotely and simultaneously. In a further scenario, the methods may be employed for cloud gaming studio with premium customers.
[0177] As described above, Fthe flowcharts of described methods can be carried out by an apparatus according to related computer program products comprising computer program code. It will be understood that each block of the flowcharts, and combinations of blocks in the flowcharts, may be implemented by various means, such as hardware, firmware, processor (e.g., 202, 304), circuitry, and / or other devices associated with execution of software including one or more computer program instructions. For example, one or more of the procedures described above may be embodied by computer program instructions. In this regard, the computer program instructions which embody the procedures described abovemay be stored by a memory device (e.g., 204, 306, 308), of an apparatus, e.g., 200, 300, 400, employing an embodiment of the present disclosure and executed by processing circuitry, e.g., 202, 304 of the apparatus. As will be appreciated, any such computer program instructions may be loaded onto a computer or other programmable apparatus (e.g., hardware) to produce a machine, such that the resulting computer or other programmable apparatus implements the functions specified in the flowchart blocks. These computer program instructions may also be stored in a computer-readable memory that may direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture, the execution of which implements the function specified in the flowchart blocks. The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide operations for implementing the functions specified in the flowchart blocks.
[0178] A computer program product is therefore defined in those instances in which the computer program instructions, such as computer-readable program code portions, are stored by at least one non-transitory computer-readable storage medium with the computer program instructions, such as the computer-readable program code portions, being configured, upon execution, to perform the functions described above, such as in conjunction with the described flowcharts. In other embodiments, the computer program instructions, such as the computer-readable program code portions, need not be stored or otherwise embodied by a non-transitory computer-readable storage medium, but may, instead, be embodied by a transitory medium with the computer program instructions, such as the computer-readable program code portions, still being configured, upon execution, to perform the functions described above.
[0179] Accordingly, blocks of the flowcharts support combinations of means for performing the specified functions and combinations of operations for performing the specified functions for performing the specified functions. It will also be understood that one or more blocks of the flowcharts, and combinations of blocks in the flowcharts, may be implemented by special purpose hardware-based computer systems which perform the specified functions, or combinations of special purpose hardware and computer instructions.
[0180] In some embodiments, certain ones of the operations above may be modified or further amplified. Furthermore, in some embodiments, additional optional operations may beincluded. Modifications, additions, or amplifications to the operations above may be performed in any order and in any combination.
[0181] Many modifications and other embodiments set forth herein will come to mind to one skilled in the art to which these embodiments pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions described herein are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Moreover, although the foregoing descriptions and the associated drawings describe example embodiments in the context of certain example combinations of elements and / or functions, it should be appreciated that different combinations of elements and / or functions may be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, different combinations of elements and / or functions than those explicitly described above are also contemplated as may be set forth in some of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation. Any application, publication, technical document, or the like that is cited in this disclosure is hereby incorporated herein by reference in its entirety for all purposes.
[0182] In general, the routines executed to implement the embodiments, whether implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions, or even a subset thereof, may be referred to herein as "computer program code" or simply "program code". Program code typically comprises computer-readable instructions that are resident at various times in various memory devices (e.g., 204, 306, 308) and storage devices in a computer and that, when read and executed by one or more processors (e.g., 202, 302) in the computer, cause the computer to perform the operations necessary to execute operations and / or elements embodying the various aspects of the embodiments of the present disclosure. Computer readable program instructions for carrying out operations of the embodiments of described herein may be, for example, assembly language or either source code or object code written in any combination of one or more programming languages.
[0183] In certain alternative embodiments, the functions and / or acts specified in the flowcharts, sequence diagrams, and / or block diagrams may be re-ordered, processed serially, and / or processed concurrently without departing from the scope of the invention. Moreover,any of the flowcharts, sequence diagrams, and / or block diagrams may include more or fewer blocks than those illustrated consistent with embodiments described herein.
[0184] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the embodiments of the disclosure. It will be further understood that the terms "comprise" and / or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. Furthermore, to the extent that the terms "includes", "having", "has", "with", "comprised of, or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term "comprising".
[0185] While a description of various embodiments has illustrated all of the inventions and while these embodiments have been described in considerable detail, it is not the intention of the applicants to restrict or in any way limit the scope of the appended claims to such detail. Additional advantages and modifications will readily appear to those skilled in the art. The invention in its broader aspects is therefore not limited to the specific details, representative apparatus and method, and illustrative examples shown and described.
Claims
CLAIMS1. A user equipment (UE) comprising means for performing operations, the operations comprising: transmitting, to an application function (AF) of a communication network, one or more metrics determined for a split rendering session associated with an extended reality (XR) media content stream, the split rendering session established between the UE and a first split rendering server; wherein the one or more metrics comprise one or more of: a quality of service (QoS)metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the first split rendering server, or a metric associated with the XR media content stream; receiving, from the AF, a list of split rendering servers, each split rendering server of the list capable of continuing the XR media content stream after relocation of the split rendering session from the first split rendering server to a respective split rendering server of the list; receiving, from the AF, metadata associated with the list of split rendering servers; and selecting, a split rendering server from the list of split rendering servers based on the metadata.
2. The UE of claim 1, wherein the operations further comprises: causing establishment of the split rendering session with the split rendering server of the list.
3. The UE of any preceding claim, wherein the QoS metric comprises at least one of the following: packet loss rate, bit rate, bandwidth, latency, variance in latency, throughput, packet delay variation, transmission delay, buffering delay, processing delay, availability, or jitter.
4. The UE of any preceding claim, wherein the QoE metric comprises at least one of the following: video quality indicated by video frame rate, frame rate fluctuation, spatial information loss (blur), video bit rate, burst density, gap density, audio quality indicated by sample rate, or sample delay.
5. The UE of any preceding claim, wherein the operations further comprise: verifying the list of split rendering servers by comparing the list of split rendering servers with information relating to known split rendering servers stored at the UE.
6. The UE of any preceding claim, wherein the list of split rendering servers is based on the at least one or more metrics associated with the split rendering session.
7. The UE of claim 6, wherein the receiving, from the AF, the list of split rendering servers, is performed after the transmitting, to the AF, the one or more metrics associated with the split rendering session.
8. The UE of any of claims 1 to 5, wherein the list of edge servers is based on a pre-defined template of available split rendering servers for the split rendering session.
9. The UE of any of claim 8, wherein the receiving, from the AF, the list of split rendering servers, is performed prior to the transmitting, to the AF, the one or more metrics associated with the split rendering session.
10. The UE of any preceding claim, wherein the metadata comprises at least one of the following: names corresponding to respective split rendering servers of the list; capabilities corresponding to respective split rendering servers of the list; or QOE metrics corresponding to respective split rendering servers of the list.
11. An apparatus comprising means for performing operations, the operations comprising: receiving, from a user equipment, UE, one or more metrics associated with a split rendering session associated with an extended reality (XR) media content stream, the split rendering session established between the UE and a first edge server; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the first edge server, or a metric associated with the XR media content stream; transmitting, to the UE, a list of edge servers, each edge server of the list capable ofcontinuing the XR media content stream after relocation of the split rendering session from the first edge server to a respective edge server of the list without breaking the split rendering session; transmitting, to the UE, metadata associated with the list of edge servers for the UE to select an edge server from the list of edge servers based on the metadata.
12. The apparatus of claim 11, wherein the operations further comprise: receiving, from the UE, an indication of the edge server of the list.
13. The apparatus of any of claims 11 or 12, wherein the operations further comprise: receiving, from the UE, a further indication that establishment of the split rendering session with the edge server of the list has commenced without breaking the split rendering session.
14. The apparatus of any of claims 11 to 13, wherein the QoS metric comprises at least one of the following: packet loss rate, bit rate, bandwidth, latency, variance in latency, throughput, packet delay variation, transmission delay, buffering delay, processing delay, availability, or jitter.
15. The UE of any of claims 11 to 14, wherein the QoE metric comprises at least one of the following: video quality indicated by video frame rate, frame rate fluctuation, spatial information loss (blur), video bit rate, burst density, gap density, audio quality indicated by sample rate, or sample delay.
16. The apparatus of any of claims 11 to 15, wherein the operations further comprise: generating the list of edge servers by mapping available edge servers with the one or more metrics associated with the split rendering session.
17. The apparatus of any of claims 11 to 16, wherein the list of edge servers is based on the at least one or more metrics associated with the split rendering session.
18. The apparatus of claim 17, wherein the transmitting, to the UE, the list of edge servers, is performed after the receiving, from the UE, the one or more metrics associated with the split rendering session.
19. The apparatus of any of claims 11 to 16, wherein the list of edge servers is based on a predefined template of available edge servers for the split rendering session.
20. The apparatus of claim 19, wherein the transmitting, to the UE, the list of edge servers, is performed prior to the receiving, from the UE, the one or more metrics associated with the split rendering session.
21. The UE of any preceding claim, wherein the metadata comprises at least one of the following: names corresponding to respective edge servers of the list; capabilities corresponding to respective edge servers of the list; or QOE metrics corresponding to respective edge servers of the list.
22. The apparatus of any of claims 11 to 21, wherein apparatus comprises an application function of a communication network.
23. An apparatus comprising means for performing operations, the operations comprising: receiving, from a user equipment, UE, one or more metrics determined for a split rendering session associated with an extended reality (XR) media content stream, the split rendering session established between the UE and a first edge server; wherein the one or more metrics comprise one or more of: a quality of service (QoS), a quality of experience (QoE), a key performance indicator (KPI) for the first edge server, or a metric associated with the XR media content stream; generating a list of edge servers, each edge server capable of continuing the XR media content stream after relocation of the split rendering session from the first edge server to a respective edge server of the list, mapping the list of edge servers with the one or more metrics associated with the split rendering session; selecting an edge server from the list of edge servers, based on the mapping.
24. The apparatus of claim 23, wherein the operations further comprise: transmitting, to the UE, an indication of the edge server from the list.
25. The apparatus of any of claims 23 or 24, wherein the operations further comprise: receiving, from the UE, a further indication that establishment of the split rendering session with the edge server from the list has commenced without breaking the split rendering session.
26. The apparatus of any of claims 23 to 25, wherein the QoS metric comprises at least one of the following: packet loss rate, bit rate, bandwidth, latency, variance in latency, throughput, packet delay variation, transmission delay, buffering delay, processing delay, availability, or jitter.
27. The UE of any of claims 23 to 26, wherein the QoE metric comprises at least one of the following: video quality indicated by video frame rate, frame rate fluctuation, spatial information loss (blur), video bit rate, burst density, gap density, audio quality indicated by sample rate, or sample delay.
28. The apparatus of any of claims 23 to 27, wherein apparatus comprises an application function (AF) of a communication network.
29. A method, comprising: transmitting, to an application function (AF) of a communication network, one or more metrics determined for a split rendering session associated with an extended reality (XR) media content stream, the split rendering session being established between the UE and a first edge server; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the first edge server, or a metric associated with the XR media content stream; receiving, from the AF, a list of edge servers, each edge server of the list capable of continuing the XR media content stream after relocation of the split rendering session from the first edge server to a respective edge server of the list ; receiving, from the AF, metadata associated with the list of edge servers; and selecting, an edge server from the list of edge servers based on the metadata.
30. A method, comprising: receiving, from a user equipment, UE, one or more metrics determined for a split rendering session associated with an extended reality (XR) media content stream, the split rendering session established between the UE and a first edge server; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the first edge server, or a metric associated with the XR media content stream; transmitting, to the UE, a list of edge servers, each edge server of the list capable of continuing the XR media content stream after relocation of the split rendering session from the first edge server to a respective edge server of the list without breaking the split rendering session; transmitting, to the UE, metadata associated with the list of edge servers for the UE to select an edge server from the list of edge servers based on the metadata.
31. A method, comprising: receiving, from a user equipment, UE, one or more metrics associated with a split rendering session, the split rendering session being established between the UE and an edge server; wherein the split rendering session is associated with an extended reality (XR) media content stream being provided to the UE by the edge server via a communication network; wherein the one or more metrics comprise one or more of: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the current split rendering server, or a metric associated with the XR media content stream; generating a list of edge servers which are suitable for continuing the XR media content stream by relocating the split rendering session from the edge server to another edge server without breaking the split rendering session, mapping the list of edge servers with the one or more metrics associated with the ongoing split rendering session; selecting the another edge server from the list of edge servers, based on the mapping.
32. A computer program product comprising a set of instructions which, when executed on an apparatus, is configured to cause the apparatus to carry out the method of any of claims 29 to 31.