Seamless split rendering session relocation between split rendering servers supporting augmented reality applications in mobile communication network

By monitoring and managing the quality indicators of separate rendering sessions in mobile communication networks, seamlessly transferring the rendering viewport of XR media content from the current separate rendering server to the new separate rendering server, solving the seamlessness in the existing technology Transferring difficulties has improved the reliability and user experience of the system.

CN119494903APending Publication Date: 2025-02-21NOKIA TECHNOLOGIES OY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411123487.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-08-15
Filing Date
2024-08-15
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

In mobile communication networks, prior art has difficulty in seamlessly transferring rendered viewports of extended reality (XR) media content from the current detached rendering server to the new detached rendering server, especially when rendering viewport quality deteriorates.

Method used

By monitoring the quality of service (QoS) and quality of experience (QoE) metrics of the separate rendering session, it is determined that a seamless separate rendering session repositioning process is implemented as these quality metrics continue to decline. The process includes providing pose information and sensor data to the current and new detached rendering servers during transition periods and managing session repositioning in application functions.

Benefits of technology

This achieves seamless transfer of the rendering viewport of XR media content from the current separated rendering server to the new separated rendering server, avoiding service interruptions and degradation of user experience quality, and improving system reliability and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119494903A_ABST
    Figure CN119494903A_ABST
Patent Text Reader

Abstract

Methods, apparatuses, and computer program products are provided for facilitating seamless split rendering session relocation when rendering viewport quality for augmented reality (XR) media content from a current split rendering server is degraded. A new split rendering server may be provisioned in parallel with the current split rendering server, and rendering viewport negotiations or comparisons may be performed. The split rendering client may provide gesture information and sensor data for viewport and / or field-of-view prediction to both the current split rendering server and the new split rendering server during the transition period. The current split rendering server may continue to provide rendered viewport-specific XR media content to the split rendering client during the transition period while the application function or session management function determines when the split rendering session should be relocated to a new provisioned split rendering server.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates generally to mobile communication networks, such as fifth generation (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 Art

[0002] A mobile communication network may include hardware that enables communication between user terminals and servers (such as edge servers). A communication network may include an access network, a core network, and one or more communication devices. The communication network may establish sessions for transmitting data, for example, data carrying voice, electronic mail (email), short message service messages, multimedia and / or content data, etc. The communication system may provide services to user terminals. Non-limiting examples of the services provided include two-way or multi-way calls, data communications or multimedia services, and access to data networks (such as the Internet). In a wireless communication network, communication between a user terminal and a base station of an access node is performed over a wireless link.

[0003] Communication devices are often referred to as user equipment (UE) or user devices. Communication devices are provided with appropriate signal receiving and transmitting means for enabling communications, for example, with a communication network or directly with other communication devices. Communication devices can access a carrier provided by a base station or access point of an access network of the communication network and send and / or receive communications on the carrier.

[0004] Communication networks and user terminals typically operate according to given standards or standard specifications, such as those provided by 3GPP (3rd Generation Partnership Project) or ETSI (European Telecommunications Standards Institute). Summary of the Invention

[0005] Methods, apparatus, and computer program products are provided for facilitating seamless relocation of a split rendering session when the rendered viewport quality of extended reality (XR) media content from a current split rendering server is degraded. A new split rendering server can be provisioned in parallel with the current split rendering server, and rendering viewport negotiation or comparison can be performed. A split rendering client can provide pose information and sensor data for viewport and / or field of view prediction to both the current split rendering server and the new split rendering server during a transition period. The current split rendering server can continue to provide rendered viewport-specific XR media content to the split rendering client during the transition period, while an application function or session management function determines when the split rendering session should be relocated to the newly provisioned split rendering server. In this context, methods, systems, and computer program products that support seamless relocation of XR split rendering services are presented.

[0006] According to some aspects, a method for seamlessly relocating an extended reality (XR) and / or similar media content rendering service from a source server to a target server may be performed. A communication network may include a source separate rendering server and a target separate rendering server and one or more computing devices configured to perform the method for relocating an XR and / or similar media content rendering service from the source separate rendering server to the target separate rendering server. A computer program product may include a non-transitory computer-readable storage medium storing instructions for performing the method for relocating an XR and / or similar media content rendering service from the source separate rendering server to the target separate rendering server.

[0007] According to a first aspect, a method may include: monitoring a split rendering session at a current split rendering server to detect one or more repeated degradations in quality during a time period using a real-time communication (RTC) application function (AF) hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), an NSSF, an AUSF, an UDM, an NRF, an UPF, etc., wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) of the current split rendering server, or a quality of the XR media content stream, wherein the split rendering session is managed by the RTC-AF and associated with a split rendering client (SRC); determining that the split rendering session needs to be relocated from the current split rendering server based on a duration of the one or more repeated degradations in quality exceeding a predetermined threshold during the time period; and initiating relocation of at least a portion of the split rendering session of the split rendering client from the current split rendering server to a new split rendering server.

[0008] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the method further includes establishing a new WebRTC session between the new split rendering server and the RTC-AF in an application layer of the communication network. In some embodiments, the method further includes indicating to the split rendering client that a relocation process has been initiated. In some embodiments, the method further includes, in indicating to the split rendering client that a relocation process has been initiated, requesting the split rendering client to provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the method further includes receiving, at the RTC-AF, first media content for a first viewport from the current split rendering server and second media content for the first viewport from the new split rendering server. In some embodiments, the method further includes indicating to an application provider (AP) in the communication network that the split rendering session needs to be relocated. In some embodiments, the method further includes requesting the new split rendering server or another server in the communication network to run at least a portion of the provisioning of split rendering services for the split rendering session. In some embodiments, the method further includes: determining whether the AP has already caused the new separate rendering server to run at least part of the provisioning of the separate rendering session; and, if the determination is positive, providing an indication from the RTC-AF to the AP that the current separate rendering server will be un-provisioned. In some embodiments, the method further includes: determining one or more characteristics of the current and new separate rendering servers; determining a timeline for completing the repositioning of the separate rendering session from the current separate rendering server based at least on the one or more characteristics of the current separate rendering server and the new separate rendering server; and signaling the repositioning timeline to the current separate rendering server, the new separate rendering server, and the separate rendering client. In some embodiments, signaling the repositioning timeline includes indicating a repositioning time relative to the extended reality runtime or indicating a repositioning frame identifier from a specific frame in the XR media content stream before which the repositioning process is performed.

[0009] According to a second aspect, a device may be provided, comprising at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the device to at least perform: during a time period, cause a real-time communication (RTC) application function (AF) in a communication network to monitor a split rendering session at a current split rendering server to detect one or more repeated degradations in quality, wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) of the current split rendering server, or the quality of the XR media content stream, wherein the split rendering session is managed by the RTC-AF and associated with a split rendering client (SRC); based on a duration of the one or more repeated degradations in quality exceeding a predetermined threshold during the time period, determining that the split rendering session needs to be relocated from the current split rendering server; and initiating relocation of at least a portion of the split rendering session of the split rendering client from the current split rendering server to a new split rendering server. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0010] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: establish, in an application layer of the communication network, a new WebRTC session between the new split rendering server and the RTC-AF. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: indicate that a relocation process has been initiated for the split rendering client and / or UE. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: include in the indication that a relocation process has been initiated for the split rendering client and / or UE a request that the split rendering client and / or UE provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the instructions stored on at least one memory, when executed by at least one processor, further cause the apparatus to: receive, at an RTC-AF in the DN, first media content for a first viewport from a current separate rendering server and second media content for the first viewport from a new separate rendering server. In some embodiments, the instructions stored on at least one memory, when executed by at least one processor, further cause the apparatus to: indicate to an application provider (AP) in the communication network that the separate rendering session needs to be relocated. In some embodiments, the instructions stored on at least one memory, when executed by at least one processor, further cause the apparatus to: request the new separate rendering server or another server in the communication network to run at least part of the provisioning of the separate rendering service for the separate rendering session. In some embodiments, the instructions stored on at least one memory, when executed by at least one processor, further cause the apparatus to: determine whether the AP has already enabled the new separate rendering server to run at least part of the provisioning of the separate rendering session; and, if the determination is positive, provide an indication from the RTC-AF to the AP that the current separate rendering server will be de-provisioned. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: determine one or more characteristics of the current and new split rendering servers; determine a timeline for completing the relocation of the split rendering session from the current split rendering server based at least on the one or more characteristics of the current and new split rendering servers; and signal the relocation timeline to the current split rendering server, the new split rendering server, and the split rendering client.In some embodiments, signaling the repositioning timeline includes indicating a repositioning time relative to the extended reality runtime or indicating a repositioning frame identifier from the XR media content stream before which the repositioning process was performed.

[0011] According to a third aspect, a computer program product may include a non-transitory computer-readable medium storing instructions that, when executed by at least one processor, cause an apparatus to at least perform: monitoring, during a time period, a split rendering session at a current split rendering server using a session management function (SMF) in a communication network or a real-time communication (RTC) application function (AF) hosted in a data network (DN) to detect one or more repeated degradations in quality, wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) of the current split rendering server, or the quality of the XR media content stream, wherein the split rendering session is managed by the RTC-AF and associated with a split rendering client (SRC); determining that the split rendering session needs to be relocated from the current split rendering server based on a duration of the one or more repeated degradations in quality exceeding a predetermined threshold during the time period; and initiating relocation of at least a portion of the split rendering session of the split rendering client from the current split rendering server to a new split rendering server. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0012] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: establish, in an application layer of the communication network, a new WebRTC session between the new split rendering server and the RTC-AF. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: indicate to the split rendering client and / or the UE that a relocation process has been initiated. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: include in the indication to the split rendering client that a relocation process has been initiated, a request that the split rendering client provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: receive, at the RTC-AF, first media content for a first viewport from the current split rendering server and second media content for the first viewport from the new split rendering server. In some embodiments, the instructions, when executed by at least one processor, further cause the apparatus to at least: indicate to an application provider (AP) in the communication network that the split rendering session needs to be relocated. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: request a new split rendering server or another server in the communication network to run at least a portion of the provisioning of the split rendering service for the split rendering session. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: determine whether the AP has already enabled the new split rendering server to run at least a portion of the provisioning of the split rendering session; and, if the determination is positive, provide an indication from the RTC-AF to the AP that the current split rendering server will be deprovisioned. In some embodiments, the instructions, when executed by the at least one processor, further cause the apparatus to at least: determine one or more characteristics of the current and new split rendering servers; determine a timeline for completing the relocation of the split rendering session from the current split rendering server based at least on the one or more characteristics of the current and new split rendering servers; and signal the relocation timeline to the current split rendering server, the new split rendering server, and the split rendering client. In some embodiments, signaling the repositioning timeline includes indicating a repositioning time relative to the extended reality runtime or indicating a repositioning frame identifier from the XR media content stream before which the repositioning process was performed.

[0013] According to a fourth aspect, a method may be performed, comprising: monitoring, during a time period, using a network node configured as a real-time communication (RTC) application function (AF) in a core network (CN) or a data network (DN) in a communication network, one or more metrics associated with a split rendering session generated by a current split rendering server, wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) of the current split rendering server, or a metric associated with the XR media content stream; determining to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds; and providing an indication to relocate the split rendering session from the current split rendering server to the new split rendering server to one or more of the following: the current split rendering server or the new split rendering server. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0014] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the method may further include managing a new WebRTC session established between the split rendering client and the new split rendering server using RTC-AF. In some embodiments, the method may further include providing an indication to the split rendering client that a relocation process has been initiated. In some embodiments, the method may further include, in the indication to the split rendering client that a relocation process has been initiated, requesting the split rendering client to provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the method may further include sending a request from RTC-AF to one of the current split rendering server or the new split rendering server to indicate to the split rendering client that the split rendering session will be relocated from the current split rendering server to the new split rendering server. In some embodiments, the method may further include: receiving, at the RTC-AF, first XR media content for a first viewport associated with the XR media content stream from the current separate rendering server; receiving, at the RTC-AF, second XR media content for the first viewport associated with the XR media content stream from the new separate rendering server; and determining, based on the first XR media content and the second XR media content, to relocate the separate rendering session from the current separate rendering server to the new separate rendering server. In some embodiments, the method may further include: indicating to an application provider (AP) in the communication network that the separate rendering session will be relocated from the current separate rendering server to the new separate rendering server. In some embodiments, the method may further include: requesting the new separate rendering server or another server in the communication network to run at least part of the provisioning of the separate rendering session. In some embodiments, the method may further include: determining that the AP has caused the new separate rendering server to run at least part of the provisioning of the separate rendering service for the separate rendering session; and providing, from the RTC-AF, to the AP, an indication that the separate rendering session will be deprovisioned. In some embodiments, the method may further include: determining one or more characteristics of the current and new split rendering servers; determining a time for completion of relocation of the split rendering session from the current split rendering server to the new split rendering server based at least on the one or more characteristics of the current and new split rendering servers; and signaling to the current and new split rendering servers an indication that the new split rendering server will relocate the split rendering session from the current split rendering server to the new split rendering server before the time for completion of relocation of the split rendering session.In some embodiments, the indication sent includes sending an indication of a time for completion of repositioning of the detached rendering session relative to the XR runtime or relative to a repositioning frame identifier, the repositioning frame identifier indicating a specific frame in a sequence of frames from the XR media content stream before which the repositioning of the detached rendering session is to be completed.

[0015] According to a fifth aspect, an apparatus may be provided, the apparatus being configured to operate in a core network (CN) or a data network (DN) of a communication network. The apparatus may be configured to operate as a real-time communication (RTC) application function (AF). The apparatus may include: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to at least perform: monitoring one or more metrics associated with a split rendering session during a time period, the split rendering session being generated by a current split rendering server, wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) of the current split rendering server, or a metric associated with the XR media content stream; determining to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds; and providing an indication to relocate the split rendering session from the current split rendering server to the new split rendering server to one or more of the following: the current split rendering server or the new split rendering server. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0016] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to request establishment of a new WebRTC session between the new split rendering server and the RTC-AF. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to provide an indication to the split rendering client that a relocation process has been initiated. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to include, in the indication to the split rendering client that a relocation process has been initiated, a request for the split rendering client to provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to send a request to one of the current split rendering server or the new split rendering server to indicate to the split rendering client that the split rendering session will be relocated from the current split rendering server to the new split rendering server. In some embodiments, the instructions stored on at least one memory, when executed by the at least one processor, further cause the apparatus to: receive first XR media content for a first viewport associated with an XR media content stream from a current separate rendering server; receive second XR media content for the first viewport associated with the XR media content stream from a new separate rendering server; and determine, based on the first XR media content and the second XR media content, to relocate the separate rendering session from the current separate rendering server to the new separate rendering server. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: indicate to an application provider (AP) in a communication network that the separate rendering session will be relocated from the current separate rendering server to the new separate rendering server. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: request an edge server in the communication network to run at least a portion of the provisioning of the separate rendering session. In some embodiments, the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to: determine that the AP has caused the new separate rendering server to run at least a portion of the provisioning of the separate rendering service for the separate rendering session; and provide an indication to the AP that the separate rendering session will be deprovisioned.In some embodiments, the instructions stored on at least one memory, when executed by at least one processor, further cause the apparatus to: determine one or more characteristics of a current and a new separate rendering server; determine a time for completion of relocation of a separate rendering session from the current separate rendering server to the new separate rendering server based at least on the one or more characteristics of the current and the new separate rendering server; and signal to the current and the new separate rendering server an indication that the new separate rendering server will relocate the separate rendering session from the current separate rendering server to the new separate rendering server before the time for completion of relocation of the separate rendering session. In some embodiments, the indication sent includes sending an indication of the time for completion of relocation of the separate rendering session relative to the XR runtime or relative to a relocation frame identifier, the relocation frame identifier indicating a specific frame in a sequence of frames in the XR media content stream before which the relocation of the separate rendering session will be completed.

[0017] According to a sixth aspect, a computer program product may be provided, comprising a non-transitory computer-readable medium storing instructions, which, when executed by at least one processor, causes the apparatus to at least perform: According to the fourth aspect, a method may be performed, comprising: during a time period, using a network node configured as a real-time communication (RTC) application function (AF) in a core network (CN) or a data network (DN) in a communication network, monitoring one or more metrics associated with a split rendering session, the split rendering session being generated by a current split rendering server, wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include: The next one or more: quality of service (QoS) metrics, quality of experience (QoE) metrics, key performance indicators (KPIs) of the current separate rendering server, or metrics associated with the XR media content stream; determining to relocate the separate rendering session from the current separate rendering server to a new separate rendering server based on the duration of the occurrence of one or more metrics during a time period exceeding a predetermined duration threshold, or the magnitude of one or more metrics exceeding one or more corresponding predetermined metric thresholds; and providing an indication to relocate the separate rendering session from the current separate rendering server to the new separate rendering server to one or more of the following items: the current separate rendering server or the new separate rendering server. In some embodiments, the RTC-AF can be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0018] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the method may further include using RTC-AF to request establishment of a new WebRTC session between the split rendering client and the new split rendering server. In some embodiments, the method may further include providing an indication to the split rendering client that a relocation process has been initiated. In some embodiments, the method may further include, in the indication to the split rendering client that a relocation process has been initiated, requesting the split rendering client to provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the method may further include sending a request from RTC-AF to one of the current split rendering server or the new split rendering server to indicate to the split rendering client that the split rendering session will be relocated from the current split rendering server to the new split rendering server. In some embodiments, the method may further include: receiving, at the RTC-AF, first XR media content for a first viewport associated with the XR media content stream from the current separate rendering server; receiving, at the RTC-AF, second XR media content for the first viewport associated with the XR media content stream from the new separate rendering server; and determining, based on the first XR media content and the second XR media content, to relocate the separate rendering session from the current separate rendering server to the new separate rendering server. In some embodiments, the method may further include: indicating to an application provider (AP) in the communication network that the separate rendering session will be relocated from the current separate rendering server to the new separate rendering server. In some embodiments, the method may further include: requesting an edge server in the communication network to run at least part of the provisioning of the separate rendering session. In some embodiments, the method may further include: determining that the AP has caused the new separate rendering server to run at least part of the provisioning of the separate rendering service for the separate rendering session; and providing, from the RTC-AF, to the AP, an indication that the separate rendering session will be deprovisioned. In some embodiments, the method may further include: determining one or more characteristics of the current and new split rendering servers; determining a time for completion of relocation of the split rendering session from the current split rendering server to the new split rendering server based at least on the one or more characteristics of the current and new split rendering servers; and signaling to the current and new split rendering servers an indication that the new split rendering server will relocate the split rendering session from the current split rendering server to the new split rendering server before the time for completion of relocation of the split rendering session.In some embodiments, the indication sent includes sending an indication of a time for completion of repositioning of the detached rendering session relative to the XR runtime or relative to a repositioning frame identifier, the repositioning frame identifier indicating a specific frame in a sequence of frames from the XR media content stream before which the repositioning of the detached rendering session is to be completed.

[0019] According to a seventh aspect, an apparatus may be provided, comprising components, such as at least one processor, and / or components, such as at least one memory, storing instructions, such as computer-readable instructions and / or instructions embodied as (multiple) computer program codes. In some embodiments, the apparatus may include components, such as a real-time communication (RTC) application function (AF) in a core network (CN) or a data network (DN) of a communication network (such as a fifth generation (5G) communication network). In some embodiments, the apparatus may include components for monitoring one or more metrics associated with a split rendering session during a time period, the split rendering session being generated by a current split rendering server, wherein the split rendering session is associated with an extended reality (XR) media content stream provided to a split rendering client, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) of the current split rendering server, or a metric associated with the XR media content stream. In some embodiments, the provision of the split rendering server used to generate the split rendering session is managed by the RTC-AF. In some embodiments, the apparatus may include a component for determining to relocate the split rendering session from the current split rendering server to a new split rendering server based on the duration of one or more metrics occurring during a time period exceeding a predetermined duration threshold, or the magnitude of one or more metrics exceeding one or more corresponding predetermined metric thresholds. In some embodiments, the apparatus may include a component for providing an indication of relocating the split rendering session from the current split rendering server to the new split rendering server to one or more of the following: the current split rendering server or the new split rendering server. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), an NSSF, an AUSF, an UDM, an NRF, an UPF, or the like,

[0020] In some embodiments, the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, latency, latency variance, throughput, transmission delay, availability, and jitter. In some embodiments, the apparatus may further include means for requesting establishment of a new WebRTC session between the split rendering client and the new split rendering server. In some embodiments, the apparatus may further include means for providing an indication to the split rendering client that a relocation process has been initiated. In some embodiments, the apparatus may further include means for including, in the indication to the split rendering client that a relocation process has been initiated, a request for the split rendering client to provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, the apparatus may further include means for sending a request to one of the current split rendering server or the new split rendering server to indicate to the split rendering client that the split rendering session will be relocated from the current split rendering server to the new split rendering server. In some embodiments, the apparatus may further include: a component for receiving first XR media content for a first viewport associated with the XR media content stream from a current separate rendering server; receiving second XR media content for the first viewport associated with the XR media content stream from a new separate rendering server; and determining to relocate the separate rendering session from the current separate rendering server to the new separate rendering server based on the first XR media content and the second XR media content. In some embodiments, the apparatus may further include: a component for indicating to an application provider (AP) in a communication network that the separate rendering session will be relocated from the current separate rendering server to the new separate rendering server. In some embodiments, the apparatus may further include: a component for requesting an edge server in the communication network to run at least part of the provisioning of the separate rendering session. In some embodiments, the apparatus may further include: a component for determining that the AP has caused the new separate rendering server to run at least part of the provisioning of the separate rendering service for the separate rendering session; and a component for providing an indication to the AP that the separate rendering session will be deprovisioned. In some embodiments, the apparatus may further include: means for determining one or more characteristics of the current and new split rendering servers; means for determining a time for completion of relocation of the split rendering session from the current split rendering server to the new split rendering server based at least on the one or more characteristics of the current and new split rendering servers; and means for signaling to the current and new split rendering servers an indication that the new split rendering server will relocate the split rendering session from the current split rendering server to the new split rendering server before the time for completion of relocation of the split rendering session.In some embodiments, the means for sending an indication includes means for sending an indication of a time for completion of repositioning of the detached rendering session relative to the XR runtime or relative to a repositioning frame identifier, the repositioning frame identifier indicating a specific frame in a sequence of frames from the XR media content stream before which the repositioning of the detached rendering session is to be completed. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Having generally described embodiments of the present disclosure above, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, in which:

[0022] Figure 1 shows an example architecture of a communication network according to an embodiment;

[0023] Figure 2 shows an example architecture of a communication network according to an embodiment;

[0024] Figure 3 shows an example architecture of a communication network according to an embodiment;

[0025] Figure 4 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 is shown in accordance with an embodiment;

[0026] Figure 5 An example apparatus for facilitating seamless split rendering session relocation between split rendering servers in an edge server network in response to degraded viewport quality is shown in accordance with an embodiment;

[0027] Figure 6 An example apparatus configured to function as or operate as a Real-Time Communication Application Function (RTC-AF) according to one embodiment is shown;

[0028] Figure 7A shows a user device and a reference system for tracking user movement and adjusting a viewport based thereon, according to one embodiment;

[0029] Figure 7B illustrates a coordinate system associated with a reference system used to adjust a viewport of a virtual landscape for immersive media content based on gesture information and sensor data from a user device, according to one embodiment;

[0030] Figure 8 An example system architecture for viewport-independent delivery of XR media is shown, according to one embodiment;

[0031] Figure 9 An example system architecture for viewport-dependent delivery of XR media is shown, according to one embodiment;

[0032] Figure 10 An example system architecture for viewport rendering in a network is shown according to one embodiment;

[0033] Figure 11 shows an example system architecture for separate rendering of raster-based viewport-specific XR media, according to an embodiment;

[0034] Figure 12 shows an example system architecture for separate rendering of XR media according to an embodiment;

[0035] Figure 13 An example system architecture for distributed computing for delivery of viewport-specific XR media content is shown, according to an embodiment;

[0036] Figure 14 illustrates example messaging between a user device and a network entity for seamless split rendering session monitoring and relocation according to an embodiment;

[0037] Figure 15 illustrates example messaging between a user device and a network entity for seamless split rendering session monitoring and relocation according to an embodiment;

[0038] Figure 16 illustrates example messaging between a split rendering client and a network entity for seamless split rendering session monitoring and relocation according to an embodiment;

[0039] Figure 17 illustrates example messaging for seamless split rendering session monitoring and relocation between a split rendering client and a split rendering server via a SWAP server, according to one embodiment;

[0040] Figure 18 A method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6 or Figure 5 An example flow chart of the operation of one of the devices;

[0041] Figure 19 FIG. 1 is a diagram illustrating a method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6 An example flow chart of the operation of one of the devices;

[0042] Figure 20 FIG. 1 is a diagram illustrating a method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6An example flow chart of the operation of one of the devices;

[0043] Figure 21 FIG. 1 is a diagram illustrating a method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6 An example flow chart of the operation of one of the devices;

[0044] Figure 22 FIG. 1 is a diagram illustrating a method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6 An example flow chart of the operation of one of the devices;

[0045] Figure 23 FIG. 1 is a diagram illustrating a method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6 an example flow chart of the operation of one of the devices); and

[0046] Figure 24 FIG. 1 is a diagram illustrating a method for facilitating seamless split rendering session relocation execution between split rendering servers (such as by Figure 4-6 An example flowchart of the operation of one of the devices.

[0047] Symbols and abbreviations

[0048] As used in this disclosure and in the technical specifications incorporated herein by reference in their entirety, the following symbols and abbreviations are defined as follows:

[0049] α Separate rendering client device (eg user equipment) in the 3rd Generation Partnership Project (3GPP) 3 Yaw angle (yaw) in the 3DOF coordinate system

[0050] β Separately renders the pitch angle of the client device (e.g., user equipment) in the 3GPP 3DOF coordinate system (pitch)

[0051] γ Separately renders the roll angle of the client device (e.g., user equipment) in the 3GPP 3DOF coordinate system (roll)

[0052] φ is the azimuth of the separated rendering client device (e.g., user equipment) in the 3GPP 3DOF coordinate system (azimuth)

[0053] θ is the elevation angle of the rendering client device (e.g., user equipment) in the 3GPP 3DOF coordinate system. (elevation)

[0054] 3DOF 3 degrees of freedom

[0055] 5G-RTC 5G Real-Time Communication

[0056] ACN Ambisonics channel number

[0057] AF application function

[0058] API Application Programming Interface

[0059] AS application server

[0060] AVC Advanced Video Coding

[0061] BMFF Base Media File Format

[0062] BRIR Binaural Room Impulse Response

[0063] CMP Cube Map Projection

[0064] CIBR Public Information Binaural Renderer

[0065] DASH Dynamic Adaptive Streaming over HTTP

[0066] DRC Dynamic Range Control

[0067] EOTF Electro-Optical Transfer Function

[0068] ERP equirectangular projection

[0069] ESD equivalent spatial domain

[0070] FFT Fast Fourier Transform

[0071] FIR Finite Impulse Response

[0072] FOA First-Order Ambisonics

[0073] FOV field of view

[0074] GPU Graphics Processing Unit

[0075] HDR High Dynamic Range

[0076] HDTV High Definition Television

[0077] HEVC High Efficiency Video Coding

[0078] HMD head-mounted display

[0079] HOA Advanced Ambisonics

[0080] HRD Hypothesized Reference Decoder

[0081] HRIR Head-related impulse response

[0082] HRTF Head-Related Transfer Function

[0083] HTTP Hypertext Transfer Protocol

[0084] IFFT inverse FFT

[0085] IRFFT inverse RFFT

[0086] MAE MPEG-H Audio metadata information

[0087] MAF Media Access Function

[0088] MCC metric collection and calculation

[0089] MHAS MPEG-H Audio Stream

[0090] MIME Multipurpose Internet Mail Extensions

[0091] MPD Media Presentation Description

[0092] MPEG Moving Picture Experts Group

[0093] MSH Media Session Handler

[0094] NAL Network Abstraction Layer

[0095] OMAF Omnidirectional Media Format

[0096] PCM Pulse Code Modulation

[0097] RAP Random Access Point

[0098] RFFT Real FFT

[0099] RWP Region-Wise Packing

[0100] SDR Standard Dynamic Range

[0101] SEI Supplemental Enhancement Information

[0102] SN3D Schmidt semi-normalized

[0103] SOFA Spatial Directional Acoustic Format

[0104] SPS sequence parameter set

[0105] SR Separate Rendering

[0106] SRC Separate Rendering Client

[0107] SRQR Spherical Regional Quality Ranking

[0108] SRS Separate Rendering Server

[0109] UE User Equipment

[0110] VCL Video Coding Layer

[0111] VST Virtual Studio Technology

[0112] VUI Video Availability Information

[0113] VR Virtual Reality DETAILED DESCRIPTION

[0114] Mobile telecommunications services depend on a continuous connection to the communication network to function properly and fully utilize the services. To ensure continuous connectivity, communication devices consuming communication network services monitor the quality of the connection and periodically send measurement reports to base stations of the communication network. The reports include measurements related to the quality of the connection (e.g., the quality of the connection to a base station of the radio access network of the communication network). In the event that the quality of the connection deteriorates (e.g., due to the communication device moving out of the coverage area of ​​the base station), the communication network supports handing over the communication device to another base station to maintain the quality of the connection (e.g., the radio connection) to the communication network.

[0115] For the new generation of mobile communication networks (such as 5G networks) currently being standardized by the Third Generation Partnership Project (3GPP), virtual reality applications executed by mobile stations will be supported, as specified, for example, by 3GPP TR 26.928, Version 16.1.0, Version 17.0.0 and 18.0.0, the entire disclosure of each of which is hereby incorporated by reference into this document for all purposes. Among these applications, extended reality (XR) and cloud gaming are some of the most important 5G media applications being considered by the industry. XR is a general term for different types of reality and refers to all real and virtual combined environments and human-computer interactions generated by computer technology and wearable devices. Different application areas of XR applications include entertainment, healthcare, education, etc.

[0116] The 3rd Generation Partnership Project (3GPP) Technical Specification (TS) 23.558 defines an architectural solution for implementing edge applications, the entire disclosure of which is incorporated herein by reference for all purposes. The term "edge application" refers to a user application supported and hosted by server elements of a specific network, which are part of an overall communication network called the edge network. The edge network, also known as the edge data network (EDN), is typically logically located between the core network [CN], cloud data network, and UE of the communication network. In some embodiments, the EDN may include (multiple) edge application servers (EAS) and / or edge enabler servers (EES). In some embodiments, the operation of the EES may be supported by an edge configuration server (ECS). The EDN including (multiple) EAS and / or (multiple) EES may also include an EDGE-X interface to communicate with the network's servers. The UE may include an application client, the application client's task is to correctly execute MR applications, AR applications, VR applications, and / or XR applications, and an edge enabler client (EEC) as an interface for communicating with the EDN network server. Further details on EDN architecture and operation are disclosed in 3GPP TS 26.558 version 18.3.0, the entire disclosure of which is hereby incorporated by reference herein for all purposes.

[0117] EAS is an application server residing in the edge data network, performing server functions and connecting to the 3GPP core via the radio access network (RAN). EES facilitates context transfer between (multiple) EES and (multiple) EAS, and interacts with the 3GPP core directly (e.g., via PCF) or indirectly (e.g., via SCEF, NEF and / or SCEF+NEF). In addition, EES provides configuration information to edge-enabled clients, thereby enabling the exchange of application data services with EAS. ECS provides the support functions required for edge-enabled clients to connect to EES. In addition, ECS supports EES in identifying other EES (and EAS) in the case of application relocation. In addition, EDGE-9 represents a connection to another EDN. In the case of relocation from one EAS to another, EDGE-9 is a connection from the source EES to the target EES.

[0118] Time-critical communication is a concept in communication networks and protocols, such as 5G, 6G, and other technologies, used to enable 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, the user is fully immersed in a simulated digital environment or a digital replica of reality. MR encompasses all forms of technology that blend virtual elements with the real world. AR overlays digital information on real-world images viewed through a device.

[0119] XR connectivity requirements depend on the level of split architecture and the target quality of experience (QoE), which leads to a wide range of bitrates and strict latency requirements. To ensure that XR applications work properly on 5G networks, low latency and high quality are very important. When the power of the XR device is not sufficient to achieve performance indicators such as the required data rate and latency, some processing tasks are offloaded to the cloud (cloud edge server). This process is called split rendering. A split rendering system can divide the rendering of XR content (such as VR or AR content) between the server and the client. The XR system can implement split rendering, where the workload is split between multiple components, such as the XR device and a split rendering server (SRS). Most commonly, compute-intensive tasks (such as rendering) are performed on the SRS. The SRS can be a cloud rendering server or an edge rendering server. The XR device can communicate with the SRS over a network, which can be a 3GPP radio access technology (RAT) and / or a non-3GPP RAT.

[0120] In XR, VR, AR, and MR viewing environments, visual media content is generated for display on a user device, which may include a heads-up display or a head-mounted display (HMD), among others. The user device and / or display device (also referred to herein as a "split rendering client") may be divided into portions or sections of a 360-degree viewing perspective, which may be referred to as viewports, such that visual media content may be generated for one or more viewports such that the rendered visual media content corresponds to the field of view (FOV) of the eyes of the user viewing the media content, including stereo offset to simulate natural parallax. As used herein, the term "viewport" refers to a portion of XR content rendered for a user based on posture information associated with the user and the user's associated field of view (FOV) in a complete virtual scene, wherein only the portion designated as the viewport is rendered during an associated time.

[0121] The rendered viewport can then be adjusted in real time based on the user's perceived position, viewing direction, head movement, the rate of change of these characteristics, and other changes in user movement or behavior. To this end, the user device can track its own posture and movement based on various sensors, gyroscopes, magnetometers, accelerometers, etc., and the user device can then receive the complete rendered original visual media content for the entire virtual environment being viewed and experienced by the user. The user device can then clip the viewport adjusted by the user's movement and posture from the original visual media content. However, such a solution requires the transmission of an unacceptable amount of rendered visual media content, requires the user device to have extremely high computing power, and because all rendering activities are performed on the user device during each associated time period before the viewport is displayed, significant latency is generated. However, excessive computing power requirements mean that user devices (e.g., virtual reality goggles, augmented reality glasses, head-up displays, head-mounted displays, etc.) will become bulky due to the increased battery capacity requirements, which will weaken the immersive user experience and will require processing chips and graphics cards with higher processing power, which will increase the cost of the user device.

[0122] In order to reduce the demand for computing power on the user device, reduce the cost of the user device and reduce bandwidth requirements, the computational cost and latency cost of rendering XR media content can be shared between the user device and one or more other devices. Separate rendering sharing can be used to reduce the need for user devices to perform XR media content rendering and reduce the latency between the user's movement and the corresponding changes in the XR scene. The main goal of separate rendering is to reduce the latency between the user's movement and the corresponding changes in the XR scene. This latency is often referred to as motion-to-photon latency, which can cause user discomfort and reduce immersion. Separate rendering solves this problem by minimizing the time required to generate and display each frame of XR media content. More details about separate rendering are provided in 3GPP TS26.565 version 0.5.0, the entire contents of which are hereby incorporated by reference herein for all purposes.

[0123] 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 differences between the rendered image and the actual display output due to the user's movement. The compositor takes the eye buffers and applies lens distortion correction and warping adjustments based on the warp mesh. Once the image is corrected based on user movement and pose information, the corrected image is called a warp frame. The output of the compositor, the warp frame, is sent to the user device for display to the user. By using a compositor and separating the rendering services, the user device can achieve very low latency and minimize motion-to-photon latency.

[0124] By offloading the warping and lens correction calculations to a separate compositor, the GPU workload is reduced, resulting in improved rendering performance. The separate rendering approach means that the final image displayed to the user is correctly aligned with their perspective, even if there are slight differences due to rapid head movements or changes in the user's posture.

[0125] In the context of XR, a separate rendering session can be facilitated by provisioning a compositor (such as a separate rendering server) to perform separate rendering services for a user device. However, over time, the compositor (such as a separate rendering server) may become overburdened, resource-starved, or otherwise experience a reduction in rendering capacity, which may cause the quality of the rendered visual media content to degrade.

[0126] Provisioning edge servers for split rendering sessions is often used to deliver high-quality extended reality (XR) experiences, especially in scenarios where the rendering workload is distributed across different devices or subsystems. This provisioning involves setting up and managing servers at the edge of the network, closer to the end user, to ensure low latency, efficient data transfer, and smooth communication between XR devices, rendering hardware, and compositors.

[0127] The present disclosure addresses the problem of the lack of a process for seamlessly offloading split rendering tasks to a split rendering server in certain challenging scenarios. In the current state of the art, client-driven split rendering processes are available that operate well in reliable communication networks. When encountering technical issues with edge server infrastructure (e.g., power outages, disaster recovery situations) and network congestion (e.g., audience surges or localized congestion), the offloading process may be degraded. In such cases, seamless and automated relocation of XR split rendering sessions is required. In addition, relocating sessions solely on the server side will cause service interruptions and degradation of the quality of experience (QoE) for users.

[0128] However, there are currently no adequate procedures or methods in the relevant 3GPP standards or elsewhere to address 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 de-provisioning, data transfer and compression, and other aspects of XR split rendering.

[0129] Furthermore, in actual deployments of split rendering services on edge servers, there are situations where a split rendering session may need to be relocated due to reasons independent of the split rendering client (e.g., user device), and these reasons are undetectable and / or kept unknown to the split rendering client. As described above, handling split rendering session relocation entirely on the server side, if not performed in coordination with the established split rendering session(s), can cause service interruption and degradation of user QoE. Currently, at the application level (e.g., end-to-end), split rendering session mobility is not related to user device handover between different access nodes (e.g., radio access network [RAN], gNodeB [gNB], etc.), and no mechanism is provided for monitoring degradation of XR media content quality, network traffic, QoS metric degradation, QoE metric degradation, server KPI degradation during XR split rendering, nor is there any mechanism for relocating the split rendering session when such degradation occurs.

[0130] The term "QoS" is used herein to refer to the performance characteristics of a network service and is generally used to ensure that the performance of the network meets or exceeds certain quality levels. QoS metrics can be selected from the following: packet loss rate (referring to the percentage of packets sent from a source device to a destination device that do not arrive), bit rate, bandwidth, latency (the amount of time it takes for a packet to travel from source to destination), throughput, transmission delay, availability, jitter (the variation in packet delay over time), bandwidth allocation (which can be used to ensure that sufficient bandwidth is allocated to a data flow), etc.

[0131] The term "QoE" is used herein to refer to a measurement of a customer's experience with a network service, and is generally more user-centric. QoE metrics can be selected from the following: user satisfaction (a measure of how well the delivered content or network service meets the user's expectations), perceived quality (based on the user's subjective opinion of the delivered content or network service), accessibility (referring to the ease with which the user can access the delivered content or network service), reliability (referring to the frequency with which the delivered content stream or network service is available to the user device and / or user without interruption), etc.

[0132] Some embodiments of the present invention will now be described more fully with reference to the accompanying drawings, in which some, but not all, embodiments of the invention are shown. Indeed, various embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments described 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 that can be sent, received, and / or stored in accordance with embodiments of the present invention. Accordingly, the use of any such terms should not be taken as limiting the spirit and scope of embodiments of the present invention.

[0133] Additionally, as used herein, the term "circuitry" refers to (a) a hardware circuit implementation only (e.g., an implementation in analog circuitry and / or digital circuitry); (b) a combination of circuitry and computer program product(s), including software and / or firmware instructions stored on one or more computer-readable memories, that work together to cause a device to perform one or more functions described herein; and (c) circuitry, such as, for example, microprocessor(s) or a portion of microprocessor(s), that requires software or firmware for operation even if the software or firmware is not physically present. This definition of "circuitry" applies to all uses of the term herein, including in any claims. As a further example, the term "circuitry" as used herein 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 application processor integrated circuit of a mobile phone or similar integrated circuits in servers, cellular network devices, other network devices, and / or other computing devices.

[0134] As defined herein, "computer-readable storage media" refers to non-transitory physical storage media (e.g., volatile or non-volatile memory devices), and can be distinguished from "computer-readable transmission media," which refers to electromagnetic signals. Such media can take many forms, including but not limited to non-transitory computer-readable storage media (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 can propagate through space without wires or cables, such as sound waves and electromagnetic waves, including radio, light, and infrared waves. Signals include artificial, instantaneous variations in amplitude, frequency, phase, polarization, or other physical properties that are sent through a transmission medium. Examples of non-transitory computer-readable media include magnetic computer-readable media (e.g., floppy disks, hard disks, magnetic tape, any other magnetic media), optical computer-readable media (e.g., compact disk read-only memory (CD-ROM), digital versatile disks (DVD), Blu-ray discs, etc.), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), FLASH-EPROM, or any other non-transitory media that a computer can read. The term computer-readable storage medium is used herein to refer to any computer-readable medium other than transmission media. However, it should be understood that where embodiments are described as using computer-readable storage media, in alternative embodiments, other types of computer-readable media may be used instead of or in addition to computer-readable storage media.

[0135] Although various inventive embodiments are described and illustrated herein, a person of ordinary skill in the art will readily envision various other components and / or structures for performing the functions and / or obtaining the results and / or one or more advantages described herein, and each of these variations and / or modifications is considered to be within the scope of the inventive embodiments described herein. More generally, those skilled in the art will readily understand that all parameters, dimensions, materials, and configurations described herein are intended to be examples, and that actual parameters, dimensions, materials, and / or configurations will depend on the specific application or applications to which one or more inventive teachings are applied. Those skilled in the art will recognize, or be able to determine using only routine experimentation, many equivalents to the specific inventive embodiments described herein. Therefore, it should be understood that the foregoing embodiments are presented by way of example only, and within the scope of the appended claims and their equivalents, inventive embodiments may be practiced in a manner different from that specifically described and required. 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 these features, systems, articles, materials, kits, and / or methods are not mutually inconsistent) is included within the scope of the invention disclosed herein.

[0136] In the following, certain embodiments are explained with reference to mobile communication devices capable of communicating via a wireless cellular system and a mobile communication system serving such mobile communication devices. Before explaining the exemplary embodiments in detail, certain general principles of wireless communication systems, access systems of wireless communication systems, and mobile communication devices are explained with reference to Figure 1-3 are briefly explained to help understanding the technology on which the examples are based.

[0137] According to some embodiments, a communication device or terminal may be provided for wireless access via a cell, base station or similar wireless transmitter and / or receiver node providing an access point for a radio access system.

[0138] The access point and the communications conducted thereby are typically controlled by at least one appropriate controller device to enable operation of the access point and management of the mobile communication devices communicating therewith. In some embodiments, the control device of the node may be integrated with, coupled to, and / or otherwise provided for controlling the access point. In some embodiments, the control device may be arranged to allow communication between user equipment and a core network or a network entity of the core network. To this end, the control device may include at least one memory, at least one data processing unit (such as a processor), and an input and / or output interface. Via the interface, the control device may be coupled to other components related to the access point. The control device may be configured to execute appropriate software code to provide control functionality. It should be understood that similar components may be provided in a control device provided elsewhere in the network system, for example, in a core network entity. The control device may be interconnected with other control entities. The control device and functions may be distributed among several control units. In some embodiments, each base station may include a control device. In an alternative embodiment, two or more base stations may share a control device.

[0139] The access points and associated controllers may communicate with each other via fixed line connections and / or via a radio interface. The logical connection between base station nodes may be provided by, for example, an X2 or similar interface. This interface may be used, for example, to coordinate station operations and perform reselection or handover operations.

[0140] The communication device or user equipment may include any suitable device capable of wireless communication of at least receiving data. For example, the device may be a handheld data processing device equipped with a radio receiver, data processing and user interface means. Non-limiting examples include a mobile station (MS), such as a mobile phone or so-called "smartphone", a portable computer, such as a laptop or tablet computer provided with a wireless interface card or other wireless interface facilities, a personal digital assistant (PDA) provided with wireless communication capabilities, or any combination of these or the like. Further examples include wearable wireless devices, such as wireless devices integrated with watches or smart watches, glasses, helmets, hats, clothing, headphones with wireless connectivity, jewelry, etc., a universal serial bus (USB) stick with wireless capabilities, a modem data card, a machine type device, or any combination of these or the like.

[0141] In some embodiments, a communication device (e.g., configured to communicate with a wireless network or core network entity) may be, for example, a handheld or other mobile communication device (or user equipment UE). The mobile communication device may be provided with wireless communication capabilities and appropriate electronic control devices to enable its operation. Thus, the communication device may be provided with at least one data processing entity, such as a central processing unit and / or core processor, at least one memory, and other possible components, such as additional processors and memories, for software and hardware assistance in performing the tasks it is designed to perform. Data processing, storage, and other related control devices may be provided in appropriate circuit boards and / or chip sets. The data processing and memory functions provided by the control device of the communication device are configured to cause control and signaling operations according to certain embodiments described later in this specification. The user can control the operation of the communication device through an appropriate user interface, such as a touch screen display or touchpad and / or keyboard, one or more actuator buttons, voice commands, combinations of these, etc. A speaker and microphone are also typically provided. In addition, the mobile communication device may include appropriate connectors (wired or wireless) to other devices and / or for connecting external accessories (e.g., hands-free devices) thereto.

[0142] In some embodiments, the communication device can communicate wirelessly via appropriate means for receiving and sending signals. In some embodiments, the radio unit can be connected to a control device of the device. The radio unit can include a radio portion and an associated antenna arrangement. The antenna arrangement can be arranged inside or outside the communication device.

[0143] Figure 1-3Various exemplary architectures of a communication network 100 are shown in which various methods, apparatus, and computer program products may be implemented and / or used. In some embodiments, the communication network 100 may include any suitable configuration, number, orientation, positioning, and / or size of components and specialized equipment configured to provide an 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 communication network 100. Figure 1 As shown, a communication network 100 may be provided in which a UE 102 is in operable communication with an AN 104, such as via a transmission tower, base station, network node, etc. In some embodiments, the AN 104 may communicate with a CN 101 or a component or entity thereof. In some embodiments, the CN 101 may facilitate communication between the UE 102 and a DN 116, such as for transmitting data, messages, requests, etc. In some embodiments, the DN 116 or the CN 101 may communicate with an application server or application function 112 (AS / AF 112).

[0144] In the context of fifth generation (5G) networks, such as Figure 2 and 3As shown in , the communication network 100 may include a series of connected network devices and dedicated hardware distributed across a service area or country, as well as one or more network entities, which may be stored at and / or hosted by one or more of the connected network devices or dedicated hardware. In some embodiments, the UE 102 may be connected to the AN 104, which may then relay communications between the UE 102 and the CN 101, which may be connected to the DN 116, which may communicate with one or more AS / AFs 112. In some embodiments, the UE 102 may communicate with the 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 example, in some embodiments, the UE 102 may communicate with the RAN 104, which in turn may communicate with the access and mobility management function 108 (AMF 108). In other instances or embodiments, the UE 102 may communicate directly with the AMF 108. In some embodiments, the AMF 108 may communicate with one or more network functions (NFs), such as the authentication server function 120 (AUSF 120), the network slice selection function 122 (NSSF 122), the network repository function 124 (NRF 124), the policy charging function 114 (PCF 114), the network data analysis function 126 (NWDAF 126), the unified data management function 118 (UDM 118), the AS / AF 112, the session management function 110 (SMF 110), and the like.

[0145] In some embodiments, such as Figure 3 As shown in FIG, the SMF 110 may communicate with one or more user plane functions 106 (UPF 106, UPF 106a, UPF 106b, collectively referred to as "UPF 106"). By way of example only, in some embodiments, the UPF 106 may communicate with the RAN 104 and the DN 116. In other embodiments, the DN 116 may communicate with a first UPF 106a, and the RAN 104 may communicate with a second UPF 106b, while the SMF 110 communicates with the first UPF 106a and the second UPF 106b, and the first UPF 106a and the second UPF 106b communicate with each other.

[0146] In some embodiments, the UE 102 may include a single-mode or dual-mode device, enabling the UE 102 to connect 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, GSM, UMTS, LTE, or 5G NR, which may be used to connect the UE 102 to the CN 101. In some embodiments, the RAN 104 may include or be 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, enabling the RAN 104 to establish a connection or communication link between the UE 102 and the CN 101 by identifying the chip in the UE 102 and pairing it with the chip in the CN 101. In some embodiments, the RAN 104 may implement one or more base stations, towers, etc., to facilitate communication between the UE 102 and the AMF 108 of the CN 101.

[0147] In some embodiments, the communication network 100 or its components (e.g., base stations, towers, etc.) can be configured to communicate with communication devices (e.g., UE 102) (such as mobile phones, etc.) via multiple different frequency bands (e.g., FR1 (sub-6 GHz), FR2 (mmWave), other suitable frequency bands, sub-bands thereof, and / or similar frequency bands). In some embodiments, the communication network 100 can include or employ massive multiple-input multiple-output (massive MIMO) antennas. In some embodiments, the communication network 100 can include multi-user MIMO (MU-MIMO) antennas. In some embodiments, the communication network 100 can employ edge computing, whereby computing servers are closer to the communication devices (e.g., UE 102) in terms of communication, physical, computational, and / or time to reduce latency and data traffic congestion. In some embodiments, the communication network 100 can employ other technologies, devices, or techniques, such as small cells, low-power RAN, beamforming of radio waves, WiFi-cellular convergence, non-orthogonal multiple access (NOMA), channel coding, etc.

[0148] like Figure 3As shown, the UE 102 can be configured to communicate with the RAN 104 in the N1 interface, for example, according to the non-access stratum (NAS) protocol. In some embodiments, the RAN 104 can be configured to communicate with the CN 101 or its components (e.g., the AMF 108) in the N2 interface, for example, in the control plane between the base stations of the RAN 104 and the AMF 108. In some embodiments, the RAN 104 can be configured to communicate with the UPF 106 in the N3 interface, for example, in the 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 a variety of different interfaces and / or according to a variety of different protocols. For example, in some embodiments, the AMF 108 and / or the SMF 110 can be configured to communicate with the AUSF 120 in the N12 interface or the N12 interface. In some embodiments, the AMF 108 and / or SMF 110 may be configured to communicate with the NSSF 122 in the Nnssf interface. In some embodiments, the AMF 108 and / or SMF 110 may be configured to communicate with the NRF 124 in the Nnrf interface. In some embodiments, the AMF 108 and / or SMF 110 may be configured to communicate with the PCF 114 in the Npcf interface or the N7 interface. In some embodiments, the AMF 108 and / or SMF 110 may be configured to communicate with the NWDAF 126 in the Nnwdaf interface. In some embodiments, the AMF 108 and / or SMF 110 may be configured to communicate with the UDM 118 in the Nudm interface, the N8 interface, or the N10 interface. In some embodiments, the AMF 108 and / or SMF 110 may be configured to communicate with the AS / AF 112 in the Naf interface. In some embodiments, the SMF 110 may be configured to communicate with the UPF 106 in the N4 interface, which may act as a bridge between the control plane and the user plane, such as acting as a conduit for protocol data unit (PDU) sessions during which information is sent between, for example, the UE 102 and the CN 101 or its components and / or services.

[0149] It should be understood that example embodiments of the invention disclosed and / or otherwise described herein occur in the context of telecommunications networks, including but not limited to telecommunications networks that conform to and / or otherwise incorporate aspects of fifth generation (5G) architecture. Figure 1-3 Various configurations and / or components of an exemplary architecture of a mobile communications network 100 (generally referred to herein as network 100) are shown, but many other systems, system configurations, networks, network entities, and paths and / or protocols for communications therein are contemplated and considered within the scope of this disclosure.

[0150] Although the methods, apparatus, and computer program products described herein are described in the context of fifth generation (5G) core networks and systems, such as Figure 1-3 Although shown and described above, the described methods, apparatus, and computer program products may be applied in the broader context of any suitable telecommunication system, network, standard, or protocol.

[0151] Aspects of the present disclosure introduce a process for efficiently managing split rendering session transitions during relocation. In some embodiments, the disclosed method includes monitoring an existing split rendering session and triggering relocation based on monitoring of a media session fade-out. This may cause uninterrupted offloading in dynamic scenarios. Based on the relocation trigger results from the monitoring, the split rendering relocation can be relocated or provisioned to a new server, and the split rendering session can be efficiently transferred to the new server. Based on timing information, additional negotiation between the two split rendering sessions can facilitate seamless switching during split rendering session relocation. In addition, extensions to the SplitRenderingConfiguration resource and the addition of new application-specific messages for the split rendering transfer format are described to provide the necessary relocation information.

[0152] 3GPP TR 26.928 defines the terms virtual reality (VR), augmented reality (AR), mixed reality (MR), and extended reality (XR) as follows:

[0153] 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 stimulation of the real world as naturally as possible, allowing the viewer or user to move within the limitations defined by the application. Virtual reality typically (but not necessarily) requires the user to wear a head-mounted display (HMD) that completely replaces the user's field of view with simulated visual components, and wear headphones to provide the user with accompanying audio. Some form of VR user head and motion tracking is usually employed to update the visual and audio components of the simulation to ensure that items and sound sources, from the user's perspective, align with the user's movements. Additional methods of interacting with the virtual reality simulation may be provided.

[0154] Augmented reality (AR) is when a user is provided with additional information or artificially generated items or content that are superimposed on the user's current environment. Such additional information or content is typically visual and / or auditory, and the user's observation of their current environment may be direct, without intervening perception, processing, and rendering, or indirect, where the user's perception of their environment is relayed via sensors and may be augmented or processed.

[0155] Mixed reality (MR) is an advanced form of AR in which some virtual elements are inserted into the physical scene, aiming to provide the illusion that these elements are part of the real scene.

[0156] Extended reality (XR) refers to all combined real and virtual environments and human-computer interactions generated by computer technology and wearable devices. XR includes representative forms such as AR, MR, and VR, as well as the areas in between. Virtuality levels range from partial sensory input to fully immersive VR. A key aspect of XR is the expansion of human experience, particularly those related to presence (represented by VR) and cognitive acquisition (represented by AR).

[0157] Likewise, the term XR is used in this article as a superordinate category encompassing AR, MR, and VR (including purely virtual applications).

[0158] According to the description of use cases for 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 for all purposes), many XR applications are expected to be stateful, meaning that the application has a state that describes the UE application at a certain point in time. In addition, the fact that UEs are expected to interact (for example, in gaming applications) means that the state of various UEs should be shared between UEs. This poses several challenges during the handover (HO) process:

[0159] a. The target gNB should be ready and have sufficient radio resources to accommodate UEs executing XR applications.

[0160] b. In case of handover failure, the UE will experience service interruption, so the network should try to ensure seamless handover (also considering application relocation) to avoid interruption of XR applications.

[0161] c. In case of user plane function (UPF) relocation, the new UPF may not be able to provide XR services.

[0162] d. During handover, the target EAS may not be properly prepared to take over the EAS functionality from the previous EAS to avoid long delays.

[0163] The present disclosure addresses these challenges and generally relates to handover in communication networks, such as mobile communication networks, e.g., 5G networks. Note that the present disclosure relates to communication networks of various types and generations, configured to communicate over a transmission medium using various radio access technologies (RATs), also known 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., 1xRTT, 1xEV-DO, HRPD, eHRPD), etc.

[0164] The communication network is equipped with multiple base stations, including a source base station and a target base station. The processing involves the UE executing the XR application through a connection with the source base station. As used herein, the term "user equipment" may refer to various types of computer system devices that are mobile or portable and perform wireless communication. Examples of UE include mobile phones or smart phones, portable gaming devices, laptops, wearable devices (e.g., smart watches, 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 cover any electronic, computing and / or telecommunications device (or combination of devices) that is easily carried by a user and is capable of wireless communication.

[0165] As described above, the present disclosure is particularly directed to enabling a target base station (target gNodeB or gNB in ​​5G terminology) to support a UE's XR applications in terms of radio capabilities and resources of an edge data network (EDN). In an embodiment, the target base station and (multiple) target EDNs have been appropriately prepared to assume the UE's XR capabilities, and an appropriate user plane function (UPF) is selected taking into account the XR capabilities of the application function (AF) associated with the XR application aspects. Additionally, during handover, an appropriate UPF can be reselected taking into account the XR capabilities of the target AF, as well as if the application is to be relocated during handover.

[0166] The split rendering mechanism specified in 3GPP TS 26.565 version 0.5.0 is client-driven. A split rendering client (e.g., UE 102) contacts an edge server and requests a list of available computing resources, possibly associated with desired computing capabilities (RAM, CPU, GPU, etc.). The server returns a list of server Uniform Resource Identifiers (URIs) that match the resource request from the split rendering client. The split rendering client can then select a server from the list and offload some or all of the split rendering processing to the selected server.

[0167] However, the approach described in 3GPP TS 26.565 version 0.5.0 works well only when network conditions are static and edge server resources are reliable. However, network conditions are rarely static, and edge server resources are often unreliable; this means that these and other factors can degrade the quality of XR media content from separate rendering sessions and separate rendering session offload outputs, such as:

[0168] The split rendering client (e.g., UE 102) is in mobility (triggering handover from one access network and / or RAN to another access network and / or RAN), faces changing location and network conditions (e.g., traveling on a train, or switching from a home network (i.e., Wi-Fi) to a 3GPP RAT, etc.), split rendering server congestion, insufficient server provisioning, edge server infrastructure experiencing technical issues that reduce reliability (e.g., power outages, disaster recovery, air conditioning issues, etc.), and when the network faces peak audiences, which generally reduces QoS and causes geographically localized congestion.

[0169] In those cases, 3GPP TS 26.565 version 0.5.0 does not provide a mechanism for transferring the offload task to another edge server or telling the split rendering client to do so. Furthermore, when the offload task is transferred, it is important to maintain session continuity for the client in a seamless manner, which is also not addressed.

[0170] To address these and other issues in current systems and practices for split rendering session support, a new call flow is added for split rendering relocation. A split rendering session currently supported or fully processed by a split rendering server is monitored, such as by an element of a mobile communications network (e.g., network 100) or a network function of the core network. Monitoring can be performed by a data network (e.g., DN 116), a RAN node, a session management function (e.g., SMF 110), or the like. A network element (e.g., DN 116) or a network function (e.g., SMF 110) can monitor QoS, such as by monitoring or measuring packet loss rate, bit rate, bit error rate, throughput, transmission delay, availability, jitter, or the like. If an element of the network (e.g., DN 116) or a network function (e.g., SMF 110) detects a deterioration in one or more QoE metrics and / or one or more QoS metrics, or otherwise determines that the split rendering session should be relocated from the current split rendering server, the element or function (SMF 110, etc.) may indicate the same to the current split rendering server, the split rendering client (e.g., UE 102), the application provider, the target split rendering server, the SWAP server, etc. (e.g., providing an indication that the split rendering session should be relocated from the current split rendering server to the split rendering client, the application provider, the target split rendering server, and / or the SWAP server).

[0171] In the event that an element of the network (e.g., DN 116) or a network function (e.g., SMF 110) determines that a split rendering session should be relocated from a current split rendering server to another server, the element of the network or the network function may then request provisioning of a target split rendering server. The element (e.g., DN 116) or the network function (e.g., SMF 110) may also indicate to the split rendering client (e.g., UE 102) that it is to provide pose and motion information to both (1) the current split rendering server (as it has already done during the time the current split rendering server provides split rendering services to the split rendering client) and (2) the target split rendering server. The element of the network (e.g., DN 116) or the network function (e.g., SMF 110) may then indicate to the target split rendering server that it will receive pose and motion information from the split rendering client (e.g., UE 102) and render the second split rendering session in parallel with the current split rendering session being rendered by the current split rendering server. After the separate rendering client sends the pose and movement information to both the current separate rendering server and the target separate rendering server, the current separate rendering server renders the viewport-specific XR visual media content and sends the rendered viewport-specific XR visual media content to the separate rendering client (e.g., UE 102), while the target separate rendering server renders the same viewport-specific XR visual media content and sends the rendered viewport-specific XR visual media content and / or information about the rendered viewport-specific XR visual media content to an element of a network (e.g., DN 116) or a network function (e.g., SMF 110) in the mobile communication network (e.g., network 100).

[0172] Examples of gesture information that may be sent from a separate rendering client (eg, UE 102) to one or more separate rendering servers are shown in Table 1 below.

[0173] Table 1

[0174]

[0175]

[0176] Further details regarding gesture information and formats may be found in 3GPP TS 26.565 version 0.5.0, the entire contents of which are incorporated herein by reference for all purposes.

[0177] An element or network function (e.g., DN 116, SMF 110, etc.) in a mobile communication network (e.g., network 100) receives rendered viewport-specific XR visual media content or information about the rendered viewport-specific XR visual media content from a target separate rendering server, and determines one or more QoS metrics and / or QoE metrics for the rendered viewport-specific XR visual media content from the target separate rendering server from the content or information provided by the target separate rendering server. The one or more QoS metrics and / or QoE metrics for the rendered viewport-specific XR visual media content from the target separate rendering server can be compared by the element or function to a predetermined threshold or baseline, and / or to a comparable QoS metric and / or QoE metric for the rendered viewport-specific XR visual media content from the source separate rendering server. Thus, an element or function (e.g., DN 116, SMF 110, etc.) in a mobile communication network (e.g., network 100) may determine whether the QoS metric and / or QoE metric for viewport-specific XR visual media content rendered from a target separate rendering server is good enough and / or better than the QoS metric and / or QoE metric for viewport-specific XR visual media content rendered from a source separate rendering server, and if so, determine that the separate rendering session should be relocated from the source separate rendering server to the target separate rendering server.

[0178] After determining that the split rendering session should be relocated from the source split rendering server to the target split rendering server, an element or function (e.g., DN 116, SMF 110, etc.) in the mobile communication network (e.g., network 100) may identify a specific point in time, frame, viewport, etc. at which the split rendering session is to be relocated from the source split rendering server to the target split rendering server.

[0179] In some embodiments, specific relocation information about QoS metrics and / or (multiple) QoE metrics, configuration information about the source or target split rendering server, an identifier for the target split rendering server, etc. can be added to the SplitRenderingConfiguration structure. Relocation parameters can be added to the existing data model (SplitRenderingConfiguration resource), such as the relocation parameters provided in Table 7.2.2-2 in 3GPP TS 26.565 Version 0.5.0. According to an example embodiment, Table 2 below shows the properties of the data model for the SplitRenderingConfiguration resource, including additional properties of relocationStatus and relocationParameters.

[0180] Table 2

[0181]

[0182]

[0183]

[0184] In some embodiments, timeline information (such as the timeline information provided in relocationStatus or relocationParameters) can be used to manage new resource requests to a separate rendering server (e.g., the current separate rendering server) throughout the relocation process or relocation lifecycle. For example, if the system knows that the current separate rendering session will be relocated within a specific number of seconds, such as 2 seconds, 3 seconds, 4 seconds, 5 seconds, etc., it can be expected that after the relocation of the separate rendering session to the new separate rendering server is completed, the resources allocated on the current separate rendering server will be released, and those released resources on the current separate rendering server can be used for other purposes.

[0185] Now go to Figure 4 , an example of a core network apparatus (CNA) (including core network functions: UPF 106, AMF 108, SMF 110, PCF 114 and / or another NF and / or NRF) can be embodied in a core network device 200 configured according to an example embodiment of the present disclosure. As described below in conjunction with Figure 8-12 As described in the flowchart of FIG. 1 , the CNA 200 of the example embodiment can be configured to perform the functions described herein. In any case, the CNA 200 can be more generally a computing device or a computer, such as a server, a stand-alone computer, a distributed computing system, or a cloud computing system. Regardless of how the CNA 200 is embodied, the apparatus of the example embodiment can be as follows: Figure 4 The configuration shown is 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, a communication interface 206 .

[0186] In CNA 200, processor 202 (and / or coprocessors or any other circuitry assisting or otherwise associated with processor 202) can communicate with memory device 204 via a bus for transferring information between components of CNA 200. Memory device 204 may include, for example, one or more volatile and / or non-volatile memories. In other words, for example, memory device 204 may be an electronic storage device (e.g., a computer-readable storage medium) that includes gates configured to store data (e.g., bits) that can be accessed by a machine (e.g., a computing device such as processor 202). Memory device 204 may be configured to store information, data, content, applications, instructions, and the like to enable CNA 200 to perform various operations of one or more core network functions according to example embodiments of the present disclosure. For example, memory device 204 may be configured to buffer input data for processing by processor 202. Additionally or alternatively, memory device 204 may be configured to store instructions for the core network functions for execution by processor 202.

[0187] The processor 202 can be embodied in a variety of different ways. For example, the processor 202 can be embodied as one or more of a variety of hardware processing devices, for example, as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing element with or without an accompanying DSP, or various other circuit systems, including integrated circuits, such as, for example, ASICs (application-specific integrated circuits), FPGAs (field programmable gate arrays), microcontroller units (MCUs), hardware accelerators, special-purpose computer chips, etc. Therefore, in some embodiments, the processor 202 may include one or more processing cores configured to execute independently. A multi-core processor can implement multiprocessing within a single physical package. Additionally or alternatively, the processor 202 may include one or more other processors configured in series via a bus to implement independent execution of instructions, pipelines, and / or multithreading.

[0188] In an example embodiment, the processor 202 may be configured to execute instructions 204 stored in a memory device or other means accessible to the processor 202. Additionally or alternatively, the processor 202 may be configured to execute hard-coded functions. Thus, whether configured by hardware or software methods, or by a combination of both, the processor 202 may represent an entity (e.g., physically embodied in a circuit system) capable of performing operations according to embodiments of the present disclosure, while being configured accordingly. Thus, for example, when the processor 202 is embodied as an ASIC, FPGA, etc., the processor 202 may be specially configured hardware for performing the operations described herein. 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 decoder) that is configured to employ embodiments of the present invention by further configuring the processor 202 of the instructions to perform 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 the operation of the processor 202 .

[0189] In embodiments including a communication interface 206, the communication interface 206 can be any component, such as a device or circuitry embodied in hardware or a combination of hardware and software, configured to receive and / or transmit data from a network and / or any other device or module in communication with the CNA 200, such as a NF, NRF (e.g., 124), a UE (e.g., 102), a RAN (e.g., 104), core network services, application servers and / or functions (e.g., 112), a database or other storage device, etc. In this regard, the communication interface 206 can include, for example, an antenna (or multiple antennas) and supporting hardware and / or software for enabling communication with a wireless communication network. Additionally or alternatively, the communication interface 206 can include circuitry for interacting with the antenna(s) to cause transmission of signals via the antenna(s) or to process reception of signals received via the antenna(s). In some environments, the communication interface 206 can alternatively or also support wired communication. Thus, 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, the session management function (e.g., 110) may include a 5GC session management function for any suitable CUPS architecture, such as for 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, etc.

[0190] In some embodiments, CNA 200 may represent a user device (eg, 102) configured to connect to other core network entities or network devices. In some embodiments, the user device may include a mobile phone (cell phone), etc.

[0191] As shown, CNA 200 may include a processor 202 in communication with memory 204 and configured to provide signals to and receive signals from a communication interface 206. In some embodiments, communication interface 206 may include a transmitter and a receiver. In some embodiments, processor 202 may be configured to at least partially control the functionality of CNA 200. In some embodiments, processor 202 may be configured to control the functionality of the transmitter and receiver by influencing control signaling via electrical leads to the transmitter and receiver. Similarly, processor 202 may be configured to control other components of CNA 200 by influencing control signals via electrical leads connecting processor 202 to other components, such as a display or memory 204. Processor 202 may be embodied in a variety of ways, including, for example, circuitry, at least one processing core, one or more microprocessors with accompanying digital signal processor(s), one or more processors without accompanying digital signal processors, 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 (e.g., application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs)), etc.), or some combination thereof. Therefore, despite the Figure 4 Although shown as a single processor, in some example embodiments, processor 202 may include multiple processors or processing cores.

[0192] The CAN 200 may be capable of operating with one or more air interface standards, communication protocols, modulation types, access types, etc. The signals sent and received by the processor 202 may include signaling information in accordance with the air interface standard of the applicable cellular system, and / or any number of different wired or wireless network technologies, including but not limited to Wi-Fi, wireless local access network (WLAN) technologies such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, 802.16, 802.3, ADSL, DOCSIS, etc. Additionally, these signals may include voice data, user-generated data, user-requested data, etc.

[0193] For example, the CNA 200 and / or the 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 (e.g., Session Initiation Protocol (SIP)), etc. 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, etc. Additionally, 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), etc. Furthermore, 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), etc. Additionally, the CNA 200 may be 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), etc. Additionally, for example, the CNA 200 may be capable of operating in accordance with 4G wireless communication protocols, such as LTE Advanced, 5G, etc., as well as similar wireless communication protocols that may be subsequently developed. In some embodiments, the CNA 200 is capable of operating in accordance with or within the framework of any suitable control and user plane separation (CUPS) architecture, such as for Gateway GPRS Support Node (GGSN-C), Trusted Wireless Access Gateway (TWAG-C), Broadband Network Gateway (BNG), N4, Sxa, Sxb, Sxc, Evolved Packet Core (EPC) SWG-C, EPC PGW-C, EPC TDF-C, etc.

[0194] It should be understood that processor 202 may include circuitry for implementing the audio and / or video and logic functions of CNA 200. For example, processor 202 may include a digital signal processor device, a microprocessor device, an analog-to-digital converter, a digital-to-analog converter, etc. The control and signal processing functions of CNA 200 may be distributed among these devices according to their respective capabilities. Processor 202 may also include an internal voice coder (VC), an internal data modem (DM), etc. In addition, processor 202 may include functionality to operate one or more software programs, which may be stored in memory 204. Generally speaking, processor 202 and the software instructions stored in memory 206 may be configured to cause CNA 200 to perform actions. For example, processor 202 may be capable of operating a connectivity program, such as a web browser. The connectivity program may allow CNA 200 to send and receive web content (such as location-based content) according to protocols (such as Wireless Application Protocol (WAP) and Hypertext Transfer Protocol (HTTP), etc.).

[0195] In some embodiments, CNA 200 may further include a user interface, including, for example, an earpiece or speaker, a ringer, a microphone, a display, a user input interface, etc., operatively coupled to processor 202. As described above, the display may include a touch-sensitive display, which a user can touch and / or perform gestures to make selections, input values, etc. 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, ringer, microphone, display, etc.). Processor 202 and / or the user interface circuitry including processor 202 may be configured to control one or more functions of one or more elements of the user interface via computer program instructions (e.g., software and / or firmware stored in memory 204 accessible to processor 202, such as volatile memory, non-volatile memory, devices including the same, etc.). CNA 200 may include a battery for powering various circuits associated with the mobile terminal, such as circuitry for providing mechanical vibration as a detectable output. The user input interface may include devices that allow the CNA 200 to receive data, such as a keypad (eg, a virtual keyboard displayed on a display or an externally coupled keyboard), or the like.

[0196] like Figure 4As shown, CNA 200 may also include one or more mechanisms for sharing and / or obtaining data, as shown by communication interface 206. For example, communication interface 206 of CNA 200 may include a short-range radio frequency (RF) transceiver and / or interrogator, so that data can be shared with and / or obtained from electronic devices based on RF technology. CNA 200 may include other short-range transceivers, such as an infrared (IR) transceiver, a Bluetooth (BT) transceiver operating using Bluetooth wireless technology, a wireless universal serial bus (USB) transceiver, a Bluetooth low energy transceiver, a ZigBee transceiver, an ANT transceiver, a cellular device-to-device transceiver, a wireless local area network link transceiver, and / or any other short-range radio technology. In some embodiments, for example, CNA 200, and particularly the short-range transceiver, can send data to and / or receive data from electronic devices in the vicinity of the device (such as within approximately 10 meters). The CNA 200 including a Wi-Fi or wireless local area network modem may also be capable of sending and / or receiving data from electronic devices according to various wireless network technologies, including 6LoWpan, Wi-Fi, Wi-Fi low energy, WLAN technologies (e.g., IEEE 802.11 technology, IEEE 802.15 technology, IEEE 802.16 technology, etc.).

[0197] CNA 200 may include volatile memory and / or non-volatile memory, which may include part or all of memory 204, or alternatively, may be separate memory within or connected to 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 the like. Non-volatile memory may be embedded and / or removable, and may include, for example, read-only memory, flash memory, magnetic storage devices (e.g., hard disks, floppy disk drives, tapes, optical drives, and / or media), non-volatile random access memory (NVRAM), and the like. Like volatile memory, non-volatile memory may include cache areas for transient data storage. At least a portion of the volatile and / or non-volatile memory may be embedded in processor 202. Memory may store one or more software programs, instructions, information, data, and the like. For example, memory 204 may store software or instructions for one or more network functions of a core network, which may be used by the device to perform the operations disclosed herein.

[0198] The memory may include an identifier, such as an International Mobile Equipment Identity (IMEI) code, that can uniquely identify the CNA 200. The memory may include an identifier, such as an International Mobile Equipment Identity (IMEI) code, that can uniquely identify the CNA 200. In an example embodiment, the processor 202 may use computer code stored in the memory to configure and / or provide operations disclosed herein with respect to a base station, a WLAN access point, a network node including a UE, and the like. Similarly, the CNA 200 may be configured as any other component or network device from a core network.

[0199] Some embodiments disclosed herein may be implemented in software, hardware, application logic, or a combination of software, hardware, and application logic. For example, the software, application logic, and / or hardware may reside on the memory 204, the processor 202, or an electronic component. In some example embodiments, the application logic, software, or instruction set is stored on any of various conventional computer-readable media. In the context of this document, a "computer-readable medium" may be any non-transitory medium that can contain, store, communicate, propagate, or transport instructions for use by or in connection with an instruction execution system, apparatus, or device (such as a computer or data processor circuitry), for example Figure 4 In the examples shown in , computer-readable media may include non-transitory computer-readable storage media, which may be any media that can contain or store instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.

[0200] Figure 5 An example of an apparatus is shown, which may be configured according to an example embodiment of the present disclosure. Figure 6-12 As described in and 15-24, the device 300 can be a UE (e.g., UE 102) and can be configured to perform the functions, processes, and methods described herein, combinations thereof, variations thereof, or portions thereof. As described herein, the terms "UE," "user equipment," "terminal device," "head-mounted display," "XR device," and "split rendering client" are generally used interchangeably to refer to any device, apparatus, hardware, computing device, system, or subsystem configured to receive rendered XR media content from a supplied split rendering server during a split rendering session, regardless of whether the receiving device is configured to display the XR media content, regardless of whether the receiving device is configured to measure, detect, calculate, perceive, or otherwise determine the user's posture information, and whether the receiving device renders another portion of the XR media content in parallel with the supplied split rendering server. In addition, as described herein, the terms "server," "edge server," and "split rendering server" are generally used interchangeably to refer to any function, element, node, engine, apparatus, device, server, component, system, or subsystem configured to render XR media content during a split rendering session.

[0201] In some embodiments, the device 300 is or includes exemplary dedicated hardware, particularly sized and configured to perform any of the methods, processes, and methods described herein. In some embodiments, the device 300 may be part of the system 100 or in communication with its components. It should be understood that the device 300 is provided as an example of one embodiment and should not be construed to narrow the scope or spirit of the present invention in any way. In this regard, the scope of the present disclosure encompasses many potential embodiments in addition to those shown and described herein. Therefore, while Figure 5 An example of a configuration of an apparatus for performing or facilitating the disclosed various approaches and methods for seamless split rendering server provisioning and split rendering session relocation is shown, but other wireless communication systems (such as 5G systems, 6G systems, or other configurations) may also be used to implement certain embodiments of the present disclosure.

[0202] The apparatus 300 may be embodied as a desktop computer, a laptop computer, a mobile terminal, a mobile computer, a mobile phone, a mobile communication device, a gaming device, a digital camera and / or video camera, an audio and / or video player, a television device, a radio receiver, a digital video recorder, a positioning device, a chipset, a computing device including a chipset, any combination thereof, etc. In some example embodiments, the apparatus 300 is embodied as a mobile computing device, such as a mobile phone, a mobile computer, a personal digital assistant (PDA), a pager, a laptop computer, a desktop computer, a gaming device, a television, an electronic paper, and other types of electronic systems, which may employ various embodiments of the present invention.

[0203] Apparatus 300 may include a computing device 302 including a processor 304, and memory, such as non-volatile memory 306 and / or volatile memory 308. In some embodiments, processor 304 may be embodied, for example, as various components including circuitry, one or more microprocessors with accompanying digital signal processor(s), one or more processors without accompanying digital signal processors, 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 an FPGA (Field Programmable Gate Array), or some combination thereof. Thus, while in Figure 5Although shown as a single processor in FIG, in some embodiments, processor 304 includes multiple processors. The signals sent and received by processor 304 may include signaling information according to the air interface standard of the applicable cellular system and / or any number of different wired or wireless network technologies, including but not limited to Wi-Fi, wireless local area network (WLAN) technologies (such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, 802.16, etc.). In addition, these signals may include voice data, user-generated data, user-requested data, etc. In this regard, the mobile terminal may be capable of operating using one or more air interface standards, communication protocols, modulation types, access types, etc. More specifically, the mobile terminal may be capable of operating according to various first generation (1G), second generation (2G), 2.5G, third generation (3G) communication protocols, fourth generation (4G) communication protocols, fifth generation (5G), sixth generation (6G), any frequency bands, frequencies or protocols thereof, Internet Protocol Multimedia Subsystem (IMS) communication protocols (e.g., Session Initiation Protocol (SIP)), etc. For example, the mobile terminal 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)), etc. 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), etc. Also, 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), etc. The mobile terminal may also be 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), etc. Also, for example, the mobile terminal may be capable of operating in accordance with fourth generation (4G) wireless communication protocols and / or similar protocols, as well as similar wireless communication protocols that may be developed in the future.

[0204] In addition to broadband systems, some narrowband Advanced Mobile Phone System (NAMPS) and Total Access Communication System (TACS) mobile terminals may also benefit from embodiments of the present invention, as may dual-mode or higher-mode phones (e.g., digital / analog or TDMA, CDMA, and / or analog phones). Additionally, apparatus 300 or its components may be capable of operating in accordance with Wi-Fi or Worldwide Interoperability for Microwave Access (WiMAX) protocols.

[0205] It should be understood that processor 304 may include circuitry for implementing the audio and / or video and logic functions of device 300. For example, processor 304 may include a digital signal processor device, a microprocessor device, an analog-to-digital converter, a digital-to-analog converter, etc. The control and signal processing functions of the mobile terminal may be allocated among these devices according to their respective capabilities. The processor may also include an internal voice coder (VC), an internal data modem (DM), etc. In addition, processor 304 may include functionality to operate one or more software programs, which may be stored in memory. For example, processor 304 may be capable of operating connectivity processes, such as a web browser. Connectivity processes may allow device 300 to send and receive web content, such as location-based content, according to protocols such as Wireless Application Protocol (WAP) and Hypertext Transfer Protocol (HTTP). Device 300 may be capable of sending and receiving web content via the Internet or other networks using Transmission Control Protocol and / or Internet Protocol (TCP / IP).

[0206] The device 300 may also include a user interface 312, including, for example, an earphone or speaker, a ringer, a microphone, a user display, a user input interface, etc., which may be operatively coupled to the processor 304. In this regard, the processor 304 may include 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, ringer, microphone, display, etc. The processor 304 and / or the user interface circuitry including the processor 304 may be configured to control one or more functions of one or more elements of the user interface via computer program instructions (e.g., software and / or firmware) stored in a memory accessible to the processor 304 (e.g., non-volatile memory 306, volatile memory 308, etc.). Although not shown, the device 300 may include a battery for powering various circuits associated with the device 300, such as, for example, a circuit for providing mechanical vibration as a detectable output. The device 300 may also include a display 314. In some embodiments, the display 314 can be of any type suitable 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, and the like. The user interface 312 can include devices that allow the apparatus 300 to receive data, such as a keyboard, a touch display (e.g., in some example embodiments where the display 314 is configured as a touch display), a joystick (not shown), and / or other input devices. In embodiments that include a keyboard, the keyboard can include numbers (0-9) and related keys (#, *), and / or other keys for operating the apparatus 300.

[0207] Device 300 may include memory, such as non-volatile memory 306 and / or 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 the like. In addition to memory, device 300 may also include other removable and / or fixed memory. In some embodiments, volatile memory 308 may include random access memory (RAM), including dynamic and / or static RAM, on-chip or off-chip cache memory, and the like. In some embodiments, non-volatile memory 306 may be embedded and / or removable, and may include, for example, read-only memory, flash memory, magnetic storage devices (e.g., hard disks, floppy disk drives, tapes, etc.), optical drives and / or media, non-volatile random access memory (NVRAM), and the like. Like volatile memory 308, non-volatile memory 306 may include a cache area for transient storage of data. Memory may store one or more software programs, instructions, information, data, and the like, which may be used by the mobile terminal to perform its functions. For example, the memory may include an identifier capable of uniquely identifying the apparatus 300, such as an International Mobile Equipment Identity (IMEI) code.

[0208] In some example embodiments, apparatus 300 includes various components for performing the various functions described herein. These components may include one or more of processor 304, non-volatile memory 306, volatile memory 308, user interface 312, or display 314. The components of apparatus 300 described herein may be embodied as, for example, circuitry, hardware elements (e.g., a suitably programmed processor, combinational logic circuits, etc.), a computer program product (including computer-readable program instructions (e.g., software or firmware) stored on a computer-readable medium (e.g., storage 306 or 308), which may be executed by a suitably configured processing device (e.g., processor 304), or some combination thereof.

[0209] In some example embodiments, Figure 5One or more components shown in can be embodied as a chip or chip set. In other words, the device 300 may include one or more physical packages (e.g., chips), including materials, components and / or wires on a structural assembly (e.g., a substrate). The structural assembly can provide physical strength, size savings and / or electrical interaction limitations for the component circuitry included thereon. In this regard, the processor 304, the memory 306 and / or the storage 308, the user interface 312 and / or the display 314 can be embodied as a chip or a chip set. Thus, in some cases, the device 300 can be configured as or can include (multiple) components configured to implement embodiments of the present invention on a single chip or as a single "system on a chip". Thus, in some cases, a chip or chip set can constitute a component for performing one or more operations to provide the functionality described herein.

[0210] The processor 304 may be embodied, for example, as a variety of components, including one or more microprocessors with accompanying digital signal processor(s), one or more processors without accompanying digital signal processor(s), 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, ASICs (Application Specific Integrated Circuits) or FPGAs (Field Programmable Gate Arrays)), one or more other types of hardware processors, or some combination thereof. Thus, although in Figure 5 300. Although shown as a single processor, in some embodiments, processor 304 includes multiple processors. The multiple processors may be in operative communication with each other and may be collectively configured to perform one or more functions of apparatus 300, for example, as described herein. The multiple processors may be embodied on a single computing device or distributed across multiple computing devices that are collectively configured as apparatus 300. In some embodiments, for example, where the apparatus is embodied as apparatus 300, processor 304 may be embodied as processor 304 or include processor 304 (e.g., Figure 5). In some example embodiments, the processor 304 is configured to execute instructions stored in the memory 306 and / or the memory 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 functions of the apparatus 300 described herein. Thus, 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 when correspondingly configured. Thus, for example, when the processor 304 is embodied as an ASIC, FPGA, or the like, the processor 304 may comprise specially configured hardware for performing 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.

[0211] Memory 306 and / or 308 may include, for example, volatile memory, non-volatile memory, or some combination thereof. In this regard, memory 306 and / or 308 may include non-transitory computer-readable storage media. Figure 5 306 and / or 308 may include multiple memories. The multiple memories may be embodied on a single computing device or may be distributed across multiple computing devices that are collectively configured to function as apparatus 300. In various example embodiments, memory 306 and / or 308 may include a hard disk, random access memory, cache memory, flash memory, compact disk read-only memory (CD-ROM), digital versatile disk read-only memory (DVD-ROM), an optical disk, a circuit system configured to store information, or some combination thereof. In some embodiments, memory 306 and / or 308 may include volatile memory 308 and / or non-volatile memory 306 (e.g., Figure 5 ). Memory 306 and / or 308 may be configured to store information, data, applications, instructions, etc., to enable apparatus 300 to perform various functions according to various example embodiments. For example, in some example embodiments, memory 306 and / or 308 is configured to buffer input data for processing by processor 304. Additionally or alternatively, memory 306 and / or 308 may be configured to store program instructions for execution by processor 304. 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, etc. This stored information may be stored and / or used by processor 304 during the course of performing its functions.

[0212] In some embodiments, the apparatus 300 may further include a communication interface (not shown), which may be embodied as any device or component embodied in a circuit system, hardware, a computer program product comprising computer-readable program instructions stored on a computer-readable medium (e.g., memory 306 and / or 308) and executed by a processing device (e.g., processor 304), or a combination thereof, the communication interface being configured to receive and / or send data from another computing device to another computing device. In some example embodiments, the communication interface is at least partially embodied as the processor 304 or otherwise controlled by the processor 304. In this regard, the communication interface may communicate 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 communication with one or more remote computing devices. In some embodiments, for example, where the apparatus is embodied as the apparatus 300, the communication interface may be embodied as or include a transmitter and a receiver. The communication interface may be configured to receive and / or send data using any protocol that may be used for communication between computing devices. In this regard, the communication interface can be configured to receive and / or send data using any protocol that can be used for transmission of data over a wireless network, a wired network, some combination thereof, etc. (through which the apparatus 300 and one or more computing devices can communicate). As an example, the communication interface can be configured to receive and / or otherwise access content (e.g., web content, streaming media content, etc.) from a server or other content source over a network. The communication interface can also communicate with memory 306 and / or 308, user interface 312, and / or processor 304, such as via a bus.

[0213] The user interface 312 may be in communication with the processor 304 and configured to receive indications of user input and / or provide audible, visual, mechanical, or other output to the user. Thus, the user interface 312 may include, for example, a keyboard, a mouse, a joystick, a display, a touch screen display, a microphone, a speaker, and / or other input and / or output mechanisms. In embodiments where the apparatus 300 is embodied as an apparatus 300, the user interface 312 may be embodied as or include a user input interface, such as a display 314 (e.g., Figure 5308, a communication interface, a sensor, a speaker, and / or the processor 304. In some example embodiments, the user interface 312 may include a single input and / or output mechanism. In other embodiments, the user interface 312 may include a content display and a touch display, such as display 314. In some embodiments, the user interface 312 may include a touch display user interface having a content display portion and a dedicated user input portion, such as a virtual keyboard, a virtual piano, or an application with designated keys for user input.

[0214] The processor 304 may be embodied as various components, such as circuitry, hardware, a computer program product (including computer-readable program instructions stored on a computer-readable medium (e.g., memory 306 and / or 308) and executed by a processing device (e.g., processor 304), or some combination thereof, and in some embodiments is embodied as or controlled by the processor 304. The processor 304 may also communicate with one or more of the memories 306 and / or 308 or the user interface 312, such as via a bus.

[0215] Processor 304 can be configured to receive user input from user interface 312 (such as touch display).User input or signal can carry the information of the location of indication user input.In this respect, location can comprise the location of user input in two-dimensional space, and it can be relative to the surface of touch display user interface.For example, this location can comprise the coordinate location with respect to two-dimensional coordinate system (for example, X-axis and Y-axis), so that this location can be determined.Therefore, processor 304 can determine and be presented at the key or image corresponding to touch display user interface in the location determined or in the predefined vicinity of the location determined (for example, within the tolerance range of predefinition).Processor 304 can also be configured to carry out the function or action relevant to the key corresponding to the element, instruction and / or command determined by processor 304 based on the location of touch or other user input.

[0216] Without in any way limiting the scope, interpretation, or application of the claims appearing below, the technical effect of one or more of the example embodiments disclosed herein may be an improved user device or network device configuration. Therefore, any embodiment of a method, system, approach, device, apparatus, or computer program described or illustrated herein should be understood to include any or all components, functions, elements, or steps of any other embodiment, such that any method may be performed by CNA 200, apparatus 300, or any other suitable system or device, and may likewise be executed according to computer program code as contemplated within the scope of this disclosure.

[0217] 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 the RTC-AF in the fifth generation core network (5GCN). The RTC-AF can be a hardware-based network function, a logical network function, a software-defined network function, a fully virtualized network function, or provided in any other suitable manner. The RTC-AF can be configured to communicate with the PCF (e.g., 114), the SMF (e.g., 110), the network exposure function (NEF), the UDM (e.g., 118), the UPF (e.g., 106a, 106b), the gNodeB (e.g., 104), the AMF (e.g., 108), the AUSF (e.g., 120), the security edge protection proxy (SEPP), the UE (e.g., 102), the application provider, the real-time communication application server (RTC-AS), one or more split rendering servers (SRS), the SWAP server, any other function, element, node, server, or component of the core network (e.g., 101) or the data network (e.g., 116).

[0218] Figure 6 An example of an apparatus 400 including and / or configured to operate or function as an RTC-AF 402 is shown. In some embodiments, the RTC-AF 402 may include a processor 404 and a memory 406. The memory 406 may store therein or communicate with computer program code or instructions 408 that, when executed by the processor 404, cause the apparatus 400 (e.g., the RTC-AF 402) to perform actions or methods such as those described herein to facilitate seamless relocation of split rendering sessions between different split rendering servers to improve XR media content quality, alleviate server congestion, efficiently use split rendering resources on a communication network, etc. The apparatus 400 may include similar elements, features, components, and functionality as other such computing devices (e.g., 102, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 200, 300) described herein. Alternatively, apparatus 400 may include different or additional features or components, and be configured to perform different or additional operations than these other computing devices.

[0219] The apparatus 400 may include or communicate with a computer-readable storage medium 410, which may be similar or identical to the computer-readable storage medium 410 described elsewhere in this disclosure. The computer-readable storage medium 410 may be embodied and / or stored on any suitable computer program product, such as a transient or non-transitory storage medium. The computer-readable storage medium 410 may be configured to transfer some or all of the computer program code or instructions 408 to the memory 406 of the RTC-AF 402, whether initially, iteratively, continuously, occasionally, on demand, as needed, or otherwise.

[0220] Device 400 or RTC-AF 402 can be configured to communicate with a network 412, such as the Internet, a communication network, an Internet of Things (IoT) network, or the like. Network 412 can be a core network (e.g., CN 101) or a data network (e.g., DN 116). Network 412 can include or be in operable communication with a separate rendering service network 414, which includes various components, subsystems, hardware, functions, nodes, or network elements configured to facilitate rendering for a separate rendering session with a UE (e.g., UE 102). Separate rendering service network 414 can include, for example, a current separate rendering server 416 (current SRS 416), a real-time communication application server 418 (RTC-AS 418), a new SRS 420, and / or an application provider 422. Separate rendering service network 414 can also communicate with network 412. Alternatively, the separate rendering service network 414 may include or be included within the network 412. The specific network architecture or subsystem configuration used may not have a substantial impact on the operation of the RTC-AF 402. Instead, according to some embodiments, the RTC-AF 402 may be configured to be operatively coupled to, in communication with, and / or part of the separate rendering service network 414.

[0221] Alternatively, one or more of the current SRS 416, the new SRS 420, the RTC-AS 418, and / or the application provider 422 may be located in one or more other subsystems or subnetworks of the communication network (e.g., 5GS, 5GCN, DN, etc.). Nevertheless, the RTC-AF 402 may be configured to receive, measure, calculate, or otherwise determine metrics associated with the split rendering session, such as QoS metrics, QoE metrics, KPIs of the current and / or new SRSs 416, 420, and the like, and determine whether and when to relocate the split rendering session from the current SRS 416 to the new SRS 420. The RTC-AF 402 may determine, for example, based on one or more QoE metrics, that the rendering quality of the viewport observed by the user when consuming XR media content, such as that rendered by the current SRS 416, has degraded. Additionally or alternatively, the RTC-AF 402 may determine, for example, based on one or more QoS metrics, that data quality, network availability, packet transmission rate, packet reception, packet interpretation, network traffic management, server resource availability, packet traffic congestion, or other QoS metrics have degraded, and / or the like. Additionally or alternatively, the RTC-AF 402 may determine, for example, based on one or more key performance indicators (KPIs) associated with the current SRS 416, that operability, operational efficiency, operational effectiveness, resource availability, or other KPIs have degraded. Based on such degradation observed by the RTC-AF 402, the RTC-AF 402 may determine that the split rendering session needs to be relocated to another server or edge resource. The RTC-AF 402 may select a new SRS 420 from a plurality of SRSs. The RTC-AF 402 may also communicate the need to relocate the split rendering session to the new SRS 420, the RTC-AS 418, and / or the application provider 422.

[0222] Figure 7AAn example of a separate rendering client device (e.g., UE 102) is shown, which is configured to be worn by a user and includes a display for displaying viewport-specific XR media content received from a separate rendering server, and one or more sensors configured to collect posture and position information about the separate rendering client device, the posture and position information indicating user movement that must be considered when adjusting the viewport and field of view of subsequent XR media content to be rendered by the separate rendering server and sent to the separate rendering client device. As shown, at least 3DOF is monitored in a reference or absolute manner to determine the user's pitch, roll, and yaw, as well as posture and translational motion based on the client device's translational motion, altitude, posture, and / or other characteristics. Aspects or characteristics other than static posture and position information, such as dynamic movement, motion, posture, gait, direction of travel, rotational motion, movement speed, and other information about the user's position, orientation, head motion, posture, body movement, gait, or other characteristics, can be additionally or alternatively measured, monitored, calculated, estimated, or otherwise determined. The various axes of posture, position, movement, viewing direction and angle, and other characteristics can be considered part of a “reference system” that mimics the user's visual and auditory field of view as if the user were actually located at the center point (e.g., viewpoint) of the immersive virtualized landscape and environment rendered by the separate rendering server(s) for the client device (e.g., UE 102).

[0223] Although the user's real-world movement and Figure 7A The corresponding real-world movement, posture, position, angle, attitude, pitch, roll, and yaw of the client device in can be referred to as a description of a "reference system", and the corresponding virtualized landscape can be considered as a spherical virtual landscape or environment with its center point within the sphere, which can be considered as part of a "coordinate system" for the purpose of rendering the virtual landscape relative to the corresponding reference system based on other information such as user posture, positioning, and viewing direction information.

[0224] Figure 7B An example "coordinate system" is shown for defining spherical coordinates of azimuth (φ) and elevation (θ) for identifying the location of a point on a unit sphere, as well as the rotation angles of yaw (αα), pitch (ββ), and roll (γγ). The origin of the coordinate system is typically the same as the center point of the device or apparatus used for audio or video capture and the location of the user's head in the 3D space in which the audio or video is rendered. The x-axis corresponds to Figure 7A The anteroposterior axis shown in , the Y axis corresponds to Figure 7A The left-right (or lateral) axis shown in FIG, and the Z axis corresponds to Figure 7AAdditional information regarding “reference systems” and “coordinate systems” is provided in 3GPP TS 26.118, version 18.0.0, the entire disclosure of which is hereby incorporated by reference herein for all purposes.

[0225] In the context of a mobile communication network (e.g., network 100), and with an understanding of the real-world "reference system" of a split rendering client device (e.g., UE 102) corresponding to the virtualized "coordinate system" of the XR visual media content rendered by the split rendering server(s), several of the various options for an XR end-to-end rendering architecture are referenced below. Figure 8-14 Be briefly described.

[0226] Figure 8 An example system architecture 500 is shown for viewport-independent XR media delivery of XR media content from a separate rendering server (i.e., XR server 504) to a separate rendering client (i.e., XR device 502), wherein pose, position, and positioning information are retained at the XR device 502, the XR server 504 only provides the raw XR media content, and the XR viewport rendering is performed entirely by the XR device 502. As described above, the computational complexity, bandwidth requirements, latency, financial cost, and bulkiness and / or heaviness of the XR device 502 make this approach undesirable. In some embodiments, the XR device 502 can be the same as or similar to the UE 102 and / or apparatus 300, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 502 can be part of the UE 102 and / or apparatus 300; or, conversely, the UE 102 and / or apparatus 300 can be part of the XR device 502. In some embodiments, XR server 504 can be the same as or similar to CNA 200 and / or apparatus 400 in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, XR device 502 can be part of CNA 200 and / or apparatus 400; or conversely, CNA 200 and / or apparatus 400 can be part of XR device 502.

[0227] Figure 8The XR device 502 and / or XR server 504 shown in the figure can use, communicate with, or be part of a communication network (such as a 5GS [fifth generation system], a 6GS [sixth generation system], a core network (e.g., 5GCN), etc.). As shown, the XR server 504 can be configured to communicate XR media content to the XR device 502 using or via a communication network (e.g., a 5GS, such as 100). For example, the XR server 504 may include a 5GS delivery module for transmitting the XR media content to the 5GS delivery module of the XR device 502 via the communication network (e.g., 5GS). In addition, the XR device 502 can be configured to receive XR media content from the XR server 504 using or via a communication network (such as a 5GS, such as 100). For example, the 5GS delivery module of the XR device 502 can be configured to communicate XR media content. In some embodiments, the XR server 504 can be an element of a network (e.g., network 100) or a network function of a 5GS (e.g., 100). In some other embodiments, the XR server 504 can be part of an edge network or data network that communicates with the 5GS (e.g., 100) so that the 5GS can facilitate the transmission of XR media content to the XR device 502 and so that components of the 5GS (e.g., RTC-AF 402) can monitor metrics and quality of the XR media content, functionality of the XR server 504, playback of the XR media content rendered on the XR device 502, and / or other characteristics or indicators during the split rendering session. Based on this monitoring, the XR server 504 or an element or function in the 5GS (e.g., RTC-AF 402) can be configured to initiate, facilitate, or perform relocation of the split rendering session from the XR server 504 to another XR server (not shown). Embodiments of this relocation process are described in more detail elsewhere in this disclosure.

[0228] Figure 9An example system architecture 600 is shown for viewport-dependent delivery of XR media from an XR server 604 to an XR device 602 for rendering a viewport for display to a user. In this example system architecture 600, pose information and the like are provided to the XR server 604 only in adaptive media requests from the XR device 602. In some embodiments, an adaptive media request is provided by the XR device 602 to the XR server 604 to specifically request that the XR server 604 send only the XR media content relevant to the user's current viewport. Upon receipt of the adaptive media request, and based on the pose information provided by the XR device 602, the XR server 604 determines the user's current viewport and, based on the viewport, determines the portion of the total XR media content and / or virtual landscape to be included in rendering to the XR device 602, such that the rendered XR media content provided to the XR device 602 is viewport-specific. In this system architecture 600, for nearly all rendering activities, the extensive and computationally expensive rendering of the XR media content is performed at the XR device 602, which is undesirable. In some embodiments, the XR device 602 can be identical or similar to the UE 102, the apparatus 300, and / or the XR device 602, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 602 can be part of the UE 102, the apparatus 300, and / or the XR device 602; or, conversely, the UE 102, the apparatus 300, and / or the XR device 502 can be part of the XR device 602. In some embodiments, the XR server 604 can be identical or similar to the CNA 200, the apparatus 400, and / or the XR server 604, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 602 can be part of the CNA 200, the apparatus 400, and / or the XR server 504; or, conversely, the CNA 200, the apparatus 400, and / or the XR server 604 can be part of the XR device 602.

[0229] Figure 9The XR server 504 and XR device 6023 shown in the figure can use, communicate with, or be part of a communication network (such as 5GS [fifth generation system], 6GS [sixth generation system], a core network (e.g., 5GCN), etc.). As shown, the XR server 604 can be configured to communicate XR media content to the XR device 602 using or via 5GS. For example, the XR server 604 may include a 5GS delivery module that is configured to communicate the XR media content to the 5GS delivery module of the XR device 602 via 5GS. In addition, the XR device 602 can be configured to receive XR media content from the XR server 604 via 5GS, etc. For example, the XR device 602 may include a 5GS delivery module that is configured to receive XR media content from the 5GS delivery module of the XR server 604 via 5GS. In some embodiments, the XR server 604 can be an element of a network or network function of the 5GS (e.g., network 100). In some other embodiments, the XR server 604 can be part of an edge network or data network that communicates with the 5GS (e.g., network 100) so that the 5GS can facilitate the transmission of XR media content to the XR device 602 and so that components of the 5GS (e.g., RTC-AF 402) can monitor metrics and quality of the XR media content, functionality of the XR server 604, playback of the XR media content rendered at the XR device 602, and / or other characteristics or indicators during the split rendering session. Based on this monitoring, elements or functions in the XR server 604 or the 5GS (e.g., RTC-AF 402) can be configured to initiate, facilitate, or perform relocation of the split rendering session from the XR server 604 to another XR server (not shown). Embodiments of this relocation process are described in more detail elsewhere in this disclosure.

[0230] Figure 10, a method for displaying a 3D XR viewport in a network method 700 is shown, where an XR server 704 receives pose information (i.e., tracking and sensor information) from an XR device 702 and delivers two-dimensional (2D) media to a corresponding viewport determined based on the tracking and sensor information. However, the rendering of the viewport is performed at the XR device 702 for display to the user. In this example method, media content in a flat (2D) format is also encoded at the XR server 704 and must therefore be decoded and then rendered from 2D to a 3D XR viewport that can be displayed to the user. This method also relies on extensive and computationally expensive rendering at the XR device 702 to perform almost all rendering activities, which is undesirable. In some embodiments, the XR device 702 may be the same or similar to the UE 102, the apparatus 300, the XR device 502, and / or the XR device 602, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 702 may be part of the UE 102, the apparatus 300, the XR device 502, and / or the XR device 602; or conversely, the UE 102, the apparatus 300, the XR device 502, and / or the XR device 602 may be part of the XR device 702. In some embodiments, the XR server 704 may be the same as or similar to the CNA 200, the apparatus 400, the XR server 504, and / or the XR server 604, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 702 may be part of the CNA 200, the apparatus 400, the XR server 504, and / or the XR server 604; or conversely, the CNA 200, the apparatus 400, the XR server 504, and / or the XR server 604 may be part of the XR device 702.

[0231] Figure 10An example system architecture for viewport rendering in a network including an XR device 702 and an XR server 702 is shown. The XR device 702 and / or the XR device 704 may use a communication network, communicate with a communication network, or be part of a communication network (such as, for example, a 5GS [fifth generation system], a 6GS [sixth generation system], a core network (e.g., 5GCN), etc.). As shown, the XR server 704 may be configured to communicate XR media content to the XR device 702 using or via a 5GS or the like. For example, the XR server 704 may include a 5GS delivery module that is configured to communicate XR media content to the 5GS delivery module of the XR device 702 using or via 5G or the like. In addition, the XR device 702 may be configured to receive XR media content from the XR server 704 via the 5GS or the like. For example, the XR device 702 may include a 5GS delivery module that is configured to receive XR media content from the 5GS delivery module of the XR server 704 via the 5GS or the like. In some embodiments, the XR server 704 can be an element of a network or a network function of a 5GS (e.g., 100). In some other embodiments, the XR server 704 can be part of an edge network or data network that communicates with the 5GS (e.g., 100) so that the 5GS can facilitate the transmission of XR media content to the XR device 702 and so that components of the 5GS (e.g., RTC-AF 402) can monitor metrics and quality of the XR media content, the functionality of the XR server 704, the playback of the XR media content rendered at the XR device 702, and / or other characteristics or indicators during the split rendering session. Based on this monitoring, the XR server 704 or an element or function in the 5GS (e.g., RTC-AF 402) can be configured to initiate, facilitate, or perform a relocation of the split rendering session from the XR server 704 to another XR server (not shown). Embodiments of this relocation process are described in more detail elsewhere in this disclosure.

[0232] Figure 11A raster-based split rendering method 800 is shown for an XR server 804 to generate an XR scene based on tracking and sensor information provided by an XR device 802. In method 800, the XR server 804 runs an XR engine to generate an XR scene based on the tracking and sensor information provided by the XR device 802. The XR engine then rasterizes the XR scene into 2D media and encodes the 2D media before delivering the encoded 2D media to the XR device 802 via a communication network using a 5GS delivery module. After receiving the encoded 2D media from the XR server 804, the XR device 802 decodes the encoded 2D media to generate an XR viewport before displaying the XR viewport-specific media to the user. According to this method 800, without any other traffic being transmitted over the communication network, and based on relatively uncomplex XR media content and pose information, end-to-end latency will be less than approximately 100ms, or even less than approximately 75ms. However, with the continued miniaturization of XR user devices and the continued use of over-the-air (e.g., 5G Internet of Things [5G IoT]) rendered viewport transmission, and with the continued increase in the magnitude of viewport rendering required to achieve increasingly immersive and seamless user experiences, this latency range will increase, and the power and computational requirements for performing such rendering from a rasterized XR scene by the XR device 802 are already unsustainable and will continue to become more untenable. Therefore, like the above-described methods (e.g., 500, 600, 700), the method 800 also relies on extensive and computationally expensive rendering at the XR device 802 to perform substantially all rendering activities, which is undesirable. In some embodiments, the XR device 802 can be the same as or similar to the UE 102, the apparatus 300, the XR device 502, the XR device 602, and / or the XR device 702, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 802 may be part of the UE 102, the apparatus 300, the XR device 502, the XR device 602, and / or the XR device 702; or conversely, the UE 102, the apparatus 300, the XR device 502, the XR device 602, and / or the XR device 702 may be part of the XR device 802. In some embodiments, the XR server 804 may be the same as or similar to the CNA 200, the apparatus 400, the XR server 504, the XR server 604, and / or the XR server 704 in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 802 may be part of the CNA 200, the apparatus 400, the XR server 504, the XR server 604, and / or the XR server 704; or conversely, the CNA 200, the apparatus 400, the XR server 504, the XR server 604, and / or the XR server 704 may be part of the XR device 802.

[0233] Figure 11 The viewport-independent XR media delivery method 800 shown in FIG can use, communicate with, or become part of a communication network (such as a 5GS [fifth generation system], a 6GS [sixth generation system], a core network (e.g., 5GCN), etc.). As shown, the XR server 804 can be configured to communicate XR media content to the XR device 802 using or in conjunction with a 5GS, etc. (such as 100). In addition, the XR device 802 can be configured to receive XR media content from the XR server 804 via such a 5GS, etc. (such as 100). In some embodiments, the XR server 804 can be an element of a network (e.g., network 100) or a network function of a 5GS (e.g., network 100). In some other embodiments, the XR server 804 can be part of an edge network or data network that communicates with the 5GS (e.g., 100) so that the 5GS can facilitate the transmission of XR media content to the XR device 802 and so that components of the 5GS (e.g., RTC-AF 402) can monitor metrics and quality of the XR media content, functionality of the XR server 804, playback of the XR media content rendered at the XR device 802, and / or other characteristics or indicators during the split rendering session. Based on this monitoring, the XR server 804 or an element of the network (e.g., network 100) or a network function of the 5GS (e.g., RTC-AF 402) can be configured to initiate, facilitate, or perform relocation of the split rendering session from the XR server 804 to another XR server (not shown). Embodiments of a relocation process for relocating a split rendering session from the XR server 804 to another XR server (not shown) are described in more detail elsewhere in this disclosure.

[0234] Figure 12An example XR separate rendering method 900 is shown for delivering 2D and / or 3D XR media content from an XR server 904 to an XR device 902 for viewport rendering. In this example method, pose information, such as tracking and sensor information, is provided from the XR device 902 to the XR server 904, and the XR device 902 generates XR media, performs pre-rendering of the XR viewport, generates partial 2D / partial 3D versions of the XR media, encodes the XR media, and generates rendering metadata to assist the XR device 902 in re-rendering the 2D and / or 3D media to form a re-rendered XR viewport based on the accompanying rendering metadata. In many cases, such as when the separately rendered buffer at the XR server 904 is based on tracking and sensor information associated with a minimum or relatively minimum user viewpoint and / or viewport change within a particular frame range, the XR server 904 may determine that a 2D frame buffer is sufficient because the XR device 902 also receives rendering metadata to assist the XR device 902 in re-rendering the XR viewport for display to the user. However, as described above, with the continued miniaturization of XR user devices and the continued use of wireless (e.g., 5G Internet of Things [5G IoT]) rendered viewport transmission, and with the continued increase in the amount of viewport rendering required to impact increasingly immersive and seamless user experiences, such re-rendering scenarios may not always be appropriate, and a single XR server 904 may not continue to be reliably suitable for providing split rendering services to split rendering clients (e.g., XR device 902) due to changing network traffic conditions and technical issues at the XR server 904. Therefore, like the methods described above (e.g., 500, 600, 700, 800), the method 900 also relies on extensive and computationally expensive re-rendering at the XR device 902 for substantially all rendering activities. However, even though the method 900 is suitable for the XR server 904 to provide the split rendering service to the XR device 902 during a specific period of time, the method 900 does not provide any means for seamlessly relocating the split rendering service from the XR server 904 to another XR server (not shown) in unavoidable situations where the QoS and / or QoE of the XR viewport re-rendered at the XR device 902 may degrade due to degraded 2D and / or 3D media quality or degraded XR rendering metadata quality at the XR server 904. In some embodiments, the XR device 902 may be the same as or similar to the UE 102, the apparatus 300, the XR device 502, the XR device 602, the XR device 702, and / or the XR device 802, whether in terms of structure, subcomponents, arrangement, functionality, etc.In some embodiments, the XR device 902 may be part of the UE 102, the apparatus 300, the XR device 502, the XR device 602, the XR device 702, and / or the XR device 802; or conversely, the UE 102, the apparatus 300, the XR device 502, the XR device 602, the XR device 702, and / or the XR device 802 may be part of the XR device 902. In some embodiments, the XR server 904 may be the same as or similar to the CNA 200, the apparatus 400, the XR server 504, the XR server 604, the XR server 704, and / or the XR server 804 in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 902 may be part of the CNA 200, the apparatus 400, the XR server 504, the XR server 604, the XR server 704, and / or the XR server 804; or conversely, the CNA 200, the apparatus 400, the XR server 504, the XR server 604, the XR server 704, and / or the XR server 804 may be part of the XR device 902.

[0235] Figure 12 The viewport-independent XR media delivery method 900 shown in FIG can use, communicate with, or become part of a communication network (such as a 5GS [fifth generation system], a 6GS [sixth generation system], a core network (e.g., 5GCN), etc.). As shown, the XR server 904 can be configured to communicate XR media content to the XR device 902 using or in conjunction with a 5GS, etc. (such as 100). In addition, the XR device 902 can be configured to receive XR media content from the XR server 904 via such a 5GS, etc. (such as 100). In some embodiments, the XR server 904 can be an element of a network (e.g., network 100) or a network function of a 5GS (e.g., network 100). In some other embodiments, the XR server 904 can be part of an edge network or data network that communicates with the 5GS (e.g., 100) so that the 5GS can facilitate the transmission of XR media content to the XR device 902 and so that components of the 5GS (e.g., RTC-AF 402) can monitor metrics and quality of the XR media content, functionality of the XR server 904, playback of the XR media content rendered on the XR device 902, and / or other characteristics or indicators during the split rendering session. Based on this monitoring, the XR server 904 or an element or function in the 5GS (e.g., RTC-AF 402) can be configured to initiate, facilitate, or perform relocation of the split rendering session from the XR server 904 to another XR server (not shown). Embodiments of this relocation process are described in more detail elsewhere in this disclosure.

[0236] Figure 13A distributed computing XR media delivery method 1000 is shown, in which an XR device 1002 sends tracking and sensor information to an XR server 1004. The XR server 1004 generates a portion of an XR scene based on raw XR landscape data and the tracking and sensor information received from the XR device 1002, then encodes the portion of the XR scene and delivers the encoded portion of the XR scene to the XR device 1002. According to the method 1000, the XR device 1002 includes an XR engine or is operatively coupled to an XR engine. The XR engine is a logic (e.g., software) engine deployed at the XR device 1002 or an apparatus coupled to the XR device. The XR engine at the XR device 1002 then decodes the portion of the XR scene. This portion of the XR scene is then provided to the XR engine for compilation and rendering along with associated XR metadata. In parallel, the XR device 1002 also independently generates another portion of the XR scene (e.g., the remaining portion or less than the remaining portion), and the XR engine performs rendering of the other portion of the XR scene. The XR engine then compiles the various portions of the XR scene to form fully rendered viewport-specific XR media content. Thus, portions of the XR scene generation and metadata generation are performed by the XR server 1004, while another portion of the XR scene generation is performed by the XR device 1002. However, the compilation and complete rendering of the viewport-specific XR media content is performed by the XR device 1002 before being displayed to the user. However, as described above, with the continued miniaturization of XR user devices and the continued use of wireless (e.g., 5G IoT) rendering viewport transmission, and with the continued increase in the magnitude of viewport rendering that impacts increasingly immersive and seamless user experiences, such re-rendering of scenes may not always be appropriate, and due to changing network traffic conditions and technical issues at the XR server 1004, a single XR server 1004 will not continue to be reliable and suitable for providing separate rendering services to separate rendering clients (e.g., XR devices 1002). Thus, like the methods described above (e.g., 500, 600, 700, 800, 900), the method 1000 also relies on extensive and computationally expensive re-rendering of the XR media content at the XR device 1002 for almost all rendering activities. However, even though the method 1000 is suitable for the XR server 1004 to provide a separate rendering service to the XR device 1002 during a specific time period, the method 1000 does not provide any means for seamlessly relocating the separate rendering service from the XR server 1004 to another XR server (not shown) in unavoidable situations where the QoS and / or QoE of the XR viewport re-rendered at the XR device 1002 degrades due to degraded 2D and / or 3D media quality or degraded XR rendering metadata quality at the XR server 1004.In some embodiments, the XR device 1002 can be the same as or similar to the UE 102, the apparatus 300, the XR device 502, the XR device 602, the XR device 702, the XR device 802, and / or the XR device 902, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 1002 can be part of the UE 102, the apparatus 300, the XR device 502, the XR device 602, the XR device 702, the XR device 802, and / or the XR device 902; or conversely, the UE 102, the apparatus 300, the XR device 502, the XR device 602, the XR device 702, the XR device 802, and / or the XR device 902 can be part of the XR device 1002. In some embodiments, the XR server 1004 can be the same as or similar to the CNA 200, the device 400, the XR server 504, the XR server 604, the XR server 704, the XR server 804, and / or the XR server 904, whether in terms of structure, subcomponents, arrangement, functionality, etc. In some embodiments, the XR device 1002 can be part of the CNA 200, the device 400, the XR server 504, the XR server 604, the XR server 704, the XR server 804, and / or the XR server 904; or conversely, the CNA 200, the device 400, the XR server 504, the XR server 604, the XR server 704, the XR server 804, and / or the XR server 904 can be part of the XR device 1002.

[0237] Figure 13The viewport-independent XR media delivery method 1000 shown in FIG can use, communicate with, or become part of a communication network (such as a 5GS [fifth generation system], a 6GS [sixth generation system], a core network (e.g., 5GCN), etc.). As shown, the XR server 1004 can be configured to communicate XR media content to the XR device 1002 using or in conjunction with a 5GS, etc. (such as 100). In addition, the XR device 1002 can be configured to receive XR media content from the XR server 904 via such a 5GS, etc. (such as 100). In some embodiments, the XR server 1004 can be an element of a network (e.g., network 100) or a network function of a 5GS (e.g., network 100). In some other embodiments, the XR server 1004 can be part of an edge network or data network that communicates with the 5GS (e.g., 100) so that the 5GS can facilitate the transmission of XR media content to the XR device 1002 and so that components of the 5GS (e.g., RTC-AF 402) can monitor metrics and quality of the XR media content, functionality of the XR server 1004, playback of the XR media content rendered at the XR device 1002, and / or other characteristics or indicators during the split rendering session. Based on this monitoring, the XR server 1004 or an element or function in the 5GS (e.g., RTC-AF 402) can be configured to initiate, facilitate, or perform relocation of the split rendering session from the XR server 904 to another XR server (not shown). Embodiments of this relocation process are described in more detail elsewhere in this disclosure.

[0238] Now refer to Figure 14, illustrates a process 1100 in which a user equipment 1102 (UE 1102) establishes an initial split rendering session with a real-time communication application server 1104 (RTC-AS 1104) and an RTC application function 1106 (RTC-AF 1106) to receive media content from an application provider 1108 in a communication network (e.g., a 5G network). The RTC-AF 1106 may be housed, hosted, co-provisioned with, mapped to, and / or provided with another node or function of the communication network (such as in 100). For example, the RTC-AF 1106 may be a logical or software-defined function and / or functionality of a session management function (e.g., SMF 110) in a core network (e.g., CN 101), a data server (e.g., DN 116) in a data network, an application server or application function (e.g., AS / AF 112), a dedicated server in the core network, or the like. The signal flow of the method 1100 may include the establishment of the split rendering session or may be applied once the split rendering session has been established with the split rendering server. For example, at operation 0, a split rendering session has been established between the UE 1102, the RTC-AS 1104, the RTC-AF 1106, and the application provider 1108. Subsequent operations (operations 1-5) include an operation of monitoring the split rendering session (operation 1), provisioning another edge resource (e.g., a target split rendering server) upon detection of degradation in XR viewport quality (operation 2), provisioning a split rendering service via the target split rendering server in parallel with the split rendering service provisioned via the existing and / or source split rendering server (operation 3), relocating the split rendering session from the existing and / or source split rendering server to the new and / or target split rendering server (operation 4), and terminating provisioning of the split rendering session via the existing and / or source split rendering server, as needed (operation 5).

[0239] In some embodiments, in operation 1, the RTC-AF 1106 (which may include hardware or be virtualized on a hardware node (e.g., DN 116, SMF 110, etc.) continuously (or periodically) monitors the degradation of the separate rendering media session. When degradation (e.g., repeated degradation) of the quality of the rendered viewport, QoS metric, QoE metric, etc. is observed (e.g., within a predetermined time period), and / or when the severity of the degradation of the quality of the rendered viewport is sufficiently severe, the RTC-AF 1106 may indicate to the application provider 1108 that the current separate rendering session is threatened and that the separate rendering session needs to be relocated.

[0240] Then, the method 1100 may include the steps of provisioning and configuring a new split rendering session. In some embodiments, the same split as the new RTC-AF 1106 or a higher configuration rendered by the viewport of the UE 1102 may be used. In some embodiments, the final decision on the rendering split configuration is left to the application provider 1108.

[0241] In some embodiments, in step 2, the application provider 1108 requests and sets up (multiple) edge servers to be used for split rendering, for example, as described in 3GPP TS 26.506, the entire disclosure of which is hereby incorporated by reference in its entirety for all purposes. However, the application provider 1108 may use any other suitable method to provide edge server provisioning, or leave it to the mobile network operator (e.g., the home network currently serving the UE 1102 or the UE 1102) to set up appropriate edge servers to run the split rendering process.

[0242] In some embodiments, in step 3, application provider 1108 uses first RTC-AF 1108 and RTC-AS 1104 to provision a split rendering session and set up the split rendering session. If an edge server was provisioned in step 2, an edge server identifier may be provided in this split rendering session so that UE 1102 and application provider 1108 can consistently use the same edge server identifier during the provisioning of a new split rendering server for the split rendering session by RTC-AS 1104 and / or RTC-AF 1106. In step 4, the split rendering session is relocated to the new split rendering server. In step 5, once the relocation of the split rendering session to the new split rendering server is complete, RTC-AF 1106 notifies AP 1108 that the current SRS can be deprovisioned.

[0243] Now refer to Figure 15100 . The figure illustrates a signaling flow for a process 1200 of setting up a new split rendering service and / or session by a split rendering client 1206 (e.g., UE 102). As shown, process 1200 includes, at step 1, an RTC-AF 1212 indicating to an application provider 1214 that a split rendering session needs to and / or should be relocated to a new split rendering server 1210 based on a relocation trigger detected during monitoring of the quality of the rendered viewport from the current split rendering server 1208. The RTC-AF 1212 can be located at, hosted on, co-provisioned with, mapped to, and / or provided with another node or function in a communication network (such as 100). For example, the RTC-AF 1212 can be a logical function or software-defined function and / or functionality of a session management function (e.g., SFM 110) in a core network (e.g., CN 101), a data server (e.g., DN 116) in a data network, an application server or application function (e.g., AS / AF 112), a dedicated server in the core network, or the like. If not already completed, the method 1200 may include provisioning of a new split rendering server 1210. In some embodiments, updating to a different split rendering session configuration may be performed by changing these configurations or other settings and / or parameters in ongoing signaling to indicate that the split rendering session is to be relocated from the old split rendering server 1208 to the new split rendering server 1210, the split rendering client 1206 being in "relocation mode" with respect to the split rendering session, and populating relocation parameters.

[0244] At step 2 of process 1200 , the provisioning of a new separate rendering server 1210 is announced to the application 1202 as part of the service access information.

[0245] At step 3 , the application 1202 requests the client media function from the split rendering client 1106 to set up a new split rendering session.

[0246] At step 4 , the separate rendering client 1206 requests the current separate rendering server 1208 to transmit relevant configuration information and rendering parameters to the newly provisioned separate rendering server 1210 .

[0247] In some embodiments, additional steps (e.g., 5-8) can be performed by the new separate rendering server 1210 without sending the rendered frames back to the separate rendering client 1206. In some embodiments, negotiations regarding the relocation aspects of the separate rendering service and the transition from the current separate rendering server 1208 to the new separate rendering server 1210 can be resolved during the relocation.

[0248] For example, at step 5, the new separate rendering server 1210 starts the separate rendering process. At step 6, the new separate rendering server 1210 establishes a WebRTC session for the separate rendering client 1206 for separate rendering of the XR viewport.

[0249] At step 7 , the new separate rendering server 1210 notifies the application 1202 that the separate rendering has been successfully run on the edge resource (ie, the new separate rendering server 1210 ).

[0250] At step 8, the separate rendering client 1206 sends uplink metadata (such as pose information, action information, positioning information, etc.) to the new separate rendering server 1210. Additionally, in parallel, the separate rendering client 1206 sends uplink metadata (such as pose information, action information, positioning information, etc.) to the current separate rendering server 1208 in addition to sending the same uplink metadata to the new separate rendering server 1210.

[0251] In some embodiments, the gesture information, etc., is simply copied at the separate rendering client 1206, and one copy is sent to each of the current separate rendering server 1208 and the new separate rendering server 1210. Alternatively, the gesture information may be sent from the separate rendering client 1206 to only one of the current separate rendering server 1208 or the new separate rendering server 1210, and the receiving server (one of 1208 or 1210) forwards the same gesture information, etc., to the other server (the other of 1208 or 1210). Additionally or alternatively, the separate rendering client 1206 may provide the gesture information, etc. to another network-side entity, such as a network entity hosting the RTC-AF 1212 or the application provider 1214, which may be a data network (e.g., DN 116) or a session management function (e.g., SMF 110). In some embodiments, the separate rendering client 1206 is unable to detect or determine that a degradation in the quality of the rendered viewport is occurring. In some embodiments, the separate rendering client 1206 may be able to determine that a degradation in the quality of the rendered viewport is occurring, and the separate rendering client 1206 may be configured to initiate or request relocation of the separate rendering session or separate rendering service from the current separate rendering server 1208 to a new separate rendering server 1210. In some embodiments, the RTC-AF 1212 or the media session handler 1204 may receive an indication from another entity that a degradation in the quality of the rendered viewport has occurred (e.g., has occurred repeatedly over a particular time period, or has occurred so severely as to require relocation of the separate relocation service to a new separate relocation server).

[0252] Now refer to Figure 16According to one embodiment, a high-level call flow of a method 1300 for relocating a split rendering service is shown. In method 1300, operations 1-3 include establishing a split rendering session between a split rendering client 1302 and a new split rendering server 1304b in response to a degradation in the split rendering quality of a current split rendering server 1304a. For example, in operation 1 of method 1300, RTC-AF 1306 discovers the new split rendering server 1304b and establishes a connection therewith. RTC-AF 1306 may be located, hosted on, co-provisioned with, mapped to, and / or provided with another node or function of a communication network, such as 100. For example, RTC-AF 1306 may be a logical or software-defined function and / or functionality of a session management function (e.g., SFM 110) in a core network (e.g., CN 101), a data server (e.g., DN 116) in a data network, an application server or application function (e.g., AS / AF 112), a dedicated server in the core network, or the like. The new separate rendering server 1304b can then provide information about its rendering capabilities and XR runtime provisioning, for example, an OpenXR configuration can be used for this purpose. In some embodiments, this can be optional, such as when configuring the new separate rendering server 1304b to be the same server as the current separate rendering server 1304a.

[0253] In operation 2 of method 1300, in response to being provisioned for split rendering, the new split rendering server 1304b creates a description of the expected split rendering output and what input it expects to receive from the split rendering client 1302. This input and output information may be provided from the new split rendering server 1304b to the XR source management element of the split rendering client 1302.

[0254] In operation 3 of method 1300, the split rendering client 1302 may establish a transport connection, such as a WebRTC session, and request a buffered stream from the media access function (MAF) of the split rendering client 1302, which in turn establishes a connection with a new split rendering server 1304b to stream the pose and obtain the split rendering buffer.

[0255] Then, in operation 4-12, the detached rendering session relocation process begins.

[0256] In operation 4 of method 1300, RTC-AF 1306 negotiates a split rendering session relocation with the current split rendering server 1304a and the new split rendering server 1304b. In some embodiments, the result of this negotiation may be a future timestamp or a yet-to-be-received frame number, etc., from which the MAF of split rendering client 1302 will begin receiving buffered frames from the new split rendering server 1304b, and at which point the current split rendering server 1304a will stop sending buffered frames to the MAF of split rendering client 1302.

[0257] In operation 5 of method 1300, RTC-AF 1306 notifies the MAF of the split rendering client 1302, the current split rendering server 1304a, and the new split rendering server 1304b to start the split rendering session and / or server relocation process. RTC-AF 1306 may then indicate to the MAF of the split rendering client 1302, the current split rendering server 1304a, and the new split rendering server 1304b the time point or specific frame at which the relocation of the split rendering session and / or service will be triggered.

[0258] In operation 6 of method 1300 , rendering will then temporarily switch from the render loop to the render reposition loop, obtaining gestures and user input from the XR runtime 1301 via the XR source manager of the separate render client 1302 .

[0259] In operation 7 of method 1300 , the XR source manager of the split rendering client 1302 shares the pose predictions and the user input actions with the current split rendering server 1304 a and the new split rendering server 1304 b .

[0260] In operation 8 of method 1300 , both the current separate rendering server 1304 a and the new separate rendering server 1304 b render an XR viewport frame using the pose prediction and the user input action information.

[0261] In operation 9 of method 1300, the rendered XR viewport frame may be encoded and streamed downstream to the MAF of the separate rendering client 1302. In some embodiments, when a transition trigger is reached, the source of the frame changes from the current separate rendering server 1304a to the new separate rendering server 1304b. As described elsewhere, the transition trigger may be a transition timestamp (the point in time at which the transition of the active viewport rendering from the current separate rendering server 1304a to the new separate rendering server 1304b is signaled). Additionally or alternatively, the transition trigger may be based on a frame counter (the frame number at which the transition of the active viewport rendering from the current separate rendering server 1304a to the new separate rendering server 1304b occurs).

[0262] In operation 10 of method 1300 , the raw buffered frame is passed from the MAF of the separate rendering client 1302 to the XR runtime 1301 to be displayed to the user.

[0263] In operation 11 of method 1300 , the XR runtime 1301 implements final composition and rendering of the XR viewport based on the raw buffered frames passed from the MAF of the separate rendering client 1302 to the XR runtime 1301 .

[0264] In operation 12 of method 1300, once the transition has been completed in the rendering relocation loop, rendering will return to the rendering loop with the new separate rendering server 1304b being the only or primary rendering server. Thereafter, the relocation process ends by closing the established connection.

[0265] In operation 13 of method 1300 , the scene manager of the separate rendering client 1202 may then terminate the connection with the current separate rendering server 1304 a .

[0266] In some embodiments, when provisioning a split rendering session or a new split rendering server, the AF or split rendering client can indicate guidelines for provisioning the session. For example, before or when a split rendering session relocation is triggered, the ProvisioningSessionType can be set to "BIDIRECTIONAL." In some embodiments, an aspId can be configured, and this aspId can be a unique identifier for the application service provider used to provision split rendering. In some embodiments, the externalApplicationId can uniquely identify the application and can be terminated by the substring "+3gpp-sr," such as: "urn:com:example:game+3gpp-sr."

[0267] In some embodiments, edge resource configuration can be set, determined, and communicated between the split rendering server, application function, and split rendering client. For example, the split rendering application can define edge resource configuration in a manner similar to 3GPP TS26.512, Version 16.10.0 and Version 17.5.0, the entire disclosure of each version is incorporated herein by reference for all purposes. In some embodiments, edge resource configuration can be used for split rendering sessions. In some embodiments, eligibilityCriteria may be present and appRequest may be set to true. In some embodiments, easRequirements may indicate "SR" as easType and may include "3gpp-sr" in easFeatures. In some embodiments, serviceKpi may be present and indicate split rendering server processing and networking capabilities and requirements.

[0268] Now refer to Figure 17 , shows an example split rendering signaling protocol 1400, where both a split rendering client 1402 and a split rendering server 1404 support Simple WebRTC Application Protocol (SWAP). In some embodiments, SWAP allows for the definition of application-specific messages that can be used to establish a split rendering session, trigger relocation of a split rendering session, and handle negotiation of relocation between two different split rendering sessions.

[0269] Further details regarding the SWAP protocol are described in 3GPP TS 26.113 Version 0.6.0, the entire disclosure of which is hereby incorporated by reference in its entirety for all purposes. In some embodiments, the SWAP protocol may allow for the definition of application-specific messages, such as for establishing a split rendering session. For split rendering, application-specific messages supported according to method 1400 may include configuration messages that carry split rendering configuration information from the split rendering client 1402 to the split rendering server 1404. In some embodiments, such messages may be identified by the type "urn:3gpp:sr-mse:sr-configuration." In some embodiments, rendering description messages may be supported that convey a description of split rendering media from the split rendering server 1404 to the split rendering client 1402. In some embodiments, rendering description messages may be identified by the type "urn:3gpp:sr-mse:sr-description." In some embodiments, rendering description messages provide the semantics of the media delivered from the split rendering server 1404 to the split rendering client 1402 via WebRTC.

[0270] In some embodiments, SWAP message exchanges for establishment of a separate rendering session, such as Figure 17 As shown in the call flow diagram, some possible signaling and call flows are provided using or via the SWAP server 1406.

[0271] In some embodiments, the SWAP server 1406 may be or act as an RTC-AF (e.g., 1106, 1212, 1306). In some embodiments, the RTC-AF (e.g., 400) may be located at, hosted at, co-provisioned with, mapped to, and / or provided together with the SWAP server 1406. For example, the RTC-AF (e.g., 400) may be a logical function or software-defined function and / or function of the SWAP server 1406 in a core network (e.g., CN 101) such as a fifth generation core network (5GCN), as a data server (e.g., DN 116) in a data network, in a radio access network (e.g., (R)AN 104), as an application server or application function (e.g., AS / AF 112), and / or as a dedicated server of the core network, etc.

[0272] In some embodiments, possible prerequisites may include that the split rendering client 1302 has discovered the identifier of the split rendering server 1402 it will use for its split rendering session, that the split rendering client 1402 has obtained the address of the SWAP server 1406 as part of configuration, etc.

[0273] In some embodiments, the operations of method 1400 may include operation 1, in which the split rendering client 1402 sends a configuration message as an application-specific SWAP message to the SWAP server 1406. In some embodiments, the configuration message may provide an identifier indicating the target split rendering server 1404 as a matching criterion.

[0274] In operation 2 , the SWAP server 1406 may locate the separate rendering server 1404 using the provided matching criteria.

[0275] In operation 3 , the SWAP server 1406 may forward the configuration message to the target separate rendering server 1406 .

[0276] In operation 4 , the SWAP server 1406 confirms that the message has been successfully forwarded to the separate rendering client 1402 .

[0277] In operation 5, the separate rendering server 1404 processes the SR configuration message. In some embodiments, the separate rendering server 1404 may, for example, verify application and resource availability, launch the application, configure its rendering, and create a rendering description.

[0278] In operation 6, the separate rendering server 1404 sends a rendering description message to the SWAP server 1406 as an application-specific SWAP message.

[0279] In operation 7 , the SWAP server 1406 forwards the application-specific SWAP message to the separate rendering client 1402 .

[0280] In operation 8 , the SWAP server 1406 confirms to the separate rendering server 1404 that the application-specific SWAP message has been successfully forwarded to the separate rendering client 1402 .

[0281] In operation 9 , the separate rendering client 1402 processes the rendering description and identifies the required data channels and media sessions.

[0282] In operation 10, the separate rendering client 1402 sends a connect message with an SDP invite (offer) to the separate rendering server 1404. The SDP invite may reflect the negotiated media and data channel flows.

[0283] In operation 11 , the SWAP server 1406 confirms forwarding the connect message with the SDP invitation to the separate rendering server 1404 .

[0284] In operation 12, the separate rendering server 1404 replies to the SWAP server 1406 with an accept message including an SDP answer. The SDP answer reflects the information provided in the separate rendering description.

[0285] In operation 13 , the SWAP server 1406 confirms to the separate rendering server 1304 that the acceptance message will be forwarded to the separate rendering client 1402 .

[0286] In some embodiments, various such application-specific messages may be supported, such as messages that facilitate relocation negotiation between two split rendering sessions. For example, during a split rendering session transfer and / or relocation, such application-specific messages may include a Render Transfer Description message that carries a description of a session transfer to be performed from the current split rendering server 1404 to a new split rendering server (not shown). The Render Transfer Description message may be identified by the type "urn:3gpp:sr-mse:sr-transfer". The Render Transfer Description message may provide the semantics of the media to be delivered from the split rendering server 1404 to the split rendering client 1402 via WebRTC.

[0287] Now refer to Figure 18, a SWAP message exchange method 1500 for negotiation of split rendering session relocation can be performed as shown. In the illustrated method, various possible prerequisites for such negotiation and SWAP message exchange can include that the split rendering client 1502 has discovered an identifier of a new split rendering server 1504b, which will be used during the relocation of the split rendering session from the current split rendering server 1504a to the new split rendering server 1504b, and / or that the split rendering client 1502 has obtained the address of the SWAP server 1506 as part of the configuration.

[0288] like Figure 18 As shown, method 1500 includes operation 1, in which a split rendering client 1502 sends a configuration transfer message as an application-specific SWAP message to a SWAP server 1506. It provides identifiers of both the current split rendering server 1504a and the new split rendering server 1504b.

[0289] In operation 2 of method 1500 , the SWAP server 1506 uses the provided matching criteria to locate the current separate rendering server 1504 a and the new separate rendering server 1504 b .

[0290] In operation 3 of method 1500 , the SWAP server 1506 forwards the configuration transfer message to the current split rendering server 1504 a .

[0291] In operation 4 of method 1500 , the SWAP server 1506 confirms successful forwarding of the message to the separate rendering client 1502 .

[0292] In operation 5 of method 1500, the current separate rendering server 1504a processes the separate rendering session transfer configuration message and prepares the configuration message and runtime information to be sent to the new separate rendering server 1504b.

[0293] In operation 6 of method 1500, the current split rendering server 1504a sends a configuration message to the SWAP server 1506. The current split rendering server 1504a provides an identifier of a new split rendering server 1504b that is targeted for the relocation of the split rendering session.

[0294] In operation 7 of method 1500 , the SWAP server 1506 forwards the configuration message to the new separate rendering server 1504 b .

[0295] In operation 8 of method 1500 , the SWAP server 1506 confirms successful forwarding of the message to the new separate rendering server 1504 b .

[0296] In operation 9 of method 1500, the new separate rendering server 1504b processes the separate rendering session transfer configuration message. In some embodiments, the new separate rendering server 1504b may verify the availability of applications and resources, launch applications, configure their rendering, and / or create rendering descriptions.

[0297] In operation 10 of method 1500 , the new separate rendering server 1504 b sends a rendering description message to the SWAP server 1506 as an application-specific SWAP message.

[0298] In operation 11 of method 1500 , the SWAP server 1506 forwards the message to the separate rendering client 1502 .

[0299] In operation 12 of method 1500, the SWAP server 1506 confirms that the message has been successfully forwarded to the new separate rendering server 1504b.

[0300] In operation 13 of method 1500 , the new separate rendering server 1504 b processes the rendering description and identifies the required data channels and media sessions.

[0301] In operation 14 of method 1500, the split rendering client 1502 sends a connect message with an SDP invitation to the new split rendering server 1504b. The invitation reflects the negotiated media and data channel flows.

[0302] In operation 15 of method 1500, the SWAP server 1506 confirms forwarding the message to the new separate rendering server 1504b.

[0303] In operation 16 of method 1500, the new separate rendering server 1504b replies with an accept message including an SDP answer. The SDP answer reflects the information provided in the separate rendering description.

[0304] In operation 17 of method 1500 , the SWAP server 1506 confirms forwarding the message to the separate rendering client 1502 .

[0305] In some embodiments, session transfer configuration information (such as shown in Table 3 below, eg, in JSON format) may be used to identify and signal related split rendering session transfer and configuration information.

[0306] Table 3

[0307]

[0308] Now refer to Figure 19-23Various methods for monitoring QoE metrics and / or QoS metrics and seamlessly transferring split rendering sessions between separate rendering servers are described and illustrated. In some embodiments, CNA 200 and / or device 300 can be configured to perform some or all of the methods described herein. For example, in some embodiments, CNA 200 and / or device 300 can include components such as processors 202, 304, memories 204, 306, 308, communication interface 206, etc.

[0309] Now refer to Figure 19 The method 1600 may be performed by an apparatus (e.g., CNA 200 and / or apparatus 400), which may include components such as a processor (e.g., 202, 404), a memory device (e.g., 204, 406) storing computer program code (e.g., 408) for an RTC-AF (e.g., 400), and / or a communication interface (e.g., 206), wherein the computer program code (e.g., 408), when executed by the processor (e.g., 202, 404), causes the apparatus to at least perform, at 1601, monitoring, by a real-time communication (RTC) application function (RTC-AF) for a communication network, one or more metrics associated with a split rendering session provided by a current split rendering server during a time period. In some embodiments, at 1602, the method 1600 may further include determining, by the RTC-AF, to relocate the split rendering session from the current split rendering server to a new split rendering server based on one or more metrics exceeding a predetermined duration threshold during the time period, or a magnitude of one or more metrics exceeding one or more corresponding predetermined metric thresholds. In some embodiments, the apparatus configured to perform method 1600 may include computer program code for an RTC-AF and may also include computer code for a session management function (SMF) or another suitable element or function of a communications network. In some embodiments, the apparatus may be a data server in a data network (DN). In some embodiments, the apparatus may include a CNA 200, and the computer program code of the CNA 200 may include computer program code for an RTC-AF and computer program code for one or more of a policy control function (PCF), an access and mobility management function (AMF), an NSSF, an AUSF, an UDM, an NRF, and / or an UPF of a core network of the communications network.

[0310] Now refer to Figure 20The method 1700 may be performed by an apparatus (e.g., CNA 200 and / or apparatus 400), which may include components such as a processor (e.g., 202, 404), a memory device (e.g., 204, 406) storing computer program code or instructions (e.g., 408) for an RTC-AF (e.g., 400), and / or a communication interface, wherein the computer program code or instructions (e.g., 408), when executed by the processor (e.g., 202, 404), causes the apparatus to at least monitor one or more metrics associated with a split rendering session provided by a current split rendering server during a time period, at 1701. In some embodiments, the method 1700 may further include determining, by the RTC-AF, to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds, at 1702. In some embodiments, method 1700 may further include, at 1703, providing, by the RTC (RTC-AF), an instruction to relocate the split rendering session from the current split rendering server to the new split rendering server to one or more of the current split rendering server or the new split rendering server. In some embodiments, an apparatus configured to perform method 1700 may include computer program code or instructions for the RTC-AF and may also include computer code or instructions for a session management function (SMF). In some embodiments, the apparatus may be a data server in a data network (DN). In some embodiments, the apparatus may include a CNA 200, and the computer program code or instructions of the CNA 200 may include computer program code or instructions for the RTC-AF and computer program code or instructions for one or more of a policy control function (PCF), an access and mobility management function (AMF), an NSSF, an AUSF, an UDM, an NRF, and / or an UPF of a core network of the communications network. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0311] Now refer to Figure 21The method 1800 may be performed by an apparatus (e.g., CNA 200 and / or apparatus 400), which may include components such as a processor (e.g., 202, 404), a memory device (e.g., 204, 406) storing computer program code or instructions (e.g., 408), and / or a communication interface, and may at least cause an RTC-AF for a communication network (e.g., RTC-AF 400) to monitor, during a time period, one or more metrics associated with a split rendering session provided by a current split rendering server (at 1801). In some embodiments, the method 1800 may further include, at 1802, determining, by the RTC-AF, to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds. In some embodiments, method 1800 may further include, at 1803, providing, by the RTC-AF, an indication to one or more of the current separate rendering server or the new separate rendering server to relocate the split rendering session from the current separate rendering server to the new separate rendering server. In some embodiments, method 1800 may further include, at 1804, requesting, by the RTC-AF, establishment of a new WebRTC session between the new separate rendering server and the RTC-AF. In some embodiments, method 1800 may optionally further include, at 1805, providing an indication to the split rendering client that the relocation process has been initiated. In some embodiments, method 1800 may optionally further include, at 1806, providing a request to the split rendering client to provide subsequent gesture information and user input information to both the current separate rendering server and the new separate rendering server. In some embodiments, an apparatus configured to perform method 1800 may include computer program code or instructions for RTC-AF and may further include computer code for a session management function (SMF) or another suitable element or network function of a communication network. In some embodiments, the apparatus may be a data server in a data network (DN). In some embodiments, the apparatus may include CNA 200, and the computer program code or instructions of CNA 200 may include computer program code or instructions for RTC-AF and computer program code or instructions for one or more of a policy control function (PCF), an access and mobility management function (AMF), an NSSF, an AUSF, an UDM, an NRF, and / or an UPF of a core network of the communication network.In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0312] Now refer to Figure 22The method 1900 may be performed by an apparatus (e.g., CNA 200 and / or apparatus 400), which may include components such as a processor (e.g., 202, 404), a memory device (e.g., 204, 406) storing computer program code (e.g., 408) for an RTC-AF (e.g., 400), and / or a communication interface, which, when executed by the processor, may cause the apparatus to at least perform, by a real-time communication application function (RTC-AF) in a communication network, determining to relocate a split rendering session from a current split rendering server to a new split rendering server (at 1901) based on a duration of occurrences during a time period exceeding a predetermined duration threshold or a magnitude of one or more metrics exceeding one or more corresponding predetermined metric thresholds during the time period. In some embodiments, the method 1900 may further include, at 1902, providing, by the RTC-AF, an indication to relocate the split rendering session from the current split rendering server to the new split rendering server to one or more of the current split rendering server or the new split rendering server. In some embodiments, method 1900 may further include, at 1903, providing a request to the split rendering client to provide subsequent gesture information and user input information to both the current split rendering server and the new split rendering server. In some embodiments, method 1900 may further include, at 1904, requesting the new split rendering server to perform at least a portion of the XR media content rendering for the split rendering session. In some embodiments, method 1900 may further include, at 1905, sending a request by RTC-AF to one of the current split rendering server or the new split rendering server to indicate to the split rendering client that the split rendering session will be relocated from the current split rendering server to the new split rendering server. In some embodiments, an apparatus configured to perform method 1900 may include computer program code or instructions for RTC-AF, and may further include computer code or instructions for a session management function (SMF). In some embodiments, the apparatus may be a data server in a data network (DN). In some embodiments, the apparatus may include a CNA 200, and the computer program code or instructions of the CNA 200 may include computer program code or instructions for the RTC-AF and computer program code or instructions for one or more of a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, and / or UPF of a core network of the communication network. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), an access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0313] Now refer to Figure 23The method 2000 may be performed by an apparatus (e.g., CNA 200 and / or apparatus 400), which may include components such as a processor (e.g., 202, 404), a memory device (e.g., 204, 406) storing computer program code (e.g., 408) for an RTC-AF (e.g., 400), and / or a communication interface, which may cause at least a real-time communication application function (RTC-AF) for a communication network to monitor one or more metrics associated with a split rendering session provided by a current split rendering server during a time period (at 2001). In some embodiments, the method 2000 may further include, at 2002, determining by the RTC-AF to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence during the time period exceeding a predetermined duration threshold, or a magnitude of one or more metrics exceeding one or more corresponding predetermined metric thresholds. In some embodiments, method 2000 may further include, at 2003, providing, by the RTC-AF, an indication to one or more of the current separate rendering server or the new separate rendering server, to relocate the separate rendering session from the current separate rendering server to the new separate rendering server. In some embodiments, method 2000 may further include, at 2004, requesting, by the RTC-AF, to establish a new WebRTC session between the new separate rendering server and the RTC-AF. In some embodiments, method 2000 may further include, at 2005, providing a request to the separate rendering client to provide subsequent gesture information and user input information to both the current separate rendering server and the new separate rendering server. In some embodiments, method 2000 may further include, at 2006, sending, by the RTC-AF, a request to one of the current separate rendering server or the new separate rendering server, to indicate to the separate rendering client that the separate rendering session will be relocated from the current separate rendering server to the new separate rendering server. In some embodiments, the method 2000 may further include, at 2007, receiving, at the RTC-AF, first XR media content for a first viewport associated with the XR media content stream from the current separate rendering server. In some embodiments, the method 2000 may further include, at 2008, receiving, at the RTC-AF, second XR media content for the first viewport associated with the XR media content stream from the new separate rendering server. In some embodiments, the method 2000 may further include, at 2009, determining to relocate the separate rendering session from the current separate rendering server to the new separate rendering server based on the first XR media content and the second XR media content.In some embodiments, the apparatus configured to perform method 2000 may include computer program code for RTC-AF and computer program code for a session management function (SMF) or other suitable network node or element (commonly referred to as a network element) of the network, at which the RTC-AF may be co-located. In some embodiments, the RTC-AF may be an independent entity or co-located with other functional entities in the communication network, such as an application server (AS), NEF, PCF, UPF, etc. The RTC-AF may be co-located with the AS to directly integrate application-level services with the network and facilitate real-time communication services. In some embodiments, the RTC-AF may be co-located with the NEF to enable secure opening of AF services and capabilities to third-party applications and services. In some embodiments, the RTC-AF may be co-located with the PCF to simplify the interaction between application functions and policy control mechanisms. In some embodiments, the RTC-AF may be co-located with the UPF, which may help optimize user plane traffic routing for real-time communication services.

[0314] Network Open Function (NEF)

[0315] In some embodiments, the apparatus may be a data server in a data network (DN). In some embodiments, the apparatus may include CNA 200, and the computer program code may include computer program code for RTC-AF and computer program code for one or more of a policy control function (PCF), access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, and / or UPF of a core network of a communication network. In some embodiments, the RTC-AF may be hosted in a session management function (SMF), a data server in a data network (DN), a policy control function (PCF), access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, UPF, etc.

[0316] Now refer to Figure 24The method 2100 may be performed by an apparatus (e.g., CNA 200 and / or apparatus 400), which may include components such as a processor (e.g., 202, 404), a memory device (e.g., 204, 406) storing computer program code or instructions (e.g., 408) for RTC-AF (e.g., 400), and / or a communication interface, wherein the computer program code or instructions (e.g., 408), when executed by the processor (e.g., 202, 404), causes the apparatus to monitor one or more metrics associated with a split rendering session provided by a current split rendering server (at 2101) during at least a period of time. In some embodiments, the method 2100 may further include, at 2102, providing an indication to an application provider (AP) in the communication network that the split rendering session is to be relocated from the current split rendering server to a new split rendering server. In some embodiments, method 2100 may further include, at 2103, determining by the RTC-AF that the AP has enabled a new separate rendering server to execute at least a portion of the provisioning of XR media content rendering for the separate rendering session. In some embodiments, method 2100 may further include, at 2104, providing by the RTC-AF to the AP an indication that the current separate rendering server will be deprovisioned. In some embodiments, method 2100 may be performed by an apparatus (such as RTC-AF 402) comprising computer program code for the RTC-AF and computer program code for a session management function (SMF). In some embodiments, the apparatus may be a data server in a data network (DN). In some embodiments, the apparatus may be or include CNA 200, and the computer program code or instructions may include computer program code or instructions for the RTC-AF (e.g., 402) and computer program code or instructions for one or more of a policy control function (PCF), access and mobility management function (AMF), NSSF, AUSF, UDM, NRF, or UPF in a core network of the communication network, as well as other network elements or functions.

[0317] As mentioned above, Figure 19-24It is a flowchart of a method that can be performed by an apparatus according to a related computer program product including computer program code. It should be understood that each block of the flowchart and the combination of blocks in the flowchart can be implemented by various components, such as hardware, firmware, a processor (e.g., 202, 304, 404), a circuit system and / or other devices associated with executing software including one or more computer program instructions. For example, the above-mentioned one or more processes can be embodied by computer program instructions. In this regard, the computer program instructions embodying the above-mentioned processes can be stored by a memory device (e.g., 204, 306, 308, 406) of an apparatus (e.g., 200, 300, 400) employing an embodiment of the present disclosure and executed by the processing circuit system (e.g., 202, 304, 404) of the apparatus. As will be understood, any such computer program instructions can be loaded onto a computer or other programmable device (e.g., hardware) to produce a machine so that the generated computer or other programmable device implements the functions specified in the flowchart blocks. These computer program instructions may also be stored in a computer-readable memory that can instruct a computer or other programmable apparatus to operate in a specific manner such that the instructions stored in the computer-readable memory produce an article of manufacture, the execution of which implements the functions 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 executed on the computer or other programmable apparatus provide operations for implementing the functions specified in the flowchart blocks.

[0318] Therefore, a computer program product is defined as one in which computer program instructions (such as computer readable program code portions) are stored by at least one non-transitory computer readable storage medium, the computer program instructions (such as computer readable program code portions) being configured to perform the functions described above when executed, such as in conjunction with at least one Figure 19-24 In other embodiments, the computer program instructions (such as computer readable program code portions) need not be stored or otherwise embodied by a non-transitory computer readable storage medium, but may be embodied by a transitory medium, wherein the computer program instructions (such as computer readable program code portions) when executed are still configured to perform the functions described above.

[0319] Therefore, the blocks of the flowchart support a combination of components for performing the specified functions and a combination of operations for performing the specified functions. It should also be understood that one or more blocks of the flowchart and a combination of blocks in the flowchart can be implemented by a dedicated hardware computer system that performs the specified functions or a combination of dedicated hardware and computer instructions.

[0320] In some embodiments, some of the above operations may be modified or further amplified. In addition, in some embodiments, additional optional operations may be included. The modification, addition or amplification of the above operations may be performed in any order and in any combination.

[0321] Those skilled in the art will appreciate many modifications and other embodiments of the invention described herein after having benefited from the teachings presented in the foregoing description and the associated drawings. Therefore, it should be understood that the invention is not limited to the specific embodiments disclosed, and modifications and other embodiments are intended to be included within the scope of the appended claims. In addition, although the foregoing description and the associated drawings describe example embodiments in the context of certain example combinations of elements and / or functions, it should be understood that different combinations of elements and / or functions can be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, combinations different from the elements and / or functions explicitly described above are also envisioned, as may be described in some of the appended claims. Although specific terms are employed herein, they are used only in a general and descriptive sense, and not for limiting purposes. Any application, publication, technical documentation, etc. cited in this disclosure are hereby incorporated herein by reference in their entirety for all purposes.

[0322] In general, 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 generally includes computer-readable instructions that reside at various times in various memory devices (e.g., 204, 306, 308, 404) and storage devices in a computer, and which, when read and executed by one or more processors (e.g., 202, 302, 402) in a computer, cause the computer to perform the operations and / or elements required to embody various aspects of the embodiments of the present disclosure. The computer-readable program instructions for performing the operations of the embodiments of the present invention may be, for example, source code or object code written in assembly language or in any combination of one or more programming languages.

[0323] In some alternative embodiments, the functions and / or actions specified in the flow chart, sequence diagram and / or block diagram can be reordered, serially processed and / or concurrently processed without departing from the scope of the present invention. In addition, any flow chart, sequence diagram and / or block diagram can include more or less blocks than the blocks shown in accordance with embodiments of the present invention.

[0324] The terms used herein are for the purpose of describing specific embodiments only and are not intended to limit the embodiments of the present disclosure. It should also be understood that when the terms "comprise" and / or "comprising" are used in this specification, the presence of the features, integers, steps, operations, elements and / or components is specified, but the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof is not excluded. In addition, to the extent that the terms "include," "having," "has," "with," "consisting of," or variations thereof are used in the detailed description or claims, these terms are intended to be inclusive in a manner similar to the term "comprising."

[0325] While the invention has been illustrated by the description of various embodiments, and these embodiments have been described in considerable detail, it is not the intention of the applicant to restrict or in any way limit the scope of the appended claims to such detail. Additional advantages and modifications will be readily apparent to those skilled in the art. Therefore, the invention in its broader aspects is not limited to the specific details, representative apparatus and methods, and illustrative examples shown and described. Accordingly, departures may be made from such details without departing from the spirit or scope of the applicant's general inventive concept.

Claims

1. A method for a real-time communication application function (RTC-AF) of a communication network, the method comprising: monitoring, during a time period, one or more metrics associated with a split rendering session provided by a current split rendering server, wherein the separate rendering session is associated with an extended reality (XR) media content stream provided by the current separate rendering server to a separate rendering client via the communication network, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the current separate rendering server, or a metric associated with the XR media content stream, determining to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds; as well as An indication to relocate the split rendering session from the current split rendering server to the new split rendering server is provided to one or more of: the current split rendering server, or the new split rendering server.

2. The method of claim 1, wherein the QoS metric is selected from the group consisting of packet loss rate, bit rate, bandwidth, delay, delay variance, throughput, transmission delay, availability, and jitter.

3. The method according to claim 1, further comprising: Managing a new WebRTC session established between the split rendering client and the new split rendering server.

4. The method according to claim 1, further comprising: An indication is provided to the separate rendering client that a relocation process has been initiated.

5. The method according to claim 4, further comprising: A request is provided to the separate rendering client to provide subsequent gesture information and user input information to both the current separate rendering server and the new separate rendering server.

6. The method according to claim 1, further comprising: The RTC-AF sends a request to one of the current separate rendering server or the new separate rendering server to send an indication to the separate rendering client that the separate rendering session will be relocated from the current separate rendering server to the new separate rendering server.

7. The method according to claim 1, further comprising: receiving, from the current separate rendering server, first XR media content for a first viewport associated with the XR media content stream; receiving, from the new separate rendering server, second XR media content for the first viewport associated with the XR media content stream; as well as Based on the first XR media content and the second XR media content, determining to relocate the split rendering session from the current split rendering server to the new split rendering server.

8. The method according to claim 1, further comprising: An indication is provided to an application provider (AP) in the communication network that the split rendering session is to be relocated from the current split rendering server to the new split rendering server.

9. The method according to claim 8, further comprising: The new separate rendering server is requested to perform at least a portion of the XR media content rendering for the separate rendering session.

10. The method according to claim 8, further comprising: determining that the AP has caused the current separate rendering server to perform at least the portion of the XR media content rendering for the separate rendering session; as well as An indication is provided to the AP that the current separate rendering server is to be de-provisioned.

11. The method according to claim 1, further comprising: Determining one or more characteristics of the current separate rendering server and the new separate rendering server; determining a time for completion of relocation of the split rendering session from the current split rendering server to the new split rendering server based at least on the one or more characteristics of the current split rendering server and the new split rendering server; as well as An indication is sent to the current separate rendering server and the new separate rendering server regarding the new separate rendering server relocating the separate rendering session from the current separate rendering server to the new separate rendering server before the time of completion of the relocation of the separate rendering session.

12. The method of claim 11, wherein sending the indication comprises: Sending an indication of the time at which repositioning of the separate rendering session is completed relative to the XR runtime or relative to a repositioning frame identifier, wherein the repositioning frame identifier indicates a specific frame from a sequence of frames in the XR media content stream before which the repositioning of the separate rendering session is to be completed.

13. An apparatus for a communication network, the apparatus comprising: at least one processor; as well as at least one memory for storing instructions of a real-time communication application function (RTC-AF), wherein the instructions, when executed by the at least one processor, cause the apparatus to at least perform: monitoring, during a time period, one or more metrics associated with a split rendering session provided by a current split rendering server, wherein the separate rendering session is associated with an extended reality (XR) media content stream provided by the current separate rendering server to a separate rendering client via the communication network, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the current separate rendering server, or a metric associated with the XR media content stream, determining to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds; as well as An indication to relocate the split rendering session from the current split rendering server to the new split rendering server is provided to one or more of: the current split rendering server, or the new split rendering server.

14. The apparatus of claim 13, wherein the QoS metric is selected from: packet loss rate, bit rate, bandwidth, delay, delay variance, throughput, transmission delay, availability, or jitter.

15. The apparatus of claim 13, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: Managing a new WebRTC session established between the split rendering client and the new split rendering server.

16. The apparatus of claim 13, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: An indication is provided to the separate rendering client that a relocation process has been initiated.

17. The apparatus of claim 16, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: A request is provided to the separate rendering client to provide subsequent gesture information and user input information to both the current separate rendering server and the new separate rendering server.

18. The apparatus of claim 13, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: A request is sent to one of the current separate rendering server or the new separate rendering server to send an indication to the separate rendering client that the separate rendering session is to be relocated from the current separate rendering server to the new separate rendering server.

19. The apparatus of claim 13, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: receiving, from the current separate rendering server, first XR media content for a first viewport associated with the XR media content stream; receiving, from the new separate rendering server, second XR media content for the first viewport associated with the XR media content stream; and Based on the first XR media content and the second XR media content, determining to relocate the split rendering session from the current split rendering server to the new split rendering server.

20. The apparatus of claim 13, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: An indication is provided to an application provider (AP) in the communication network that the split rendering session is to be relocated from the current split rendering server to the new split rendering server.

21. The apparatus of claim 20, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: The new separate rendering server is requested to perform at least a portion of the XR media content rendering for the separate rendering session.

22. The apparatus of claim 20, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: determining that the AP has caused the current separate rendering server to perform at least the portion of the XR media content rendering for the separate rendering session; and An indication is provided to the AP that the current separate rendering server is to be de-provisioned.

23. The apparatus of claim 13, wherein the instructions stored on the at least one memory, when executed by the at least one processor, further cause the apparatus to perform: Determining one or more characteristics of the current separate rendering server and the new separate rendering server; determining a time for completion of relocation of the split rendering session from the current split rendering server to the new split rendering server based at least on the one or more characteristics of the current split rendering server and the new split rendering server; and An indication is sent to the current separate rendering server and the new separate rendering server regarding the new separate rendering server relocating the separate rendering session from the current separate rendering server to the new separate rendering server before the time of completion of the relocation of the separate rendering session.

24. The apparatus of claim 23, wherein sending the indication comprises: Sending an indication of the time at which repositioning of the separate rendering session is completed relative to the XR runtime or relative to a repositioning frame identifier, wherein the repositioning frame identifier indicates a specific frame from a sequence of frames in the XR media content stream before which the repositioning of the separate rendering session is to be completed.

25. A computer readable medium comprising instructions which, when executed by at least one processor of a device, cause the device to perform the method according to any one of claims 1 to 12.

26. A computer program comprising instructions, wherein when the computer program is executed by at least one processor of a device, the device is caused to perform the method according to any one of claims 1 to 12.

27. An apparatus for communication, comprising: Real-time communication application functions (RTC-AF) for communication networks, including: means for monitoring one or more metrics associated with a split rendering session provided by a current split rendering server during a time period, wherein the separate rendering session is associated with an extended reality (XR) media content stream provided by the current separate rendering server to a separate rendering client via the communication network, wherein the one or more metrics include one or more of the following: a quality of service (QoS) metric, a quality of experience (QoE) metric, a key performance indicator (KPI) for the current separate rendering server, or a metric associated with the XR media content stream, means for determining to relocate the split rendering session from the current split rendering server to a new split rendering server based on a duration of occurrence of the one or more metrics during the time period exceeding a predetermined duration threshold, or a magnitude of the one or more metrics exceeding one or more corresponding predetermined metric thresholds; and Means for providing an indication to relocate the split rendering session from the current split rendering server to the new split rendering server to one or more of: the current split rendering server, or the new split rendering server.

28. The apparatus of claim 27, wherein the QoS metric is selected from: packet loss rate, bit rate, bandwidth, delay, delay variance, throughput, transmission delay, availability, or jitter.

29. The apparatus of claim 27, wherein the RTC-AF further comprises: A component for managing a new WebRTC session established between the split rendering client and the new split rendering server.

30. The apparatus of claim 27, wherein the RTC-AF further comprises: Means for providing an indication to the separate rendering client that a relocation process has been initiated.

31. The apparatus of claim 30, wherein the RTC-AF further comprises: Means for providing a request to the separate rendering client to provide subsequent gesture information and user input information to both the current separate rendering server and the new separate rendering server.

32. The apparatus of claim 27, wherein the RTC-AF further comprises: Means for sending a request to one of the current separate rendering server or the new separate rendering server to send an indication to the separate rendering client that the separate rendering session is to be relocated from the current separate rendering server to the new separate rendering server.

33. The apparatus of claim 27, wherein the RTC-AF further comprises: means for receiving, from the current separate rendering server, first XR media content for a first viewport associated with the XR media content stream; means for receiving, from the new separate rendering server, second XR media content for the first viewport associated with the XR media content stream; as well as Means for determining to relocate the split rendering session from the current split rendering server to the new split rendering server based on the first XR media content and the second XR media content.

34. The apparatus of claim 27, wherein the RTC-AF further comprises: Means for providing an indication to an application provider (AP) in the communication network that the split rendering session is to be relocated from the current split rendering server to the new split rendering server.

35. The apparatus of claim 34, wherein the RTC-AF further comprises: Means for requesting the new separate rendering server to perform at least a portion of XR media content rendering for the separate rendering session.

36. The apparatus of claim 34, wherein the RTC-AF further comprises: means for determining that the AP has caused the current separate rendering server to perform at least the portion of the XR media content rendering for the separate rendering session; as well as Means for providing an indication to the AP that the current separate rendering server is to be de-provisioned.

37. The apparatus of claim 27, wherein the RTC-AF further comprises: means for determining one or more characteristics of the current separate rendering server and the new separate rendering server; means for determining a time for completion of relocation of the split rendering session from the current split rendering server to the new split rendering server based at least on the one or more characteristics of the current split rendering server and the new split rendering server; as well as Means for sending an indication to the current separate rendering server and the new separate rendering server regarding the new separate rendering server relocating the separate rendering session from the current separate rendering server to the new separate rendering server before the time of completion of the relocation of the separate rendering session.

38. The apparatus of claim 37, wherein the means for sending the indication comprises: A component for sending an indication of the time at which repositioning of the separate rendering session is completed relative to the XR runtime or relative to a repositioning frame identifier, wherein the repositioning frame identifier indicates a specific frame from a sequence of frames in the XR media content stream before which the repositioning of the separate rendering session is to be completed.