A message forwarding method and device

By receiving multicast messages in the multicast user network element and determining whether the terminal is the first terminal to join the multicast group, and requesting the application server to establish a transmission tunnel, the problem of how to send multicast messages to the multicast UPF is solved, and normal forwarding of multicast data and efficient utilization of resources are achieved.

CN114868408BActive Publication Date: 2025-04-08HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202080088338.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-03-18
Publication Date
2025-04-08
Estimated Expiration
2040-03-18

AI Technical Summary

Technical Problem

In the prior art, there is currently a lack of relevant solutions for how to send multicast messages to multicast UPF to achieve normal forwarding of multicast data.

Method used

By receiving messages from the multicast session management network element in the multicast user plane network element, when determining whether the first terminal joins the multicast group, a request is sent to the application server to establish a transmission tunnel between the multicast user plane network element and the application server, and the tunnel is used to send multicast data to the terminals in the multicast group.

Benefits of technology

The normal forwarding of multicast messages is realized, which reduces signaling overhead, avoids sending messages requesting to establish a tunnel to each terminal, and improves resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114868408B_ABST
    Figure CN114868408B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a message forwarding method and device, which relates to the field of communication technology, so as to forward a message of joining a multicast group to a multicast user plane network element through a unicast user plane network element on a user plane, triggering the multicast user plane network element to establish a tunnel for transmitting multicast data with an application server. The method may include: the multicast user plane network element receives a message sent by a unicast user plane network element through a multicast session management network element to instruct a terminal to join a multicast group, and when the terminal is the first terminal to join the multicast group, sends a message to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server; or, the multicast session management network element receives a message indicating that the terminal joins a multicast group, and when the terminal is the first terminal to join the multicast group, sends a message to the multicast user plane network element requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of wireless communications, and in particular to a message forwarding method and apparatus. Background Art

[0002] In a 3rd Generation Partnership Project (3GPP) network, there is a need for multicast communication / groupcast communication. For example, multiple terminals can join the same multicast group and request the same data from a network-side device.

[0003] Currently, a terminal joins a multicast group through a multicast message, such as an Internet Group Management Protocol (IGMP) message, that is used to request to join the multicast group. For example, a terminal sends an IGMP message to a unicast user plane function (UPF) through a PDU session established for it by the network, and the unicast UPF forwards the message to an application server that provides multicast data. After receiving the IGMP message from the unicast UPF, the application server determines that multicast data needs to be sent to the terminal, establishes a connection with the unicast UPF, and sends the multicast data to the terminal through the unicast UPF. In this way, if multiple terminals simultaneously request to join the multicast group, the application server needs to copy the multicast data into multiple copies and send them to multiple terminals in the multicast group through the unicast UPF corresponding to the PDU session of each terminal. This requires the use of more UPFs and occupies more transmission resources.

[0004] To conserve network and air interface transmission resources, and given that multicast services require multiple UEs to share the same UPF, networks can configure a multicast UPF to transmit multicast data to multiple UEs within a multicast group. However, there is currently no solution for sending multicast messages to the multicast UPF, which then establishes a connection with the application server based on the multicast message to ensure proper forwarding of the multicast data. Summary of the Invention

[0005] The embodiments of the present application provide a message forwarding method and apparatus to solve the problem of how to forward a multicast message to a multicast user plane network element.

[0006] To achieve the above objectives, the present invention adopts the following technical solutions:

[0007] In a first aspect, an embodiment of the present application provides a message forwarding method, the method comprising: a multicast user plane network element receives a first message from a multicast session management network element for instructing a first terminal to join a multicast group, the multicast user plane network element is used to transmit multicast data corresponding to the multicast group, the multicast session management network element is used to manage the multicast service corresponding to the multicast group, or the multicast session management network element is a session management network element that manages the multicast user plane network element; if the first terminal is the first terminal to join the multicast group, the multicast user plane network element sends a second message to the application server for requesting to establish a tunnel (tunnel) for transmitting multicast data between the multicast user plane network element and the application server.

[0008] Based on the method described in the first aspect, the multicast user plane network element can receive a message from the multicast session management network element for instructing the terminal to join the multicast group, and when the terminal is the first terminal to request to join the multicast group, it can send a message to the application server, requesting the application server to establish a transmission tunnel between the multicast user plane network element and the application server, and use the transmission tunnel to send multicast data to the terminals in the multicast group, thereby realizing the normal forwarding of multicast data. It provides a forwarding scheme for the message of joining the multicast group from the multicast session management network element to the multicast user plane network element, and from the multicast user plane network element to the application server. At the same time, when the first terminal initiates a request to join the multicast group, it triggers the establishment of a tunnel between the application server and the multicast user plane network element, and the tunnel sends multicast data to the terminals in the multicast group through the multicast user plane network element. There is no need to send a message requesting the establishment of a tunnel between the application server and the multicast user plane network element to each terminal requesting to join the multicast group, thereby reducing signaling overhead.

[0009] In one possible design, in combination with the first aspect, the multicast user plane network element receives a first message from the multicast session management network element, including: the multicast user plane network element receives the first message from the unicast user plane network element through the multicast session management network element, and the unicast user plane network element corresponds to the first terminal.

[0010] Based on this possible design, the unicast user plane network element can send the first message to the multicast session management network element, and the multicast session management network element can send it to the multicast user plane network element. That is, the message requesting to join the multicast group detected by the unicast user plane network element is forwarded to the multicast user plane network element through the multicast session management network element, and then sent to the application server by the multicast user plane network element, ensuring that the user plane message requesting to join the multicast group can be sent to the application server according to the correct forwarding path, thereby realizing the normal forwarding of multicast data.

[0011] In one possible design, in combination with the first aspect or any possible design of the first aspect, the method further includes: the multicast user plane network element determines that the first terminal is the first terminal to join the multicast group.

[0012] Based on this possible design, the multicast user plane network element can judge the terminal requesting to join the multicast group, ensuring that the second message is sent to the application server only when the terminal is the first to join the multicast group, thereby reducing signaling overhead.

[0013] In one possible design, in combination with the first aspect or any possible design of the first aspect, the multicast user plane network element determines that the first terminal is the first terminal to join the multicast group, including: when the context information of the multicast group does not exist locally in the multicast user plane network element, determining that the first terminal is the first terminal to join the multicast group; or, when the context information of the multicast group that exists locally in the multicast user plane network element does not include terminal information, determining that the first terminal is the first terminal to join the multicast group.

[0014] Based on this possible design, the multicast user plane network element can determine whether the first terminal is the first terminal to request to join the multicast group according to the locally stored context information of the multicast group. This determination method is simple and easy to implement.

[0015] In one possible design, in combination with the first aspect or any possible design of the first aspect, the multicast user plane network element also includes: the multicast user plane network element receives a third message from the multicast session management network element for instructing the second terminal to join the multicast group, and the multicast user plane network element sends a second message to the application server, including: the multicast user plane network element sends a second message to the application server.

[0016] Based on this possible design, when a multicast user-plane network element receives a message from two or two terminals requesting to join the same multicast group, the received message can be suppressed, the message initiated by the first terminal can be retained, and the message can be sent to the application server. There is no need to send multiple messages to the application server, thereby reducing signaling overhead and power consumption caused by the multicast user-plane network element sending messages to the application server.

[0017] In one possible design, in combination with the first aspect or any possible design of the first aspect, the first message is an IGMP message, and the second message is an IGMP message or a protocol independent multicast (PIM) message; or, the first message is a multicast listener discovery protocol (MLD) message, and the second message is an MLD message or a PIM message.

[0018] Based on this possible design, the message requesting to join the multicast group can be a multicast protocol message such as an IGMP message or an MLD message, and the message requesting to establish a tunnel between the multicast user plane network element and the application server can be an IGMP message or an MLD message or a PIM message. The message implementation form is flexible and diverse, which increases the application scenarios of this method.

[0019] In one possible design, in combination with the first aspect or any possible design of the first aspect, the multicast user plane network element pre-configures execution rules, and the execution rules include establishing a tunnel with the application server upon receiving the IGMP message from the multicast session management network element; or, establishing a tunnel with the application server upon receiving the MLD message from the multicast session management network element.

[0020] Based on this possible design, execution rules can be preconfigured in the multicast user plane network element, and the message requesting to join the multicast group received from the control plane can be forwarded to the application server according to the execution rules, which is simple and easy.

[0021] In one possible design, in combination with the first aspect or any possible design of the first aspect, the multicast user plane network element also includes: the multicast user plane network element receives a fourth message from the multicast session management network element for instructing the third terminal to leave the multicast group; if the third terminal is the last terminal to leave the multicast group, the multicast user plane network element sends a request to the application server to release the tunnel for transmitting multicast data.

[0022] Based on this possible design, when the multicast user plane network element learns that the last terminal among the terminals that have joined the multicast group has left the multicast group, it can send a request to the application server to request the release of the tunnel for transmitting multicast data, release transmission resources, and improve resource utilization.

[0023] In one possible design, in combination with the first aspect or any possible design of the first aspect, establishing a tunnel for transmitting multicast data between a multicast user plane network element and an application server includes: establishing an N6 multicast distribution tree with the application server as the data source, and connecting the multicast user plane network element to the N6 multicast distribution tree related to the multicast group, wherein N6 is the interface between the multicast user plane network element and the data network (DN), the DN is connected to the application server, and the multicast distribution tree is the forwarding path between the sender and receiver of the multicast data.

[0024] Based on this possible design, the multicast user plane network element and application server can be configured as the sender and receiver of multicast data through the N6 multicast distribution tree. The multicast data can be sent to the multicast user plane network element using the N6 multicast distribution tree, and then sent to the terminals in the multicast group by the multicast user plane network element. This is simple and easy.

[0025] In a second aspect, the present application provides a communication device, which may be a multicast user plane network element or a chip or system on chip in a multicast user plane network element. The communication device may implement the functions performed by the communication device in the first aspect or any possible design of the first aspect. The functions may be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions. For example, the communication device may include: a receiving unit, a sending unit;

[0026] A receiving unit is used to receive a first message from a multicast session management network element, which is used to instruct the first terminal to join a multicast group. The multicast session management network element is used to manage the multicast service corresponding to the multicast group, or the multicast session management network element is a session management network element that manages the multicast user plane network element, and the multicast user plane network element is used to transmit the multicast data corresponding to the multicast group.

[0027] The sending unit sends a second message to the application server for requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server if the first terminal is the first terminal to join the multicast group.

[0028] The specific implementation of the communication device can refer to the behavior function of the multicast user plane network element in the message forwarding method provided in the first aspect or any possible design of the first aspect, and will not be repeated here. Therefore, the provided communication device can achieve the same beneficial effects as the first aspect or any possible design of the first aspect.

[0029] According to a third aspect, a communication device is provided. The communication device may be a multicast user plane network element or a chip or system-on-chip in the multicast user plane network element. The communication device may implement the functions performed by the multicast user plane network element in the first aspect or any possible design of the first aspect, and the functions may be implemented by hardware. In one possible design, the communication device may include: a processor and a communication interface. The processor may be configured to support the communication device in implementing the functions related to the multicast user plane network element in the first aspect or any possible design of the first aspect. For example, the processor is configured to receive, via the communication interface, a first message from a multicast session management network element instructing a first terminal to join a multicast group. If the first terminal is the first terminal to join the multicast group, the processor sends, via the communication interface, to an application server a second message requesting establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. The multicast session management network element is configured to manage the multicast service corresponding to the multicast group, or the multicast session management network element is a session management network element that manages the multicast user plane network element. The multicast user plane network element is configured to transmit the multicast data corresponding to the multicast group. In another possible design, the communication device may further include a memory for storing computer-executable instructions and data necessary for the communication device. When the communication device is running, the processor executes the computer-executable instructions stored in the memory to cause the communication device to perform the message forwarding method described in the first aspect or any possible design of the first aspect.

[0030] In a fourth aspect, a computer-readable storage medium is provided, which stores instructions. When the computer-readable storage medium is run on a computer, the computer can execute the message forwarding method described in the first aspect or any possible design of the above aspects.

[0031] In a fifth aspect, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute the message forwarding method described in the first aspect or any possible design of the above aspects.

[0032] In a sixth aspect, a chip system is provided, which includes a processor and a communication interface, and is used to support a communication device to implement the functions involved in the multicast user plane network element in the above-mentioned first aspect or any possible design of the first aspect. For example, the processor receives a first message from a multicast session management network element through the communication interface, which is used to instruct a first terminal to join a multicast group. If the first terminal is the first terminal to join the multicast group, the processor sends a second message to the application server through the communication interface to request the establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server; the multicast session management network element is used to manage the multicast service corresponding to the multicast group, or the multicast session management network element is a session management network element that manages the multicast user plane network element, and the multicast user plane network element is used to transmit the multicast data corresponding to the multicast group. In one possible design, the chip system also includes a memory, which is used to store program instructions and data necessary for the communication device. The chip system can be composed of a chip, or it can include a chip and other discrete devices.

[0033] Among them, the technical effects brought about by any design method in the third to sixth aspects can refer to the technical effects brought about by the above-mentioned first aspect or any possible design of the first aspect, and will not be repeated here.

[0034] In the seventh aspect, an embodiment of the present application also provides a message forwarding method, which also includes: a multicast session management network element receives a sixth message for instructing the first terminal to join a multicast group, the multicast session management network element is used to manage the multicast service corresponding to the multicast group, or can be described as a multicast session management network element that manages a multicast user plane network element, and the multicast user plane network element is an anchor point for transmitting multicast data; if the first terminal is the first terminal to join the multicast group, the multicast session management network element sends a seventh message to the multicast user plane network element used to transmit multicast data, requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server.

[0035] In one possible design, in combination with the seventh aspect, the multicast session management network element receives the sixth message, including: the multicast session management network element receives the sixth message from the unicast user plane network element, and the unicast user plane network element corresponds to the first terminal; or, the multicast session management network element receives the sixth message from the unicast user plane network element through the unicast session management network element, and the unicast session management network element is a session management network element that manages the unicast user plane network element.

[0036] Based on this possible design, the sixth message can be sent by a unicast user plane network element or a unicast user plane network element to a multicast session management network element, which in turn is sent by the multicast session management network element to a multicast user plane network element, and then is sent by the multicast user plane network element to an application server, thereby ensuring that the user plane's message requesting to join the multicast group can be sent to the application server according to the correct forwarding path, thereby realizing normal forwarding of multicast data.

[0037] In one possible design, in combination with the seventh aspect or any possible design of the seventh aspect, the method further includes: the multicast session management network element determines that the first terminal is the first terminal to join the multicast group.

[0038] Based on this possible design, the multicast session management network element can judge the terminal requesting to join the multicast group, ensuring that the seventh message is sent to the multicast user plane network element only when the terminal is the first to join the multicast group, thereby reducing signaling overhead.

[0039] In one possible design, in combination with the seventh aspect or any possible design of the seventh aspect, the multicast session management network element determines that the first terminal is the first terminal to join the multicast group, including: when the multicast session management network element does not have the context information of the multicast group locally, determining that the first terminal is the first terminal to join the multicast group; or, when the context information of the multicast group locally present in the multicast session management network element does not include terminal information, determining that the first terminal is the first terminal to join the multicast group.

[0040] Based on this possible design, the multicast session management network element can determine whether the first terminal is the first terminal to request to join the multicast group according to the locally stored context information of the multicast group. This determination method is simple and easy to implement.

[0041] In one possible design, in combination with the seventh aspect or any possible design of the seventh aspect, the description also includes: the multicast session management network element receives the eighth message for instructing the second terminal to join the multicast group, and the multicast session management network element sends the seventh message to the multicast user plane network element, including: the multicast session management network element sends a seventh message to the multicast user plane network element.

[0042] Based on this possible design, when the multicast session management network element receives messages from two or two terminals requesting to join the same multicast group, the received messages can be suppressed, the message initiated by the first terminal can be retained, and the message can be sent to the multicast user plane network element. This eliminates the need to send messages to the multicast user plane network element multiple times, thereby reducing signaling overhead and power consumption caused by the multicast session management network element sending messages to the application server.

[0043] In one possible design, in combination with the seventh aspect or any possible design of the seventh aspect, the sixth message is a user plane event notification message or a control plane message; the seventh message is an IGMP message or an MLD message or signaling indication information; or, the sixth message is an IGMP message, and the seventh message is an IGMP message or signaling indication information; or, the sixth message is an MLD message, and the seventh message is an MLD message or signaling indication information.

[0044] Based on this possible design, the message sent by the multicast session management network element requesting to join the multicast group can be a user plane event notification message or a control plane message or an IGMP message or an MLD message, and the message sent by the multicast session management network element requesting to establish a tunnel between the multicast user plane network element and the application server can be an IGMP message or an MLD message or other multicast protocol message. The message implementation form is flexible and diverse, which increases the application scenarios of this method.

[0045] In one possible design, in combination with the seventh aspect or any possible design of the seventh aspect, the invention also includes: the multicast session management network element receives a ninth message for instructing the third terminal to leave the multicast group; if the third terminal is the last terminal to leave the multicast group, the multicast session management network element sends a tenth message to the multicast user plane network element; the tenth message is used to request the release of the tunnel for transmitting multicast data.

[0046] Based on this possible design, when the multicast session management network element learns that the last terminal among the terminals that have joined the multicast group has left the multicast group, it can send a request to the multicast user plane network element to request the release of the tunnel for transmitting multicast data, release transmission resources, and improve resource utilization.

[0047] In one possible design, in combination with the seventh aspect or any possible design of the seventh aspect, establishing a tunnel for transmitting multicast data between a multicast user plane network element and an application server includes: establishing an N6 multicast distribution tree with the application server as the data source, and connecting the multicast user plane network element to the N6 multicast distribution tree related to the multicast group, wherein N6 is the interface between the multicast user plane network element and the data network DN, DN is connected to the application server, and the multicast distribution tree is the forwarding path between the sender and receiver of the multicast data.

[0048] Based on this possible design, the multicast user plane network element and application server can be configured as the sender and receiver of multicast data through the N6 multicast distribution tree. The multicast data can be sent to the multicast user plane network element using the N6 multicast distribution tree, and then sent to the terminals in the multicast group by the multicast user plane network element. This is simple and easy.

[0049] In an eighth aspect, a communication device is provided, which may be a multicast session management network element or a chip or system-on-chip in a multicast session management network element. The communication device may implement the functions performed by the mobility management network element in the above aspects or possible designs. The functions may be implemented by hardware or by hardware executing corresponding software. The hardware or software may include one or more modules corresponding to the above functions. For example, the communication device may include: a receiving unit, a sending unit;

[0050] a receiving unit, configured to receive a sixth message for instructing the first terminal to join a multicast group, wherein the multicast session management network element is configured to manage a multicast service corresponding to the multicast group, or the multicast session management network element can be described as a session management network element that manages a multicast user plane network element, and the multicast user plane network element is an anchor point for transmitting multicast data;

[0051] The sending unit is configured to send a seventh message for requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server if the first terminal is the first terminal to join the multicast group.

[0052] The specific implementation of the communication device can refer to the behavior function of the multicast session management network element in the message forwarding method provided in the seventh aspect or any possible design of the seventh aspect, and will not be repeated here. Therefore, the provided communication device can achieve the same beneficial effects as the seventh aspect or any possible design of the seventh aspect.

[0053] In a ninth aspect, a communication device is provided. The communication device may be a multicast session management network element or a chip or system-on-chip in the multicast session management network element. The communication device may implement the functions performed by the multicast session management network element in the seventh aspect or any possible design of the seventh aspect, and the functions may be implemented through hardware. In one possible design, the communication device may include: a processor and a communication interface. The processor may be configured to support the communication device in implementing the functions related to the multicast session management network element in the seventh aspect or any possible design of the seventh aspect. For example, the processor may be configured to receive, via the communication interface, a sixth message instructing a first terminal to join a multicast group. If the first terminal is the first terminal to join the multicast group, the processor may send a seventh message to the multicast user plane network element requesting establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. In another possible design, the communication device may further include a memory configured to store computer-executable instructions and data necessary for the communication device. When the communication device is running, the processor executes the computer-executable instructions stored in the memory, causing the communication device to perform the message forwarding method described in the seventh aspect or any possible design of the seventh aspect.

[0054] In the tenth aspect, a computer-readable storage medium is provided, which stores instructions. When the computer-readable storage medium is run on a computer, the computer can execute the message forwarding method described in the seventh aspect or any possible design of the above aspects.

[0055] In the eleventh aspect, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute the message forwarding method described in the seventh aspect or any possible design of the above aspects.

[0056] In the twelfth aspect, a chip system is provided, which includes a processor and a communication interface, and is used to support a communication device to implement the functions involved in the multicast session management network element in the seventh aspect or any possible design of the seventh aspect. For example, the processor receives a sixth message for instructing a first terminal to join a multicast group through the communication interface. If the first terminal is the first terminal to join the multicast group, the processor sends a seventh message to the multicast user plane network element for requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server. In one possible design, the chip system also includes a memory, and the memory is used to store program instructions and data necessary for the communication device. The chip system can be composed of a chip, or include a chip and other discrete devices.

[0057] Among them, the technical effects brought about by any design method in the ninth to twelfth aspects can be referred to the technical effects brought about by the above-mentioned seventh aspect or any possible design of the seventh aspect, and will not be repeated here.

[0058] In the thirteenth aspect, an embodiment of the present application also provides a communication system, which may include: a unicast user plane network element, a multicast session management network element, a communication device or chip system as described in any one of the second to sixth aspects, and an application server; or, a unicast user plane network element, a communication device or chip system as described in any one of the eighth to twelfth aspects, a multicast user plane network element, and an application server. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 A schematic diagram of the communication system architecture provided in an embodiment of the present application;

[0060] Figure 2 A 5G communication system architecture diagram provided in an embodiment of the present application;

[0061] Figure 3 A schematic diagram of the hardware structure of a communication device provided in an embodiment of the present application;

[0062] Figure 4 A flowchart of a message forwarding method provided in an embodiment of the present application;

[0063] Figure 5 A flowchart of a message forwarding method provided in an embodiment of the present application;

[0064] Figure 6 A flowchart of a message forwarding method provided in an embodiment of the present application;

[0065] Figure 7 A flowchart of a message forwarding method provided in an embodiment of the present application;

[0066] Figure 8 A flowchart of a message forwarding method provided in an embodiment of the present application;

[0067] Figure 9 A flowchart of another message forwarding method provided in an embodiment of the present application;

[0068] Figure 10 A flowchart of another message forwarding method provided in an embodiment of the present application;

[0069] Figure 11 A flowchart of another message forwarding method provided in an embodiment of the present application;

[0070] Figure 12 A flowchart of another message forwarding method provided in an embodiment of the present application;

[0071] Figure 13 A flowchart of another message forwarding method provided in an embodiment of the present application;

[0072] Figure 14 A schematic diagram of the composition of a communication device 140 provided in an embodiment of the present application;

[0073] Figure 15 A schematic diagram of the composition of a communication device 150 provided in an embodiment of the present application;

[0074] Figure 16 A schematic diagram of the composition of a communication system provided in an embodiment of the present application. DETAILED DESCRIPTION

[0075] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0076] The message forwarding method provided in the embodiment of the present application can be applied to Figure 1 The communication system shown, Figure 1As shown, the communication system may include multiple terminals, multiple user plane network elements, multiple session management network elements, and a data network (DN). It may also include: access network equipment, mobility management network elements, policy control network elements, network storage network elements, etc. Among them, multiple terminals can form a multicast group, and multiple terminals can simultaneously receive the same data, i.e., multicast data. User plane network elements can be divided into unicast user plane network elements and multicast user plane network elements according to the type of transmission on them. Unicast user plane network elements are used to transmit unicast data (unicast data), and multicast user plane network elements can be used to transmit multicast data (multicast data). Unicast data can be data sent to a specific terminal or user, and multicast data can be data sent to a multicast group. Multiple session management network elements can be divided into multicast session management network elements and unicast session management network elements according to the type of user plane network elements they manage. Unicast session management network elements can be session management network elements that manage unicast user plane network elements, and multicast session management network elements can be session management network elements that manage multicast user plane network elements.

[0077] Terminal can be called terminal equipment (terminal equipment) or user equipment (user equipment, UE) or mobile station (mobile station, MS) or mobile terminal (mobile terminal, MT) etc. Figure 1 The terminal in the communication network can be a mobile phone, a tablet computer or a computer with wireless transceiver function, and can also be a virtual reality (VR) terminal, augmented reality (AR) terminal, wireless terminal in industrial control, wireless terminal in unmanned driving, wireless terminal in telemedicine, wireless terminal in smart grid, wireless terminal in smart city, smart home, car terminal, etc.

[0078] Access network equipment is mainly used to implement physical layer functions, resource scheduling and management, terminal access control, mobility management and other functions. The access network equipment can be a device that supports wired access or a device that supports wireless access. For example, the access network equipment can be an access network (AN) / radio access network (RAN), which is composed of multiple 5G-AN / 5G-RAN nodes. 5G-AN / 5G-RAN nodes can be: access point (AP), base station (nodeB, NB), enhanced base station (enhance nodeB, eNB), next generation base station (NR nodeB, gNB), transmission reception point (TRP), transmission point (TP) or some other access node.

[0079] The mobility management network element is mainly responsible for terminal access authentication, mobility management, and signaling interaction between various functional network elements. For example, it manages user registration status, user connection status, user registration and network access, tracking area updates, cell switching user authentication and key security.

[0080] The session management network element is mainly used to implement user plane transmission logical channels, such as the establishment, release and modification of packet data unit (PDU) sessions and other session management functions.

[0081] The user plane network element can serve as an anchor point on the user plane transmission logical channel to complete functions such as routing and forwarding of user plane data, such as establishing a channel with the terminal (i.e., the user plane transmission logical channel), forwarding data packets between the terminal and DN on the channel, and being responsible for filtering data packets, forwarding data, rate control, and generating billing information for the terminal.

[0082] The policy control network element can be used to provide policies to the mobility management network element and the session management network element, such as quality of service policy, slice selection policy, etc.

[0083] The network storage element can be used to store user data, such as user contract information, authentication or authorization data, etc. Specifically, the network storage element can be a unified data management element (UDM), a network repository function (NRF), or a unified data repository (UDR).

[0084] The DN may be an operator network that provides data transmission services to users, such as an operator network that provides IP Multimedia Services (IMS) to users. An application server may be deployed in the DN, and the application server may provide data transmission services to users.

[0085] in, Figure 1 The access network equipment, mobility management network element, policy control network element, and network storage network element described in this application are optional network elements.

[0086] It should be noted that Figure 1 This is just an example architecture diagram. Figure 1 In addition to the functional units shown in , the system may also include other functional network elements, such as: operation and management (O&M) network elements, etc., which are not limited in the embodiments of the present application. Figure 1 The names of the devices in the Figure 1 In addition to the names shown, each device can also be named with other names, such as replacing it with a network element name with the same or similar functions, without limitation.

[0087] based on Figure 1 The system shown in the embodiment of the present application provides a message forwarding method, which may include: a multicast user plane network element receives a message sent by a unicast user plane network element through a multicast session management network element to instruct a terminal to join a multicast group, and when the terminal is the first terminal to join the multicast group, sends a message to an application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server. Specifically, the method can refer to the following Figures 4 to 8 The method is described in the corresponding embodiments.

[0088] The embodiment of the present application provides another message forwarding method, which may include: a multicast session management network element receives a message instructing a terminal to join a multicast group, and when the terminal is the first terminal to join the multicast group, sends a message to the multicast user plane network element requesting the establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. Specifically, the method may refer to the following Figures 9 to 13 The method is described in the corresponding embodiments.

[0089] Specifically, Figure 1The communication system shown may be a communication system in the 3rd Generation Partnership Project (3GPP), for example, a long term evolution (LTE) communication system, or a 4th generation (5G) communication system, a 5th generation (5G) communication system, or a new radio (NR) communication system, or a non-3GPP communication system without limitation.

[0090] by Figure 1 The communication system shown is a 5G communication system as an example. Figure 2 As shown, the network element or entity corresponding to the multicast session management network element may be a session management function (M-SMF) in a 5G communication system, and the network element or entity corresponding to the multicast user plane network element may be a user plane function (UPF) in a 5G communication system. The network element or entity corresponding to the access network device may be a radio access network (RAN) in a 5G communication system, the network element or entity corresponding to the mobility management network element may be an access and mobility management function (AMF) in a 5G communication system, and the policy control function may be a policy control function (PCF) in a 5G communication system.

[0091] Among them, such as Figure 2 As shown, the terminal communicates with the AMF through the next generation network (next generation, N) 1 interface (referred to as N1), the RAN device communicates with the AMF through the N2 interface (referred to as N2), the RAN device communicates with the UPF through the N3 interface (referred to as N3), and the UPF communicates with the application server in the DN through the N6 interface. Core network elements can communicate with each other through service-based interfaces, such as: AMF can communicate with other core network elements through the Namf interface, SMF can communicate with other core network elements through the Nsmf interface, PCF can communicate with other core network elements through the Npcf interface, UDM can communicate with other core network elements through the Nudm interface, UDR can communicate with other core network elements through the Nudr interface, and NRF can communicate with other core network elements through the Nnrf interface.

[0092] in, Figure 2The RAN, AMF, PCF, UDM, UDR and NRF shown in this application are optional network elements. Figure 2 The communication interface between other network elements is also an optional communication interface in this application.

[0093] In the specific implementation, Figure 1 The devices in the communication system shown, such as user plane network elements, session management network elements, etc., can all use Figure 3 The structure shown, or including Figure 3 Parts shown. Figure 3 This is a schematic diagram of the composition of a communication device 300 provided in an embodiment of the present application. The communication device 300 may include a processor 301, a communication circuit 302, and a communication interface 303. Furthermore, the communication device 300 may also include a memory 304. The processor 301, the memory 304, and the communication interface 303 may be connected via a communication circuit 302.

[0094] Processor 301 can be a central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. Processor 301 can also be other devices with processing capabilities, such as circuits, devices, or software modules, without limitation.

[0095] The communication line 302 is used to transmit information between the components included in the communication device 300.

[0096] Communication interface 303 is used to communicate with other devices or other communication networks. Such other communication networks may be Ethernet, radio access networks (RAN), wireless local area networks (WLAN), etc. Communication interface 303 may be a module, circuit, transceiver, or any other device capable of communication.

[0097] The memory 304 is used to store instructions, where the instructions may be computer programs.

[0098] The memory 304 may be a read-only memory (ROM) or other types of static storage devices that can store static information and / or instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and / or instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, and Blu-ray discs), magnetic disk storage media, or other magnetic storage devices, without limitation.

[0099] It should be noted that the memory 304 can exist independently of the processor 301 or can be integrated with the processor 301. The memory 304 can be used to store instructions, program codes, or some data. The memory 304 can be located inside the communication device 300 or outside the communication device 300, without limitation.

[0100] The processor 301 is configured to execute instructions stored in the memory 304 to implement the message forwarding method provided in the following embodiments of the present application. For example, when the communication device 300 is a session management network element or a chip or system-on-chip in the session management network element, the processor 301 executes the instructions stored in the memory 304 to implement the steps performed by the session management network element in the following embodiments of the present application. For another example, when the communication device 300 is a mobility management network element or a chip or system-on-chip in the mobility management network element, the processor 301 may execute the instructions stored in the memory 304 to implement the steps performed by the mobility management network element in the following embodiments of the present application.

[0101] In one example, the processor 301 may include one or more CPUs, such as Figure 3 CPU0 and CPU1 in.

[0102] As an optional implementation, the communication device 300 includes multiple processors, for example, Figure 3 In addition to the processor 301, a processor 307 may also be included.

[0103] As an optional implementation, the communication apparatus 300 further includes an output device 305 and an input device 306. For example, the input device 306 is a keyboard, a mouse, a microphone, a joystick, or the like, and the output device 305 is a display screen, a speaker, or the like.

[0104] It should be noted that the communication device 300 can be a desktop computer, a portable computer, a network server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system or a computer with a Figure 3 In addition, Figure 3 The structure shown in the figure does not constitute a limitation on the communication device, except Figure 3 In addition to the components shown, the communication device may include more or fewer components than shown, or combine certain components, or arrange the components differently.

[0105] In the embodiment of the present application, the chip system can be composed of chips, or can include chips and other discrete devices.

[0106] The following combination Figure 1 The communication system shown in the figure describes the message forwarding method provided in the embodiment of the present application. Each network element in the following embodiment may have Figure 3 The components shown are not described in detail here. It should be noted that the actions, terms, etc. involved in the various embodiments of the present application can refer to each other without limitation. The message names or parameter names in the messages exchanged between the various devices in the embodiment of the present application are only an example, and other names can also be used in the specific implementation without limitation. For example: the multicast in the embodiment of the present application can be replaced by broadcast, multicast, multicast communication, and multicast / broadcast. The determination in the embodiment of the present application can also be understood as creation (create) or generation (generate), and the "include" in the embodiment of the present application can also be understood as "carrying", which is uniformly explained here, and the embodiment of the present application does not make specific limitations on this.

[0107] Figure 4 This is a flowchart of a message forwarding method provided by an embodiment of the present application. The method describes the process in which a unicast user plane network element forwards a message requesting to join a multicast group to a multicast session management network element, which then forwards the received message to a multicast user plane network element, which then suppresses the message and sends it to an application server. Figure 4 As shown, the method includes:

[0108] S401: A first terminal sends a first message to a unicast user plane network element.

[0109] The first terminal can be Figure 1 Any terminal in the multicast group shown, for example, the first terminal may be terminal 1 in the multicast group. A multicast group may be a combination of multiple terminals receiving the same multicast data or multicast user service, for example, a fleet of vehicles receiving commands from the same command center or a group receiving the same television program.

[0110] Among them, the unicast user plane network element corresponds to the unicast PDU session established by the first terminal, and the unicast user plane network element can be the anchor point for data transmission between the terminal and the application server. The way in which the first terminal establishes a unicast PDU session can refer to the existing technology. During the process of establishing a unicast PDU session by the first terminal, the unicast session management network element corresponding to the unicast PDU session can send N4 configuration information carrying a packet detection rule (PDR) to the unicast user plane network element. The unicast user plane network element receives the N4 configuration information and locally stores the PDR. The PDR can be used to detect multicast data of a multicast group, and the PDR can include identification information of the multicast group.

[0111] The first message may be used to instruct the first terminal to join a multicast group, or may be described as the first message being used to instruct the first terminal to request to receive multicast data from a multicast group. The first message may be an IGMP message or an MLD message, or may be other multicast protocol messages, without limitation. Exemplarily, the first message may include identification information of the first terminal, identification information of the multicast group, and the like. The identification information of the first terminal may be used to identify the first terminal, and the identification information of the first terminal may be an Internet Protocol (IP) address of the first terminal, a Media Access Control (MAC) address of the first terminal, or an International Mobile Subscriber Identity (IMSI) of the first terminal, and the like.

[0112] The identification information of the multicast group can be used to identify the multicast group. The identification information of the multicast group can be the temporary mobile group identifier (TMGI) of the multicast group or the Internet protocol (IP) address of the application server providing multicast user services or multicast data.

[0113] Exemplarily, when the first terminal learns that the user has a multicast data demand and determines to join a multicast group, the first terminal is triggered to send a first message to a unicast user plane network element.

[0114] For example, assuming that the multicast data is a TV program, such as CCTV1, CCTV2, and other TV programs, and the first terminal is a set-top box (STB) 1, STB1 can display relevant information of these TV programs to the user, and the user can manually select the TV program they want to watch, such as: select CCTV1, and send the selection result to STB1. STB1 sends a first message carrying CCTV1 to the unicast user-side network element based on the selection result.

[0115] Exemplarily, the first terminal may send the first message to the unicast user plane network element through a unicast PDU session, that is, the first terminal may send the first message to the unicast user plane network element through a user plane.

[0116] For example, assuming that the unicast PDU session established by terminal 1 in the multicast group is PDU session 1, the PDU session corresponds to UPF1, and the unicast PDU session established by terminal 2 in the multicast group is PDU session 2, and the PDU session corresponds to UPF2, then terminal 1 can send a message to join the multicast group to UPF1, and terminal 2 can send a message to join the multicast group to UPF2 through PDU session 2.

[0117] It should be noted that the embodiment of the present application does not limit the naming of the first message. The first message can also be named multicast / broadcast (MB) join request or other names.

[0118] S402: The unicast user plane network element receives the first message and sends the first message to the multicast session management network element.

[0119] Exemplarily, after the unicast user plane network element receives the first message, it can use the identification information of the multicast group carried in the first message to search for the PDR stored locally in the unicast user plane network element. If the PDR including the identification information of the multicast group is queried, the first message is identified as a message for indicating joining the multicast group or a request message for requesting to receive multicast data of the multicast group, triggering the unicast user plane network element to send the first message to the multicast session management network element.

[0120] The multicast session management network element is a session management network element that manages the multicast service corresponding to the multicast group; or, the multicast session management network element can be described as a session management network element that manages the multicast user plane network element, and the multicast user plane network element is the anchor point for transmitting multicast data. The multicast session management network element can be the same as the session management network element corresponding to the PDU session established by the first terminal. The multicast session management network element can also manage unicast user plane network elements and have a connection relationship with the unicast user plane network element; or, the multicast session management network element is different from the session management network element corresponding to the PDU session established by the first terminal. The multicast session management network element does not have the function of managing unicast user plane network elements, and there is no connection relationship between the unicast user plane network element and the multicast session management network element.

[0121] It should be noted that in each embodiment of the present application, the session management network element corresponding to the unicast PDU session can be called a unicast session management network element without limitation.

[0122] Exemplarily, the unicast user plane network element sending the first message to the multicast session management network element may include the following two situations:

[0123] Case 1: The multicast session management network element is the same as the session management network element corresponding to the PDU session established by the first terminal.

[0124] The unicast user plane network element sending the first message to the multicast session management network element may include: the unicast user plane network element sending the first message to the multicast session management network element through the N4 link between the unicast user plane network element and the multicast session management network element.

[0125] It should be noted that, in case 1, the session management network elements corresponding to the unicast PDU sessions established by different terminals may be the same or different, without limitation.

[0126] For example, SMF1 and SMF2 both have the function of managing the multicast services corresponding to the multicast group. SMF1 and SMF2 are different multicast SMFs. Assuming that the unicast PDU session established by terminal 1 in the multicast group corresponds to UPF1 and SMF1, and the unicast PDU session established by terminal 2 in the multicast group is a PDU session corresponding to UPF2 and SMF2, then after UPF1 receives the message sent by terminal 1 to join the multicast group, it sends the message directly to SMF1. After UPF2 receives the message sent by terminal 2 to join the multicast group, it can also send the message directly to SMF2.

[0127] Case 2: The multicast session management network element is different from the session management network element corresponding to the PDU session established by the first terminal.

[0128] The unicast user plane network element sending the first message to the multicast session management network element may include: the unicast user plane network element sending the first message to the unicast session management network element, the unicast session management network element receiving the first message, selecting the multicast session management network element, and sending the first message to the multicast session management network element.

[0129] It should be noted that in scenario 2, the multicast session management element selected by the unicast session management element corresponding to the PDU sessions established by different terminals in the multicast group can be the same, that is, the same session management element. In this case, different terminals in the multicast group can share the same multicast session management element. Alternatively, the multicast session management element selected by the unicast session management element corresponding to the PDU sessions established by different terminals in the multicast group can be different, without limitation.

[0130] Exemplarily, the unicast session management network element can select the multicast session management network element by the following method: the unicast session management network element sends the identification information of the multicast group to the unified data management network element (UDM), receives the identification information of the multicast session management network element from the UDM, and determines the multicast session management network element identified by the identification information of the multicast session management network element as the session management network element that manages the multicast user plane network element.

[0131] Among them, the identification information of the multicast session management network element can be used to identify the multicast session management network element. The identification information of the multicast session management network element can be the Internet Protocol (IP) address of the multicast session management network element or the media access control (MAC) address of the multicast session management network element, or it can be other identifiers that can identify the first session management network element, without limitation.

[0132] Among them, UDM can also be replaced by a network repository function (NRF) or a unified data repository (UDR) or a policy control function (PCF) or other network elements with the function of selecting a multicast session management network element, etc., without limitation. Taking UDM as an example, after receiving the identification information of the multicast group, UDM can query the correspondence between the identification information of the multicast group and the identification information of the multicast session management network element, determine the identification information of the multicast session management network element corresponding to the identification information of the multicast group sent by the unicast session management network element, and send the identification information of the multicast session management network element to the unicast session management network element. The correspondence between the identification information of the multicast group and the identification information of the multicast session management network element can be pre-configured on the UDM.

[0133] S403: The multicast session management network element receives the first message and sends the first message to the multicast user plane network element.

[0134] Among them, the multicast user plane network element is the anchor point for transmitting the multicast data corresponding to the multicast group. The multicast user plane network element corresponds to the multicast PDU session, and the multicast PDU session can be used to transmit the multicast data corresponding to the multicast group.

[0135] Exemplarily, after receiving the first message, the multicast session management network element may select a multicast user plane network element in any of the following two ways and send the first message to the multicast user plane network element:

[0136] Method 1: The multicast session management network element has established a multicast PDU session, which corresponds to the multicast user plane network element. An N4 link has been established between the multicast session management network element and the multicast user plane network element. The multicast session management network element locally stores the correspondence between the identification information of the multicast group corresponding to the multicast group and the identification information of the multicast user plane network element.

[0137] The multicast session management network element can use the identification information of the multicast group as an index to query the correspondence between the identification information of the locally stored multicast group and the identification information of the multicast user plane network element, obtain the identification information of the multicast user plane network element, and select the user plane network element identified by the identification information of the multicast user plane network element as the multicast user network element.

[0138] In the first approach, the multicast session management network element may send the first message to the multicast user plane network element through the N4 link between the multicast session management network element and the multicast user plane network element.

[0139] The process by which the multicast session management element establishes a multicast PDU session can refer to existing technologies. During this process, the multicast session management element can obtain, based on the multicast group's identification information, a multicast user-plane network element capable of transmitting multicast data, and locally store the correspondence between the multicast group's identification information and the identification information of the multicast user-plane network element. This specific process can refer to existing technologies and is not described in detail here.

[0140] Method 2: The multicast session management NE does not establish a multicast PDU session, and the multicast session management NE does not locally query the correspondence between the multicast group identification information corresponding to the multicast group and the identification information of the multicast user plane NE.

[0141] In method 2, in a possible design, the multicast session management network element sends the identification information of the multicast group to the UDM, receives the identification information of the multicast user plane network element from the UDM, and determines the multicast user plane network element identified by the identification information of the multicast user plane network element returned by the UDM as the user plane network element corresponding to the multicast PDU session.

[0142] Among them, UDM can also be replaced by NRF or UDR or PCF or other network elements with the function of selecting multicast user plane network elements, etc., without limitation. Taking UDM as an example, after UDM receives the identification information of the multicast group, it can query the correspondence between the identification information of the multicast group and the identification information of the multicast user plane network element, determine the identification information of the multicast user plane network element corresponding to the identification information of the multicast group, and send the identification information of the multicast user plane network element to the unicast session management network element. Among them, the correspondence between the identification information of the multicast group and the identification information of the multicast user plane network element can be pre-configured on the UDM and will not be repeated.

[0143] In another possible design, when the multicast session management network element is the same as the unicast session management network element corresponding to the unicast PDU session established by the first terminal, and the unicast user plane network element corresponding to the unicast PDU session established by the first terminal has the function of transmitting multicast data, the multicast session management network element selects the unicast user plane network element corresponding to the unicast PDU session established by the first terminal as the multicast user plane network element, and sends a first message to the unicast user plane network element.

[0144] Further optionally, in method 2, while the multicast session management network element sends the first message to the multicast user plane network element, it also triggers the multicast session management network element to complete the process of establishing a transmission channel for transmitting multicast data, such as: a multicast PDU session. Among them, the multicast session management network element establishes a multicast PDU session including: the multicast session management network element sends a session management policy establishment request (SM policy establishment request) to the PCF, receives a session management policy establishment response (SM policy establishment response) carrying policy and charging control (PCC) rules from the PCF, sends N4 configuration information to the multicast user plane network element, sends configuration information to the access network device for the access network device to determine the air interface resources for transmitting multicast data, etc., at which point the multicast PDU session is established.

[0145] Among them, PCC rules may include identification rules for identifying multicast data service data flows (SDFs) sent to multicast groups, packet filter information for multicast data, and other configuration parameters for multicast data transmission, such as: PDRs and PDR-associated forwarding action rules (FARs), quality of service (QoS) requirements, and quality of service flow (QF) mapping rules. The relevant descriptions of these configuration parameters can be referred to the existing technology and are not repeated here.

[0146] N4 configuration information can be used by multicast user plane network elements to receive multicast data and send the multicast data to access network devices via QF. N4 configuration information may include SDF identification rules, packet filter information for multicast data, PDR and PDR-associated FAR, QoS requirements, QF mapping rules, etc. N4 configuration information can be an N4 session modification request or an N4 session establishment request.

[0147] In the present application, in order to improve resource utilization, the multicast session management network element may also select a QF from the PDU session established by it, whose anchor point is the multicast user plane network element, and have the QF transmit multicast data, without performing the above-mentioned process of establishing a multicast PDU session on the new anchor point for transmitting multicast data. The process of the multicast session management network element selecting the QF for transmitting multicast data from the PDU session established by it may include: the multicast session management network element sending a session management policy-related parameter modification (SM policy association modification) request to the PCF for requesting to update the PCC rules related to the multicast group, receiving an SM policy association modification response carrying the updated policy and charging control (PCC) rules related to the multicast group from the PCF, sending updated N4 configuration information to the multicast user plane network element, and sending updated configuration information for the access network device to determine the air interface resources for transmitting multicast data to the access network device. Thus, the QF for transmitting multicast data is established.

[0148] In this application, in order to reduce signaling overhead, the multicast session management network element sending a first message to the multicast user plane network element may include: the multicast session management network element carrying the first message in the N4 configuration information / updated N4 configuration information and sending it to the multicast user plane network element.

[0149] Further optionally, in method 2, after the multicast session management network element completes the establishment of the multicast PDU session or establishes the QF for transmitting multicast data, the correspondence between the identification information of the multicast group and the identification information of the multicast user plane network element is stored locally. In this application, the identification information of the multicast group can also be replaced by the SDF identification rule of the multicast data, and the SDF identification rule can be used to identify the multicast data sent to the multicast group. The SDF identification rule can be obtained by the multicast session management network element from the PCF.

[0150] It should be noted that after the multicast session management network element receives a message to join the multicast group initiated by any terminal in the multicast group, the multicast session management network element can use the above-mentioned method 1 or method 2 to select a multicast user plane network element, and the multicast user plane network elements selected by it are all the same user plane network element, which will not be repeated here.

[0151] S404: The multicast user plane network element receives the first message, and if the first terminal is the first terminal to join the multicast group, sends a second message to the application server.

[0152] The second message may be used to request establishment of a tunnel for transmitting multicast data between a multicast user plane network element and an application server. The second message may be an IGMP message, an MLD message, or a PIM message. The second message may include identification information of the multicast group, identification information of the multicast user plane network element, and other information, without limitation.

[0153] In one example, the multicast user plane network element and the application server may be directly connected, and the multicast user plane network element may send the second message to the application server through an N6 interface between the multicast user plane network element and the application server.

[0154] In this example, the second message may be a PIM message.

[0155] In another example, the multicast user plane network element and the application server cannot be directly connected, an intermediate device may exist between the multicast user plane network element and the application server, and the multicast user plane network element can communicate with the application server through the intermediate device. For example, the multicast user plane network element and the intermediate device can be directly connected, and the intermediate device can be directly connected to the application server; the multicast user plane network element sending the second message to the application server may include:

[0156] The multicast user plane network element sends a second message to the intermediate device. The intermediate device receives the second message and sends a message to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server.

[0157] The intermediate devices may be devices with forwarding functions such as forwarding routers at various levels.

[0158] In another example, the second message sent by the multicast user plane network element to the intermediate device can be an IGMP message, an MLD message, or a PIM message. When the second message is an IGMP message or an MLD message, the multicast user plane network element can send the second message to the intermediate device. The intermediate device generates a PIM message based on the IGMP message or the MLD message and sends the PIM message to the application server. When the second message is a PIM message, the multicast user plane network element sends the second message to the intermediate device. The intermediate device receives the second message and forwards it to the application server.

[0159] In each embodiment of the present application, establishing a tunnel for transmitting multicast data between a multicast user plane network element and an application server may include: establishing an N6 multicast distribution tree with the application server as the data source, and connecting the multicast user plane network element to the N6 multicast distribution tree associated with the multicast group, N6 being the interface between the multicast user plane network element and the data network DN, DN being connected to the application server, and the multicast distribution tree being the forwarding path between the sender and receiver of the multicast data. It should be noted that the present application does not limit the naming of the N6 multicast distribution tree, and the N6 multicast distribution tree may also be referred to as a multicast distribution tree.

[0160] Exemplarily, before the multicast user plane network element sends the second message to the application server, the multicast user plane network element may further determine whether the first terminal is the first terminal to join the multicast group. The determination method includes:

[0161] When the multicast user plane network element does not have the context information of the multicast group locally, determining that the first terminal is the first terminal to join the multicast group; or

[0162] When the context information of the multicast group locally stored in the multicast user plane network element does not include terminal information, determining that the first terminal is the first terminal to join the multicast group; or

[0163] When the multicast user plane network element locally stores the context information of the multicast group, and the context information of the multicast group includes terminal information, it is determined that the first terminal is not the first terminal to join the multicast group.

[0164] The multicast group context information corresponds to the multicast group and may include information related to the multicast group, such as the identification information of the multicast group, terminal information, and other information. The terminal information may include identification information of terminals that have joined the multicast group and / or the number of terminals that have joined the multicast group.

[0165] In the initial state, the multicast user plane network element may not have the context information of the multicast group locally. After the multicast user plane network element receives the first request sent by the terminal requesting to join the multicast group, the multicast user plane network element saves the context information of the multicast group and sets the number of terminals in the context information of the multicast group to 1 and / or stores the identification information of the terminal in the terminal information. Subsequently, each time a message requesting to join the multicast group is received, the number of terminals is increased by 1 and / or the identification information of the terminal requesting to join the multicast group is stored in the terminal information. Each time a message requesting to leave the multicast group is received, the number of terminals is reduced by 1 and the identification information of the terminal is deleted from the terminal information; or,

[0166] The multicast user plane network element locally stores the context information for the multicast group, but the terminal information in the multicast group context information is empty. After the multicast user plane network element receives the first message requesting to join the multicast group, it adds the terminal information to the multicast group context information. The terminal information contains the number of terminals set to 1 and / or includes the identification information of the terminal requesting to join the multicast group. Subsequently, for each message requesting to join the multicast group received, the number of terminals is incremented by 1 and / or the identification information of the terminal requesting to join the multicast group is stored in the terminal information. For each message requesting to leave the multicast group received, the number of terminals is decremented by 1 and the terminal identification information is deleted from the terminal information.

[0167] based on Figure 4 The method shown can involve a unicast user plane network element sending a received message requesting to join a multicast group to a multicast session management network element, which then forwards the message to the multicast user plane network element. The multicast user plane network element receives the message from the multicast session management network element instructing a terminal to join the multicast group, and, if the terminal is the first terminal requesting to join the multicast group, sends a message to an application server requesting the application server to establish a transmission tunnel between the multicast user plane network element and the application server. This transmission tunnel is then used to send multicast data to terminals in the multicast group, thereby ensuring normal forwarding of multicast data. This method provides a forwarding solution for messages requesting to join a multicast group from the multicast session management network element to the multicast user plane network element, and then from the multicast user plane network element to the application server. Furthermore, when the first terminal initiates a request to join a multicast group, a tunnel is triggered between the application server and the multicast user plane network element. This tunnel then sends multicast data to terminals in the multicast group via the multicast user plane network element. This eliminates the need to send a message requesting to establish a tunnel between the application server and the multicast user plane network element to each terminal requesting to join the multicast group, thereby reducing signaling overhead.

[0168] It should be noted that Figure 4 The method shown is described by taking a terminal requesting to join a multicast group as an example. It is understandable that for other terminals in the multicast group, such as the second terminal, the third terminal, etc., reference can be made to the method shown in FIG. Figure 4 The method shown forwards the messages requesting to join the multicast group initiated by these terminals to the multicast user plane network element, which will not be described in detail.

[0169] Further optional, in Figure 4In one implementation of the method shown, in order to reduce signaling overhead and avoid repeatedly sending messages to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server, the message requesting to join the multicast group can be suppressed. Only when the first terminal requests to join the multicast group, the user plane network element is triggered to send a message to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server. If the message is not initiated by the first terminal requesting to join the multicast group, the sending of the message is suppressed, and the multicast user plane network element is not triggered to send a message to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server. In this way, the number of message transmissions is reduced and the signaling overhead is reduced. Among them, in this application, the message requesting to join the multicast group can be called a multicast management message, and suppressing the message requesting to join the multicast group can be called multicast suppression.

[0170] Figure 4 In the method shown, the multicast session management network elements corresponding to different terminals in the multicast group may be the same or different, and the multicast user plane network element selected by the multicast session management network elements corresponding to different terminals is the same multicast user plane network element. When the multicast session management network elements corresponding to different terminals are different, multicast suppression can only be completed by the multicast user plane network element, and the multicast session management network elements corresponding to different terminals only forward the multicast management message and forward the multicast management message to the multicast user plane network element. When the multicast session management network elements corresponding to different terminals are the same, that is, the same multicast session management network element, multicast suppression can be performed by the multicast user plane network element or by the multicast session management network element, without limitation. Taking the case where multicast suppression is performed by the multicast user plane network element as an example, the process may include:

[0171] The multicast user plane network element receives a third message from the multicast session management network element, where the third message is used to instruct the second terminal to join the multicast group, and the third message may include identification information of the second terminal and identification information of the multicast group, and the second terminal is not the first terminal to join the multicast group;

[0172] The multicast user plane network element sends a second message to the application server, including: the multicast user plane network element sends a second message to the application server. For example, when the multicast user plane network element receives a message initiated by the first terminal to join the multicast group, the second message is sent to the multicast user plane network element to trigger the establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. Subsequently, when other terminals such as the second terminal, the third terminal, and the fourth terminal initiate messages to join the multicast group, the multicast user plane network element suppresses the messages initiated by other terminals and does not send the second message to the multicast user plane network element.

[0173] Based on this implementation, the multicast user plane network element forwards the first message of joining the multicast group to the application server, suppresses messages that are not initiated for the first time, avoids repeated message sending, and reduces signaling overhead.

[0174] For example, assuming that the multicast user plane network element is UPF1, UPF1 stores the context information of multicast group 1: {multicast group 1, the number of terminals joining multicast group 1 is 0}. If UPF1 receives a first message, and the first message is used to instruct terminal 1 to join multicast group 1, UPF1 determines that terminal 1 is the first terminal requesting to join multicast group 1 based on the locally stored context information of multicast group 1, and sends a second message to the application server, while updating the context information of multicast group 1 to: {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 1}; subsequently, if UPF1 receives a third message, and the third message is used to instruct terminal 2 to join multicast group 1, UPF1 determines that terminal 2 is the first terminal requesting to join multicast group 1 based on the locally stored context information of multicast group 1, does not send the second message to the application server, and updates the context information of multicast group 1 to: {multicast group 1, the number of terminals joining multicast group 1 is 2, terminal 1, terminal 2}.

[0175] Further optional, in Figure 4 In another implementation of the method shown, the multicast user plane network element can be pre-configured with execution rules, and the execution rules can be used to trigger the multicast user plane network element to establish a tunnel for transmitting multicast data with the application server. The execution rules may include the multicast user plane network element establishing a tunnel for transmitting data with the application server when receiving a multicast protocol message or other type of message for indicating joining a multicast group, such as: the execution rules may specifically include establishing a tunnel with the application server when receiving an IGMP message from the multicast session management network element; or, establishing a tunnel with the application server when receiving an MLD message from the multicast session management network element.

[0176] Correspondingly, when executing S404, after the multicast user plane network element receives the first message in the message format of an IGMP message or an MLD message, it can trigger the multicast user plane network element to determine, according to the execution rule, whether the first message is a message initiated by the first terminal requesting to join the multicast group, and send a second message to the application server based on the judgment result.

[0177] Further optional, in Figure 4 In another implementation of the method shown, in order to improve resource utilization, when no terminals are added to the multicast group, the tunnel and other transmission resources for transmitting the multicast data corresponding to the multicast group can be released. Specifically, the method may include:

[0178] The multicast user plane network element receives a fourth message from the multicast session management network element, where the fourth message is used to instruct the third terminal to leave the multicast group. If the third terminal is the last terminal to leave the multicast group, the multicast user plane network element sends a fifth message to the application server, where the fifth message is used to request the release of the tunnel for transmitting multicast data.

[0179] The third terminal may be the first terminal or the second terminal, or another terminal in the multicast group, without limitation. The fourth message may include identification information of the third terminal and identification information of the multicast group.

[0180] Exemplarily, the multicast user-plane network element may use the identification information of the multicast group included in the fourth message as an index to query locally stored context information of the multicast group. If the number of terminals in the context information of the multicast group is 1 and / or the context information of the multicast group includes only the identification information of the third terminal, the third terminal is determined to be the last terminal to leave the multicast group. Otherwise, the third terminal is determined not to be the last terminal to leave the multicast group.

[0181] Further optionally, the multicast user plane network element deletes the locally stored context information of the multicast group, or deletes the terminal information included in the locally stored context information of the multicast group.

[0182] For example, assuming that the multicast user plane network element is UPF1, UPF1 stores the context information for multicast group 1: {Multicast group 1, the number of terminals joining multicast group 1 is 3, terminal 1, terminal 2, terminal 3}. If UPF1 receives a fourth message indicating that terminal 1 has left multicast group 1, then UPF1 determines, based on the locally stored context information for multicast group 1, that terminal 1 is not the last terminal to leave multicast group 1. It does not send a fifth message to the application server and updates the context information for multicast group 1 to: {Multicast group 1, the number of terminals joining multicast group 1 is 2, terminal 2, terminal 3}. Subsequently, if UPF1 receives a fourth message indicating that terminal 2 has left multicast group 1, then UPF1 determines, based on the locally stored context information for multicast group 1, that terminal 2 is not the last terminal to leave multicast group 1. It does not send a fifth message to the application server and updates the context information for multicast group 1 to: {Multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 3}. If UPF1 receives a fourth message again, which is used to indicate that terminal 3 leaves multicast group 1, UPF1 determines that terminal 3 is the last terminal to leave multicast group 1 based on the locally stored context information of multicast group 1, and sends a fifth message to the application server, while deleting the context information of multicast group 1, or deleting the terminal information {multicast group 1} included in the context information of multicast group 1.

[0183] Based on this implementation, when no terminal joins the multicast group, the tunnel for transmitting the multicast data corresponding to the multicast group can be released, thereby improving resource utilization.

[0184] The following combination Figure 2 In the 5G communication system shown, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, and the multicast user plane network element is M-UPF. Terminal 1 and terminal 2 join multicast group 1, and S402 is performed in the manner described in the above case 1. The above method 1 is used as an example to select the multicast user plane network element, that is, the session management network element corresponding to the unicast PDU session established by the terminal in the multicast group is M-SMF, and the M-SMF manages the M-UPF as an example. Figure 4 The method is described in detail. The process can be referred to as follows Figure 5 It should be noted that Figure 5 In the method shown, the M-SMF corresponding to the unicast PDU sessions established by different terminals can be the same M-SMF or different M-SMFs, without limitation. Figure 5 The method shown is explained by taking the unicast PDU sessions established by different terminals in the multicast group corresponding to the same M-SMF as an example. The message forwarding method in the scenario where the unicast PDU sessions established by different terminals correspond to different M-SMFs can be referred to. Figure 5 As shown, no further description is given.

[0185] Figure 5 A message forwarding method provided in an embodiment of the present application, such as Figure 5 As shown, the method includes:

[0186] S501: Establish a multicast PDU session.

[0187] The multicast PDU session is used to transmit the multicast data corresponding to the multicast group 1. Figure 5 In the method shown, it is assumed that the multicast session management network element corresponding to the multicast PDU session is SMF1 and the corresponding user plane network element is M-UPF, that is, SMF1 is M-SMF, SMF1 manages M-UPF, and SMF1 locally stores the correspondence between the identification information of M-UPF and the identification information of the multicast group.

[0188] Specifically, the process of establishing a multicast PDU session can refer to the existing technology and will not be described in detail.

[0189] S502: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0190] Among them, the PDU session 1 established by terminal 1 can be used to transmit data to terminal 1. Figure 5 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 1 is SMF1, the corresponding user plane network element is UPF1, and SMF1 manages UPF1.

[0191] Among them, the PDU session 2 established by terminal 2 can be used to transmit data to terminal 2. Figure 5 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 2 is SMF1, the corresponding user plane network element is UPF2, and SMF1 manages UPF2.

[0192] Specifically, the process of terminal 1 establishing unicast PDU session 1 and terminal 2 establishing unicast PDU session 2 can refer to the existing technology and will not be described in detail.

[0193] It should be noted that the embodiment of the present application does not limit the execution order of S501 and S502. Figure 5 As shown, S501 is executed first, and then S502; S502 may be executed first, and then S501; S501 and S502 may also be executed without limitation.

[0194] S503: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0195] The first message is used to instruct terminal 1 to join multicast group 1.

[0196] Specifically, S503 may refer to S401 and will not be described in detail.

[0197] S504: UPF1 receives the first message and sends the first message to SMF1.

[0198] S505: SMF1 receives the first message, selects an M-UPF, and sends the first message to the M-UPF.

[0199] Among them, the way SMF1 selects M-UPF can refer to Figure 4 Method 1 is described in detail and will not be repeated here.

[0200] S506: The M-UPF receives the first message, does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, and sends a second message to the application server, requesting the application server to establish a tunnel for transmitting multicast data between the application server and the M-UPF, and store the context information of multicast group 1 locally.

[0201] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0202] S507: Terminal 2 determines to join multicast group 1, and sends a third message to UPF 2 via unicast PDU session 2.

[0203] The third message is used to instruct terminal 2 to join multicast group 1.

[0204] Specifically, S507 may refer to S401 and will not be described in detail.

[0205] S508: UPF2 receives the third message and sends the third message to SMF1.

[0206] S509: SMF1 receives the third message, selects an M-UPF, and sends the third message to the M-UPF.

[0207] Among them, the way SMF1 selects M-UPF can refer to Figure 4 Method 1 is described in detail and will not be repeated here.

[0208] S510: The M-UPF receives the third message, searches for the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the second message to the application server, and updates the context information of multicast group 1 stored locally.

[0209] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0210] Similarly, the process of other terminals in the multicast group 1 requesting to join the multicast group 1 can be referred to S507 to S510 and will not be described in detail.

[0211] In contrast, as a terminal joining multicast group 1, Figure 5 The method also includes a process in which a terminal leaves multicast group 1. For example, terminal 1 determines to leave multicast group 1 and sends a message to UPF 1 via unicast PDU session 1, indicating that terminal 1 has left multicast group 1. UPF 1 receives the message and forwards it to SMF 1. SMF 1 receives the message, selects M-UPF, and sends the message to M-UPF. UPF 1 receives the message and locally searches for context information for multicast group 1 {multicast group 1, the number of terminals joining multicast group 1 is 2, terminal 1, terminal 2}. Based on the context information for multicast group 1, it determines that terminal 1 is not the last terminal to request to leave multicast group 1. The context information for multicast group 1 is updated, the number of terminals is reduced by 1, and terminal 1 is deleted from the terminal information. The updated context information for multicast group 1 may include {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 2}.

[0212] Similarly, the process for other terminals in multicast group 1 to request to leave multicast group 1 can refer to the above process and will not be described in detail. When the last terminal leaves multicast group 1, in order to improve resource utilization, it is necessary to release the tunnel used to transmit multicast data. The following is an example of terminal 2 leaving multicast group 1 as the last terminal. Figure 5 As shown, the method may further include:

[0213] S511: Terminal 2 determines to leave multicast group 1 and sends a fourth message to UPF 2 through unicast PDU session 2.

[0214] The fourth message may be used to instruct terminal 2 to leave multicast group 1.

[0215] S512: UPF2 receives the fourth message, and sends the fourth message to SMF1.

[0216] S513: SMF1 receives the fourth message, selects an M-UPF, and sends the fourth message to the M-UPF.

[0217] Among them, the way SMF1 selects M-UPF can refer to Figure 4 Method 1 is described in detail and will not be repeated here.

[0218] S514: The M-UPF receives the fourth message, searches for the context information of multicast group 1 locally {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 2}, determines based on the context information of multicast group 1 that terminal 2 is the last terminal requesting to leave multicast group 1, sends the fifth message to the application server, and simultaneously deletes the context information of multicast group 1 or deletes the terminal information included in the context information of multicast group 1.

[0219] The fifth message may be used to request the release of a tunnel for transmitting multicast data.

[0220] The following combination Figure 2 In the 5G communication system shown, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, and the multicast user plane network element is M-UPF. Terminal 1 and terminal 2 join multicast group 1, and S402 is performed in the manner described in the above case 1. The multicast user plane network element is selected as an example using the above method 2, that is, the session management network element corresponding to the unicast PDU session established by different terminals in the multicast group is M-SMF, and the M-SMF manages the M-UPF as an example. Figure 4 The method is described in detail. The process can be referred to as follows Figure 6 It should be noted that Figure 6 In the method shown, the M-SMF corresponding to the unicast PDU sessions established by different terminals can be the same M-SMF or different M-SMFs, without limitation. Figure 6 The method shown is explained by taking the unicast PDU sessions established by different terminals in the multicast group corresponding to the same M-SMF as an example. The message forwarding method in the scenario where the unicast PDU sessions established by different terminals correspond to different M-SMFs can be referred to. Figure 6 As shown, no further description is given.

[0221] Figure 6 A message forwarding method provided in an embodiment of the present application, such as Figure 6 As shown, the method includes:

[0222] S601: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0223] Among them, S601 is the same as S502 and is not described in detail.

[0224] S602: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0225] The description of the first message and the execution process of S602 are the same as those of S503 and are not described in detail.

[0226] S603: UPF1 receives the first message and sends the first message to SMF1.

[0227] S604: SMF1 receives the first message. If no correspondence between the identification information of the multicast group and the identification information of the M-UPF is found, it determines to establish a multicast PDU session for the multicast group 1 and sends an SM policy establishment request to the PCF.

[0228] Among them, the correspondence between the identification information of the multicast group and the identification information of the M-UPF can be stored by the M-SMF on other network elements such as the M-SMF, PCF or UDR after the M-SMF successfully establishes a multicast PDU session for transmitting multicast data corresponding to the multicast group for the first time, without restriction.

[0229] The SM policy establishment request may be used to request the PCF to allocate PCC rules to the multicast group.

[0230] S605: PCF receives the SM policy establishment request and sends an SM policy establishment response to SMF1.

[0231] Among them, the SM policy establishment response may include PCC rules, and the PCC rules may include packet filter information of the multicast data corresponding to the multicast group, SDF identification rules of the multicast data, PDR and PDR-associated FAR, QoS requirements, QF mapping rules and other information.

[0232] It should be noted that, alternatively, in S604, SMF1 can also determine the QF for multicast group 1 from the PDU session it establishes, and the QF can be used to transmit the multicast data corresponding to the multicast group. If in S604, SMF1 determines to establish a QF for multicast group 1, the SM policy establishment request can be replaced by an SM policy association modification request, and the SM policy association modification request can be used to request the PCF to update the PCC rules related to the multicast group. The SM policy establishment response can be replaced by an SM policyassociation modification response, and the SM policy association modification response can include the updated PCC rules. The updated PCC rules can include packet filter information of multicast data, SDF identification rules of multicast data, PDR, and FAR associated with the PDR, and other information.

[0233] S606: SMF1 receives the SM policy establishment response and selects M-UPF.

[0234] The process of SMF1 selecting M-UPF may refer to the above-mentioned method 2, which will not be described in detail.

[0235] Further optionally, SMF1 stores the correspondence between the identification information of the M-UPF and the identification information of the multicast group.

[0236] S607: SMF1 sends a first message to the M-UPF.

[0237] S608: The M-UPF receives the first message, does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, and sends a second message to the application server, requesting the application server to establish a tunnel for transmitting multicast data between the application server and the M-UPF, and store the context information of multicast group 1 locally.

[0238] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0239] S609: Terminal 2 determines to join multicast group 1, and sends a third message to UPF 2 through unicast PDU session 2.

[0240] The third message is used to instruct terminal 2 to join multicast group 1.

[0241] Specifically, S609 may refer to S401 and will not be described in detail.

[0242] S610: UPF2 receives the third message and sends the third message to SMF1.

[0243] S611: SMF1 receives the third message, selects an M-UPF according to the correspondence between the identification information of the M-UPF and the identification information of the multicast group, and sends the third message to the M-UPF.

[0244] S612: The M-UPF receives the third message, searches for the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the second message to the application server, and updates the context information of multicast group 1 stored locally.

[0245] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0246] Similarly, the process of other terminals in the multicast group 1 requesting to join the multicast group 1 can be referred to S609 to S612, which will not be described in detail.

[0247] In contrast, as a terminal joining multicast group 1, Figure 6 The method shown also includes a process for the terminal to leave the multicast group 1, and the specific process can be referred to Figure 5 The process of the terminal leaving the multicast group 1 is not described in detail.

[0248] The following combination Figure 2 In the 5G communication system shown, the access network device is RAN, the mobility management network element is AMF, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, and the multicast user plane network element is M-UPF. Terminal 1 and terminal 2 join multicast group 1, and S402 is executed in the manner described in the above case 2. The above method 1 is used as an example to select the multicast user plane network element, that is, the session management network element corresponding to the unicast PDU session established by the terminal in the multicast group is not M-SMF, and the M-SMF has established a multicast PDU session. For example, Figure 4The method is described in detail. The process can be referred to as follows Figure 7 It should be noted that Figure 7 In the method shown, the M-SMF selected by the unicast SMF corresponding to different unicast PDU sessions can be the same M-SMF or different M-SMFs, without limitation. Figure 7 The method shown is explained by taking the case where the unicast SMF corresponding to the unicast PDU sessions established by different terminals in the multicast group selects the same M-SMF as an example. The message forwarding method in the scenario where the unicast SMF corresponding to the unicast PDU sessions established by different terminals selects different M-SMFs can be referred to. Figure 7 As shown, no further description is given.

[0249] Figure 7 A message forwarding method provided in an embodiment of the present application, such as Figure 7 As shown, the method includes:

[0250] S701: Establish a multicast PDU session.

[0251] The multicast PDU session is used to transmit the multicast data corresponding to the multicast group 1. Figure 7 In the method shown, it is assumed that the session management network element corresponding to the multicast PDU session is M-SMF, the corresponding user plane network element is M-UPF, M-SMF manages M-UPF, and M-SMF locally stores the correspondence between the identification information of M-UPF and the identification information of the multicast group.

[0252] Specifically, the process of establishing a multicast PDU session can refer to the existing technology and will not be described in detail.

[0253] S702: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0254] Among them, the PDU session 1 established by terminal 1 can be used to transmit data to terminal 1. Figure 7 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 1 is SMF1, the corresponding user plane network element is UPF1, and SMF1 manages UPF1.

[0255] Among them, the PDU session 2 established by terminal 2 can be used to transmit data to terminal 2. Figure 7 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 2 is SMF2, the corresponding user plane network element is UPF2, and SMF1 manages UPF2.

[0256] Specifically, the process of terminal 1 establishing unicast PDU session 1 and terminal 2 establishing unicast PDU session 2 can refer to the existing technology and will not be described in detail.

[0257] It should be noted that the embodiment of the present application does not limit the execution order of S701 and S702. Figure 7 As shown, S701 is executed first, and then S702; S702 may be executed first, and then S701; S701 and S702 may also be executed without limitation.

[0258] S703: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0259] The description of the first message and the execution process of S703 are the same as those of S503 and are not described in detail.

[0260] S704: UPF1 receives the first message and sends the first message to SMF1.

[0261] S705: SMF1 receives the first message, selects M-SMF, and sends the first message to the M-SMF.

[0262] The process of SMF1 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0263] S706: The M-SMF receives the first message, and sends the first message to the M-UPF according to the correspondence between the locally stored identification information of the M-UPF and the identification information of the multicast group.

[0264] S707: The M-UPF receives the first message, does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, and sends a second message to the application server, requesting the application server to establish a tunnel for transmitting multicast data between the application server and the M-UPF, and store the context information of multicast group 1 locally.

[0265] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0266] S708: Terminal 2 determines to join multicast group 1 and sends a third message to UPF 2 through unicast PDU session 2.

[0267] The third message is used to instruct terminal 2 to join multicast group 1.

[0268] For details, please refer to S708 Figure 4 The above is described in one implementation method and will not be described in detail here.

[0269] S709: UPF2 receives the third message and sends the third message to SMF2.

[0270] S710: SMF2 receives the third message and selects M-SMF.

[0271] The process of SMF2 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0272] S711: SMF2 sends a third message to M-SMF.

[0273] S712: The M-SMF receives the third message, and sends the third message to the M-UPF according to the correspondence between the identification information of the M-UPF and the identification information of the multicast group stored locally.

[0274] S713: The M-UPF receives the third message, searches for the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the second message to the application server, and updates the context information of multicast group 1 stored locally.

[0275] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0276] Similarly, the process of other terminals in the multicast group 1 requesting to join the multicast group 1 can be referred to S708 to S713 and will not be described in detail.

[0277] In contrast, as a terminal joining multicast group 1, Figure 7 The method shown also includes a process for the terminal to leave the multicast group 1, and the specific process can be referred to Figure 5 The process of the terminal leaving the multicast group 1 is not described in detail.

[0278] The following combination Figure 2 In the 5G communication system shown, the access network device is RAN, the mobility management network element is AMF, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, and the multicast user plane network element is M-UPF. Terminal 1 and terminal 2 join multicast group 1, and S402 is performed in the manner described in the above case 2. The above method 2 is used as an example to select the multicast user plane network element, that is, the session management network element corresponding to the unicast PDU session established by the terminal in the multicast group is not M-SMF, and the M-SMF has not established a multicast PDU session. For example, Figure 4 The method is described in detail. The process can be referred to as follows Figure 8 It should be noted that Figure 8 In the method shown, the M-SMF selected by the unicast SMF corresponding to different unicast PDU sessions can be the same M-SMF or different M-SMFs, without limitation. Figure 8The method shown is explained by taking the case where the unicast SMF corresponding to the unicast PDU sessions established by different terminals in the multicast group selects the same M-SMF as an example. The message forwarding method in the scenario where the unicast SMF corresponding to the unicast PDU sessions established by different terminals selects different M-SMFs can be referred to. Figure 8 As shown, no further description is given.

[0279] Figure 8 A message forwarding method provided in an embodiment of the present application, such as Figure 8 As shown, the method includes:

[0280] S801: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0281] Among them, the PDU session 1 established by terminal 1 can be used to transmit data to terminal 1. Figure 7 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 1 is SMF1, the corresponding user plane network element is UPF1, and SMF1 manages UPF1.

[0282] Among them, the PDU session 2 established by terminal 2 can be used to transmit data to terminal 2. Figure 7 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 2 is SMF2, the corresponding user plane network element is UPF2, and SMF1 manages UPF2.

[0283] Specifically, the process of terminal 1 establishing unicast PDU session 1 and terminal 2 establishing unicast PDU session 2 can refer to the existing technology and will not be described in detail.

[0284] S802: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0285] The description of the first message and the execution process of S802 are the same as those of S401 and are not described in detail.

[0286] S803: UPF1 receives the first message and sends the first message to SMF1.

[0287] S804: SMF1 receives the first message and selects M-SMF.

[0288] The process of SMF1 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0289] S805: SMF1 sends a first message to M-SMF.

[0290] S806: The M-SMF receives the first message, and does not find the correspondence between the M-UPF identification information and the multicast group identification information locally. It determines to establish a multicast PDU session for multicast group 1 and sends an SM policy establishment request to the PCF.

[0291] Among them, S806 is the same as S604 and is not described in detail.

[0292] S807: PCF receives the SM policy establishment request and sends an SM policy establishment response to the M-SMF.

[0293] Among them, S807 is the same as S605 and is not described in detail.

[0294] S808: M-SMF receives the SM policy establishment response and selects M-UPF.

[0295] The process of M-SMF selecting M-UPF can be referred to Figure 4 The second method in the method shown is not described in detail here.

[0296] Further optionally, the M-SMF stores the correspondence between the identification information of the M-UPF and the identification information of the multicast group.

[0297] S809: The M-SMF sends a first message to the M-UPF.

[0298] S810: The M-UPF receives the first message, does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, and sends a second message to the application server, requesting the application server to establish a tunnel for transmitting multicast data between the application server and the M-UPF, and store the context information of multicast group 1 locally.

[0299] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0300] S811: Terminal 2 determines to join multicast group 1 and sends a third message to UPF2 through unicast PDU session 2.

[0301] The third message is used to instruct terminal 2 to join multicast group 1.

[0302] For details, please refer to S811 Figure 4 The above is described in one implementation method and will not be described in detail here.

[0303] S812: UPF2 receives the third message and sends the third message to SMF2.

[0304] S813: SMF2 receives the third message and selects M-SMF.

[0305] The process of SMF2 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0306] S814: SMF2 sends a third message to M-SMF.

[0307] S815: The M-SMF receives the third message, and sends the third message to the M-UPF according to the correspondence between the locally stored identification information of the M-UPF and the identification information of the multicast group.

[0308] S816: The M-UPF receives the third message, searches for the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the second message to the application server, and updates the context information of multicast group 1 stored locally.

[0309] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0310] Similarly, the process of other terminals in the multicast group 1 requesting to join the multicast group 1 can be referred to S811 to S816, which will not be described in detail.

[0311] In contrast, as a terminal joining multicast group 1, Figure 8 The method shown also includes a process for the terminal to leave the multicast group 1, and the specific process can be referred to Figure 5 The process of the terminal leaving the multicast group 1 is not described in detail.

[0312] above Figure 4-Figure 8 The method shown is described by taking the multicast user plane network element suppressing the message requesting to join / leave the multicast group as an example. Alternatively, in the case where different terminals in the multicast group share the same multicast session management network element, such as: in the case where the unicast session management network element corresponding to the unicast PDU sessions established by different terminals in the multicast group selects the same multicast session management network element, the multicast session management network element can also suppress the message requesting to join / leave the multicast group. Specifically, the process can refer to the following Figures 9-13 shown. Figure 9 A flowchart of another message forwarding method provided in an embodiment of the present application is shown in FIG. Figure 9 As shown, the method may include:

[0313] S901: A first terminal sends a first message to a unicast user plane network element.

[0314] Among them, S901 is the same as S401 and will not be described in detail.

[0315] S902: The unicast user plane network element receives the first message and sends a sixth message to the multicast session management network element.

[0316] The sixth message may be used to instruct the first terminal to join the multicast group. The sixth message may be the same as the first message or different from the first message, without limitation.

[0317] Exemplarily, the process of the unicast user plane network element sending the sixth message to the multicast session management network element may refer to the process of the unicast user plane network element sending the first message to the multicast session management network element as shown in Case 1 or Case 2 in S402 above. For example, in one possible implementation, the unicast user plane network element sends the sixth message to the multicast session management network element via the N4 link between the unicast user plane network element and the multicast session management network element. In this implementation, the sixth message may be the same as or different from the first message. For example, the sixth message may be an IGMP message, an MLD message, or a user plane event notification message.

[0318] In another possible implementation, the unicast user plane network element sends the first message or the user plane event notification message to the unicast session management network element via the N4 link between the unicast user plane network element and the unicast session management network element. The unicast session management network element selects a multicast session management network element and sends a sixth message to the multicast session management network element. In this possible implementation, the sixth message may be an IGMP message, an MLD message, or a control plane message, without limitation.

[0319] Specifically, the detailed sending process can be referred to S402 and will not be described in detail.

[0320] S903: The multicast session management network element receives the sixth message, and if the first terminal is the first terminal to join the multicast group, it sends a seventh message to the multicast user plane network element.

[0321] The seventh message may be used to request establishment of a tunnel for transmitting multicast data between a multicast user plane network element and an application server. The seventh message may be an IGMP message, an MLD message, or a signaling indication message. The seventh message may be the same as the sixth message, or may be generated by the multicast session management network element based on the sixth message, such as based on a user plane event notification message or a control plane message.

[0322] The signaling indication information may be a piece of signaling information transmitted via the N4 link between the multicast user plane network element and the multicast session management network element. For example, when the multicast session management network element in S902 is the same as the unicast session management network element corresponding to the unicast PDU session established by the first terminal, the multicast user plane network element in S903 may be the unicast user plane network element corresponding to the unicast PDU session established by the first terminal. In this case, after the multicast session management network element determines that the first terminal is the first terminal to join the multicast group, the multicast session management network element may send signaling indication information to the multicast user plane network element via the N4 link, requesting the establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. Further, optionally, the multicast session management network element may also send some configuration parameters for transmitting multicast data to the multicast user plane network element. The relevant description of the configuration parameters may refer to the description in S403.

[0323] The method for the multicast session management network element to determine whether the first terminal is the first terminal to join the multicast group can refer to Figure 4 The manner in which the multicast user plane network element determines whether the first terminal is the first terminal to join the multicast group in the illustrated method S404 is not described in detail.

[0324] S904: The multicast user plane network element receives the seventh message and sends a setup request to the application server.

[0325] The establishment request may be used to request the establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. The establishment request may be a PIM message, or the establishment request may be the same as the seventh message, such as an IGMP message or an MLD message.

[0326] Exemplarily, the process of the multicast user plane network element sending the establishment request to the application server may refer to the process of the multicast user plane network element sending the second message to the application server in S404 above, for example:

[0327] When the multicast user plane network element and the application server can be directly connected, the establishment request is a PIM message, and the multicast user plane network element directly sends the establishment request to the application server; when the multicast user plane network element and the application server cannot be directly connected and there is an intermediate device between the multicast user plane network element and the application server, the establishment request is an IGMP message or an MLD message, and the multicast user plane network element sends the establishment request to the intermediate device, and the intermediate device sends a PIM message to the application server for requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server.

[0328] The detailed description of the intermediate device and the sending process can be referred to S404 and will not be repeated here.

[0329] based on Figure 9 The method shown can involve a unicast user plane network element sending a received message requesting to join a multicast group to a multicast session management network element. The multicast session management network element, if the terminal is the first terminal requesting to join the multicast group, forwards the message to the multicast user plane network element. The multicast user plane network element then sends a message to an application server, requesting the application server to establish a transmission tunnel between the multicast user plane network element and the application server. This transmission tunnel is then used to send multicast data to terminals in the multicast group, thereby achieving normal forwarding of multicast data. This provides a forwarding scheme for messages requesting to join a multicast group from the multicast session management network element to the multicast user plane network element, and then from the multicast user plane network element to the application server. Furthermore, when the first terminal initiates a request to join a multicast group, the multicast session management network element triggers the multicast user plane network element to establish a tunnel between the application server and the multicast user plane network element. This tunnel then sends multicast data to terminals in the multicast group via the multicast user plane network element. This eliminates the need to send a message requesting to establish a tunnel between the application server and the multicast user plane network element to each terminal requesting to join the multicast group, thereby reducing signaling overhead.

[0330] It should be noted that Figure 9 The method shown is described by taking a terminal requesting to join a multicast group as an example. It is understandable that for other terminals in the multicast group, such as the second terminal, the third terminal, etc., reference can be made to the method shown in FIG. Figure 9 The method shown forwards the messages requesting to join the multicast group initiated by these terminals to the multicast user plane network element, which will not be described in detail.

[0331] Further optional, in Figure 9 In one implementation of the method shown, Figure 4 An implementation of the method shown is similar. To reduce signaling overhead and avoid repeatedly sending messages to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server, messages requesting to join the multicast group can be suppressed.

[0332] Figure 9 In the method shown, the multicast session management network elements corresponding to different terminals in the multicast group are the same, that is, the same multicast session management network element, and the multicast user plane network elements corresponding to different terminals can be the same or different. When the multicast user plane network elements corresponding to different terminals are different, multicast suppression can only be completed by the multicast session management network element, and the multicast user plane network elements corresponding to different terminals only forward the multicast management message and forward the multicast management message to the application server. When the multicast user plane network elements corresponding to different terminals are the same, that is, the same multicast user plane network element, multicast suppression can be performed by the multicast user plane network element or by the multicast session management network element, without limitation. Taking the case where multicast suppression is performed by the multicast session management network element as an example, the process may include:

[0333] The multicast session management network element receives an eighth message, where the eighth message is used to instruct the second terminal to join the multicast group, and the eighth message may include identification information of the second terminal and identification information of the multicast group, and the second terminal is not the first terminal to join the multicast group;

[0334] The multicast session management network element sends the seventh message to the multicast user plane network element, including: the multicast session management network element sends a seventh message to the multicast user plane network element. For example, when the multicast session management network element receives a message initiated by the first terminal to join the multicast group, it sends the seventh message to the multicast user plane network element to trigger the establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. Subsequently, when other terminals such as the second terminal, the third terminal, and the fourth terminal initiate messages to join the multicast group, the multicast session management network element suppresses the messages initiated by other terminals and does not send the seventh message to the multicast user plane network element.

[0335] Based on this implementation, the multicast session management network element forwards the first message of joining the multicast group to the multicast user plane network element, suppresses messages that are not initiated for the first time, avoids repeated message transmission, and reduces signaling overhead.

[0336] For example, assuming that the multicast session management network element is M-SMF, the context information of multicast group 1 is stored in M-SMF: {Multicast group 1, the number of terminals joining multicast group 1 is 0}. If M-SMF receives the sixth message, which is used to instruct terminal 1 to join multicast group 1, then M-SMF determines that terminal 1 is the first terminal requesting to join multicast group 1 based on the locally stored context information of multicast group 1, sends the seventh message to the application server, and updates the context information of multicast group 1 to: {Multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 1}; subsequently, if M-SMF receives the eighth message, which is used to instruct terminal 2 to join multicast group 1, then M-SMF determines that terminal 2 is the first terminal requesting to join multicast group 1 based on the locally stored context information of multicast group 1, does not send the seventh message to the application server, and updates the context information of multicast group 1 to: {Multicast group 1, the number of terminals joining multicast group 1 is 2, terminal 1, terminal 2}.

[0337] Further optional, in Figure 9 In another implementation of the method shown, in order to improve resource utilization, when no terminals are added to the multicast group, the tunnel and other transmission resources for transmitting the multicast data corresponding to the multicast group can be released. Specifically, the method may include:

[0338] The multicast session management network element receives the ninth message, which is used to instruct the third terminal to leave the multicast group; if the third terminal is the last terminal to leave the multicast group, the multicast session management network element sends the tenth message to the multicast user plane network element, triggering the multicast user plane network element to request the application server to release the tunnel for transmitting multicast data.

[0339] The tenth message may be used to request the release of a tunnel for transmitting multicast data.

[0340] The third terminal may be the first terminal or the second terminal, or may be another terminal in the multicast group, without limitation. The ninth message may include identification information of the third terminal and identification information of the multicast group.

[0341] Exemplarily, the multicast session management network element may use the identification information of the multicast group included in the ninth message as an index to query locally stored context information of the multicast group. If the number of terminals in the context information of the multicast group is 1 and / or the context information of the multicast group includes only the identification information of the third terminal, the third terminal is determined to be the last terminal to leave the multicast group. Otherwise, the third terminal is determined not to be the last terminal to leave the multicast group.

[0342] Further optionally, the multicast session management network element deletes the locally stored context information of the multicast group, or deletes the terminal information included in the locally stored context information of the multicast group.

[0343] For example, assuming that the multicast session management network element is M-SMF, the context information of multicast group 1 is stored in M-SMF: {multicast group 1, the number of terminals joining multicast group 1 is 3, terminal 1, terminal 2, terminal 3}. If M-SMF receives the ninth message, which is used to indicate that terminal 1 leaves multicast group 1, then M-SMF determines that terminal 1 is not the last terminal to leave multicast group 1 based on the locally stored context information of multicast group 1, and does not send the tenth message to the multicast user plane network element. At the same time, the context information of multicast group 1 is updated to: {multicast group 1, the number of terminals joining multicast group 1 is 2, terminal 2, terminal 3}. Subsequently, if the M-SMF receives a ninth message again, and the ninth message is used to indicate that terminal 2 has left multicast group 1, then the M-SMF determines that terminal 2 is not the last terminal to leave multicast group 1 based on the locally stored context information of multicast group 1, and does not send the tenth message to the multicast user plane network element. At the same time, the context information of multicast group 1 is updated to: {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 3}. If the M-SMF receives a ninth message again, and the ninth message is used to indicate that terminal 3 has left multicast group 1, then the M-SMF determines that terminal 3 is the last terminal to leave multicast group 1 based on the locally stored context information of multicast group 1, and sends the tenth message to the multicast user plane network element, while deleting the context information of multicast group 1, or deleting the terminal information {multicast group 1} included in the context information of multicast group 1.

[0344] Based on this implementation, when no terminal joins the multicast group, the tunnel for transmitting the multicast data corresponding to the multicast group can be released, thereby improving resource utilization.

[0345] The following combination Figure 2 In the 5G communication system shown, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, and the multicast user plane network element is M-UPF. Terminal 1 and terminal 2 join multicast group 1, and select M-SMF in the manner described in the above case 1, and send the sixth message to M-SMF. The above method 1 is used to select the multicast user plane network element as an example, that is, the unicast SMF corresponding to the unicast PDU session established by different terminals in the multicast group is M-SMF, and the unicast PDU sessions established by different terminals correspond to the same M-SMF as an example. Figure 9 The method is described in detail. The process can be referred to as follows Figure 10 shown.

[0346] Figure 10 A message forwarding method provided in an embodiment of the present application, such as Figure 10 As shown, the method includes:

[0347] S1001: Establish a multicast PDU session.

[0348] The multicast PDU session is used to transmit the multicast data corresponding to the multicast group 1. Figure 10 In the method shown, it is assumed that the session management network element corresponding to the multicast PDU session is M-SMF, the corresponding user plane network element is M-UPF, M-SMF manages M-UPF, and M-SMF locally stores the correspondence between the identification information of M-UPF and the identification information of the multicast group.

[0349] Specifically, the process of establishing a multicast PDU session can refer to the existing technology and will not be described in detail.

[0350] S1002: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0351] Among them, the PDU session 1 established by terminal 1 can be used to transmit data to terminal 1. Figure 10 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 1 is M-SMF, the corresponding user plane network element is UPF1, and M-SMF manages UPF1.

[0352] Among them, the PDU session 2 established by terminal 2 can be used to transmit data to terminal 2. Figure 10 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 2 is M-SMF, the corresponding user plane network element is UPF2, and M-SMF manages UPF2.

[0353] Specifically, the process of terminal 1 establishing unicast PDU session 1 and terminal 2 establishing unicast PDU session 2 can refer to the existing technology and will not be described in detail.

[0354] It should be noted that the embodiment of the present application does not limit the execution order of S1001 and S1002. Figure 10 As shown, S1001 is executed first, and then S1002; S1002 may be executed first, and then S1001; S1001 and S1002 may also be executed without limitation.

[0355] S1003: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0356] The first message may be used to instruct terminal 1 to join multicast group 1.

[0357] Specifically, S1003 may refer to S901 and will not be described in detail.

[0358] S1004: UPF1 receives the first message and sends a sixth message to the M-SMF.

[0359] The sixth message may be used to instruct terminal 1 to join multicast group 1.

[0360] The sixth message in S1004 may be an IGMP message, an MLD message, or a user plane event notification message, without limitation.

[0361] S1005: The M-SMF receives the sixth message, does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, selects M-UPF, sends the seventh message to the M-UPF, and stores the context information of multicast group 1 locally. The context information of multicast group 1 may include {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 1}.

[0362] The seventh message can be used to request the application server to establish a tunnel for transmitting multicast data with the M-UPF. Figure 9 The method is described in detail and will not be described in detail here.

[0363] Among them, the method of M-SMF selecting M-UPF can refer to the above method 1 and will not be repeated here.

[0364] S1006: The M-UPF receives the seventh message and sends a setup request to the application server, requesting the application server to establish a tunnel for transmitting multicast data with the M-UPF.

[0365] S1007: Terminal 2 determines to join multicast group 1 and sends a second message to UPF 2 through unicast PDU session 2.

[0366] The second message may be used to instruct terminal 2 to join multicast group 1.

[0367] Specifically, S1007 may refer to S507 and will not be described in detail.

[0368] S1008: UPF2 receives the second message and sends an eighth message to the M-SMF.

[0369] S1009: The M-SMF receives the sixth message, searches for the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the seventh message to the M-UPF, and updates the context information of multicast group 1 stored locally.

[0370] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0371] Similarly, the process of other terminals in multicast group 1 requesting to join multicast group 1 can be referred to S1007 to S1009 and will not be described in detail.

[0372] In contrast, as a terminal joining multicast group 1, Figure 10 The method also includes a process in which a terminal leaves multicast group 1. For example, terminal 1 determines to leave multicast group 1 and sends a message to UPF 1 via unicast PDU session 1, indicating that terminal 1 has left multicast group 1. UPF 1 receives the message and forwards it to the M-SMF. The M-SMF receives the message and locally searches for context information for multicast group 1 {multicast group 1, the number of terminals joining multicast group 1 is 2, terminal 1, terminal 2}. Based on the context information for multicast group 1, the M-SMF determines that terminal 1 is not the last terminal to request to leave multicast group 1. The M-SMF updates the context information for multicast group 1, decrements the number of terminals by 1, and deletes terminal 1 from the terminal information. The updated context information for multicast group 1 may include {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 2}.

[0373] Similarly, the process for other terminals in multicast group 1 to request to leave multicast group 1 can refer to the above process and will not be described in detail. When the last terminal leaves multicast group 1, in order to improve resource utilization, it is necessary to release the tunnel used to transmit multicast data. The following is an example of terminal 2 leaving multicast group 1 as the last terminal. Figure 10 As shown, the method may further include:

[0374] S1010: Terminal 2 determines to leave multicast group 1 and sends a fourth message to UPF 2 via unicast PDU session 2.

[0375] The fourth message may be used to instruct the terminal 2 to leave the multicast group 1. The description of the fourth message may refer to the above and will not be repeated here.

[0376] S1011: UPF2 receives the fourth message and sends a ninth message to the M-SMF.

[0377] The ninth message may be used to instruct the terminal 2 to leave the multicast group 1. The ninth message may be an IGMP message, an MLD message, or a user plane event notification message, etc., which is not limited.

[0378] S1012: The M-SMF receives the ninth message, searches for the context information of multicast group 1 locally {multicast group 1, the number of terminals joining multicast group 1 is 1, terminal 2}, determines based on the context information of multicast group 1 that terminal 2 is the last terminal requesting to leave multicast group 1, selects M-UPF, and sends the tenth message to the M-UPF, while deleting the context information of multicast group 1 or deleting the terminal information included in the context information of multicast group 1.

[0379] Among them, the method of M-SMF selecting M-UPF can refer to the above method 1 and will not be repeated here.

[0380] The tenth message may be used to request the release of a tunnel for transmitting multicast data.

[0381] S1013: The M-UPF receives the ninth message and sends a release request to the application server.

[0382] The release request may be used to request the release of a tunnel for transmitting multicast data.

[0383] The following combination Figure 2 In the 5G communication system shown, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, the multicast user plane network element is M-UPF, terminal 1 and terminal 2 join multicast group 1, select M-SMF in the manner described in the above case 1, and send the sixth message to M-SMF. The multicast user plane network element is selected in the above manner 2 as an example, that is, the unicast SMF corresponding to the unicast PDU session established by different terminals in the multicast group is M-SMF, and the unicast PDU sessions established by different terminals correspond to the same M-SMF, but the M-SMF does not establish a multicast PDU session. For example, Figure 9 The method is described in detail. The process can be referred to as follows Figure 11 shown.

[0384] Figure 11 A message forwarding method provided in an embodiment of the present application, such as Figure 11 As shown, the method includes:

[0385] S1101: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0386] Among them, S1101 is the same as S1002 and will not be described in detail.

[0387] S1102: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0388] Among them, the relevant description of the first message and the execution process of S1102 are the same as S1003 and will not be repeated here.

[0389] S1103: UPF1 receives the first message and sends a sixth message to M-SMF.

[0390] Among them, the relevant description of the sixth message can be referred to above and will not be repeated here.

[0391] S1104: The M-SMF receives the sixth message, and does not find the correspondence between the multicast group identification information and the M-UPF identification information locally. It determines to establish a multicast PDU session for multicast group 1 and sends an SM policy establishment request to the PCF.

[0392] Among them, S1104 is the same as S604 and is not described in detail.

[0393] S1105: PCF receives the SM policy establishment request and sends an SM policy establishment response to the M-SMF.

[0394] Among them, S1105 is the same as S605 and is not described in detail.

[0395] S1106: M-SMF receives the SM policy establishment response and selects M-UPF.

[0396] The process of the M-SMF selecting the M-UPF may refer to the above-mentioned method 2, which will not be described in detail. Further, optionally, the M-SMF stores the corresponding relationship between the identification information of the M-UPF and the identification information of the multicast group.

[0397] S1107: The M-SMF does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, sends a seventh message to the M-UPF, and stores the context information of multicast group 1 locally.

[0398] For the description of the seventh message, please refer to the above and will not be repeated here. For example, the seventh message may be carried in an N4 session modification request or an N4 session establishment request and sent to the M-UPF.

[0399] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0400] S1108: The M-UPF receives the seventh message and sends a setup request to the application server, requesting the application server to establish a tunnel for transmitting multicast data with the M-UPF.

[0401] Among them, the relevant description of the request message can be referred to above and will not be repeated here.

[0402] S1109: Terminal 2 determines to join multicast group 1 and sends a third message to UPF 2 through unicast PDU session 2.

[0403] The third message may be used to instruct terminal 2 to join multicast group 1.

[0404] Specifically, S1109 may refer to S609 and will not be described in detail.

[0405] S1110: UPF2 receives the third message and sends an eighth message to M-SMF.

[0406] The eighth message may be used to instruct the terminal 2 to join the multicast group 1. The eighth message may be an IGMP message, an MLD message, or a control plane message.

[0407] S1111: The M-SMF receives the eighth message, finds the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the seventh message to the M-UPF, and updates the context information of multicast group 1 stored locally.

[0408] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0409] Similarly, the process of other terminals in multicast group 1 requesting to join multicast group 1 can be referred to S1109 - S1111 and will not be described in detail.

[0410] In contrast, as a terminal joining multicast group 1, Figure 11 The method shown also includes a process for the terminal to leave the multicast group 1, and the specific process can be referred to Figure 10 The process of the terminal leaving the multicast group 1 is not described in detail.

[0411] The following combination Figure 2 In the 5G communication system shown, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, the multicast user plane network element is M-UPF, terminal 1 and terminal 2 join multicast group 1, select M-SMF in the manner described in the above case 2, and send a sixth message to M-SMF. The multicast user plane network element is selected in the above manner 1, and the unicast SMFs corresponding to the unicast PDU sessions established by different terminals in the multicast group select the same M-SMF, and the M-SMF has established a multicast PDU session as an example. Figure 9 The method is described in detail. The process can be referred to as follows Figure 12shown.

[0412] Figure 12 A message forwarding method provided in an embodiment of the present application, such as Figure 12 As shown, the method includes:

[0413] S1201: Establish a multicast PDU session.

[0414] The multicast PDU session is used to transmit the multicast data corresponding to the multicast group 1. Figure 12 In the method shown, it is assumed that the session management network element corresponding to the multicast PDU session is M-SMF, the corresponding user plane network element is M-UPF, M-SMF manages M-UPF, and M-SMF locally stores the correspondence between the identification information of M-UPF and the identification information of the multicast group.

[0415] Specifically, the process of establishing a multicast PDU session can refer to the existing technology and will not be described in detail.

[0416] S1202: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0417] Among them, the PDU session 1 established by terminal 1 can be used to transmit data to terminal 1. Figure 12 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 1 is SMF1, the corresponding user plane network element is UPF1, and SMF1 manages UPF1.

[0418] Among them, the PDU session 2 established by terminal 2 can be used to transmit data to terminal 2. Figure 12 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 2 is SMF2, the corresponding user plane network element is UPF2, and SMF1 manages UPF2.

[0419] Specifically, the process of terminal 1 establishing unicast PDU session 1 and terminal 2 establishing unicast PDU session 2 can refer to the existing technology and will not be described in detail.

[0420] It should be noted that the embodiment of the present application does not limit the execution order of S1201 and S1202. Figure 12 As shown, S1201 is executed first, and then S1202; S1202 can also be executed first, and then S1201; S1201 and S1202 can also be executed without limitation.

[0421] S1203: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0422] Among them, the relevant description of the first message and the execution process of S1203 are the same as S1003 and are not repeated here.

[0423] S1204: UPF1 receives the first message and sends the first message to SMF1.

[0424] S1205: SMF1 receives the first message, selects M-SMF, and sends a sixth message to the M-SMF.

[0425] The process of SMF1 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0426] The sixth message may be an IGMP message, an MLD message, or a control plane message. Specifically, the description of the sixth message may refer to the above and will not be repeated here.

[0427] S1206: The M-SMF receives the sixth message and does not find the context information of multicast group 1 locally. It determines that terminal 1 is the first terminal requesting to join multicast group 1. Then, based on the correspondence between the locally stored identification information of the M-UPF and the identification information of the multicast group, the M-SMF sends the seventh message to the M-UPF and stores the context information of multicast group 1 locally.

[0428] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0429] S1207: The M-UPF receives the seventh message and sends a setup request to the application server, requesting the application server to establish a tunnel for transmitting multicast data with the M-UPF.

[0430] S1208: Terminal 2 determines to join multicast group 1 and sends a third message to UPF 2 through unicast PDU session 2.

[0431] The third message may be used to instruct the terminal 2 to join the multicast group 1. The description of the third message may refer to the above and will not be repeated here.

[0432] S1209: UPF2 receives the third message and sends the third message to SMF2.

[0433] S1210: SMF2 receives the third message and selects M-SMF.

[0434] The process of SMF2 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0435] S1211: SMF2 sends an eighth message to M-SMF.

[0436] The eighth message may be used to instruct the terminal 2 to join the multicast group 1. The eighth message may be an IGMP message, an MLD message, or a control plane message.

[0437] S1212: The M-SMF receives the eighth message, finds the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the seventh message to the M-UPF, and updates the context information of multicast group 1 stored locally.

[0438] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0439] Similarly, the process of other terminals in multicast group 1 requesting to join multicast group 1 can be referred to S1208 to S1212 and will not be described in detail.

[0440] In contrast, as a terminal joining multicast group 1, Figure 12 The method shown also includes a process for the terminal to leave the multicast group 1, and the specific process can be referred to Figure 10 The process of the terminal leaving the multicast group 1 is not described in detail.

[0441] The following combination Figure 2 In the 5G communication system shown, the session management network element is SMF, the user plane network element is UPF, the multicast session management network element is M-SMF, and the multicast user plane network element is M-UPF. Terminal 1 and terminal 2 join multicast group 1, and the M-SMF is selected in the manner described in the above case 2, and a sixth message is sent to the M-SMF. The multicast user plane network element is selected in the above manner 2, and the unicast SMFs corresponding to the unicast PDU sessions established by different terminals in the multicast group select the same M-SMF, and the M-SMF does not establish a multicast PDU session. For example, Figure 9 The method is described in detail. The process can be referred to as follows Figure 13 shown.

[0442] Figure 13 A message forwarding method provided in an embodiment of the present application, such as Figure 13 As shown, the method includes:

[0443] S1301: Terminal 1 establishes unicast PDU session 1, and terminal 2 establishes unicast PDU session 2.

[0444] Among them, the PDU session 1 established by terminal 1 can be used to transmit data to terminal 1. Figure 12 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 1 is SMF1, the corresponding user plane network element is UPF1, and SMF1 manages UPF1.

[0445] Among them, the PDU session 2 established by terminal 2 can be used to transmit data to terminal 2. Figure 12 In the method shown, it is assumed that the session management network element corresponding to the PDU session established by terminal 2 is SMF2, the corresponding user plane network element is UPF2, and SMF1 manages UPF2.

[0446] Specifically, the process of terminal 1 establishing unicast PDU session 1 and terminal 2 establishing unicast PDU session 2 can refer to the existing technology and will not be described in detail.

[0447] S1302: Terminal 1 determines to join multicast group 1 and sends a first message to UPF 1 through unicast PDU session 1.

[0448] The description of the first message and the execution process of S1302 are the same as those of S901 and are not described in detail.

[0449] S1303: UPF1 receives the first message and sends the first message to SMF1.

[0450] S1304: SMF1 receives the first message and selects M-SMF.

[0451] The process of SMF1 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0452] S1305: SMF1 sends a sixth message to M-SMF.

[0453] S1306: The M-SMF receives the sixth message, and does not find the correspondence between the M-UPF identification information and the multicast group identification information locally. It determines to establish a multicast PDU session for multicast group 1 and sends an SM policy establishment request to the PCF.

[0454] Among them, S1306 is the same as S1104 and is not described in detail.

[0455] S1307: PCF receives SM policy establishment request and sends SM policy establishment response to M-SMF.

[0456] Among them, S1307 is the same as S1105 and is not described in detail.

[0457] S1308: M-SMF receives the SM policy establishment response and selects M-UPF.

[0458] The process of M-SMF selecting M-UPF can be referred to Figure 9 The second method in the illustrated method is described and will not be described in detail. Further, optionally, the M-SMF stores the corresponding relationship between the identification information of the M-UPF and the identification information of the multicast group.

[0459] S1309: The M-SMF does not find the context information of multicast group 1 locally, determines that terminal 1 is the first terminal requesting to join multicast group 1, sends the seventh message to the M-UPF, and stores the context information of multicast group 1 locally.

[0460] The context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 1, terminal 1}.

[0461] S1310: The M-UPF receives the seventh message and sends a setup request to the application server, requesting the application server to establish a tunnel for transmitting multicast data with the M-UPF.

[0462] S1311: Terminal 2 determines to join multicast group 1 and sends a third message to UPF 2 through unicast PDU session 2.

[0463] The third message may be used to instruct terminal 2 to join multicast group 1.

[0464] For details, please refer to S1311 Figure 9 The above is described in one implementation of the method shown and will not be described in detail here.

[0465] S1312: UPF2 receives the third message and sends the third message to SMF2.

[0466] S1313: SMF2 receives the third message and selects M-SMF.

[0467] The process of SMF2 selecting M-SMF may refer to the second case in S402 and will not be described in detail.

[0468] S1314: SMF2 sends an eighth message to M-SMF.

[0469] S1315: The M-SMF receives the eighth message, finds the context information of multicast group 1 locally, determines that terminal 2 is not the first terminal requesting to join multicast group 1, does not send the seventh message to the M-UPF, and updates the context information of multicast group 1 stored locally.

[0470] The updated context information of the multicast group 1 may include {multicast group 1, the number of terminals joining the multicast group 1 is 2, terminal 1, terminal 2}.

[0471] Similarly, the process of other terminals in the multicast group 1 requesting to join the multicast group 1 can be referred to S1311 to S1315 and will not be described in detail.

[0472] In contrast, as a terminal joining multicast group 1, Figure 13 The method shown also includes a process for the terminal to leave the multicast group 1, and the specific process can be referred to Figure 10 The process of the terminal leaving the multicast group 1 is not described in detail.

[0473] The above mainly introduces the solution provided by the embodiment of the present application from the perspective of the interaction between various nodes. It can be understood that in order to implement the above functions, each node, such as a multicast user plane network element and a multicast session management network element, includes a hardware structure and / or software module corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the method of the embodiment of the present application can be implemented in the form of hardware, software, or a combination of hardware and computer software. Whether a function is executed in a hardware or computer software-driven hardware manner depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0474] In the embodiments of the present application, the multicast user plane network element and the multicast session management network element can be divided into functional modules according to the above-mentioned method examples. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above-mentioned integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative and is only a logical functional division. In actual implementation, other division methods may be used.

[0475] Figure 14 The structure diagram of a communication device 140 is shown. The communication device 140 can be a multicast user plane network element, a chip in a multicast user plane network element, a system on chip, or other devices capable of implementing the functions of the multicast user plane network element in the above method. The communication device 140 can be used to perform the functions of the multicast user plane network element involved in the above method embodiment. As an implementation method, Figure 14 The communication device 140 shown includes: a receiving unit 1401 and a sending unit 1402.

[0476] Receiving unit 1401 is configured to receive a first message from a multicast session management network element, instructing a first terminal to join a multicast group. The multicast session management network element is configured to manage a multicast service corresponding to the multicast group, or the multicast session management network element is a session management network element that manages a multicast user plane network element, and the multicast user plane network element is configured to transmit multicast data corresponding to the multicast group. For example, receiving unit 1401 is configured to support communication device 140 in performing the actions of receiving the first message in S404, S506, S608, S707, and S810.

[0477] The sending unit 1402 sends a second message to the application server for requesting establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server if the first terminal is the first terminal to join the multicast group. For example, the sending unit 1402 is configured to support the communication device 140 in executing the actions of sending the second message in S404, S506, S608, S707, and S810.

[0478] Specifically, the above Figure 4-Figure 8 All relevant contents of each step involved in the method embodiment can be referred to the functional description of the corresponding functional module, and will not be repeated here. Figure 4-Figure 8 The method shown in the message forwarding method multicasts the function of the user plane network element, and thus can achieve the same effect as the above-mentioned message forwarding method.

[0479] As another possible implementation method, Figure 14 The communication device 140 shown includes: a processing module and a communication module. The processing module is used to control and manage the actions of the communication device 140. The communication module can integrate the functions of the receiving unit 1401 and the sending unit 1402, and can be used to support the communication device 140 to execute steps S404, S506, S608, S707, S810, etc. and communicate with other network entities, such as Figure 1 The communication device 140 may further include a storage module for storing instructions and / or data. When the instructions are executed by the processing module, the processing module may implement the above-mentioned method for multicasting user plane network elements.

[0480] The processing module may be a processor, a controller, a module or a circuit. It may implement or execute various exemplary logic blocks described in conjunction with the disclosure of this application. The communication module may be a transceiver circuit, a pin, an interface circuit, a bus interface, or a communication interface. The storage module may be a memory. When the processing module is a processor, the communication module is a communication interface, and the storage module is a memory, the communication device 140 involved in this application may be Figure 3 The communication device shown.

[0481] In the embodiments of the present application, the processor may be a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and may implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of the present application may be directly implemented as being executed by a hardware processor, or may be executed by a combination of hardware and software modules in the processor.

[0482] In an embodiment of the present application, the memory may be a non-volatile memory, such as a hard disk drive (HDD) or a solid-state drive (SSD), or a volatile memory (volatile memory), such as a random-access memory (RAM). The memory is any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory in an embodiment of the present application may also be a circuit or any other device that can implement a storage function, for storing instructions and / or data.

[0483] Figure 15 The structure diagram of a communication device 150 is shown. The communication device 150 can be a multicast session management network element, a chip in a multicast session management network element, a system on a chip, or other devices capable of implementing the functions of the multicast session management network element in the above method. The communication device 150 can be used to perform the functions of the multicast session management network element involved in the above method embodiment. As an implementation method, Figure 15 The communication device 150 shown includes: a receiving unit 1501 and a sending unit 1502.

[0484] Receiving unit 1501 is configured to receive a sixth message for instructing a first terminal to join a multicast group. The multicast session management network element is configured to manage a multicast service corresponding to the multicast group. Alternatively, the multicast session management network element may be configured to manage a multicast user plane network element, which is an anchor point for transmitting multicast data. For example, receiving unit 1501 may support communication device 150 in executing S903, S1005, S1104, S1206, and S1306.

[0485] The sending unit 1502 is configured to, if the first terminal is the first terminal to join the multicast group, send a seventh message to the multicast user plane network element for requesting establishment of a tunnel for transmitting multicast data between the multicast user plane network element and the application server. For example, the sending unit 1502 is configured to support the communication device 150 in executing S903, S1005, S1107, S1206, and S1309.

[0486] Specifically, the above Figures 9-13 All relevant contents of each step involved in the embodiment of the method shown can be referred to the functional description of the corresponding functional module, and will not be repeated here. Figures 9-13 The function of the multicast session management network element in the message forwarding method shown in the method can achieve the same effect as the above-mentioned message forwarding method.

[0487] As another possible implementation method, Figure 15 The communication device 150 shown includes: a processing module and a communication module. The processing module is used to control and manage the actions of the communication device 150. The communication module can integrate the functions of the receiving unit 1501 and the sending unit 1502, and can be used to support the communication device 150 to execute steps S903, S1005, S1104, S1206, S1306, etc. and communicate with other network entities, such as Figure 1 The communication device 150 may further include a storage module for storing instructions and / or data. When the instructions are executed by the processing module, the processing module may implement the above-mentioned method for multicasting user plane network elements.

[0488] The processing module may be a processor, a controller, a module or a circuit. It may implement or execute various exemplary logic blocks described in conjunction with the disclosure of this application. The communication module may be a transceiver circuit, a pin, an interface circuit, a bus interface, or a communication interface. The storage module may be a memory. When the processing module is a processor, the communication module is a communication interface, and the storage module is a memory, the communication device 150 involved in this application may be Figure 3 The communication device shown.

[0489] Figure 16 A structural diagram of a communication system provided in an embodiment of the present application is shown in FIG. Figure 16 As shown, the communication system may include: a terminal, an access network device, a mobility management network element, a unicast session management network element, a unicast user plane network element, a multicast user plane network element 160, and a multicast session management network element 161. Figure 16 The access network equipment and mobility management network element shown may be optional network elements in this application.

[0490] The multicast user plane network element 160 may have the function of the communication device 140 . The multicast session management network element 161 may have the function of the communication device 150 .

[0491] In one example, the multicast session management network element 161 is configured to receive a first message sent by a unicast user plane network element to instruct a terminal to join a multicast group, and send the first message to the multicast user plane network element 160 .

[0492] The multicast user plane network element 160 can be used to receive the first message and, when the terminal is the first terminal to join the multicast group, send a second message to the application server requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element 160 and the application server.

[0493] In another example, the multicast session management network element 161 is used to receive a sixth message instructing the terminal to join the multicast group, and when the terminal is the first terminal to join the multicast group, send a seventh message to the multicast user plane network element 160 requesting to establish a tunnel for transmitting multicast data between the multicast user plane network element 160 and the application server.

[0494] Specifically, the specific implementation process of the multicast user plane network element 160 can refer to the above Figures 4 to 8 The execution process of the multicast user plane network element in the method embodiment will not be repeated here. The specific implementation process of the multicast session management network element 161 can refer to the above Figures 9 to 13 The execution process of the multicast session management network element in the method embodiment will not be described in detail here.

[0495] The embodiments of the present application also provide a computer-readable storage medium. All or part of the processes in the above-mentioned method embodiments can be completed by a computer program to instruct the relevant hardware, and the program can be stored in the above-mentioned computer-readable storage medium. When the program is executed, it can include the processes of the above-mentioned method embodiments. The computer-readable storage medium can be a terminal device of any of the above-mentioned embodiments, such as: an internal storage unit including a data sending end and / or a data receiving end, such as a hard disk or memory of the terminal device. The above-mentioned computer-readable storage medium can also be an external storage device of the above-mentioned terminal device, such as a plug-in hard disk equipped on the above-mentioned terminal device, a smart memory card (smart media card, SMC), a secure digital (secure digital, SD) card, a flash card (flash card), etc. Further, the above-mentioned computer-readable storage medium can also include both the internal storage unit of the above-mentioned terminal device and an external storage device. The above-mentioned computer-readable storage medium is used to store the above-mentioned computer program and other programs and data required by the above-mentioned terminal device. The above-mentioned computer-readable storage medium can also be used to temporarily store data that has been output or is to be output.

[0496] The present application also provides a computer instruction. All or part of the process in the above method embodiment can be completed by the computer instruction to instruct the relevant hardware (such as a computer, processor, network device, and terminal, etc.). The program can be stored in the above computer-readable storage medium.

[0497] It should be noted that the terms "first" and "second" in the specification, claims, and drawings of this application are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products, or devices.

[0498] It should be understood that in the present application, "at least one (item)" refers to one or more, "more than one" refers to two or more, "at least two (items)" refers to two or three and more than three, and "and / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0499] It should be understood that in the embodiments of the present application, "B corresponding to A" means that B is associated with A. For example, B can be determined based on A. It should also be understood that determining B based on A does not mean determining B based solely on A; B can also be determined based on A and / or other information. In addition, the "connection" in the embodiments of the present application refers to various connection methods, such as direct connection and indirect connection, to achieve communication between devices, and the embodiments of the present application do not impose any limitations on this.

[0500] Unless otherwise specified, the "transmission" (transmit / transmission) appearing in the embodiments of the present application refers to bidirectional transmission, including the actions of sending and / or receiving. Specifically, the "transmission" in the embodiments of the present application includes the sending of data, the receiving of data, or the sending of data and the receiving of data. In other words, the data transmission here includes uplink and / or downlink data transmission. Data may include channels and / or signals, uplink data transmission is uplink channel and / or uplink signal transmission, and downlink data transmission is downlink channel and / or downlink signal transmission. The "network" and "system" appearing in the embodiments of the present application express the same concept, and the communication system is the communication network.

[0501] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

[0502] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0503] The units described as separate components may or may not be physically separate, and the components shown as units may be one physical unit or multiple physical units, that is, they may be located in one place or distributed in multiple different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0504] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0505] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a device, such as a single-chip microcomputer, a chip, etc., or a processor to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.

[0506] The above is only a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in this application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.

Claims

1. A message forwarding method, characterized in that: The method comprises: The multicast session management network element receives a sixth message, wherein the sixth message is used to instruct the first terminal to join a multicast group, and the multicast session management network element is used to manage a multicast service corresponding to the multicast group; If the first terminal is the first terminal to join the multicast group, the multicast session management network element sends a seventh message to the multicast user plane network element, and the seventh message is used to establish a tunnel between the multicast user plane network element and the application server for transmitting multicast data of the multicast service, and the multicast user plane network element is used to transmit the multicast data.

2. The method according to claim 1, characterized in that The multicast session management network element receiving the sixth message includes: The multicast session management network element receives the sixth message from a unicast session management network element, where the unicast session management network element is a session management network element that manages unicast user plane network elements.

3. The method according to claim 1 or 2, characterized in that: Also includes: The multicast session management network element determines that the first terminal is the first terminal to join the multicast group.

4. The method according to claim 3, characterized in that The multicast session management network element determines that the first terminal is the first terminal to join the multicast group, including: When the multicast session management network element does not have the context information of the multicast group locally, determining that the first terminal is the first terminal to join the multicast group; or, When the context information of the multicast group locally stored in the multicast session management network element does not include terminal information, it is determined that the first terminal is the first terminal to join the multicast group.

5. The method according to any one of claims 1, 2 and 4, characterized in that: After the multicast session management network element sends the seventh message to the multicast user plane network element, the method further includes: The multicast session management network element receives an eighth message, wherein the eighth message is used to instruct the second terminal to join the multicast group; The multicast session management network element does not send an eleventh message to the multicast user plane network element, where the eleventh message is used to trigger establishment of a tunnel between the multicast user plane network element and the application server for transmitting the multicast data.

6. The method according to any one of claims 1, 2 and 4, characterized in that: The sixth message is a control plane message; The seventh message is signaling indication information.

7. The method according to any one of claims 1, 2 and 4, characterized in that: The sixth message is an Internet Group Management Protocol (IGMP) message, and the seventh message is the IGMP message or signaling indication information; or, The sixth message is an MLD message, and the seventh message is the MLD message or signaling indication information.

8. The method according to any one of claims 1, 2 and 4, characterized in that: Also includes: The multicast session management network element receives a ninth message, where the ninth message is used to instruct the third terminal to leave the multicast group; If the third terminal is the last terminal to leave the multicast group, the multicast session management network element sends a tenth message to the multicast user plane network element, where the tenth message is used to request the release of the tunnel for transmitting the multicast data.

9. The method according to any one of claims 1, 2 and 4, characterized in that: The establishing of a tunnel between the multicast user plane network element and the application server for transmitting the multicast data comprises: Establish an N6 multicast distribution tree with the application server as the data source, and connect the multicast user plane network element to the N6 multicast distribution tree related to the multicast group, wherein N6 is the interface between the multicast user plane network element and the data network DN, the data network DN is connected to the application server, and the multicast distribution tree is the forwarding path between the sender and receiver of the multicast data.

10. A communication device, characterized in that: The communication device comprises: A receiving unit, configured to receive a sixth message, wherein the sixth message is used to instruct the first terminal to join a multicast group, and the communication device is used to manage a multicast service corresponding to the multicast group; A sending unit, used for sending a seventh message to the multicast user plane network element if the first terminal is the first terminal to join the multicast group, wherein the seventh message is used to establish a tunnel between the multicast user plane network element and the application server for transmitting multicast data of the multicast service, and the multicast user plane network element is used to transmit the multicast data.

11. The communication device according to claim 10, characterized in that: The receiving unit is specifically used for The sixth message is received from a unicast session management network element, where the unicast session management network element is a session management network element that manages unicast user plane network elements.

12. The communication device according to claim 10 or 11, characterized in that: Also includes: The processing unit is configured to determine that the first terminal is the first terminal to join the multicast group.

13. The communication device according to claim 12, characterized in that: The processing unit is specifically used for: When the multicast session management network element does not have the context information of the multicast group locally, determining that the first terminal is the first terminal to join the multicast group; or, When the context information of the multicast group locally stored in the multicast session management network element does not include terminal information, it is determined that the first terminal is the first terminal to join the multicast group.

14. The communication device according to any one of claims 10, 11 and 13, characterized in that: The receiving unit is further used to receive an eighth message, wherein the eighth message is used to instruct the second terminal to join the multicast group; The sending unit is further used for not sending an eleventh message to the multicast user plane network element, where the eleventh message is used for triggering establishment of a tunnel between the multicast user plane network element and the application server for transmitting the multicast data.

15. The communication device according to any one of claims 10, 11 and 13, characterized in that: The sixth message is a control plane message; The seventh message is signaling indication information.

16. The communication device according to any one of claims 10, 11 and 13, characterized in that: The sixth message is an Internet Group Management Protocol (IGMP) message, and the seventh message is the IGMP message or signaling indication information; or, The sixth message is an MLD message, and the seventh message is the MLD message or signaling indication information.

17. The communication device according to any one of claims 10, 11 and 13, characterized in that: The receiving unit is further used to receive a ninth message, where the ninth message is used to instruct the third terminal to leave the multicast group; The sending unit is further configured to send a tenth message to the multicast user plane network element if the third terminal is the last terminal to leave the multicast group, wherein the tenth message is used to request the release of the tunnel for transmitting the multicast data.

18. The communication device according to any one of claims 10, 11 and 13, characterized in that: The establishing of a tunnel between the multicast user plane network element and the application server for transmitting the multicast data comprises: Establish an N6 multicast distribution tree with the application server as the data source, and connect the multicast user plane network element to the N6 multicast distribution tree related to the multicast group, wherein N6 is the interface between the multicast user plane network element and the data network DN, the DN is connected to the application server, and the multicast distribution tree is the forwarding path between the sender and receiver of the multicast data.

19. A communication system, characterized in that: The communication system comprises: A multicast session management network element, configured to send a first message to a multicast user plane network element, wherein the first message is used to instruct a first terminal to join a multicast group, and the multicast session management network element is used to manage a multicast service corresponding to the multicast group; The multicast user plane network element is used to receive the first message. If the first terminal is the first terminal to join the multicast group, a second message is sent to the application server, and the second message is used to request to establish a tunnel for transmitting multicast data between the multicast user plane network element and the application server. The multicast user plane network element is used to transmit the multicast data corresponding to the multicast group.

20. A communication system, characterized in that: The communication system comprises: a multicast session management network element, configured to receive a sixth message, wherein the sixth message is used to instruct a first terminal to join a multicast group, and the multicast session management network element is used to manage a multicast service corresponding to the multicast group; if the first terminal is the first terminal to join the multicast group, a seventh message is sent to a multicast user plane network element, wherein the seventh message is used to establish a tunnel for transmitting multicast data between the multicast user plane network element and an application server, and the multicast user plane network element is used to transmit the multicast data; The multicast user plane network element is used to receive a seventh message from the multicast session management network element.

21. A communication device, characterized in that: The communication device includes one or more processors and a communication interface, and the one or more processors and the communication interface are used to support the communication device to execute the message forwarding method as described in any one of claims 1-9.

22. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes computer instructions, and when the computer instructions are executed on a computer, the computer executes the message forwarding method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • A method and apparatus for transmitting multicast traffic

    CN109769150A