Communication method, apparatus, and system
By designating a second network element in the communication network to provide media session services for terminal devices, the problem of media data transmission latency caused by CDN being independent of the communication network is solved, and efficient media data transmission and distribution are achieved.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-12-09
- Publication Date
- 2026-06-18
Smart Images

Figure CN2025141044_18062026_PF_FP_ABST
Abstract
Description
A communication method, apparatus and system
[0001] Cross-references to related applications
[0002] This application claims priority to Chinese Patent Application No. 202411814927.9, filed on December 10, 2024, entitled "A Communication Method, Apparatus and System", the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of communication technology, and in particular to a communication method, apparatus and system. Background Technology
[0004] A CDN (Content Delivery Network) is a group of servers distributed across different geographical locations, with the aim of efficiently distributing internet content to users. It works by caching media data (such as web pages, images, videos, and other types of web data) on multiple servers and routing media data requests to the nearest server based on the geographical location of the end device. The server closest to the user then sends the media data to the end device.
[0005] CDNs are deployed independently of the communication network; media data provided by the server is transmitted to terminal devices through the communication network. How to achieve media data relay within the communication network is a problem that needs to be solved. Summary of the Invention
[0006] This application provides a communication method, apparatus, and system for relaying media data in a communication network.
[0007] In a first aspect, a communication method is provided, which can be applied to a first network element in a communication network. The method includes: receiving a first request, the first request including an identifier of a terminal device; determining, according to the first request, a second network element in the communication network that provides media session services for the terminal device, the media session being a media session based on a transport layer protocol; sending indication information to the second network element, the indication information instructing the second network element to provide media session services for the terminal device in a first mode or a second mode; wherein, when the second network element provides media session services for the terminal device in the first mode, the second network element is used to relay signaling and / or media data and establish a communication connection with the terminal device; when the second network element provides media session services for the terminal device in the second mode, the second network element is used to forward signaling and / or media data.
[0008] In the above implementation, network elements are designated in the communication network to serve the media session of the terminal device. These network elements can serve the media session of the terminal device in either the first or the second manner, thereby deploying part of the media content distribution function in the communication network, which can reduce media data transmission latency and improve content distribution efficiency.
[0009] In one possible implementation, forwarding signaling and / or media data includes: sending the received media data or signaling to the next-hop device.
[0010] Specifically, sending the received media data or signaling to the next-hop device includes: when the second network element receives downlink signaling or media data, sending the signaling or media data to the next-hop device, where the next-hop device is another network element besides the second network element that serves the media session of the terminal device, or the next-hop device is the terminal device itself; or, when the second network element receives uplink signaling, sending the signaling to the next-hop device, where the next-hop device may be another network element that serves the media session of the terminal device, or it may be a server. Taking the signaling as a request for media data corresponding to a first media resource identifier as an example, the server is used to provide the media data corresponding to the first media resource identifier.
[0011] In one possible implementation, relaying signaling and / or media data includes: receiving signaling and then sending signaling to the next-hop device, or responding to the signaling and then sending media data to the terminal device.
[0012] Specifically, upon receiving signaling, the next-hop device sends signaling or data to the terminal device, including: receiving a second request from the terminal device, the second request being used to request media data corresponding to the first media resource identifier; if the second network element has already requested (e.g., subscribed to or retrieved) the media data corresponding to the first media resource identifier from the next-hop device, then sending the received requested media data corresponding to the first media resource identifier to the terminal device; if the second network element has not requested (e.g., subscribed to or retrieved) the media data corresponding to the first media resource identifier, then sending a third request to the next-hop device, the third request being used to request the media data corresponding to the first media resource identifier, and sending the received media data corresponding to the first media resource identifier to the terminal device; wherein, the next-hop device is a network element serving the media session of the terminal device, or the next-hop device is a server, the server storing the media data corresponding to the first media resource identifier.
[0013] Optionally, in the above process, after receiving the second request from the terminal device, the process further includes: obtaining the first media resource identifier included in the second request; and determining, based on the first media resource identifier, whether the second network element has requested (e.g., subscribed to or extracted) the media data corresponding to the first media resource identifier from the next-hop device, or whether it has cached the media data corresponding to the first media resource identifier.
[0014] Optionally, in the above process, sending the media data corresponding to the requested first media resource identifier to the terminal device includes: when the second network element receives the downlink media data, it sends the media data to the terminal device through the communication connection with the terminal device.
[0015] Optionally, after receiving the media data corresponding to the requested first media resource identifier, the second network element also caches the received media data.
[0016] In one possible implementation, the communication connection is a media session established over a transport layer protocol connection. The media session is used to transmit signaling and / or media data.
[0017] Optionally, the media session is a Media Transport over QUIC (MoQT) session, which is established over a QUIC connection (i.e., a QUIC protocol layer connection) or a Web transport session, wherein the Web transport session is established over a QUIC connection.
[0018] Optionally, the media session is a Hypertext Transfer Protocol (HTTP) session, which is established over a Transmission Control Protocol (TCP) connection.
[0019] Optionally, the media session is a Session Initiation Protocol (SIP) session, which is established over a Real-Time Transport Protocol (RTP) connection or a Real-Time Transport Control Protocol (RTCP) connection.
[0020] In one possible implementation, the first request is a first session establishment request, which includes a first media resource identifier. The first session establishment request is used to request the establishment of a first session, and the first session is used to transmit media data corresponding to the first media resource identifier. Before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: if it is determined that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and it is determined according to the subscription information of the terminal device that the terminal device is allowed to access the media data corresponding to the first media resource identifier, then the first session is established. The step of determining the second network element in the communication network that provides media session services for the terminal device according to the first request includes: if it is determined that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and it is determined according to the subscription information of the terminal device that the terminal device is allowed to access the media data corresponding to the first media resource identifier, then the second network element in the communication network that provides media session services for the terminal device is determined according to the first request.
[0021] In one possible implementation, the first request further includes a first media resource identifier; before determining the second network element in the communication network that provides media session relay services for the terminal device, the method further includes: determining whether the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and determining whether the terminal device is allowed to access the media data corresponding to the first media resource identifier based on the subscription information of the terminal device; determining the second network element in the communication network that provides media session relay services for the terminal device according to the first request includes: if the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and the terminal device is allowed to access the media data corresponding to the first media resource identifier, then determining the second network element in the communication network that provides media session services for the terminal device according to the first request.
[0022] In one possible implementation, the second network element is a network element that provides media session services for the terminal device in a first manner, and the method further includes: sending the first media resource identifier to the second network element.
[0023] In one possible implementation, the first request is a first session establishment request, which is used to request the establishment of a first session; before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: determining the media data that the terminal device is allowed to access based on the subscription information of the terminal device; if the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then the first session is established; the step of determining the second network element in the communication network that provides media session services for the terminal device based on the first request includes: if the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then determining the second network element in the communication network that provides media session services for the terminal device based on the first request.
[0024] In one possible implementation, before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: determining the media data that the terminal device is allowed to access based on the terminal device's subscription information; determining whether the media data that the terminal device is allowed to access is permitted to be relayed in the communication network; and determining the second network element in the communication network that provides media session services for the terminal device according to the first request, which includes: if the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then determining the second network element in the communication network that provides media session services for the terminal device according to the first request.
[0025] In one possible implementation, the method further includes: after receiving the first request, obtaining at least one media resource identifier, wherein media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network; and sending the at least one media resource identifier to the second network element that provides media session service for the terminal device in a first manner.
[0026] In one possible implementation, the method further includes: after receiving the first request, obtaining the subscription information of the terminal device and at least one media resource identifier, wherein the media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network, and the subscription information indicates the media data that the terminal device is allowed to access; determining, based on the subscription information and the at least one media resource identifier, some or all of the media resource identifiers among the at least one media resource identifier, wherein the media data corresponding to the some or all media resource identifiers is the media data that the terminal device is allowed to access; and sending the some or all media resource identifiers to the second network element that provides media session services for the terminal device in a first manner.
[0027] One possible implementation further includes: receiving at least one media resource identifier, wherein media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network.
[0028] In one possible implementation, the method further includes: sending a digital certificate to the second network element, the digital certificate being used to verify the server providing media data and / or the second network element acting as a media session server.
[0029] In one possible implementation, the indication information includes the identifier of the terminal device, and one or more of the following: service mode indication information; or, caching indication information, which indicates that the second network element caches media data, or the caching indication information indicates that the second network element does not cache media data.
[0030] In one possible implementation, determining the second network element in the communication network that provides media session services for the terminal device includes: determining the second network element in the communication network that provides media session services for the terminal device according to at least one of the following: a cooperation category with a media source party that provides the at least one media resource identifier; or, a cooperation area with the media source party.
[0031] In one possible implementation, the communication connection is a media session established over a transport layer protocol connection, the media session being used to transmit signaling and / or media data.
[0032] Secondly, a communication method is provided, which can be applied to a second network element in a communication network. The method includes: receiving indication information, the indication information instructing the second network element to provide media session service for the terminal device in a first mode or a second mode; if the indication information instructs the second network element to provide media session service for the terminal device in the first mode, then establishing a communication connection with the terminal device according to the request of the terminal device, and relaying the signaling or media data upon receiving signaling or media data; if the indication information instructs the second network element to provide media session service for the terminal device in the second mode, then forwarding the signaling or media data upon receiving signaling or media data.
[0033] In the above implementation, the second network element that provides media session services for the terminal device in the first manner can relay signaling and / or media data to reduce media data transmission latency and thus improve content distribution efficiency.
[0034] In one possible implementation, the indication information instructs the second network element to provide media session services for the terminal device in a first manner. The method further includes: receiving at least one media resource identifier, wherein media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network; the relaying of the signaling or media data upon receiving the signaling or media data includes: receiving a second request, the second request being used to request media data; and sending a third request to a next-hop network element or server based on the second request and the at least one media resource identifier, the third request being used to request the media data, wherein the server stores the media data, and the next-hop network element is a network element that provides media session services for the terminal device in the second manner.
[0035] In one possible implementation, the second request includes a first media resource identifier; the step of sending a third request to the next-hop network element or server based on the second request and the at least one media resource identifier includes: if it is determined, based on the first media resource identifier and the at least one media resource identifier, that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, then sending the third request to the next-hop network element or the server.
[0036] In the above implementation, the second network element that provides media session services for the terminal device in the first manner can determine whether the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network based on the first media resource identifier of the media data requested by the terminal device and at least one media resource identifier that is permitted to be relayed in the communication network. In other words, it can perform authorization management on the media data access of the terminal device based on the media data requested by the terminal device, thereby improving security.
[0037] In one possible implementation, after sending the third request to the next-hop network element or server, the method further includes: receiving media data, wherein the media data is the media data requested by the second request; and sending the data to the terminal device through the communication connection.
[0038] In one possible implementation, after receiving the media data, the method further includes: caching the media data.
[0039] One possible implementation further includes: if the second network element has requested the media data from the next-hop device, then sending the received media data to the terminal device; or, if the second network element has cached the media data, then sending the media data to the terminal device.
[0040] In one possible implementation, the method further includes: receiving a digital certificate used to verify a server providing media data and / or a second network element acting as a media session server; and sending the digital certificate to the terminal device.
[0041] In one possible implementation, the indication information includes the identifier of the terminal device, and one or more of the following: service mode indication information; or, caching indication information, which indicates that the second network element caches media data, or the caching indication information indicates that the second network element does not cache media data.
[0042] In one possible implementation, the communication connection is a media session established over a transport layer protocol connection, the media session being used to transmit signaling and / or media data.
[0043] Thirdly, a communication system is provided, comprising a first network element for implementing the method as described in any of the first aspects above, and a second network element for implementing the method as described in any of the second aspects above.
[0044] Fourthly, a communication apparatus is provided, comprising a unit or module for performing the method as described in any of the first aspects above, or comprising a unit or module for performing the method as described in any of the second aspects above.
[0045] Fifthly, a communication device is provided, comprising: one or more processors configured to perform the method as described in any one of the first aspects above, or to perform the method as described in any one of the second aspects above.
[0046] In a sixth aspect, a readable storage medium is provided, the readable storage medium storing a program or instructions that, when the program or instructions are executed on a device, cause the device to perform the method as described in any one of the first aspects above, or to perform the method as described in any one of the second aspects above.
[0047] In a seventh aspect, a chip or chip system is provided, including a processor for supporting a computer device to implement the method as described in any one of the first aspects above, or to implement the method as described in any one of the second aspects above.
[0048] Eighthly, a computer program product is provided, the computer program product comprising a program; when the computer program is run on a computer, the computer causes the computer to perform the method as described in any one of the first aspects above, or to perform the method as described in any one of the second aspects above. Attached Figure Description
[0049] Figure 1 is a schematic diagram of the content distribution process in related technologies;
[0050] Figure 2 is a schematic diagram of the connection between a MoQT session and QUIC.
[0051] Figure 3 is a schematic diagram of the data encapsulation structure based on MoQT related protocols;
[0052] Figure 4 is a schematic diagram of the architecture of the 5G communication network used in the embodiments of this application;
[0053] Figure 5 is a schematic diagram of the system architecture applied in the embodiments of this application;
[0054] Figure 6 is a schematic diagram of the system architecture for deploying content distribution functionality in a 5G network according to an embodiment of this application;
[0055] Figure 7 is a flowchart illustrating a communication method provided in an embodiment of this application;
[0056] Figure 8 is a flowchart illustrating another communication method provided in an embodiment of this application;
[0057] Figure 9 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0058] Figure 10 is a schematic diagram of another communication device provided in an embodiment of this application. Detailed Implementation
[0059] Currently, CDNs are deployed independently of the communication network. Media data provided by servers within the CDN enters the communication network through a gateway, and the network elements within the communication network transmit the media data to the terminal device. Figure 1 illustrates the above content distribution process.
[0060] As shown in Figure 1, the media data provided by the media source can be cached on multiple servers within the CDN. These servers can be distributed in different geographical locations, thereby providing media data to terminal devices in different geographical locations.
[0061] When a terminal device initiates a media data request, the load balancer in the CND selects the nearest server to the terminal device based on its geographical location, and that server provides the media data to the terminal device. This process typically includes the following steps: the terminal device initiates a data request for content specified under a uniform resource locator (URL); the Domain Name System (DNS) resolves the URL to obtain the address information of the load balancer and notifies the terminal device to send a data request to the load balancer; upon receiving the data request, the load balancer selects a server to provide service to the terminal device based on its geographical location and notifies the terminal device to send a data request to that server; and upon receiving the data request, the server returns the requested media data to the terminal device.
[0062] For terminal devices accessing the mobile communication network, the media data provided by the server is ultimately transmitted to the terminal device through user plane network elements and access network equipment in the mobile communication network.
[0063] Similarly, for terminal devices connected to other types of communication networks, the media data provided by the server is ultimately transmitted to the terminal device through network devices (such as switches) in the communication network to which the terminal device is connected.
[0064] To reduce media data transmission latency and improve transmission efficiency, a solution based on transport layer protocols for low-latency media data transmission has been developed. This solution utilizes MoQ technology for media data distribution and can be applied to scenarios including real-time streaming, gaming, and media conferencing.
[0065] MoQ is an abbreviation for Media over QUIC, which stands for Quick UDP Internet Connections.
[0066] MoQ transport (MoQT) refers to QUIC-based media transport, a technology that leverages QUIC features to improve media data transmission. MoQT is a media transport protocol designed to run on QUIC connections and Web Transport sessions, and it is intended to work with various MoQ streaming formats. These formats define how media data is encoded, packaged, and mapped to MoQT objects, as well as defining strategies for discovery and subscription.
[0067] A session established at the MoQT layer (or based on MoQT-related protocols) can be called a MoQT session. MoQT sessions are typically established based on requests from end devices, and can be established between end devices and network devices.
[0068] Figure 2 illustrates a schematic diagram of a MoQT session and a QUIC connection. As shown in Figure 2, a MoQT session is established over either a connection at the raw QUIC layer (referred to as a QUIC connection) or a session at the Web Transport layer (referred to as a Web Transport session), while a Web Transport session is established over a QUIC connection.
[0069] MoQT sessions are used to transmit signaling and / or media data. Specifically, the MoQT layer protocol defines the signaling transmission mechanism, which may include, for example, subscription requests, fetch requests, and announcement messages. The MoQT layer protocol also defines the data transmission mechanism, based on which media data can be mapped to a QUIC connection to form a QUIC stream (or QUIC data packet), which is then transmitted via a QUIC connection or a WebTransport session.
[0070] Figure 3 illustrates the data encapsulation structure based on MoQT-related protocols. As shown in Figure 3, a MoQ frame includes a MoQ frame header and a MoQ frame payload. The MoQ frame payload can carry MoQ objects or control information. A MoQ object is an addressable unit consisting of the smallest byte sequence processed by the MoQT layer; it can also be called a MoQT basic data element.
[0071] Encapsulating a MoQ frame yields a QUIC frame, which includes a QUIC frame header. The MoQ frame serves as the payload of the QUIC frame. Encapsulating a QUIC frame further yields a QUIC packet, which includes a QUIC packet header. The QUIC frame serves as the payload of the QUIC packet. Encapsulating a QUIC packet yields a UDP datagram, which includes a UDP datagram header. The QUIC packet serves as the payload of the UDP datagram.
[0072] UDP packets with the above structure can be transmitted through a MoQT session.
[0073] The MoQ transmission mechanism involves some technical terms and media data request methods. To better understand the embodiments of this application, the technical terms related to MoQ and media data request methods are briefly explained below.
[0074] MoQ Namespaces: MoQ namespaces divide media resources into isolated groups. Media resource names within the same namespace are unique. MoQ namespaces are uniquely identified by a namespace ID. A typical namespace ID is an ordered N-tuple of bytes (N is an integer greater than or equal to 1). For example, one namespace ID might include the following bytes: "example.com", "meeting=123", and "participant=100"; another example namespace ID might include the following bytes: "example.com", "meeting=123", and "participant=200".
[0075] Media resources can be understood as content assets, including data such as text, images, audio, and video, as well as metadata and copyright information describing this data. In this embodiment, media resources can be referred to as media data.
[0076] MoQ Tracks: A MoQ track consists of a series of MoQ groups, uniquely identified by the MoQ namespace and the track name, and represents the minimum subscribed content. A MoQ track can be uniquely identified within the MoQ namespace using a track ID. A typical form of a MoQ track can also be expressed using a uniform resource identifier (URI). In some embodiments of this application, the MoQ track refers to the entirety of the MoQ namespace and the track name.
[0077] MoQ Object: A MoQ object is an addressable unit consisting of the smallest sequence of bytes processed by the MoQT protocol. It can also be called a basic MoQT data element, and its content cannot be changed during MoQ transmission and distribution. The MoQ object is carried in the MoQ frame payload portion of the MoQ frame, and the MoQ frame header of the MoQ frame is visible to the relay.
[0078] MoQ Groups: A MoQ group consists of an ordered sequence of MoQ objects. One or more MoQ groups constitute a MoQ topic. MoQ Subgroups are a more refined form of grouping mapping, which is not limited in this application.
[0079] Publisher: A publisher generally refers to a server. A publisher can process requests sent by terminal devices (or clients) and send the MoQ object of the requested MoQ topic to the terminal device.
[0080] Subscriber: A subscriber generally refers to a client. Subscribers can initiate subscription requests for MoQ topics of interest and receive those MoQ topics (i.e., related media data).
[0081] Subscribers can obtain MoQ objects in the following two ways:
[0082] Method 1: Subscribe: The subscriber sends a subscription request to the publisher to request to subscribe to the latest MoQ object of the MoQ topic.
[0083] Method 2: Fetch: The subscriber sends a fetch request message to the publisher to request the published MoQ objects of the MoQ topic.
[0084] It should be understood that the naming of the technical terms related to MoQ described above is not limited in the embodiments of this application.
[0085] Currently, as shown in Figure 1, CDNs are built outside of the communication network, resulting in significant media data transmission latency. Although related technologies can distribute media data based on MoQ, the lack of a media data relay solution within the communication network still leads to substantial media data transmission latency.
[0086] Therefore, embodiments of this application provide a communication method and related apparatus for implementing the method. Through these embodiments, media data relay can be implemented in a communication network.
[0087] Here, "relay" can be understood as a method for distributing / transmitting media data. The media data distribution / transmission method provided in this application embodiment can enable network elements in a communication network to provide media data distribution / transmission functions. Specifically, a first network element in the communication network can designate one or more second network elements for media data transmission from a terminal device. These second network elements serve the media session of the terminal device, allowing them to process signaling / media data transmitted through the media session. For example, the second network element can handle media data requests (e.g., subscription or retrieval), cache media data requested by the terminal device, and send media data to the terminal device.
[0088] The communication network in this application embodiment can be a mobile communication network or a fixed (access) network. The mobile communication network can be a terrestrial communication network (e.g., a cellular communication network, Wi-Fi network) or a non-terrestrial communication network; this application does not impose any restrictions.
[0089] The mobile communication network can be, for example, a 4G network, a 5G network, or a future evolution network. Taking a 5G network as an example, Figure 4 illustrates an architecture of a 5G network defined by the 3rd Generation Partnership Project (3GPP).
[0090] Figure 4 illustrates the network function entities that may be included in a 5G network, and the interfaces between these entities. A network function entity is a processing function in the network adopted or defined by 3GPP, possessing specific functions and interfaces defined by 3GPP. Network function entities can be implemented as network elements in the form of dedicated hardware plus software instances, or they can exist as virtualized function instances on appropriate platforms (such as cloud infrastructure).
[0091] In this embodiment, the network functional entity can also be replaced by network function, functional entity, network entity, or network element, all of which have the same meaning. The following description uses a network element as an example.
[0092] As shown in Figure 4, the main network elements included in a 5G network are: user equipment (UE, also known as terminal equipment), radio access network (RAN), user plane function (UPF), data network (DN), access and mobility management function (AMF), session management function (SMF), policy control function (PCF), application function (AF), network slice selection function (NSSF), authentication server function (AUSF), unified data management (UDM), etc. It may also include unified data repository (UDR) and network exposure function (NEF). UDR and NEF are not shown in the figure.
[0093] Figure 4 illustrates the interaction relationships between network elements and their corresponding interfaces. For example, the UE and AMF can interact through the N1 interface, which is a non-access stratum (NAS) interface. The interactions between other network functional entities are similar and will not be elaborated further. Some interfaces can be implemented using service-oriented interfaces.
[0094] UE, (R)AN, UPF, and DN are generally referred to as user plane network elements. User data traffic can be transmitted through packet data unit (PDU) sessions established between the UE and DN, and the transmission passes through (R)AN and UPF. Other network elements (such as AMF, SMF, PCF, etc.) are called control plane network elements, which are mainly responsible for authentication and authorization, registration management, session management, mobility management, and policy control, thereby achieving reliable and stable transmission of user plane traffic.
[0095] The following is a brief introduction to the functions of network elements in 5G networks.
[0096] The UE can be a handheld terminal, laptop computer, subscriber unit, cellular phone, smartphone, wireless data card, personal digital assistant (PDA) computer, tablet computer, wireless modem, handheld device, laptop computer, cordless phone, wireless local loop (WLL) station, machine type communication (MTC) terminal, or other device capable of accessing the network. The terminal device communicates with the access network equipment using some form of air interface technology.
[0097] RAN equipment: Primarily responsible for radio resource management, Quality of Service (QoS) management, data compression, and encryption on the air interface side. RAN equipment can include various types of base stations, such as macro base stations, micro base stations (also known as small cells), relay stations, and access points. The name of the equipment with base station functionality may differ depending on the system employing different radio access technologies. For example, in 5G systems it is called gNB; in Long Term Evolution (LTE) systems it is called evolved Node B (eNB or eNodeB); and in 3G systems it is called Node B, etc.
[0098] AMF (Access Controller Function): As a core network function, it is mainly responsible for signaling processing, such as access control, mobility management, attach and detach, and gateway selection. When AMF provides services to a session in a terminal device, it provides control plane storage resources for that session, as well as storing the session identifier and the SMF identifier associated with the session identifier.
[0099] SMF: Responsible for user plane function selection, user plane function redirection, Internet Protocol (IP) address allocation, bearer establishment, modification and release, and QoS control.
[0100] UPF: Responsible for forwarding and receiving user data in terminal devices. It can receive user data from the data network and transmit it to the terminal device through the access network equipment; UPF can also receive user data from the terminal device through the access network equipment and forward it to the data network. The transmission resources and scheduling functions that provide services to the terminal device in UPF are managed and controlled by SMF.
[0101] PCF: Primarily supports providing a unified policy framework to control network behavior, provides policy rules to the control layer network functions, and is also responsible for obtaining user subscription information related to the policy.
[0102] AUSF: Primarily provides authentication functions, supporting authentication for both 3GPP access and Non-3GPP access. For details, please refer to 3GPP TS 33.501.
[0103] NEF primarily supports secure interaction between 3GPP networks and third-party applications. NEF can securely expose network capabilities and events to third parties to enhance or improve application service quality. Similarly, 3GPP networks can securely obtain relevant data from third parties to enhance network intelligent decision-making. At the same time, this network function supports recovering structured data from a unified database or storing structured data in a unified database.
[0104] UDR: Primarily responsible for storing structured data, including contract data, policy data, externally exposed structured data, and application-related data.
[0105] AF: Primarily supports interaction with the 3GPP core network to provide services, such as influencing data routing decisions, policy control functions, or providing third-party services to the network side.
[0106] Referring to Figure 5, a schematic diagram of a system architecture provided in an embodiment of this application is shown. This system architecture includes terminal devices, a communication network, and a server for providing media data.
[0107] The terminal devices in the system architecture shown in Figure 5 can be terminal devices that can access mobile communication networks or terminal devices that can access fixed networks. For example, terminal devices can be: mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, smart home devices, mobile stations (MS), subscriber units, cellular phones, smartphones, wireless data cards, personal digital assistant (PDA) computers, handsets, laptop computers, virtual reality devices, augmented reality devices, etc. This application does not limit the type of terminal device.
[0108] Terminal devices typically include communication modules, circuits, or chips that perform corresponding communication functions, and can also be configured with program instructions for performing those functions, such as having a client application installed.
[0109] The terminal device can request media data (e.g., subscribe to or retrieve media data) and receive media data. These functions of the terminal device can be implemented by a client application within the terminal device. For example, the client application can initiate a request to subscribe to media data for a MoQ topic. In this embodiment, the terminal device, client, and client application can be interchanged.
[0110] The server in the system architecture shown in Figure 5 can provide media data. This server can be a media origin server or a server providing media data services within a carrier network (such as a CDN). The media origin server is the initial publisher of the media data (e.g., a MoQ object for a specific MoQ topic), and could be, for example, the source website of the media origin or a CDN.
[0111] In the system architecture shown in Figure 5, the first network element can determine the network element in the communication network that provides media session services for the terminal device. In other words, for a given terminal device, the first network element can select one or more network elements in the communication network to which it belongs, and these one or more network elements can provide media session services for the terminal device.
[0112] This media session is a transport layer protocol-based media session, which can be established over a transport layer connection. This media session can be used to transmit signaling and / or media data.
[0113] Optionally, the transport layer protocol can be QUIC, or Transport Control Protocol (TCP), or Real-Time Transport Protocol (RTP), or Real-Time Transport Control Protocol (RTCP), etc. Correspondingly, if the transport layer protocol is QUIC, the transport layer media session is a MoQT session, which is established over a QUIC connection or a Web Transport session; if the transport layer protocol is TCP, the transport layer media session is a Hypertext Transfer Protocol (HTTP) session, which is established over a TCP connection; if the transport protocol is RTP or RTCP, the transport layer media session is a Session Initiation Protocol (SIP) session, which is established over an RTP connection or an RTCP connection.
[0114] In some embodiments, media sessions may be established based on requests from terminal devices.
[0115] In some embodiments, media sessions can be established between a terminal device and a network element that provides media session services for the terminal device.
[0116] The first network element is a control plane network element. For example, taking a 5G system or a future evolved communication system as an example, the first network element can be a control plane functional entity or a management plane functional entity; taking a fixed network as an example, the first network element can be a software-defined networking-control (SDNC) functional entity or a management plane functional entity; taking a Wi-Fi network as an example, the first network element can be a management plane functional entity or an access control (AC), etc.
[0117] Since the first network element can implement the above-mentioned control functions, in some embodiments of this application, the first network element can also be referred to as the media service control function. For example, taking MoQ as an example, the first network element can be referred to as the MoQ service control function (MCF).
[0118] The second network element in the system architecture shown in Figure 5 is a network element that can provide media session services for terminal devices. In this embodiment, for clarity, the network element that provides media session services for terminal devices is referred to as the second network element.
[0119] The second network element is a user plane network element. For example, in a 5G system or a future evolved communication system, the second network element can be a user plane network element; in a 4G system, the second network element can be a serving gateway (SGW) / packet gateway (PGW); in a fixed network, the second network element can be a router; in a Wi-Fi system, the second network element can be an access point (AP) or AC.
[0120] Since the second network element can transmit media data, in some embodiments of this application, the second network element can also be referred to as a media service plane function. For example, taking MoQ as an example, the second network element can be referred to as a MoQ service plane function (MPF).
[0121] The media session service provided by the second network element is relative to the terminal device. For example, a network element can provide media session services to the first terminal device, but not to the second terminal device. For instance, in MoQ, a network element is the relay MPF for the first terminal device, but not for the second terminal device.
[0122] It should be understood that this application does not impose any restrictions on the naming of the first network element and the second network element.
[0123] In some embodiments of this application, the network element providing media session services for the terminal device can provide services in a first mode or a second mode. A network element providing media session services for the terminal device in the first mode may also be referred to as having a first role; that is, a network element with a first role provides media session services for the terminal device in the first mode. Similarly, a network element providing media session services for the terminal device in the second mode may also be referred to as having a second role; that is, a network element with a second role provides media session services for the terminal device in the second mode.
[0124] A network element may provide media session services for different terminal devices in different ways. For example, a network element may provide media session services for a first terminal device in a first way, and may also provide media session services for a second terminal device in a second way.
[0125] The first network element can specify whether the second network element provides media session services to the terminal device in the first manner or in the second manner.
[0126] The first and second methods will be explained below.
[0127] (i) The second network element provides media session services to the terminal device in the first manner.
[0128] (1) When the second network element provides media session services for the terminal device in the first mode, the second network element can relay signaling and / or media data, and establish a communication connection with the terminal device.
[0129] In one possible implementation, relaying signaling and / or media data may include: receiving signaling and then sending signaling to the next-hop device, or responding to the signaling and then sending media data to the terminal device.
[0130] Specifically, when a second network element providing media session services to a terminal device in the first manner receives a media data request from the terminal device, if it determines that the second network element has already requested the media data from a next-hop device, then the second network element can receive the requested media data and send the received media data to the terminal device. If it determines that the second network element has not yet requested the media data, then it sends a data request to the next-hop device to request the media data and sends the received media data to the terminal device. The next-hop device can be another network element providing media session services to the terminal device, or it can be a server providing the media data.
[0131] (2) Optionally, the second network element that provides media session services for the terminal device in the first manner may also cache the received media data.
[0132] (3) When the second network element provides media session services for the terminal device in the first mode, the second network element can establish a communication connection with the terminal device.
[0133] The communication connection may be a media session built on top of a transport layer protocol connection, which may transmit signaling and / or media data.
[0134] For example, the media session may be a MoQT session, an HTTP session, or a SIP session, and this application does not limit it.
[0135] (4) Optionally, when the second network element provides media session services for the terminal device in the first manner, the second network element may perform transport layer security authentication on the terminal device (or authorize the terminal device's media resource access request).
[0136] Specifically, after receiving a data request from a terminal device, the second network element can determine whether the media data requested by the terminal device is permitted to be relayed in the communication network, or in other words, whether the communication network has a cooperative relationship with the media source providing the media data. If the determination result is "yes", the authorization is successful or authorized; if the determination result is "no", the authorization fails or is not authorized.
[0137] (ii) The second network element provides media session services to the terminal device in a second manner
[0138] When the second network element provides media session services for the terminal device in the second manner, the second network element can forward signaling and / or media data.
[0139] In one possible implementation, forwarding signaling and / or media data may include: the second network element sending the received media data or signaling to the next-hop device.
[0140] Specifically, when the second network element receives downlink signaling or media data, it sends the signaling or media data to the next-hop device. The next-hop device can be another network element serving the media session of the terminal device, or the next-hop device can be the terminal device itself.
[0141] When the second network element receives the uplink signaling, it forwards the signaling to the next-hop device. This next-hop device could be another network element serving the media session of the terminal device, or it could be a server. For example, if the signaling requests media data corresponding to the first media resource identifier, the server would provide the media data corresponding to the first media resource identifier.
[0142] Optionally, the second network element providing media session services to the terminal device in the second manner can also cache the received media data.
[0143] In one possible implementation, for a terminal device, the network element serving in the first mode is closest to the terminal device compared to the network element serving in the second mode, and can provide the first-hop service to the terminal device. Accordingly, the network element serving in the first mode can be called an edge relay network element, and the network element serving in the second mode can be called a non-edge relay network element. For a given terminal device, among all the network elements serving the media session of that terminal device, the non-edge relay network element can be the last network element where uplink media data leaves the communication network, or the first network element where downlink media data enters the communication network, or it can be the network element in the middle position among all the network elements.
[0144] In one possible implementation, for a terminal device, if there is only one network element serving the media session of the terminal device, then the network element is designated to serve the media session of the terminal device in a first manner; if there are multiple network elements serving the media session of the terminal device, then one of the multiple network elements is designated to serve the media session of the terminal device in the first manner, and the other network elements are designated to serve the media session of the terminal device in a second manner.
[0145] In the system architecture shown in Figure 5 above, for terminal devices, the communication network may also include one or more network elements (not shown in the figure) for providing media session pass-through services for the terminal devices.
[0146] In this embodiment of the application, the first network element and the second network element can be implemented by hardware or by a combination of hardware and software.
[0147] In one possible implementation, the first network element can be independent of other network elements in the communication network, but it can interact with other network elements in the communication network.
[0148] In another possible implementation, the first network element may include a first functional entity and a second functional entity. That is, the first functional entity and the second functional entity are housed in the same hardware device, and the first functional entity and the second functional entity can interact with each other. This hardware device is called the first network element. The first functional entity can implement the functions of the first network element described above, and the second functional entity can implement the functions of a control plane network element in the communication network, such as session management functions.
[0149] Similarly, the second network element can be independent of other network elements in the communication network, or it can include two functional entities, one of which is used to implement the functions of the second network element, and the other functional entity can implement the functions of the user plane network element in the communication network.
[0150] The following describes the system architecture applied in the embodiments of this application, taking the deployment of content distribution function in a 5G network as an example.
[0151] Taking MoQ as an example, Figure 6 illustrates a system architecture diagram for deploying media data relay functionality in a 5G network. In this system architecture, the first network element is represented as SMF / MCF, meaning it is implemented by combining SMF and MCF into a single device; the second network element is represented as relay MPF. Depending on the method of serving media sessions for terminal devices, the relay MPF can include edge relay MPF and non-edge relay MPF. Edge relay MPF can be implemented by combining UPF and relay function entities into a single device, while non-edge relay MPF can be implemented by combining UPF and forwarding function entities into a single device.
[0152] It should be understood that the system architecture shown in Figure 6 is described using the SMF / MCF as an example to select one edge relay MPF and one non-edge relay MPF for the terminal device. In other scenarios, for a terminal device, the SMF / MCF can select more non-relay MPFs for the terminal device, or it may select only one relay MPF. This application does not impose any restrictions on this.
[0153] It should be understood that the system architecture shown in Figure 6 is described using the UPF as an example in the relay MPF. In other embodiments, the user plane function entity in the relay MPF can be the RAN. That is, the relay / forwarding function can be deployed on the RAN to form a MoQ service radio access network (MRAN) device.
[0154] Based on the system architecture shown in Figure 5 or Figure 6 above, this application embodiment provides a communication method flow. Through this flow, the first network element can select a second network element as the media session service provider for the terminal device.
[0155] In one possible implementation, the first network element stores at least one media resource identifier. The media data corresponding to this media resource identifier is media data that is permitted to be relayed in the communication network to which the first network element belongs. That is, the operator of the communication network has a cooperative relationship with the media source (or content provider) of the media data. The media source permits the network elements in the communication network to provide relay functions for the media data corresponding to these media resource identifiers. For example, the network elements in the communication network can request data from the next-hop device based on the data request of the terminal device, and can cache media data, etc.
[0156] First Network Element can obtain at least one of the above media resource identifiers through the following methods:
[0157] Method 1: The first network element sends a request message to the content provider's equipment. The request message is used to request the media resource identifier of the media data that is permitted to be relayed in the communication network to which the first network element belongs. After receiving the request message, the content provider's equipment can send the media resource identifier of the media data that is permitted to be relayed in the communication network to the first network element.
[0158] Optionally, the request message sent by the first network element may include the identification information of the communication network or the identification information of the operator.
[0159] Optionally, the first network element may send the request message after the device is started, or based on the administrator's instructions; this application does not impose any restrictions.
[0160] Optionally, the content provider may determine the media resource identifier of the media data licensed to be relayed in the communication network based on the following strategies: The content provider determines the media resource identifier of the media data licensed to be relayed in the communication network based on the type of cooperation with the communication network operator; or, the content provider determines the media resource identifier of the media data licensed to be relayed in the communication network based on the type of communication network (e.g., mobile communication network or fixed communication network), for example, due to the higher bandwidth of fixed communication networks, media resource identifiers for media data with higher bandwidth requirements may be licensed; or, the content provider determines the media resource identifier of the media data licensed to be relayed in the communication network based on the performance of the communication network, for example, for communication networks with high bandwidth, media resource identifiers for media data with higher bandwidth requirements may be licensed. It should be understood that this application does not limit the above strategies.
[0161] Method 2: The first network element receives at least one media resource identifier sent by the content provider's device.
[0162] In other words, a content provider can proactively send the media resource identifier of the media data it permits to be relayed in the communication network to which the first network element belongs. For example, when a content provider updates its cooperation policy with the communication network operator, it can proactively send the media resource identifier of the media data it permits to be relayed in the communication network to which the first network element belongs. The first network element can then update its previously stored media resource identifier with the currently received media resource identifier.
[0163] Method 3: Pre-configure the above media resource identifier on the first network element, for example, by manually configuring the above media resource identifier.
[0164] It should be understood that the above are merely examples illustrating several possible ways to configure media resource identifiers on the first network element, and this application does not impose any limitations on them.
[0165] In one possible implementation, the aforementioned media resource identifier can be a namespace identifier or a theme identifier. The theme identifier has a smaller resource granularity than a namespace. Taking MoQ as an example, a MoQ theme is a whole composed of the MoQ namespace and the MoQ theme identifier (Track ID). For instance, since a typical form of a theme is expressed using a URI / domain name, the aforementioned media resource identifier can be the media source URI / domain name.
[0166] In one possible implementation, the at least one media resource identifier can be stored as a list of media resource identifiers. This application does not impose any restrictions on the data structure of the at least one media resource identifier.
[0167] In one possible implementation, the first network element also stores a digital certificate, which can be used to verify the server providing media data, and / or to verify the second network element that acts as a media session server.
[0168] FirstNetElement can obtain this digital certificate through the following methods:
[0169] Method 1: First Network Element applies for the digital certificate from a Certificate Authority (CA).
[0170] Optionally, the first network element may initiate a digital certificate application process after joining the network, after startup, or based on instructions. This application does not restrict the digital certificate application process.
[0171] Method 2: Other devices in the communication network apply for the digital certificate from the CA and then send the digital certificate to the first network element.
[0172] It should be understood that the above are merely examples illustrating several possible methods of obtaining digital certificates, and this application does not limit them.
[0173] In one possible implementation, a media data transmission policy can be configured on the terminal device, which specifies that uplink media data can be transmitted via a PDU session.
[0174] This policy can be configured for terminal devices in the following ways:
[0175] Method 1: Configuration is provided to the terminal device by the network side. For example, the first network element or PCF can send the configuration to the terminal device via the control plane (such as NAS) or user plane.
[0176] Method 2: Configure it in advance in the application layer of the terminal device.
[0177] Method 3: Configure manually on the terminal device. For example, an application on the terminal device can provide a system settings interface containing controls for implementing this configuration function. Users can use these controls to perform the above configuration operations. For example, by selecting a control (or a switch control), users can choose between two options. Selecting one option indicates that uplink media data can be transmitted through the PDU session, while selecting the other option indicates that uplink media data can not be transmitted through the PDU session.
[0178] It should be understood that the above are merely examples illustrating several possible media data transmission strategy configurations, and this application does not impose any limitations on them.
[0179] In one possible implementation, the terminal device is configured with mapping information between namespace identifiers and media source URIs / domains. When the terminal device requests media data, it can query this mapping information based on the namespace identifier of the media data to obtain the corresponding media source URI / domain. Then, it can perform a DNS lookup based on the media source URI / domain to obtain the server's IP address, thereby accessing the corresponding server and retrieving the media data from it.
[0180] Optionally, the above-mentioned correspondence information may be sent by the first network element to the terminal device.
[0181] Referring to Figure 7, which is a flowchart illustrating the communication method provided in an embodiment of this application, the figure describes an example of a first network element obtaining at least one media resource identifier through method 1 or method 2 described above. The media resource corresponding to the at least one media resource identifier is permitted to be relayed in the communication network (see step 700).
[0182] As shown in Figure 7, the process may include the following steps:
[0183] Step 701: The first network element receives the first request, which includes the identifier of the terminal device.
[0184] In one possible implementation, the first network element has session management functionality, such as the SMF / MCF in the architecture shown in Figure 6. Based on this architecture, the first request is a first session establishment request sent by the terminal device. In another possible implementation, the first network element does not have session management functionality, but the first network element can communicate with the session management function network element (e.g., SMF). Based on this architecture, after receiving the first session establishment request sent by the terminal device, the session management function network element sends a first request to the first network element. That is, the first session establishment request sent by the terminal device can trigger the first network element to execute subsequent steps of this process. Figure 7 illustrates this using an example where the first network element has session management functionality.
[0185] The aforementioned first session establishment request is used to request the establishment of a first session, which is used to transmit media data.
[0186] Optionally, the first session can be a PDU session.
[0187] In some embodiments, the first session establishment request may include a first media resource identifier in addition to the identifier of the terminal device. Accordingly, the first session established by the request is used to transmit media data corresponding to the first media resource identifier. For example, the first session establishment request may include a data network name (DNN), which contains the first media resource identifier, such as a first media source URI / domain name. As another example, the terminal device may be configured with mapping information between NameSpace identifiers and media source URIs / domain names. When a MoQ application on the terminal device needs to access media resources of MoQ topic A, it can query this mapping information based on the NameSpace identifier corresponding to MoQ topic A to obtain the media source URI / domain name corresponding to that NameSpace identifier, and then carry that media source URI / domain name in the first session establishment request message. It can be understood that this first session is specifically used for transmitting media data corresponding to the first media resource identifier.
[0188] In other embodiments, the first session does not include a media resource identifier. It is understood that all media data permitted to be relayed in the communication network can be transmitted through this first session. Optionally, this first session can be a persistent session. For example, the first session is established during the terminal device's network registration process and remains persistent on the terminal device.
[0189] Taking the first session establishment request as an example, the act of the terminal device sending a PDU session establishment request belongs to the internal implementation of the application layer or the internal implementation of the operating system on the terminal device, and this application does not impose any restrictions. For example, when the MoQ service application on the terminal device needs to access the media data of MoQ topic A, this event triggers the terminal device to send a PDU session establishment request. Optionally, the request includes the media source URI / domain name corresponding to MoQ topic A. As another example, in response to a user's request to access the media data of MoQ topic A, the terminal device sends a PDU session establishment request message. Optionally, this message includes the media source URI / domain name corresponding to MoQ topic A. Yet another example is during the terminal device's power-on and network access process, where the terminal device sends a PDU session establishment request message based on the operating system settings. It can also be automatically triggered by the application layer or by the operating system settings.
[0190] It is understood that the above description is based on the example of the establishment of the first session being initiated by the terminal device. In other possible scenarios, the establishment of the first session may also be initiated by other network elements in the communication network, and this application does not impose any restrictions.
[0191] Step 703: The first network element determines the second network element in the communication network for providing media session services for the terminal device according to the first request.
[0192] This media session is a transport layer protocol-based media session, and for details, please refer to the foregoing embodiments.
[0193] The second network element providing media session services for the terminal device may include a network element providing media session services for the terminal device in a first manner, and may also include a network element providing services for the terminal device in a second manner. When the second network element provides media session services for the terminal device in the first manner, the second network element is used to relay signaling and / or media data, and to establish a communication connection with the terminal device; when the second network element provides media session services for the terminal device in the second manner, the second network element is used to forward signaling and / or media data. The descriptions of providing media session services for the terminal device in the first and second manners can be found in the foregoing embodiments or in the flowchart shown in Figure 8.
[0194] In one possible implementation, the first network element can also determine the caching attribute of the second network element, that is, whether the second network element caches media data. Optionally, for the second network element that provides media session services for the terminal device in the first manner, its caching attribute can be set to cache media data by default.
[0195] In one possible implementation, the first network element can determine the second network element in the communication network that provides media session services for the terminal device, as well as the caching attributes, based on the cooperation category and / or cooperation area with the media source (e.g., the area covered by the access network equipment to which the terminal device connects). Here, the media source refers to the content provider of the media data that can be relayed in the communication network.
[0196] For example, the first network element may select the second network element for the terminal device and determine the caching attributes mainly based on the cooperation category with the media source. Some possible strategies may include:
[0197] - If the cooperation category is Level-1, indicating a basic cooperation relationship, then any second network element within the communication network capable of providing media session services for the terminal device is sufficient. For example, the anchor user plane network element of the first session can be used as the network element providing media session services for the terminal device in the first manner.
[0198] Optionally, there are no special requirements for caching attributes; for example, the caching attribute can be set to not cache media data.
[0199] - If the cooperation category is Level-2, indicating a high-level cooperation relationship, then the second network element serving the media session can be selected for the terminal device according to the strategy corresponding to Level-1. The caching attribute of the second network element can be set to cache media data.
[0200] - If the cooperation category is Level-3, indicating a gold-level cooperation relationship, then the second network element serving the media session for the terminal device can be selected according to the strategy corresponding to Level-2. The caching attribute of the second network element can be set to cache media data. At the same time, a network element located closer to the terminal device can be selected as the second network element serving the media session of the terminal device in the first manner.
[0201] - If the cooperation category is Level-4, indicating a platinum cooperation relationship, then the second network element serving the media session can be selected for the terminal device according to the strategy corresponding to Level-2 or Level-3. The caching attribute of the second network element can be set to cache media data. At the same time, a dedicated network element can be selected as the second network element to serve the media session of the terminal device in the first way.
[0202] - If the cooperation category is Level-5, indicating a diamond cooperation relationship, then the second network element serving the media session for the terminal device can be selected according to the strategy corresponding to Level-2, Level-3 or Level-4. At the same time, an access network device (such as MRAN) can be selected as the second network element to serve the media session of the terminal device in the first manner.
[0203] In another possible implementation, the first network element mainly determines the second network element in the communication network that provides media session services for terminal devices, based on the cooperation area with the media source. Some examples of caching attributes are as follows:
[0204] Example 1: The services provided by terminal devices accessing the first area (or terminal devices accessing through certain access network devices) differ from those provided by terminal devices accessing the second area (or terminal devices accessing through other access network devices). For example, if the wireless signal quality in the first area is higher than that in the second area, then the strategy corresponding to cooperation category Level-4 is adopted for terminal devices accessing the first area, and the strategy corresponding to cooperation category Level-2 is adopted for terminal devices accessing the second area.
[0205] Example 2: In the first region, based on the cooperative relationship with the first media source, the user plane network element deployed in the first region is used to select a second network element that can provide media session services for the terminal device; in the second region, based on the cooperative relationship with the second media source, the user plane network element deployed in the second region is used to select a second network element that can provide media session services for the terminal device.
[0206] It should be understood that the above are only a few possible strategies for selecting a second network element for terminal devices, and this application does not limit them.
[0207] Step 704: The first network element sends an instruction message to the second network element, which instructs the second network element to provide media session service for the terminal device in either the first or the second mode.
[0208] In one possible implementation, the aforementioned indication information includes the identifier of the terminal device, thereby enabling the second network element to know which terminal device it is serving the media session for.
[0209] In one possible implementation, the aforementioned indication information includes service mode indication information, which indicates either a first mode or a second mode, thereby enabling the second network element to determine which mode is used to provide media session service for the terminal device. For example, when the value of the service mode indication information is a first value (e.g., 0), it indicates that the first mode is used to provide media session service for the terminal device; when the value of the service mode indication information is a second value (e.g., 1), it indicates that the second mode is used to provide media session service for the terminal device.
[0210] In one possible implementation, the aforementioned indication information includes cache indication information. This cache indication information instructs the second network element to cache media data, or it instructs the second network element not to cache media data. For example, when the value of the cache indication information is a first value (e.g., 0), it indicates that the cache attribute of the second network element is "cached," meaning that media data is cached; when the value of the cache indication information is a second value (e.g., 1), it indicates that the cache attribute of the second network element is "not cached," meaning that media data does not need to be cached.
[0211] In one possible implementation, for a second network element that provides media session services to a terminal device in the first manner, the instruction information sent to the second network element may not include cache instruction information, because for a second network element that provides media session services to a terminal device in the first manner, its default cache attribute is cached data.
[0212] In one possible implementation, for the second network element providing media session services to the terminal device in the first manner, the following steps may also be included:
[0213] Step 705: The first network element sends at least one media resource identifier to the second network element that provides media session services for the terminal device in the first manner, and the media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network.
[0214] In one possible implementation, at least one media resource identifier sent by the first network element to the second network element is the media resource identifier corresponding to all media data permitted to be relayed in the communication network. In other words, the first network element can send the media resource identifiers of all media data permitted to be relayed in the communication network to the second network element.
[0215] In another possible implementation, the first network element also obtains the subscription information of the terminal device, for example, it can obtain the subscription information of the terminal device from the UDM. This subscription information indicates the media data that the terminal device is allowed to access. For example, the subscription information includes one or more media resource identifiers, indicating that the terminal device is allowed to access the media data corresponding to the one or more media resource identifiers. Based on the subscription information and at least one media resource identifier (i.e., the media resource identifiers corresponding to all media data permitted to be relayed in the communication network), the first network element determines some or all of the media resource identifiers in the at least one media resource identifier. The media data corresponding to the partial or complete media resource identifiers is the media data that the terminal device is allowed to access. The first network element sends the aforementioned partial or complete media resource identifiers to the second network element that provides media session services for the terminal device in the first manner. That is, the first network element can obtain the intersection of the media resource identifiers corresponding to all media data permitted to be relayed in the communication network and the media resource identifiers subscribed by the terminal device, and send the media resource identifiers in the intersection to the second network element.
[0216] In another possible implementation, if the first request contains a first media resource identifier, and the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, then the first network element can send the first media resource identifier to the second network element that provides media session services for the terminal device in the first manner.
[0217] It is understandable that if the first network element identifies multiple second network elements that provide media session services for the terminal device, the first network element sends instruction information to each of the second network elements respectively.
[0218] In one possible implementation, for the second network element providing media session services to the terminal device in the first manner, the following steps may also be included:
[0219] Step 706: The first network element sends a digital certificate to the second network element that provides media session services for the terminal device in the first manner.
[0220] Optionally, the digital certificate can be used to verify the server providing media data. For example, the digital certificate can be sent to the terminal device by the second network element, and the terminal device can verify the legitimacy of the media based on the digital certificate when sending a data request to the server providing media data.
[0221] Optionally, the digital certificate can be used to verify a second network element acting as a media session server. For example, the digital certificate can be sent by the second network element to the terminal device. When the terminal device sends a request to the second network element to establish a communication connection (e.g., a MoQT session), it can use the digital certificate to verify whether the second network element can act as a media session server for the terminal device.
[0222] In some other embodiments, for a second network element that provides media session services for a terminal device in the first manner, the first network element can send an instruction message, at least one media resource identifier, and a digital certificate to the second network element via a message, which is not limited in this application.
[0223] Based on the process shown in Figure 7, the first network element can further determine whether the terminal device is allowed to access media data that is permitted to be relayed in the communication network, and after determining that the terminal device is allowed to access the media data that is permitted to be relayed in the communication network, determine the second network element for the media session service of the terminal device. Specifically, as shown in Figure 7, after step 701, the following steps may also be included:
[0224] Step 702: Based on the terminal device's subscription information and the media resource identifier (i.e., at least one of the above media resource identifiers) of the media data permitted to be relayed in the communication network, determine whether the terminal device allows access to the media data permitted to be relayed in the communication network. If the determination is yes, proceed to the next step 703.
[0225] In one possible implementation, if the first request in step 701 includes a first media resource identifier, then in step 702, if the first network element determines that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and determines that the terminal device is allowed to access the media data corresponding to the first media resource identifier based on the terminal device's subscription information, then the subsequent step 703 can be executed.
[0226] In another possible implementation, if the first request in step 701 does not contain any media resource identifier, then in step 702, the first network element determines the media data that the terminal device is allowed to access based on the terminal device's subscription information. If the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then the subsequent step 703 can be executed.
[0227] In one possible implementation, if the first request in step 701 is a first session establishment request received by the first network element, then if the first network element determines that the terminal device is permitted to access the media data relayed in the communication network, the first network element also responds to the first session establishment request and establishes a first session. Optionally, if the terminal device is not permitted to access the media data relayed in the communication network, the first network element may send a session establishment failure response message to the terminal device, which may include a reason for failure, such as the absence of a corresponding cooperation relationship or the terminal device lacking access rights.
[0228] In another possible implementation, if the first request in step 701 is sent to the first network element after the session management function network element receives the first session establishment request, then if the first network element determines that the terminal device is allowed to access the media data that is permitted to be relayed in the communication network, the session management function network element also responds to the first session establishment request and establishes the first session.
[0229] It is understood that the establishment process of the first session may involve a series of message interaction processes, such as the interaction between the SMF entity in the first network element and the anchor UPF, and the interaction between the SMF entity and the terminal device. This application does not limit this.
[0230] In one possible implementation, after establishing the first session, the first network element can connect the second network element serving the media session of the terminal device into the transmission path corresponding to the first session. For example, the transmission path corresponding to the first session includes network element A and network element C, where network element A can be a user plane network element or an access network device, and network element C can be a user plane network element; network element B is the network element serving the media session of the terminal device. The first network element can insert network element B between network element A and network element C. Specifically, the first network element can send the user plane uplink receive address and tunnel identifier allocated to the terminal device from network element B to network element A, send the user plane uplink receive address and tunnel identifier allocated to the terminal device from network element C to network element B, send the user plane downlink receive address and tunnel identifier allocated to the terminal device from network element B to network element C, and send the user plane downlink receive address and tunnel identifier allocated to the terminal device from network element A to network element B. The first network element can also instruct network element A and network element C to dismantle the original context tunnel between network element A and network element C. Accordingly, the aforementioned network elements can update the first session context information based on the received information.
[0231] The first network element, by connecting in series with the network element that serves the media session of the terminal device in the transmission path corresponding to the first session, can manage the relay network element (i.e., the aforementioned second network element) in the transmission path (or transmission pipe / tunnel) corresponding to the first session.
[0232] Based on the process shown in Figure 7 above, after the first network element identifies the second network element as the media session service provider for the terminal device, and after the second network element receives the instruction information sent by the first network element, it can create context information corresponding to the terminal device. Optionally, this context information uses the identifier of the terminal device as an index, and may specifically include one or more of the following:
[0233] Service mode information is used to indicate whether the first mode or the second mode is used, indicating whether the second network element provides media session services for the terminal device using the first mode or the second mode.
[0234] Caching attribute information, used to indicate whether media data should be cached or not;
[0235] At least one media resource identifier, which is permitted to be relayed in a communication network, and a terminal device is permitted to access media data corresponding to the at least one media resource identifier;
[0236] The identifier of a digital certificate.
[0237] Based on the process shown in Figure 7 above, after the first network element is determined to be the second network element for the media session service of the terminal device, the following steps may also be included: the first network element sends the information of the second network element to the terminal device.
[0238] Optionally, the first network element may send the following information to the terminal device: the identifier of the second network element and service mode indication information.
[0239] Optionally, the first network element can also send the cache attribute information of the second network element to the terminal device.
[0240] Optionally, after receiving the above information, the terminal device can establish context information, which may include the following information: the identifier of the second network element, the service mode indication information of the second network element, the cache attribute information of the second network element, etc.
[0241] Based on the process shown in Figure 7 above, network elements can be designated in the communication network to serve the media session of the terminal device. These network elements can serve the media session of the terminal device in either the first or the second manner, thereby deploying part of the media content distribution function in the communication network, which can reduce media data transmission latency and improve content distribution efficiency.
[0242] In the process shown in Figure 7 above, the first network element designates the network element in the communication network to serve the media session of the terminal device, thereby controlling the behavior of these network elements (i.e., serving the media session of the terminal device in the first or second manner) and controlling the routing and forwarding of these network elements.
[0243] Referring to Figure 8, which is a flowchart illustrating another communication method provided in an embodiment of this application, this process allows the second network element to relay signaling and / or media data and establish a communication connection with the terminal device when providing media session services to the terminal device in a first manner; and to forward signaling and / or media data when providing media session services to the terminal device in a second manner. For simplicity, in this embodiment, the second network element providing media session services to the terminal device in the first manner is referred to as second network element A, and the second network element providing media session services to the terminal device in the second manner is referred to as second network element B.
[0244] As shown in Figure 8, the process may include the following steps:
[0245] Step 801: The second network element A establishes a communication connection with the terminal device based on the request from the terminal device.
[0246] Optionally, the communication connection is a media session established on top of a transport layer protocol connection, which is used to transmit signaling and / or media data.
[0247] In one possible implementation, after receiving relevant information from a first network element sent to a second network element (including second network element A and second network element B), the terminal device can send a second session establishment request to second network element A. The second session request is used to request the establishment of a second session. In response to the second session establishment request, second network element A establishes a second session with the terminal device.
[0248] Optionally, the second session establishment request includes the first media resource identifier, and correspondingly, the second session can be established based on the first media resource identifier.
[0249] Optionally, the second session can be a MoQT session, an HTTP session, or a SIP session, etc., and this application does not impose any restrictions.
[0250] In one possible implementation, during the interaction between the second network element A and the terminal device to establish a second session, the second network element A can send a digital certificate to the terminal device. The terminal device can then initiate a verification process with the certification authority based on the digital certificate to verify whether the digital certificate provided by the second network element A is a digital certificate issued by the certification authority for the media data requested by the terminal device. In other words, it verifies whether the second network element A can act as the server for the media session of the terminal device, thereby ensuring the legitimacy of the second network element A and reducing security risks.
[0251] It is understood that this application does not impose any restrictions on the interaction between the second network element A and the terminal device during the establishment of the second session.
[0252] After the second session is established, the second network element A acts as the server and the terminal device acts as the client, transmitting media data or signaling through the second session.
[0253] It is understood that the establishment process of the aforementioned communication connection (e.g., the second session) can be automatically triggered. For example, after receiving relevant information from the first network element sent to the second network element (including the second network element A and the second network element B) by the terminal device, the terminal device can automatically send a request to the second network element A to establish the communication connection. The establishment process can also be triggered by user operation. For example, a user operation requesting media data corresponding to a media resource identifier can trigger the terminal device to send a request to the second network element A to establish the communication connection. Furthermore, the establishment process can also be triggered by an application program within the terminal device. This application does not impose any limitations.
[0254] Step 802: The terminal device sends a second request to the second network element A. The second request includes a first media resource identifier and is used to request the media data corresponding to the first media resource identifier.
[0255] In one possible implementation, the terminal device may send a second request to the second network element A in response to a user operation (such as a user operation that clicks a media resource link on the user interface).
[0256] For example, taking MoQ as an example, a terminal device can request media data in the following two ways:
[0257] Method 1: Access the MoQT server via a Web Transport session. The MoQT server is identified using an HTTPS URI (HTTPS is an abbreviation for Hypertext Transfer Protocol Secure).
[0258] Method 2: Access the MoQT server via a QUIC connection. The MoQT server is identified using a MoQ URI.
[0259] For example, one format of a MoQ URI is: moq-URI="moq": / / "authority path-abempty["?"query"].
[0260] Optionally, the second request can be a subscription request, used to request the subscription of media data corresponding to the first media resource identifier.
[0261] Optionally, the second request can be a fetch request, used to request the media data corresponding to the first media resource identifier.
[0262] Step 803: After receiving the second request, the second network element A determines whether the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network. If the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, then proceed to step 804.
[0263] In one possible implementation, the second network element A can determine whether the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network based on the second request and at least one media resource identifier (the media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network). Specifically, if the first media resource identifier included in the second request is included in the at least one media resource identifier, then it is determined that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network.
[0264] In some embodiments, if the media data corresponding to the first media resource identifier is not permitted to be relayed in the communication network, the first network element may send a response message to the terminal device rejecting the second request.
[0265] This step allows for transport layer security authentication of the terminal device, or in other words, authorization management of the terminal device's access to media resources.
[0266] Step 804: The second network element A determines whether it has obtained the media data corresponding to the first media resource identifier. If it has obtained the media data corresponding to the first media resource identifier, it proceeds to step 805; if it has not yet obtained the media data corresponding to the first media resource identifier, it proceeds to step 806.
[0267] In one possible implementation, the second network element A can determine whether the media data corresponding to the first media resource identifier has been requested. If it has been requested, the second network element A can receive the media data corresponding to the first media resource identifier, and thus proceed to step 805 to send the media data received by the second network element corresponding to the first media resource identifier to the terminal device. This avoids the need for the server to provide the media data and transmit it to the terminal device through network elements in the communication network, thereby reducing transmission latency and improving media data distribution efficiency.
[0268] Step 805: The second network element A sends the media data corresponding to the received first media resource identifier to the terminal device.
[0269] In one possible implementation, if the second request in step 802 is used to request subscription to media data corresponding to the first media resource identifier, the server can send updated media data to the terminal device each time the media data is updated. Thus, in step 805, once the second network element receives the media data corresponding to the first media resource identifier, it sends the media data to the terminal device.
[0270] Step 806: Second network element A sends a third request to second network element B. The third request includes the first media resource identifier and is used to request the media data corresponding to the first media resource identifier. Second network element B forwards the third request to the server.
[0271] In one possible implementation, the second network element A sends a third request to the next-hop network element or server. This process uses the second network element B as an example of the next-hop device. In other embodiments, if the network element serving the media session for the terminal device only includes the second network element A, then the next-hop device is a server used to store the media data requested by the terminal device.
[0272] Step 807: The second network element B forwards the media data corresponding to the first media resource identifier from the server to the second network element A.
[0273] Step 808: The second network element A caches the media data corresponding to the first media resource identifier received.
[0274] This step is optional. If the caching attribute of the second network element A is set to cache media data, then the second network element A will cache the received media data.
[0275] Step 809: The second network element A sends the media data corresponding to the first media resource identifier received to the terminal device through the communication connection with the terminal device.
[0276] In one possible implementation, after receiving the media data transmitted through the first session, the second network element A encapsulates the media data into a message format that can be transmitted through the second session, and then transmits the re-encapsulated media data to the terminal device through the second session.
[0277] For example, taking the second network element A as an example, which includes a user plane function entity and a relay function entity, the user plane function entity receives media data corresponding to the first media resource identifier transmitted through the first session, and sends the media data to the relay function entity; the relay function entity sends the data to the terminal device through the corresponding MoQT session with the terminal device according to the first media resource identifier.
[0278] In one possible implementation, the second network element A can also send an announcement message containing the media resource identifier of the media data that the second network element A has subscribed to, fetched, or cached, so that the terminal device can know that the second network element A can provide the media resource.
[0279] In one possible implementation, when the second network element A provides media session services for multiple terminal devices, when the multiple terminal devices request media data corresponding to the same media resource identifier, the second network element A can manage the authorization of the multiple terminal devices to access the media data. That is, it can aggregate the authorized subscriptions of the multiple media resources, cache the media data, and share the media data among the multiple terminal devices.
[0280] Based on the process shown in Figure 8 above, the network element that provides media session services for the terminal device in the first manner can relay signaling and / or media data to reduce media data transmission latency and thus improve content distribution efficiency.
[0281] It is understood that, in order to achieve the functions in the above embodiments, the first network element and the second network element include hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, based on the units and method steps of the various examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.
[0282] Figures 9 and 10 are schematic diagrams illustrating possible communication devices provided in embodiments of this application. These communication devices can be used to implement the functions of the first network element or the second network element in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments. In embodiments of this application, the communication device can also be a module (such as a chip) applied to the first network element or the second network element.
[0283] As shown in Figure 9, the communication device 900 includes a processing unit 910 and a transceiver unit 920. The communication device 900 is used to implement the function of the first network element in the method embodiment shown in Figure 7, or the function of the second network element in Figure 7 or Figure 8.
[0284] When the communication device 900 is used to implement the function of the first network element in the method embodiment shown in FIG7: the transceiver unit 920 is used to receive a first request, the first request including the identifier of the terminal device; the processing unit 910 is used to determine, according to the first request, a second network element in the communication network that provides media session services for the terminal device, the media session being a media session based on a transport layer protocol; the processing unit 910 is also used to send indication information to the second network element through the transceiver unit 920, the indication information instructing the second network element to provide media session services for the terminal device in a first mode or a second mode; wherein, when the second network element provides media session services for the terminal device in the first mode, the second network element is used to relay signaling and / or media data, and establish a communication connection with the terminal device; when the second network element provides media session services for the terminal device in the second mode, the second network element is used to forward signaling and / or media data.
[0285] When the communication device 900 is used to implement the function of the second network element in the method embodiment shown in FIG7 or FIG8: the transceiver unit 920 is used to receive indication information, the indication information indicating that the second network element provides media session service for the terminal device in a first mode or a second mode; the processing unit 910 is used to: if the indication information indicates that the second network element provides media session service for the terminal device in a first mode, then establish a communication connection with the terminal device according to the request of the terminal device, and relay the signaling or media data after receiving the signaling or media data; if the indication information indicates that the second network element provides media session service for the terminal device in a second mode, then forward the signaling or media data after receiving the signaling or media data.
[0286] A more detailed description of the processing unit 910 and the transceiver unit 920 can be obtained directly from the description in the method embodiment shown in the relevant drawings, and will not be repeated here.
[0287] As shown in Figure 10, the communication device 1000 includes a processor 1010 and an interface circuit 1020. The processor 1010 and the interface circuit 1020 are coupled to each other. It is understood that the interface circuit 1020 can be a transceiver or an input / output interface. Optionally, the communication device 1000 may further include a memory 1030 for storing instructions executed by the processor 1010, or storing input data required by the processor 1010 to execute instructions, or storing data generated after the processor 1010 executes instructions.
[0288] When the communication device 1000 is used to implement the method shown in FIG7 or FIG8, the processor 1010 is used to implement the function of the processing unit 910, and the interface circuit 1020 is used to implement the function of the transceiver unit 920.
[0289] When the aforementioned communication device is a chip applied to the first network element, the chip implements the functions of the first network element in the above method embodiments. The chip receives information from other modules (such as radio frequency modules or antennas) in the first network element, which is sent to the first network element by the second network element; or, the chip sends information to other modules (such as radio frequency modules or antennas) in the first network element, which is sent to the second network element by the first network element.
[0290] When the aforementioned communication device is a module applied to the second network element, the module implements the functions of the second network element in the above method embodiments. This module receives information from other modules (such as radio frequency modules or antennas) within the second network element, information sent from the first network element to the second network element; or, the module sends information to other modules (such as radio frequency modules or antennas) within the second network element, information sent from the second network element to the first network element. Here, the second network element module can be the baseband chip of the second network element, or it can be a DU or other modules. The DU here can be a DU under an open radio access network (O-RAN) architecture.
[0291] It is understood that the processor in the embodiments of this application may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor may be a microprocessor or any conventional processor.
[0292] This application provides another example of a communication device, which includes at least one processor and at least one memory coupled together. The at least one processor and the at least one memory are used to store instructions. When the instructions are executed by the at least one processor, the communication device performs the methods described in the above embodiments. Taking a communication device including a processor and a memory as an example, as shown in FIG10, the communication device 1000 includes a processor 1010 and a memory 1030. The processor 1010 and the memory 1030 are coupled together. The memory 1030 stores instructions. When the instructions stored in the memory 1030 are executed by the processor 1010, the communication device 1000 performs the methods performed by the terminal device or network device described in the above embodiments.
[0293] The method steps in the embodiments of this application can be implemented in hardware or in software instructions executable by a processor. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. The storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Alternatively, the ASIC can reside in a network device or a terminal device. The processor and storage medium can also exist as discrete components in a network device or a terminal device.
[0294] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium may be a volatile or non-volatile storage medium, or may include both types of storage media.
[0295] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0296] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally indicates an "or" relationship between the preceding and following related objects; in the formulas of this application, the character " / " indicates a "division" relationship between the preceding and following related objects. "Including at least one of A, B, and C" can mean: including A; including B; including C; including A and B; including A and C; including B and C; including A, B, and C.
[0297] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application. The order of the process numbers described above does not imply the order of execution; the execution order of each process should be determined by its function and internal logic.
Claims
1. A communication method, characterized in that, The method, applied to a first network element in a communication network, includes: Receive a first request, wherein the first request includes the identifier of the terminal device; Based on the first request, a second network element in the communication network is determined to provide media session services for the terminal device, wherein the media session is a media session based on a transport layer protocol; The system sends an instruction message to the second network element, which instructs the second network element to provide media session services for the terminal device in a first mode or a second mode. When the second network element provides media session services for the terminal device in the first mode, the second network element is used to relay signaling and / or media data and establish a communication connection with the terminal device. When the second network element provides media session services for the terminal device in the second mode, the second network element is used to forward signaling and / or media data.
2. The method as described in claim 1, characterized in that, The first request is a first session establishment request. The first session establishment request includes a first media resource identifier. The first session establishment request is used to request the establishment of a first session. The first session is used to transmit media data corresponding to the first media resource identifier. Before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: If it is determined that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and it is determined that the terminal device is allowed to access the media data corresponding to the first media resource identifier based on the subscription information of the terminal device, then the first session is established; The step of determining the second network element in the communication network that provides media session services for the terminal device according to the first request includes: If it is determined that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and it is determined that the terminal device is allowed to access the media data corresponding to the first media resource identifier based on the subscription information of the terminal device, then a second network element in the communication network that provides media session services for the terminal device is determined according to the first request.
3. The method as described in claim 1, characterized in that, The first request also includes a first media resource identifier; Before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: Determine whether the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and determine whether the terminal device is allowed to access the media data corresponding to the first media resource identifier based on the subscription information of the terminal device; The step of determining the second network element in the communication network for providing media session relay services to the terminal device according to the first request includes: If the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, and the terminal device is allowed to access the media data corresponding to the first media resource identifier, then according to the first request, a second network element in the communication network is determined to provide media session services for the terminal device.
4. The method as described in claim 2 or 3, characterized in that, The second network element is a network element that provides media session services for the terminal device in the first manner, and the method further includes: Send the first media resource identifier to the second network element.
5. The method as described in claim 1, characterized in that, The first request is a first session establishment request, which is used to request the establishment of a first session; Before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: The media data that the terminal device is allowed to access is determined based on the terminal device's subscription information; If the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then the first session is established; The step of determining the second network element in the communication network that provides media session services for the terminal device according to the first request includes: If the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then, according to the first request, a second network element in the communication network is determined to provide media session services for the terminal device.
6. The method as described in claim 1, characterized in that, Before determining the second network element in the communication network that provides media session services for the terminal device, the method further includes: The media data that the terminal device is allowed to access is determined based on the terminal device's subscription information; Determine whether the media data that the terminal device is allowed to access is permitted to be relayed in the communication network; The step of determining the second network element in the communication network that provides media session services for the terminal device according to the first request includes: If the media data that the terminal device is allowed to access is permitted to be relayed in the communication network, then, according to the first request, a second network element in the communication network is determined to provide media session services for the terminal device.
7. The method according to any one of claims 1-6, characterized in that, The method further includes: Upon receiving the first request, at least one media resource identifier is obtained, and the media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network; Send the at least one media resource identifier to the second network element that provides media session services for the terminal device in a first manner.
8. The method according to any one of claims 1-6, characterized in that, The method further includes: Upon receiving the first request, the terminal device obtains its subscription information and at least one media resource identifier. The media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network. The subscription information indicates the media data that the terminal device is allowed to access. Based on the contract information and the at least one media resource identifier, determine some or all of the media resource identifiers in the at least one media resource identifier, and the media data corresponding to the at least one or all media resource identifiers is the media data that the terminal device is allowed to access; Send some or all of the media resource identifiers to the second network element that provides media session services for the terminal device in the first manner.
9. The method according to any one of claims 2-8, characterized in that, Also includes: Receive at least one media resource identifier, and the media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network.
10. The method according to any one of claims 1-9, characterized in that, The method further includes: A digital certificate is sent to the second network element, the digital certificate being used to verify the server providing media data and / or the second network element acting as a media session server.
11. The method according to any one of claims 1-10, characterized in that, The indication information includes the identifier of the terminal device, and one or more of the following: Service method instructions; or, The cache indication information indicates that the second network element caches media data, or that the cache indication information indicates that the second network element does not cache media data.
12. The method according to any one of claims 1-11, characterized in that, The second network element that determines the media session service for the terminal device in the communication network includes: The second network element in the communication network that provides media session services for the terminal device is determined according to at least one of the following: The cooperation category with the media source party that provides the at least one media resource identifier; or, The area of cooperation with the aforementioned media source.
13. The method according to any one of claims 1-12, characterized in that, The communication connection is a media session established on top of a transport layer protocol connection, and the media session is used to transmit signaling and / or media data.
14. A communication method, characterized in that, The method, applied to a second network element in a communication network, includes: Receive instruction information, the instruction information instructing the second network element to provide media session service for the terminal device in a first mode or a second mode; If the indication information instructs the second network element to provide media session service for the terminal device in a first manner, then a communication connection is established with the terminal device according to the request of the terminal device, and the signaling or media data is relayed after receiving the signaling or media data; If the indication information instructs the second network element to provide media session services for the terminal device in a second manner, then upon receiving signaling or media data, the signaling or media data is forwarded.
15. The method as described in claim 14, characterized in that, The instruction information instructs the second network element to provide media session services for the terminal device in a first manner, and the method further includes: Receive at least one media resource identifier, wherein the media data corresponding to the at least one media resource identifier is permitted to be relayed in the communication network; The step of relaying the signaling or media data upon receipt includes: Receive a second request, which is used to request media data; Based on the second request and the at least one media resource identifier, a third request is sent to the next-hop network element or server. The third request is used to request the media data. The server stores the media data. The next-hop network element is a network element that provides media session services for the terminal device in the second manner.
16. The method as described in claim 15, characterized in that, The second request includes a first media resource identifier; The step of sending a third request to the next-hop network element or server based on the second request and the at least one media resource identifier includes: If, based on the first media resource identifier and the at least one media resource identifier, it is determined that the media data corresponding to the first media resource identifier is permitted to be relayed in the communication network, then the third request is sent to the next-hop network element or the server.
17. The method as described in claim 15 or 16, characterized in that, After sending a third request to the next-hop network element or server, the process also includes: Receive media data, wherein the media data is the media data requested by the second request; The data is sent to the terminal device through the communication connection.
18. The method as described in claim 17, characterized in that, After receiving the media data, the process also includes: Cache the media data.
19. The method according to any one of claims 15-18, characterized in that, Also includes: If the second network element has requested the media data from the next-hop device, then the received media data is sent to the terminal device. or, If the second network element has the media data cached, then the media data is sent to the terminal device.
20. The method according to any one of claims 14-19, characterized in that, The method further includes: Receive a digital certificate, which is used to verify the server providing media data and / or the second network element acting as a media session server. Send the digital certificate to the terminal device.
21. The method according to any one of claims 14-20, characterized in that, The indication information includes the identifier of the terminal device, and one or more of the following: Service method instructions; or, The cache indication information indicates that the second network element caches media data, or that the cache indication information indicates that the second network element does not cache media data.
22. The method according to any one of claims 14-21, characterized in that, The communication connection is a media session established on top of a transport layer protocol connection, and the media session is used to transmit signaling and / or media data.
23. A communication system, characterized in that, It includes a first network element for implementing the method as described in any one of claims 1-13, and a second network element for implementing the method as described in any one of claims 14-22.
24. A communication device, characterized in that, It includes units or modules for performing the method as described in any one of claims 1-13, or includes units or modules for performing the method as described in any one of claims 14-22.
25. A communication device, characterized in that, include: One or more processors are configured to perform the method as described in any one of claims 1-13, or to perform the method as described in any one of claims 14-22.
26. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed on the device, cause the device to perform the method as claimed in any one of claims 1-13, or the method as claimed in any one of claims 14-22.
27. A chip system, characterized in that, Includes a processor for supporting a computer device in implementing the method as described in any one of claims 1-13, or in implementing the method as described in any one of claims 14-22.
28. A computer program product, characterized in that, The computer program product includes a program; when the computer program is run on a computer, it causes the computer to perform the method as described in any one of claims 1-13, or to perform the method as described in any one of claims 14-22.