Method and apparatus for discovering split rendering server in wireless communication system
The SWAP protocol addresses the challenge of discovering and connecting split rendering servers in wireless communication systems by using a server to match clients with suitable servers based on criteria like latency and bandwidth, enhancing service quality and performance for real-time rendering applications.
Patent Information
- Application Number
- PCT/KR2024/003613
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-26
- Filing Date
- 2024-03-22
- Publication Date
- 2025-01-30
AI Technical Summary
In wireless communication systems, particularly in 5G and beyond, there is a need to effectively discover and connect split rendering servers to enhance rendering service performance, especially in scenarios requiring high-quality, real-time communication and rendering services such as augmented and virtual reality, where existing methods lack efficient protocols for matching clients with suitable servers based on specific criteria.
The implementation of the SWAP (Simple WebRTC Application Protocol) method, which involves a server acting as a transceiver to receive connection requests from split rendering clients, determine the appropriate split rendering server based on matching criteria including priority information, and facilitate the connection by delivering the request message to the determined server, thereby improving service quality by ensuring optimal server selection.
This approach enhances the quality of service by ensuring that split rendering clients are connected to the most suitable servers, meeting specific conditions such as latency, bandwidth, and service requirements, thereby improving the overall performance and efficiency of rendering services in wireless communication systems.
Smart Images

Figure KR2024003613_30012025_PF_FP_ABST
Abstract
Description
Method and device for discovering a split rendering server in a wireless communication system
[0001] The present technology relates to a method and device for discovering a split rendering server in a wireless communication system.
[0002] 5G mobile communication technology defines a wide frequency band to enable fast transmission speeds and new services, and can be implemented not only in the sub-6GHz frequency band such as 3.5 gigahertz (3.5GHz), but also in the ultra-high frequency band called millimeter wave (mmWave) such as 28GHz and 39GHz ('Above 6GHz'). In addition, for 6G mobile communication technology, which is called the system after 5G communication (Beyond 5G), implementation in the terahertz band (for example, the 3 terahertz (3THz) band at 95GHz) is being considered to achieve a transmission speed that is 50 times faster than 5G mobile communication technology and an ultra-low latency time that is reduced to one-tenth.
[0003] In the early stages of 5G mobile communication technology, the goal is to support services and satisfy performance requirements for enhanced Mobile Broadband (eMBB), Ultra-Reliable Low-Latency Communications (URLLC), and massive Machine-Type Communications (mMTC). These include beamforming and massive MIMO to mitigate path loss of radio waves in ultra-high frequency bands and increase the transmission distance of radio waves, support for various numerologies (such as operation of multiple subcarrier intervals) and dynamic operation of slot formats for efficient use of ultra-high frequency resources, initial access technology to support multi-beam transmission and wideband, definition and operation of BWP (Bidth Part), new channel coding methods such as LDPC (Low Density Parity Check) codes for large-capacity data transmission and Polar Code for reliable transmission of control information, and L2 pre-processing (L2). Standardization has been made for network slicing, which provides dedicated networks specialized for specific services, and pre-processing.
[0004] Currently, discussions are underway to improve and enhance the initial 5G mobile communication technology in consideration of the services that 5G mobile communication technology was intended to support, and physical layer standardization is in progress for technologies such as V2X (Vehicle-to-Everything) to help autonomous vehicles make driving decisions and increase user convenience based on their own location and status information transmitted by vehicles, NR-U (New Radio Unlicensed) for the purpose of system operation that complies with various regulatory requirements in unlicensed bands, NR terminal low power consumption technology (UE Power Saving), Non-Terrestrial Network (NTN), which is direct terminal-satellite communication to secure coverage in areas where communication with terrestrial networks is impossible, and Positioning.
[0005] In addition, standardization of wireless interface architecture / protocols is in progress for technologies such as intelligent factories (Industrial Internet of Things, IIoT) to support new services through linkage and convergence with other industries, Integrated Access and Backhaul (IAB) that provides nodes for expanding network service areas by integrating wireless backhaul links and access links, Mobility Enhancement technology including Conditional Handover and Dual Active Protocol Stack (DAPS) handover, and 2-step random access (2-step RACH for NR) that simplifies random access procedures. Standardization is also in progress for system architecture / services such as 5G baseline architecture (e.g., Service-based Architecture, Service-based Interface) for grafting Network Functions Virtualization (NFV) and Software-Defined Networking (SDN) technologies, and Mobile Edge Computing (MEC) that provides services based on the location of the terminal.
[0006] Once these 5G mobile communication systems are commercialized, an explosive increase in connected devices will be connected to the communication network, necessitating enhanced functionality and performance of 5G mobile communication systems and integrated operation of these connected devices. To this end, new research will be conducted on improving 5G performance and reducing complexity, supporting AI services, supporting metaverse services, and drone communications by utilizing eXtended Reality (XR), Artificial Intelligence (AI), and Machine Learning (ML) to efficiently support Augmented Reality (AR), Virtual Reality (VR), and Mixed Reality (MR).
[0007] In addition, the development of these 5G mobile communication systems includes new waveforms to ensure coverage in the terahertz band of 6G mobile communication technology, multi-antenna transmission technologies such as Full Dimensional MIMO (FD-MIMO), Array Antenna, and Large Scale Antenna, metamaterial-based lenses and antennas to improve the coverage of terahertz band signals, high-dimensional spatial multiplexing technology using Orbital Angular Momentum (OAM), Reconfigurable Intelligent Surface (RIS) technology, as well as full duplex technology to improve the frequency efficiency and system network of 6G mobile communication technology, satellite, AI (Artificial Intelligence) from the design stage and AI-based communication technology that realizes system optimization by internalizing end-to-end AI support functions, and ultra-high-performance communication and computing resources to provide services with complexity that exceeds the limits of terminal computing capabilities. It can serve as a basis for the development of next-generation distributed computing technologies that can be realized by utilizing them.
[0008] As described above and with the development of mobile communication systems, various services have become available, and methods for effectively providing these services are required.
[0009] The disclosed embodiment is intended to provide a method and device capable of effectively discovering a split rendering server in a wireless communication system and improving the performance of a split rendering service.
[0010] According to one embodiment of the present disclosure, a method of a SWAP (simple webRTC (real-time communication) application protocol) server in a wireless communication system includes the steps of: receiving a connection request message from a split rendering client (SRC); determining a split rendering server (SRS) to be connected to the SRC based on first matching-criteria information included in the connection request message; and transmitting the connection request message to the determined SRS, wherein the first matching-criteria information includes priority information for at least one condition for determining the SRS.
[0011] According to one embodiment of the present disclosure, a method of a split rendering client (SRC) in a wireless communication system comprises the steps of: transmitting a connection request message to a SWAP (simple webRTC (real-time communication) application protocol) server; receiving a connection acceptance message from a split rendering server (SRS) determined based on first matching-criteria information included in the connection request message through the SWAP server; and wherein the first matching-criteria information includes priority information for at least one condition for determining the SRS.
[0012] In a wireless communication system according to one embodiment of the present disclosure, a SWAP (simple webRTC (real-time communication) application protocol) server includes a transceiver; and at least one processor, wherein the at least one processor is configured to receive a connection request message from a split rendering client (SRC), determine a split rendering server (SRS) to be connected to the SRC based on first matching-criteria information included in the connection request message, and transmit the connection request message to the determined SRS, wherein the first matching-criteria information includes priority information for at least one condition for determining the SRS.
[0013] According to one embodiment of the present disclosure, a split rendering client (SRC) in a wireless communication system includes a transceiver; and at least one processor, wherein the at least one processor is configured to transmit a connection request message to a SWAP (simple webRTC (real-time communication) application protocol) server, and receive a connection acceptance message from a split rendering server (SRS) determined based on first matching-criteria information included in the connection request message through the SWAP server, wherein the first matching-criteria information includes priority information for at least one condition for determining the SRS.
[0014] The present disclosure can improve service quality by specifying information related to matching between a split rendering client and a split rendering server.
[0015] Figure 1 is a diagram illustrating a communication method between network nodes for a split rendering service.
[0016] Figure 2 is a diagram illustrating a communication method between network nodes for a split rendering service.
[0017] Figure 3 is a diagram illustrating the operation of a SWAP (simple webRTC (real-time communications) application protocol) server in communication between network nodes for a split rendering service.
[0018] Figure 4 is a diagram illustrating messages related to registration and connection to a split rendering service.
[0019] FIG. 5 is a diagram illustrating a registration and connection procedure for a split rendering service according to one embodiment of the present disclosure.
[0020] FIG. 6 is a diagram illustrating a registration and connection procedure for a split rendering service according to one embodiment of the present disclosure.
[0021] FIG. 7 is a diagram illustrating a registration and connection procedure for a split rendering service according to one embodiment of the present disclosure.
[0022] FIG. 8 illustrates the operation of a SWAP server according to one embodiment of the present disclosure.
[0023] FIG. 9 illustrates a structural diagram of a network node according to one embodiment of the present disclosure.
[0024] The operating principles of the present invention will be described in detail below with reference to the attached drawings. In the following description of the present invention, detailed descriptions of known functions or components will be omitted if they are deemed to unnecessarily obscure the gist of the invention. Furthermore, the terms described below are defined based on their functions in the present invention and may vary depending on the intentions or practices of the user or operator. Therefore, their definitions should be based on the overall content of this specification.
[0025] In this disclosure, phrases such as "A / B", "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can each include any one of the items listed together in that phrase, or all possible combinations thereof. Terms such as "first", "second", or "first" or "second" may be used merely to distinguish the corresponding component from other corresponding components and do not limit the corresponding components in any other respect (e.g., importance or order).
[0026] The terms used in the following description to identify connection nodes, terms referring to network entities, terms referring to messages, terms referring to interfaces between network entities, and terms referring to various identification information are provided for convenience of explanation. Therefore, the present invention is not limited to the terms described below, and other terms referring to objects with equivalent technical meanings may be used.
[0027] Hereinafter, the base station is an entity that performs resource allocation of the terminal, and may be at least one of a gNode B, an eNode B, a Node B, a BS (Base Station), a wireless access unit, a base station controller, or a node on a network. The terminal may include a UE (User Equipment), an MS (Mobile Station), a cellular phone, a smartphone, a computer, or a multimedia system capable of performing a communication function. In the present disclosure, downlink (DL) refers to a wireless transmission path of a signal transmitted from a base station to a terminal, and uplink (UL) refers to a wireless transmission path of a signal transmitted from a terminal to a base station. In addition, although the LTE or LTE-A system may be described below as an example, the embodiments of the present disclosure may also be applied to other communication systems having similar technical backgrounds or channel types. For example, the 5th generation mobile communication technology (5G, new radio, NR) developed after LTE-A may be included in a system to which the embodiments of the present disclosure may be applied, and 5G below may also be a concept that includes existing LTE, LTE-A, and other similar services.
[0028] Furthermore, the present disclosure may be applied to other communication systems with some modifications, as determined by a person skilled in the art, without significantly departing from the scope of the present disclosure. It will be appreciated that each block of the processing flow diagrams and combinations of the flow diagrams can be executed by computer program instructions.
[0029] These computer program instructions may be installed in a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus, so that the instructions executed by the processor of the computer or other programmable data processing apparatus create means for performing the functions described in the flowchart block(s). These computer program instructions may also be stored in a computer-available or computer-readable memory that can be directed to a computer or other programmable data processing apparatus to implement functions in a particular manner, so that the instructions stored in the computer-available or computer-readable memory can produce an article of manufacture that includes instruction means for performing the functions described in the flowchart block(s). The computer program instructions may also be installed on a computer or other programmable data processing apparatus, so that a series of operational steps are performed on the computer or other programmable data processing apparatus to create a computer-implemented process, so that the instructions executing on the computer or other programmable data processing apparatus can provide steps for performing the functions described in the flowchart block(s).
[0030] Additionally, each block may represent a module, segment, or portion of code that contains one or more executable instructions for executing a specific logical function(s). It should also be noted that in some alternative implementation examples, the functions mentioned in the blocks may occur out of order. For example, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order depending on the corresponding function. In this case, the term '~unit' used in the present embodiment means software or a hardware component such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit), and the '~unit' may perform certain roles. However, the '~unit' is not limited to software or hardware. The '~unit' may be configured to be on an addressable storage medium and may be configured to execute one or more processors. Thus, as an example, the '~ unit' includes components such as software components, object-oriented software components, class components, and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within the components and '~ units' may be combined into a smaller number of components and '~ units' or further separated into additional components and '~ units'. In addition, the components and '~ units' may be implemented to reproduce one or more CPUs within a device or a secure multimedia card. Also, in an embodiment, the '~ unit' may include one or more processors.
[0031] For convenience of explanation, the present disclosure uses terms and names defined in the 5GS and NR (new radio) standards, which are standards defined by the 3rd generation partnership project (3GPP) among the existing communication standards. However, the present disclosure is not limited to the above terms and names, and can be equally applied to wireless communication networks that follow other standards. For example, the present disclosure can be applied to 3GPP 5GS / NR (5th generation mobile communication standards). For example, the present disclosure can be applied to the following 3GPP standards.
[0032] TS 26.565 Split Rendering Media Service Enabler v0.5 (S4-231053) (SR_MSE)
[0033] TS 26.506 5G Real-time Media Communication Architecture (Stage 2) (GA4RTAR)
[0034] TS 26.113 Enabler for Immersive Real-time Communication (iRTCW)
[0035] TS 23.558 Architecture for enabling Edge Application (EdgeApp)
[0036] Figures 1 and 2 are diagrams illustrating a communication method between network nodes for a split rendering service.
[0037] FIG. 1 and FIG. 2 are diagrams illustrating real-time communication between network nodes, that is, between endpoints. Examples of the endpoints (110, 120, 130, 210, 220, 230) in FIG. 1 and FIG. 2 include terminals or servers. One framework that can be considered for real-time communication between endpoints is WebRTC (real-time communications). Technologies such as STUN (Session Traversal Utilities for NAT) and TURN (Traversal Using Relays around NAT) are used for mapping between the public and private addresses of an endpoint, that is, network address translation (NAT), and ICE (Interactive Connectivity Establishment) is used to search for an ICE candidate, which is the most optimal path among many available paths between two endpoints.
[0038] Meanwhile, a protocol for exchanging messages between two endpoints through a connection based on the WebRTC framework may include SWAP (Simple WebRTC Application Protocol) technology. For example, the SWAP technology may include the SWAP technology defined in the 3GPP TS 26.113 standard. To this end, as shown in FIG. 1, one endpoint (120) may act as a SWAP signaling server, or as shown in FIG. 2, a separate SWAP signaling server (220) may exist between two endpoints (210, 230) to relay SWAP messages.
[0039] SWAP is used to negotiate and establish transport connections involving media and data channel streams. The protocol defines a set of signaling messages to support the exchange of offers, responses, and ICE candidates from one endpoint to another.
[0040] At the request of an endpoint, a SWAP server can find ICE candidates and provide them to the endpoint in a list. ICE candidates can include network addresses reachable between endpoints, such as those discovered through STUN or TURN.
[0041] Figure 3 is a diagram illustrating the operation of a SWAP (simple webRTC (real-time communications) application protocol) server in communication between network nodes for a split rendering service.
[0042] FIG. 3 illustrates the operation of a SWAP server (320) that mediates a connection between a Split Rendering Client (SRC) (310) and a Split Rendering Server (SRS) (330).
[0043] The SRC (310) may transmit an APP (application) specific SR (split rendering) configuration message to the SWAP server (320). In this case, the SRC (310) may provide an identifier of the target SRS (330) as a matching criterion (341).
[0044] The SWAP server (320) can find the SRS (330) using the provided matching criteria (342).
[0045] The SWAP server (320) can forward the APP (application) specific SR (split rendering) configuration message to the target SRS (330) (343).
[0046] The SWAP server (320) may send a message acknowledging that the configuration message has been delivered to the SRC (310) (344).
[0047] The SRS (330) can process SR configuration messages (345). For example, it can check application and resource availability, launch applications, configure rendering, and generate rendering descriptions.
[0048] The SRS (330) may send an application-specific SWAP message to the SWAP server (320) for a rendering description (346).
[0049] The SWAP server (320) may forward an application-specific SWAP message for the rendering description to the SRC (310) (347).
[0050] The SWAP server (320) may transmit a message to the SRS (330) acknowledging that the configuration message has been delivered (348).
[0051] SRC (310) can process the rendering description and identify the required data channels and media sessions (349).
[0052] The SRC (310) may transmit a connection message (350) to the SRS (330) via the SWAP server (320) along with a session description protocol (SDP) offer. The SDP offer may reflect the negotiated media and data channel streams.
[0053] The SWAP server (320) may transmit a message to the SRC (310) acknowledging that the connection message has been delivered to the SRS (330) (351).
[0054] The SRS (330) may transmit an accept message containing an SDP response to the SRC (310) via the SWAP server (320) (351). The SDP response may reflect information provided in the split rendering description.
[0055] SWAP 서버 (320)는 SRC (310)로 상기 수락 메시지를 전송하였음을 확인(acknowledge)하는 메시지를 SRS (330)에게 전송할 수 있다 (353).
[0056] 도 3의 각 동작은 아래와 같이 설명할 수 있다.
[0057] The SRC sends the configuration message as an application-specific SWAP message to the SWAP server. It provides the identifier of the target SRS as a matching criteria.
[0058] The SWAP server uses the provided matching criteria to locate the SRS.
[0059] The SWAP server forwards the configuration message to the target SRS.
[0060] The SWAP server confirms the successful forwarding of the message to the SRC
[0061] The SRS processes the SR configuration message. It may for instance verify application and resource availablity, launch the application, configure its rendering, and create a rendering description.
[0062] The SRS sends the rendering description message as an application-specific SWAP message to the SWAP server.
[0063] The SWAP server forwards the message to the SRC.
[0064] The SWAP server acknowledges the successful forwarding of the message to the SRS.
[0065] The SRC processes the rendering description and identifies the required data channel and media sessions.
[0066] SRC sends a connect message with the SDP offer to the SRS. The offer reflects the negotiated media and data channel streams.
[0067] The SWAP server acknowledges the forwarding of the message to the SRS
[0068] The SRS replies with an accept message that includes the SDP answer. The SDP answer reflects the information that was provided in the split rendering description.
[0069] The SWAP server acknowledges the forwarding of the message to the SRC
[0070] 도 4는 분할 렌더링 서비스에 대한 등록 및 연결에 관련된 메시지를 설명하는 도면이다.
[0071] Referring to FIG. 4, each endpoint can send and receive messages for registration and connection to a split rendering service. In FIG. 4, the first endpoint (410) can include an SRC, the second endpoint (420) can include a SWAP server, and the third endpoint (430) can include an SRS.
[0072] A SWAP message can be composed of a Source Id, which is an identifier for identifying the endpoint transmitting the message, a Message Id, which is an identifier for identifying the message, and a Message Type according to the message type.
[0073] A message (440) whose Message Type is Register can have one or more of the following parameters as a matching criteria (matching_criteria) item.
[0074] - ipv4: IPv4 address of the target endpoint
[0075] - ipv6: IPv6 address of the target endpoint
[0076] - fqdn: FQDN of the target endpoint
[0077] - service: identifier of the service or application
[0078] - user: user identifier, such as SIP address, GPSI, or MSISDN.
[0079] - eas: EAS identifier
[0080] - app: Application-specific matching criteria (matching_criteria) to be compared using binary or string comparison.
[0081] - location: One or more identifiers of a geographic location or area.
[0082] - qos: Description of the QoS supported by the connection to the endpoint.
[0083] - processing: Profile description of the processing capabilities of the endpoint.
[0084] Using this, one endpoint (430) can register with the SWAP server by setting the value of the matching_criteria entry as information describing itself.
[0085] In one embodiment, another endpoint (410) may specify the value of the matching_criteria entry as a condition of the target endpoint to the SWAP server in order to find the target endpoint with which it wishes to communicate.
[0086] For example, as shown in FIG. 3, the third endpoint (430) transmits a register message (440) to register itself with the SWAP server, and at this time, as parameter values of the matching criteria item, it can specify its address in ipv4 (e.g., 10.0.0.1), the service it provides (e.g., XR conference service), and the QoS value it provides (e.g., latency 10ms, bandwidth 10Mbps) in qoS.
[0087] When the first endpoint (410) wants to search for an endpoint (e.g., SRS) that provides such a service, for example, in order to use an XR conference service, it can send a connect message (450) with a message type of connect to the SWAP server and specify the XR conference service in the service item of matching_criteria.
[0088] The SWAP server (420) can register the third endpoint (430) as an endpoint providing an XR conference service by the register message (440) previously received from the third endpoint (430). The SWAP server (420) can search for an endpoint providing an XR conference service among the endpoints registered so far by the connect message (450) received from the first endpoint (410). The SWAP server (420) can provide information about the third endpoint (430) found as a result of the search to the first endpoint (410). The SWAP server (420) can forward a connect request from the first endpoint (410) to the third endpoint (430) found as a result of the search.
[0089] In this case, some elements of the matching_criteria specified by the first endpoint (410) attempting to connect may not match. Additional information is required to determine a connection for an endpoint where both matching and non-matching elements specified by the matching_criteria exist simultaneously.
[0090] For example, the profile, which is an item of matching_criteria, is insufficient information to search for an endpoint. That is, to search for an appropriate endpoint, it is necessary to specify which inputs the endpoint (SRS) can receive and which outputs it can transmit. For example, if there is an endpoint that supports only V-PCC (point cloud coding) among 3D inputs and can perform split rendering into a 2D HEVC image as an output, the relationship between the available inputs and the available outputs needs to be properly specified because it does not provide split rendering for V-DMC (Dynamic Mesh Coding) among 3D inputs.
[0091] As another example, if one endpoint is communicating with another endpoint and providing services, another endpoint can search for the same endpoint using the same matching criteria and request a connection. The SWAP server must determine whether to use the endpoint as a search result based on whether it provides additional connections or not.
[0092] As another example, some elements of matching_criteria correspond to information that the endpoint attempting to connect cannot know in advance. To attempt a connection using information that is not known in advance, a step must be taken to provide that information in advance. For example, endpoint addresses such as ipv4, ipv6, and fqdn are difficult to know in advance and attempt a connection with. If they were known in advance, the connection could be made directly to another endpoint without going through a swap server, which is contradictory information.
[0093] Accordingly, the following proposes a method for efficiently connecting one endpoint (e.g., SRC) to another endpoint (e.g., SRS). This may include the following methods.
[0094] Method 1: A method that allows one endpoint to specify the importance of a preferred item for matching_criteria, which is the criteria that the endpoint presents to search other endpoints.
[0095] Method 2: In a method where an endpoint describes the service it requests or provides, it specifies information about the inputs and outputs it receives from other endpoints and the outputs it sends to those other endpoints, and more specifically, it specifies that it is a combination of available outputs for available inputs.
[0096] Method 3: How to notify the SWAP server whether an endpoint can provide services to one or more other endpoints simultaneously or is already providing services to other endpoints, and how the SWAP server processes connection requests from third endpoints based on the above information.
[0097] Method 4: How an endpoint is notified of a list or conditions of other endpoints to which it can connect.
[0098] Below, the above methods 1 to 4 are described in detail.
[0099] Method 1: A method that allows specifying the priority order of preferred items for matching_criteria, which is the condition that one endpoint presents to search for another endpoint.
[0100] In one embodiment, the parameters of matching_criteria are considered to be ipv4, ipv6, fqdn, service, user, eas, app, location, qos, and processing. When the first endpoint creates a matching_criteria using all or some of the above parameters to describe itself and registers it with the SWAP server, the second endpoint can specify one or more conditions as parameters of matching_criteria when requesting a connect to the SWAP server to search for an endpoint that provides the service it needs.
[0101] If not all parameters are satisfied, but some parameters are satisfied, the SWAP server needs a way to select one of several endpoint candidates that satisfy some of the parameters.
[0102] For example, when the first endpoint specifies QoS as a maximum delay time of 10ms and a maximum bandwidth of 10Mbps, and specifies its geographic location as its location, among the endpoint candidates searched by the SWAP server, the second endpoint may satisfy the QoS value but the location may not match (or, may be relatively far away), and the third endpoint may satisfy the location but the QoS may not match. In a situation where not all the endpoint conditions required by the first endpoint are met, the SWAP server needs to decide which endpoint to connect to the first endpoint.
[0103] To allow the SWAP server to select one endpoint from among multiple endpoint candidates that satisfy some criteria, priority_order can be specified as an additional item of matching_criteria. Priority_order specifies the most important criteria in order, allowing the most appropriate endpoint to be selected in the order of the criteria specified. In other words, endpoints satisfying the criteria can be searched for in the order of the given criteria. If a condition specified first is satisfied but a condition specified later is not, the SWAP server's selection behavior can be implementation-dependent. One implementation can select the endpoint with the smallest quantitative error even if it does not satisfy the later condition.
[0104] For example, in the case of location, you can set it so that the geographical location of the terminal and the endpoint located in the nearest cell can be selected when the terminal is not included in the cell to which the terminal belongs.
[0105] If all the parameters specified in the priority order are not satisfied, but only the remaining parameters are satisfied, the SWAP server can report the current situation as erroneous through a separate response message. If priority_order is not specified, the SWAP server can reasonably determine that an endpoint satisfying some parameters is a selectable endpoint. However, if priority_order is provided and it determines that no endpoint satisfies the parameters specified in priority_order, it may no longer consider it appropriate to connect by selecting an endpoint that only satisfies the remaining conditions. Accordingly, the SWAP server can return a response message to the endpoint that requested the connect containing additional information indicating that no endpoint satisfies the parameters specified in priority_order.
[0106] In one embodiment, the SWAP server's operation is to connect to one of the endpoints that matches the conditions of matching_criteria and that also sequentially matches the conditions of priority_order. However, in addition, the SWAP server may provide a list of two or more endpoints that match the criteria presented by the endpoint in response to the connect operation in another way. For example, the SWAP server may provide a connection to only one endpoint if that endpoint matches the criteria presented as matching_criteria. In another example, when two or more endpoints match the conditions, the SWAP server may not randomly select one, but may return the matching criteria of the corresponding endpoints as a response to the connect message. Since the matching_criteria describes address identifiers such as ipv4, ipv6, fqdn, etc. and capability indicators such as qos, the endpoint that requested the connect can look up these and select an appropriate endpoint, and send a connect message to the SWAP server by specifying the identifier of the endpoint to connect to the endpoint.
[0107] FIG. 5 is a diagram illustrating a registration and connection procedure for a split rendering service according to one embodiment of the present disclosure.
[0108] Figure 5 is a drawing specifically explaining the above method 1.
[0109] Referring to FIG. 5, the first endpoint (510) and the third endpoint (520) may include SRS, and the second endpoint (540) may include SRC.
[0110] A first endpoint (510) providing a service may register with a SWAP server (530) by specifying some values of matching_criteria to indicate its performance (551). As an example, the first endpoint (510) may register with a SWAP server (530) by specifying 100ms as a QoS item and cell2 as a location for its service provision.
[0111] At least one other endpoint (including 520) providing a service may also register with the SWAP server (530) (552). As an example, in the drawing, the third endpoint (520) may register with the SWAP server (530) by specifying 10ms as the QoS item and cell1 as the location for its service provision.
[0112] Steps 553 through 556 describe the case (570) where priority information is not provided. In this case, an endpoint (540) seeking service can simply specify its requirements and request a connection from the SWAP server (530) (553). As an example, a second endpoint (540) can specify QoS and location values as matching_criteria.
[0113] The SWAP server (530) can query the registered endpoints to find those that match the QoS or location. For example, if there is no endpoint that matches both of the presented conditions, the SWAP server (530) can first determine the first registered endpoint (510) as the connection partner (554).
[0114] The SWAP server (530) can forward a connect request from the second endpoint (540) to the first endpoint (510) (555).
[0115] The first endpoint (510) can transmit an acceptance message (556) to the second endpoint (540) for a request.
[0116] Steps 557 through 560 describe a case (580) based on priority information. An endpoint (440) seeking service can send a connection request message (557) to a SWAP server (530) by explicitly specifying a priority_order along with its requirements, i.e., specifying matching_criteria that must be satisfied. As an example, a second endpoint (540) can specify QoS and location as conditions, and specify QoS as one of the conditions that must be satisfied.
[0117] The SWAP server (530) can determine the third endpoint (520), which is an endpoint satisfying QoS among the registered endpoints, as a connection partner (558). The SWAP server (530) can forward the connect request of the second endpoint (540) to the third endpoint (520) (559). The third endpoint (520) can forward an acceptance message in response to the request of the second endpoint (540) (560).
[0118] Method 2: In the method of describing the service provided by an endpoint (server), it is specified as input and output, which are inputs received from other endpoints (terminals) and outputs (processing results) sent to the other endpoints, and more specifically, it is specified as a combination of available outputs for available inputs (input-output media profile pair description).
[0119] A profile, an element of matching_criteria, requires additional information to find a suitable endpoint. That is, while a profile is defined as a media profile description of an endpoint's processing capabilities, a media profile must contain a combination of a process capable of processing an input media profile and a corresponding output media profile to find a suitable endpoint.
[0120] In one embodiment, a media profile for split rendering may include profiles such as HEVC-DEC-1, HEVC-DEC-2, HEVC-ENC-1, HEVC-ENC-2, XR-Pose-Cap-1, and XR-Pose-Cap-2. Here, HEVC-DEC-1 indicates that HEVC can be decoded, HEVC-DEC-2 indicates that there are two or more HEVC decoders, HEVC-ENC-1 indicates that there is an HEVC encoder, and HEVC-ENC-2 indicates that transparency (alpha channel) can also be encoded. XR-Pose-Cap-1 indicates that the terminal can acquire the user's pose, and XR-Pose-Cap-2 indicates that the terminal can acquire the user's action.
[0121] If there is a first endpoint (server) that can perform split rendering, and a second endpoint (terminal) searches for an endpoint to request split rendering for a certain media type, the type of media that the second endpoint wants to request must match the type of media that it wants to receive from the first endpoint. If the first endpoint is marked as HEVC-ENC-1, it is difficult for the second endpoint to determine whether it is receiving 2D video media, 3D point cloud (V-PCC), or 3D mesh (V-DMC). In other words, it is impossible to determine whether the second endpoint can process the media that the second endpoint wants to provide as input based only on the description of the result.
[0122] Therefore, the endpoint (server) to be registered must describe both input and output media profiles, and the endpoint (terminal) to be connected must describe both transmission and reception media profiles so that the SWAP server can compare whether the transmission media profile and reception media profile of the endpoint to be connected match the input media profile and output media profile of the registered endpoint.
[0123] Accordingly, we propose to specify possible output media profiles for each input media profile as a way to indicate the profile parameter of matching_criteria. That is, since only a limited number of output media profiles may be possible for a specific input media profile, we propose to indicate it as a list of pairs of possible output media profiles for the input.
[0124] It is proposed that endpoints provide a list of possible input media profiles for the output media profile they provide, or a list of possible output media profiles for the input media profile, or both.
[0125] For example, when there is a first endpoint (e.g., a server) that can perform split rendering, the first endpoint can specify 3D contents to be used as input, such as 3D-VPCC, 3D-GPCC, 3D-VDMC, etc., as a value for the profile parameter of matching_criteria during the process of registering with the SWAP server, and can specify 2D contents to be used as output, such as HEVC-DEC-1, for each. This can be expressed as in Mathematical Expression 1 below. In the example, input and output are separated by a colon, different input / output relationships are separated by a comma, and all input / output profiles provided by an endpoint are enclosed in curly brackets.
[0126] [Mathematical Formula 1]
[0127] profile={"3D-VPCC":"HEVC-DEC-1", "3D-GPCC:HEVC-DEC-1", "3D-VDMC:HEVC-DEC-1"}
[0128] A more explicit representation of possible input-output pairs can be expressed in the following mathematical expression, Equation 2. In the example, multiple input-output relationships are enclosed in curly brackets, each with its own input and output.
[0129] [Equation 2]
[0130] profile={
[0131] {"input":"3D-VPCC", "output":"HEVC-DEC-1"},
[0132] {"input":"3D-GPCC", "output":"HEVC-DEC-1"},
[0133] {"input":"3D-VDMC", "output":"HEVC-DEC-1"},
[0134] }
[0135] Alternatively, the list of available input media profiles for an output can be displayed as shown in Equation 3 below. The display rules for the example are as above, indicating that one of three inputs is available for one output.
[0136] [Equation 3]
[0137] profile={
[0138] {"output":"HEVC-DEC-1",
[0139] "input": ["3D-VPCC", "3D-GPCC", "3D-VDMC"],
[0140] },
[0141] }
[0142] Accordingly, the endpoints and the SWAP server can use the profile parameter of matching_criteria, and from the perspective of the endpoint that wants to provide the service, the input and output are specified, and from the perspective of the endpoint (terminal) that wants to receive the service, the input that can be provided and the output that is desired to be provided are both specified to request the endpoint, and the SWAP server is characterized in that, when connecting between endpoints, it determines as a connection target only the endpoint that matches the request information among the endpoints that provide the service based on the information of the pair of input and output of the endpoint requesting the provision of the service.
[0143] When a SWAP server connects endpoints, that is, transmits a connect message from an endpoint seeking service to an endpoint providing a service, the auxiliary information in the connect message can be referenced and used for communication between the two endpoints. As auxiliary information for the connect message of the endpoint seeking service, an SDP offer can be used, and in the SDP offer, one or more media profiles that the endpoint requesting service can transmit can be specified under the send field, and one or more media profiles that can be received can be specified under the receive field. The endpoint providing the service can establish a connection by specifying one or more media that can be provided as an SDP answer in the connect message. The present invention is characterized in that the media profiles included in the SDP offer and answer are included in the connection combination of the input media profile and the output media profile specified in the profile parameter of the matching_criteria. Otherwise, the connection may be rejected because the SDP offer and answer between the two endpoints connected by the SWAP server cannot be satisfied. In this case, the endpoint seeking service must disconnect the rejected connection and re-request another endpoint, which is problematic. If the input and output are not specified, the SWAP server has a chance of reconnecting the rejected endpoint, which will then go through the same rejection procedure, so the improvement of specifying the input and output is self-evident.
[0144] Method 3: How to notify the SWAP server whether an endpoint can provide services to one or more other endpoints simultaneously or is already providing services to other endpoints, and how the SWAP server then processes connection requests from third endpoints based on the information (total_num_endpoints, total_num_mediaSessions)
[0145] Depending on the endpoint's capabilities or service type, an endpoint can only connect to one other endpoint. For example, in a one-to-one call service, once one endpoint connects to another, it typically displays the call as busy when a third endpoint attempts to connect. Alternatively, one endpoint may accept connections to other endpoints. For example, in a computing device like a supercomputer, hundreds of terminals may be connected to perform tasks, and tasks may be processed in the order they are added to the queue.
[0146] Method 3 proposes that endpoints seeking to provide services should display either total_num_endpoints or total_num_mediaSessions in their matching_criteria to describe their capabilities. From a connection perspective, total_num_endpoints represents the number of other endpoints that can connect to the endpoint seeking to provide services. A total_num_endpoints of 1 indicates that the endpoint provides a service that does not allow connections from third-party endpoints, such as a one-to-one call service.
[0147] Alternatively, total_num_mediaSessions can be provided at an endpoint that can perform n processes for a given input / output media profile in terms of processing power for media, regardless of the number of endpoints.
[0148] In one embodiment, if an endpoint is registered with a total_num_endpoints or total_num_mediaSessions value, the SWAP server can manage the number of endpoints or the number of media sessions during the connection process. The endpoint can return current_num_endpoints or current_num_mediaSessions to the SWAP server periodically or upon request from the SWAP server.
[0149] The above current_num_endpoints or current_num_mediaSessions indicates the number of endpoints or sessions currently in use, and the SWAP server can determine whether to connect a new endpoint based on this.
[0150] If current_num_endpoints or current_num_mediaSessions for an endpoint reaches total_num_endpoints or total_num_mediaSessions, it can be suggested not to search for or present the endpoint with the maximum number of endpoints as a candidate for the connect request of a third endpoint requesting a new connection. For example, when the second, third, and fourth endpoints are connected to the first endpoint with total_num_endpoints of 3, the SWAP server can exclude the first endpoint from the search target without comparing conditions such as matching_criteria for the connect request of the fifth endpoint since the number of current_num_endpoints is 3 and total_num_endpoints is also 3.
[0151] The above current_num_endpoints can be referenced by the SWAP server to track or report from the endpoint to determine whether the allocation status of the endpoint has changed by another SWAP server.
[0152] In one embodiment, when an endpoint with a specified total_num_endpoints or total_num_mediaSessions is registered, the SWAP server may maintain a current_num_endpoints or current_num_mediaSessions value that it internally tracks during the close process. If the current_num_endpoints or current_num_mediaSessions value for an endpoint becomes less than the total_num_endpoints or total_num_mediaSessions value, the SWAP server may suggest searching or presenting the endpoint as a connection candidate for a connect request from a third endpoint.
[0153] FIG. 6 is a diagram illustrating a registration and connection procedure for a split rendering service according to one embodiment of the present disclosure.
[0154] Figure 6 is a drawing illustrating a specific example of the above method 3.
[0155] Referring to FIG. 6, the first endpoint (610) and the fourth endpoint (650) may include SRS, and the second endpoint (640) and the third endpoint (620) may include SRC.
[0156] A first endpoint (610) supporting split rendering and having a total_num_endpoint of 1 can register with a SWAP server (630) (661). A third endpoint (620) can request a connection with an endpoint supporting split rendering from the SWAP server (630) (662). The SWAP server (630) can forward the connect request to the first endpoint (610) (663). The first endpoint (620) can accept the request and send an acceptance message to the SWAP server (630) (664).
[0157] The SWAP server (630) may forward the accepted request to the third endpoint (620) (665). Communication may be established between the first endpoint (610) and the third endpoint (620) (666). The third endpoint (620) may forward an SDP offer containing details of the media it wishes to receive to the SWAP server (630) (667).
[0158] The SWAP server (630) can forward the SDP offer to the first endpoint (610) (668). The first endpoint (610) can forward the SDP answer to the SWAP server (630) (669). The SWAP server (630) can forward the SDP answer to the third endpoint (620) (670).
[0159] Steps 673 to 675 describe the case (671) where information including total_num_endpoints and total_num_mediaSessions is not provided. A second endpoint (640) may request a connection to an endpoint that supports split rendering from a SWAP server (630) (672). The SWAP server (630) may transmit the connect request to the first endpoint (610) (673). Since the first endpoint (610) is connected to a third endpoint (620), the connection request may be rejected (674). The SWAP server (630) may transmit a refuse message to the second endpoint (640) (675).
[0160] Steps 677 to 682 describe (676) a case where information including total_num_endpoints and total_num_mediaSessions is provided. A second endpoint (640) can request a connection to an endpoint that supports split rendering from a SWAP server (630) (677). The SWAP server (630) can search for other endpoints except for the first endpoint (610), since the total_num_endpoints of the first endpoint (610) is 1 and is connected to a third endpoint (620) (678).
[0161] If no endpoint matches the condition (679), a response message explaining the reason can be sent to the second endpoint (640) (680). If the fourth endpoint (650) matches the condition (681), a connect message from the second endpoint (640) can be sent to the fourth endpoint (650) (682). The subsequent operations are the same as or similar to the operations described in step 566 between the first endpoint (610) and the third endpoint (620).
[0162] Method 4: How an endpoint is notified of a list of other endpoints to which it can connect.
[0163] Some elements of the matching_criteria parameter used to search for SRSs for split rendering services are information that is difficult for the endpoint attempting to connect to know in advance. For example, endpoint addresses such as IPv4, IPv6, and FQDN may be known in advance by an endpoint and thus unsuitable for presenting as criteria for connecting to a SWAP server.
[0164] Method 4 thus proposes that the process of presenting conditions for an endpoint to attempt a connection includes receiving specific conditions for the endpoint to connect through a pre-notification step in the connection phase, such as bootstrap.
[0165] For example, when there is a specific 3D model generation service provided by a service provider, the process of informing the address of the SWAP server for negotiating the service to the terminal (i.e., endpoint) receiving the service (e.g., bootstrap phase) may include matching_criteria information for the server (i.e., endpoint) providing the service.
[0166] In Method 4, the endpoint may receive parameters and parameter values for some of the matching_criteria parameters while receiving service access information. This may include parameters and parameter values that may be provided differently depending on the time and situation, determined by the network operator or service provider when providing apps and services to the endpoint based on information such as the endpoint's subscription information, location information, access time, service provision time, and service availability.
[0167] The endpoint sends a connect message to the SWAP server, including the provided parameters and parameter values in matching_criteria, to request a connection, and the SWAP server can select one of the available endpoints to connect to.
[0168] The ipv4 / ipv6 / fqdn address of a specific endpoint can be difficult to know in advance or can be a constantly changing value. For example, a game service provider may allocate an ipv4 address (e.g., the address of a cloud game rendering server) that is only available at a limited time or location to terminals (i.e., endpoints) of specific subscribers (e.g., users subscribing to a cloud game service) or endpoints connecting from a specific region, and transmit this address to the relevant endpoints at the time of connection. Endpoints that receive this information can present the ipv4 address information unknown to other endpoints as matching_criteria, thereby allowing the SWAP server to connect to the endpoint providing the relevant service.
[0169] Preliminary information can be characterized as being included within service discovery steps, such as the IMS bootstrap data channel, 5GMS service access information, and RTC configuration information, and delivered during each service preparation process. Furthermore, network operators, service providers, and app providers can use separate communication channels to deliver preliminaries to apps running on endpoints.
[0170] FIG. 7 is a diagram illustrating a registration and connection procedure for a split rendering service according to one embodiment of the present disclosure.
[0171] Figure 7 is a drawing illustrating a specific example of the above method 4.
[0172] Referring to FIG. 7, the first endpoint (710) and the second endpoint (720) may include SRS, and the third endpoint (740) and the fourth endpoint (750) may include SRC.
[0173] The first endpoint (710) is an XR cloud game server and can be registered with the SWAP server (730). Latency can be suppressed to within 10 ms to ensure XR response speed (771). The second endpoint (720) is a general game server and can be registered with the SWAP server (730) (772). A latency of 100 ms is sufficient for updating status information, etc.
[0174] Steps 774 to 776 describe the case (773) where the endpoint is subscribed to an XR cloud game.
[0175] A third endpoint (740) can connect to a service provider server (760) (774). (e.g., an account server) A prior notification from the service provider server (760) to the third endpoint (740) is performed. The service provider server (760) can transmit the address of the SWAP server (730) and the ipv4 address of endpoint 1 in the data (e.g., bootstrap data) provided to the third endpoint (740) (775). The third endpoint (740) can request a connect to the SWAP server (730) by specifying the address of the first endpoint (710) and the XR cloud game as matching_criteria (776). The SWAP server (730) can forward the request to the first endpoint (710) (777).
[0176] Steps 779 to 782 describe a case where an endpoint is registered for an online game (778). A fourth endpoint (750) can connect to a service provider server (760) (779). (e.g., an account server) A prior notification from the service provider to the fourth endpoint (750) is performed. The service provider can transmit data to the fourth endpoint (750) including only the address of the SWAP server (730) (780). The fourth endpoint (750) can request a connection to the SWAP server (730) by specifying the online game as a matching_criteria (781). The SWAP server (730) can forward the request to the second endpoint (720) (782).
[0177] FIG. 8 illustrates the operation of a SWAP server according to one embodiment of the present disclosure.
[0178] In one embodiment of the present disclosure, a SWAP (simple webRTC (real-time communication) application protocol) server may receive a connection request message from a split rendering client (SRC) (810). Furthermore, the SWAP server may determine a split rendering server (SRS) to be connected to the SRC based on first matching criteria information included in the connection request message (820).
[0179] The SWAP server may forward the connection request message to the determined SRS (830). In addition, the first matching criteria information may include priority information for at least one condition for determining the SRS.
[0180] In one embodiment, the SWAP server receives a registration message including second matching criteria information from the SRS, and the step of determining the SRS may include determining the SRS based on whether the first matching criteria and the second matching criteria match. In one embodiment, at least one of the first matching criteria information or the second matching criteria information includes information about a combination of available inputs and available outputs for a service provided by the SRS (input-output media profile pair description), and the first matching criteria information may include information that the SRC intends to transmit and receive to the SRS.
[0181] In one embodiment, the second matching criteria information may include at least one of the number of SRCs that the SRS can connect to (total_num_endpoints) or the number of media sessions that the SRS can provide (total_num_mediaSessions), and the second matching criteria information may include at least one of the number of SRCs currently connected to the SRS (current_num_endpoints) or the number of media sessions currently in use (current_num_endpoints).
[0182] In one embodiment, when determining the SRS, the SWAP server may not determine the first SRS if current_num_endpoints transmitted by the first SRS corresponding to the first matching criterion information is equal to total_num_endpoints.
[0183] In one embodiment of the present disclosure, a split rendering client (SRC) may transmit a connection request message to a SWAP server. Furthermore, the SRC may receive a connection acceptance message from a split rendering server (SRS) determined based on first matching criteria information included in the connection request message, through the SWAP server. The first matching criteria information may include priority information for at least one condition for determining the SRS.
[0184] In one embodiment, the determined SRS may be based on whether the first matching criterion information and the second matching criterion information match, and the second matching criterion information may be included in a registration message transmitted by the SRS to the SWAP server.
[0185] In one embodiment, at least one of the first matching criterion information or the second matching criterion information includes information about a combination of available inputs and available outputs for a service provided by the SRS (input-output media profile pair description), and the first matching criterion information may include information that the SRC intends to transmit and receive with the SRS. In one embodiment, the SRC may receive third matching criterion information of the first SRS based on information related to the SRC from an application server, and transmit a connection request message including the third matching criterion information to the SWAP server. In one embodiment, the third matching criterion information may be characterized by including information about an address of the first SRS.
[0186] FIG. 9 illustrates a structural diagram of a network node according to one embodiment of the present disclosure.
[0187] The network node illustrated in FIG. 9 may include a SWAP (simple webRTC (real-time communication) application protocol) server, a split rendering client (SRC), and a split rendering server (SRS) of the present disclosure.
[0188] A network node according to one embodiment of the present disclosure may include a processor (920) that controls the overall operation of the network node, a transceiver (900) including a transmitter and a receiver, and a memory (910). Of course, the present invention is not limited to the above example, and the network node may include more or fewer components than those illustrated in FIG. 9.
[0189] According to one embodiment of the present disclosure, the transceiver (900) can transmit and receive signals with network entities or other network nodes. The signals transmitted and received with the network entities can include control information and data. In addition, the transceiver (900) can receive signals via a wireless channel, output them to the processor (920), and transmit the signals output from the processor (920) via the wireless channel.
[0190] According to one embodiment of the present disclosure, the processor (920) can control a network node to perform any one of the operations described above. Meanwhile, the processor (920), the memory (910), and the transceiver (900) do not necessarily have to be implemented as separate modules, and of course, they can be implemented as a single component in the form of a single chip. In addition, the processor (920) and the transceiver (900) can be electrically connected. In addition, the processor (920) can be an Application Processor (AP), a Communication Processor (CP), a circuit, an application-specific circuit, or at least one processor.
[0191] According to one embodiment of the present disclosure, the memory (910) can store data such as basic programs, application programs, and setting information for the operation of the network node. In particular, the memory (910) provides the stored data upon request of the processor (920). The memory (910) can be configured as a storage medium or a combination of storage media such as a ROM, a RAM, a hard disk, a CD-ROM, and a DVD. In addition, there can be a plurality of memories (910). In addition, the processor (920) can perform the above-described embodiments based on a program for performing the above-described embodiments of the present disclosure stored in the memory (910).
[0192] It should be noted that the aforementioned configuration diagrams, examples of control / data signal transmission methods, examples of operational procedures, and configuration diagrams are not intended to limit the scope of the present disclosure. That is, not all components, entities, or operational steps described in the embodiments of the present disclosure should be construed as essential components for implementing the disclosure, and implementations may be made within a scope that does not detract from the essence of the disclosure even if only some components are included. Furthermore, each embodiment may be combined and operated as needed. For example, parts of the methods proposed in the present disclosure may be combined to operate network entities and terminals.
[0193] The operations of the base station or terminal described above can be realized by providing a memory device storing the corresponding program code in any component within the base station or terminal device. That is, the control unit of the base station or terminal device can execute the operations described above by reading and executing the program code stored in the memory device using a processor or CPU (Central Processing Unit).
[0194] The various components and modules of the entity, base station or terminal device described in this specification may be operated using hardware circuits, such as logic circuits based on complementary metal oxide semiconductors, firmware, software and / or hardware and firmware and / or software embedded in a machine-readable medium. For example, various electrical structures and methods may be implemented using electrical circuits such as transistors, logic gates and application-specific semiconductors.
[0195] When implemented in software, a computer-readable storage medium storing one or more programs (software modules) may be provided. The one or more programs stored in the computer-readable storage medium are configured for execution by one or more processors within an electronic device. The one or more programs include instructions that cause the electronic device to execute methods according to the embodiments described in the claims or specification of the present disclosure.
[0196] These programs (software modules, software) may be stored in random access memory, non-volatile memory including flash memory, read only memory (ROM), electrically erasable programmable read only memory (EEPROM), magnetic disc storage device, compact disc ROM (CD-ROM), digital versatile discs (DVDs) or other forms of optical storage device, magnetic cassette. Or, they may be stored in a memory configured as a combination of some or all of these. In addition, each configuration memory may be included in multiple numbers.
[0197] Additionally, the program may be stored in an attachable storage device that is accessible via a communication network such as the Internet, an intranet, a local area network (LAN), a wide local area network (WLAN), a storage area network (SAN), or a combination thereof. Such a storage device may be connected to a device performing an embodiment of the present disclosure via an external port. Additionally, a separate storage device on the communication network may be connected to a device performing an embodiment of the present disclosure.
[0198] In the specific embodiments of the present disclosure described above, components included in the disclosure are expressed in the singular or plural form, depending on the specific embodiment presented. However, the singular or plural expressions are selected to suit the presented situation for convenience of explanation, and the present disclosure is not limited to singular or plural components. Components expressed in the plural form may be composed of singular elements, or components expressed in the singular form may be composed of plural elements.
[0199] Meanwhile, although the detailed description of the present disclosure has described specific embodiments, it is obvious that various modifications are possible without departing from the scope of the present disclosure. Therefore, the scope of the present disclosure should not be limited to the described embodiments, but should be determined not only by the scope of the following claims but also by equivalents of the scope of the claims. In other words, it will be apparent to those skilled in the art that other modifications based on the technical idea of the present disclosure are possible. In addition, each of the above embodiments can be combined and operated with each other as needed. For example, parts of the methods proposed in the present disclosure can be combined with each other to operate a base station and a terminal. In addition, although the above embodiments have been presented based on a 5G, NR system, other modifications based on the technical idea of the above embodiments can be implemented with other systems such as LTE, LTE-A, and LTE-A-Pro systems.
[0200] While the detailed description of this disclosure has described specific embodiments, it should be understood that various modifications are possible without departing from the scope of this disclosure. Therefore, the scope of this disclosure should not be limited to the described embodiments, but should be defined not only by the scope of the claims described below, but also by equivalents thereof.
Claims
1. In a method of SWAP (simple webRTC (real-time communication) application protocol) server in a wireless communication system, A step of receiving a connection request message from a split rendering client (SRC); A step of determining a split rendering server (SRS) to be connected to the SRC based on the first matching-criteria information included in the connection request message; and A step of transmitting the connection request message to the determined SRS; A method characterized in that the first matching criterion information includes priority information for at least one condition for determining the SRS.
2. In paragraph 1, Further comprising the step of receiving a registration message including second matching criterion information from the SRS; A method characterized in that the step of determining the SRS comprises a step of determining the SRS based on whether the first matching criterion and the second matching criterion match.
3. In paragraph 2, At least one of the first matching criterion information or the second matching criterion information includes information about a combination of available input and available output for a service provided by the SRS (input-output media profile pair description), and A method characterized in that the first matching criterion information includes information that the SRC intends to transmit and receive with the SRS.
4. In the second paragraph, the second matching criterion information includes at least one of the number of SRCs to which the SRS can connect (total_num_endpoints) or the number of media sessions that can be provided (total_num_mediaSessions), The second matching criterion information includes at least one of the number of SRCs currently connected to the SRS (current_num_endpoints) or the number of media sessions currently in use (current_num_endpoints), and The steps for determining the above SRS are: A method characterized by including a step of not determining the first SRS when current_num_endpoints transmitted by the first SRS corresponding to the first matching criterion information is equal to total_num_endpoints.
5. In a method of a split rendering client (SRC) in a wireless communication system, A step of sending a connection request message to a SWAP (simple webRTC (real-time communication) application protocol) server; and A step of receiving a connection acceptance message from a split rendering server (SRS) determined based on first matching-criteria information included in the connection request message through the SWAP server; A method characterized in that the first matching criterion information includes priority information for at least one condition for determining the SRS.
6. In paragraph 5, The above-determined SRS is characterized by being based on whether the first matching criterion information and the second matching criterion information match, and A method characterized in that the second matching criterion information is included in a registration message transmitted by the SRS to the SWAP server.
7. In paragraph 6, At least one of the first matching criterion information or the second matching criterion information includes information about a combination of available input and available output for a service provided by the SRS (input-output media profile pair description), and A method characterized in that the first matching criterion information includes information that the SRC intends to transmit and receive with the SRS.
8. In paragraph 5, A step of receiving third matching criterion information of the first SRS based on information related to the SRC from the application server; and A method further comprising the step of transmitting a connection request message including information on an address of the first SRS to the SWAP server.
9. In a SWAP (simple webRTC (real-time communication) application protocol) server in a wireless communication system, Transmitter and receiver; and comprising at least one processor; wherein the at least one processor comprises: Receive a connection request message from a split rendering client (SRC), Determine a split rendering server (SRS) to be connected to the SRC based on the first matching-criteria information included in the connection request message, and configured to transmit the connection request message to the above-determined SRS, A SWAP server, characterized in that the first matching criterion information includes priority information for at least one condition for determining the SRS.
10. In the 9th paragraph, at least one processor, Receive a registration message including second matching criteria information from the above SRS, and A SWAP server characterized in that it is configured to determine the SRS based on whether the first matching criterion and the second matching criterion match.
11. In paragraph 10, At least one of the first matching criterion information or the second matching criterion information includes information about a combination of available inputs and available outputs for a service provided by the SRS, and A SWAP server, characterized in that the first matching criterion information includes information that the SRC wishes to transmit and receive with the SRS.
12. In paragraph 10, The second matching criteria information includes at least one of the number of SRCs that the SRS can connect to (total_num_endpoints) or the number of media sessions that can be provided (total_num_mediaSessions). A SWAP server characterized in that the second matching criterion information includes at least one of the number of SRCs currently connected to the SRS (current_num_endpoints) or the number of media sessions currently in use (current_num_endpoints), and the at least one processor is configured not to determine the first SRS if current_num_endpoints transmitted by the first SRS corresponding to the first matching criterion information is equal to total_num_endpoints.
13. In a split rendering client (SRC) in a wireless communication system, Transmitter and receiver; and comprising at least one processor; wherein the at least one processor comprises: Send a connection request message to the SWAP (simple webRTC (real-time communication) application protocol) server, and It is configured to receive a connection acceptance message through the SWAP server from a split rendering server (SRS) determined based on the first matching-criteria information included in the connection request message, SRC, characterized in that the first matching criterion information includes priority information for at least one condition for determining the SRS.
14. In paragraph 13, The above-determined SRS is characterized by being based on whether the first matching criterion information and the second matching criterion information match, and SRC, characterized in that the second matching criterion information is included in a registration message transmitted by the SRS to the SWAP server.
15. In paragraph 14, At least one of the first matching criterion information or the second matching criterion information includes information about a combination of available inputs and available outputs for a service provided by the SRS (input-output media profile pair description), The above first matching criterion information includes information that the SRC wishes to transmit and receive with the SRS, and At least one processor of the above, Receive third matching criterion information of the first SRS based on information related to the SRC from the application server, and An SRC further characterized by being configured to transmit a connection request message including information on an address of the first SRS to the SWAP server.
Citation Information
Patent Citations
Image rendering method and device and server
CN115292014A
Controlling device and cooking appliance therewith and method for controlling cooking appliance
KR1020240163396A
Method and apparatus for split rendering for lightfield / immersive media using proxy edge cloud architecture
US20230171328A1