Communication method and apparatus
By allocating a unified address to the terminal through control plane network elements, the problem of high data transmission resource consumption under the DDS architecture is solved, achieving high efficiency and reliability of data transmission, which is applicable to fields such as national defense, civil aviation, industrial control, and autonomous driving.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2026-01-05
- Publication Date
- 2026-07-23
AI Technical Summary
In the DDS architecture, when a data generator needs to send data to multiple data readers, it results in a large consumption of data transmission resources, especially in mobile networks, where the reliability of data transmission cannot be guaranteed.
The control plane network element assigns a unified address to the first terminal for communication with multiple second terminals, and serves this address through the user plane network element, ensuring that data packets only need to be sent once to reach all relevant terminals, thereby reducing network resource consumption.
By using a unified address mechanism, network resource consumption for data transmission is reduced, and the reliability of data transmission is improved, making it suitable for data distribution services under the DDS architecture.
Smart Images

Figure CN2026070623_23072026_PF_FP_ABST
Abstract
Description
A communication method and apparatus
[0001] Cross-references to related applications
[0002] This application claims priority to Chinese Patent Application No. 202510068661.6, filed on January 16, 2025, entitled "A Communication Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of communications, and in particular to a communication method and apparatus. Background Technology
[0004] Data Distribution Service (DDS) is a distributed communication specification released by the Object Management Group (OMG). It adopts a publish / subscribe architecture, is data-centric, and provides rich Quality of Service (QoS) to ensure real-time, efficient, and flexible data distribution.
[0005] Data Storage and Analysis (DDS) is widely used in defense, civil aviation, industrial control, and autonomous driving. In autonomous vehicles, DDS integrates information collected by various complex sensors, supporting real-time analysis of complex environments and enabling correct responses. Furthermore, DDS is applied in multiple industries such as aviation, transportation, healthcare, and energy, providing efficient data exchange and services.
[0006] In the DDS architecture, data writers can be matched with data readers. If there are multiple data readers, a single copy of data generated by a data writer needs to be copied multiple times and sent to each data reader. If this is transmitted via a mobile network, it can easily lead to high resource consumption for data transmission. Summary of the Invention
[0007] This application provides a communication method and apparatus to reduce the resource consumption of data transmission.
[0008] In a first aspect, this application provides a communication method applied to a control plane network element or a module (e.g., circuit, chip, or chip system) within the control plane network element, or a logic node, logic module, or software capable of implementing all or part of the functions of the control plane network element. Taking the application of this method to a control plane network element as an example, in this method, the control plane network element determines that a first terminal has a matching relationship with N second terminals, where N is a positive integer; assigns a first address to the first terminal, the first address being used for communication between the first terminal and the N second terminals; the control plane network element sends first configuration information to a first user plane network element, the first user plane network element serving the first terminal, the first configuration information including the first address; and sends the first address to the first terminal.
[0009] Using the above method, the control plane network element determines that the first terminal has a matching relationship with N second terminals, assigns a first address to the first terminal, and uses the first address for communication between the first terminal and the N second terminals. The control plane network element notifies the first terminal and the user plane network element serving the first terminal (i.e., the first user plane network element) of the first address. Thus, when the first terminal communicates with the N second terminals, the first terminal only needs to send a data packet with the destination address as the first address, so that all N second terminals can obtain the data packet. This can reduce the network resources consumed by the first terminal, and since the first address is the address assigned by the control plane network element, the reliability of data transmission can be guaranteed.
[0010] In one possible design, when it is determined that a first terminal forms a matching relationship with N second terminals, the control plane network element receives a request message from the first terminal, the request message being used to request an address for communicating with the N second terminals; when sending the first address to the first terminal, the control plane network element sends a response message to the first terminal, the response message including the first address.
[0011] Using the above design, the control plane network element determines the matching relationship between the first terminal and N second terminals based on the request message from the first terminal.
[0012] In one possible design, the request message includes the addresses of the N second terminals.
[0013] In one possible design, when it is determined that the first terminal has a matching relationship with N second terminals, the control plane network element sends a first query message to the first network element. The first query message is used to query the second terminals that match the first terminal. The first network element stores the matching relationships between the terminals. The control plane network element receives a first query response message from the first network element. The first query response message includes information about the N second terminals that match the first terminal.
[0014] Using the above design, the control plane network element determines the matching relationship between the first terminal and N second terminals based on the first query response message from the first network element.
[0015] In one possible design, when it is determined that the first terminal has a matching relationship with N second terminals, the control plane network element receives a first notification message from the first user plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals.
[0016] Using the above design, the control plane network element determines the matching relationship between the first terminal and N second terminals based on the first notification message from the first user plane network element.
[0017] In one possible design, the first configuration information also includes the addresses of K of the N second terminals, where K ≤ N and K is a positive integer.
[0018] With the above design, the control plane network element can also notify the first user plane network element that the addresses of some or all of the N second terminals are served by the first user plane network element.
[0019] In one possible design, if K < N, the first user plane network element serves the K second terminals; the first configuration information also includes the addresses of M second user plane network elements, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
[0020] With the above design, when the first user plane network element serves K second terminals, the control plane network element can also notify the first user plane network element of the address of the user plane network element serving other second terminals.
[0021] In one possible design, the control plane network element sends M second configuration information to the M second user plane network elements. The M second user plane network elements correspond one-to-one with the M second configuration information. The m-th second configuration information includes the first address and the address of the second terminal served by the m-th second user plane network element. Alternatively, the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element and the address and / or port number of the m-th second user plane network element. The m-th second user plane network element is any one of the M user plane network elements, where m ≤ M and m is a positive integer.
[0022] With the above design, the control plane network element can also send corresponding second configuration information to the second user plane network element.
[0023] In one possible design, if K < N, the first user plane network element serves the K second terminals; the first configuration information also includes the addresses of M second user plane network elements, and the addresses of the second terminals served by the M second user plane network elements respectively, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
[0024] With the above design, when the first user plane network element serves K second terminals, the control plane network element can also notify the first user plane network element of the address of the user plane network element serving other second terminals and the address of the second terminal being served.
[0025] In one possible design, the first configuration information further includes the addresses of M second user plane network elements, wherein the M second user planes serve the N second terminals, and M is a positive integer.
[0026] With the above design, when the first user plane network element does not serve the second terminal, the control plane network element can also notify the first user plane network element of the addresses of M second user plane network elements.
[0027] In one possible design, the first configuration information may also include the addresses of the second terminals served by the M second user plane network elements respectively.
[0028] In one possible design, the control plane network element sends a first indication message to the first terminal, the first indication message being used to trigger the first terminal to use the first address.
[0029] Using the above design, the control plane network element triggers the first terminal to use the first address.
[0030] Secondly, this application provides a communication method, which is applied to a first user plane network element or a module (e.g., circuit, chip, or chip system) within the first user plane network element, or a logical node, logical module, or software capable of implementing all or part of the functions of the first user plane network element. Taking the application of this method to a first user plane network element as an example, in this method, the first user plane network element receives first configuration information, which includes a first address and the addresses of K second terminals, where K is a positive integer; receives a first data packet, the destination address of which is the first address; the first user plane network element determines K second data packets based on the first data packet and the addresses of the K second terminals; and sends the K second data packets.
[0031] Using the above method, the first user plane network element can receive the first configuration information. When receiving the first data packet, it determines K second data packets based on the addresses of K second terminals in the first configuration information and sends the K second data packets, thereby reducing the network resources consumed by the first terminal.
[0032] In one possible design, when determining K second data packets based on the first data packet and the addresses of the K second terminals, the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, and obtains K first data packets based on the first data packet; according to the addresses of the K second terminals and the K first data packets, the K second data packets are determined, wherein the destination address of the kth second data packet is the address of the kth second terminal, k is a positive integer, k≤K, and the kth second terminal is any one of the K second terminals.
[0033] Using the above design, the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, copies the first data packet multiple times, modifies the destination address, and determines multiple second data packets.
[0034] In one possible design, the first user plane network element serves the K second terminals; when sending the K second data packets, the first user plane network element sends the corresponding second data packets to the K terminals respectively, wherein the kth second data packet is sent to the kth second terminal.
[0035] In one possible design, the first configuration information includes the addresses of M second user plane network elements, where M is a positive integer; the first user plane network element sends the first data packet to the M second user plane network elements.
[0036] With the above design, the first user plane network element can also send the first data packet to the second user plane network element, so that the second user plane network element can perform data packet copying, and further reduce network resource consumption.
[0037] In one possible design, the first configuration information includes the addresses of M second user plane network elements and the addresses of the second terminals served by the M second user plane network elements respectively, where M is a positive integer, the m-th second user plane network element is any one of the M second user plane network elements, m≤M, m is a positive integer, and the m-th second user plane network element serves S second terminals, S is a positive integer; the first user plane network element obtains S first data packets based on the first data packet; determines S second data packets according to the addresses of the S second terminals and the S first data packets, where the destination address of the s-th second data packet is the address of the s-th second terminal, s is a positive integer, s≤S, and the s-th second terminal is any one of the S second terminals; and sends the S second data packets to the m-th second user plane network element.
[0038] Using the above design, the first user plane network element can copy N first data packets and send them to the corresponding second user network element after modifying the destination address.
[0039] In one possible design, before receiving the first configuration information, the first user plane network element sends a first notification message to the control plane network element. The first notification message indicates that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
[0040] With the above design, the first user plane network element can also notify the control plane network element that the first terminal has a matching relationship with N second terminals.
[0041] Thirdly, this application provides a communication method applied to a first user plane network element or a module (e.g., circuit, chip, or chip system) within the first user plane network element, or a logical node, logical module, or software capable of implementing all or part of the functions of the first user plane network element. Taking the application of this method to a first user plane network element as an example, in this method, the first user plane network element receives first configuration information, which includes a first address and addresses of M second user plane network elements, wherein the M second user planes serve N second terminals, where M is a positive integer; receives a first data packet, the destination address of which is the first address; and sends the first data packet to each of the M second user plane network elements.
[0042] Using the above method, the first user plane network element can receive the first configuration information. When receiving the first data packet, it sends the first data packet to M second user plane network elements respectively based on the first configuration information, so that the second user plane network elements can perform data packet replication, which can effectively reduce network resource consumption.
[0043] In one possible design, before receiving the first configuration information, the first user plane network element sends a first notification message to the control plane network element. The first notification message indicates that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
[0044] With the above design, the first user plane network element can also notify the control plane network element that the first terminal has a matching relationship with N second terminals.
[0045] Fourthly, embodiments of this application provide a communication method. This method can be applied to a first terminal or a communication module / processing module applicable to the first terminal, or a circuit or chip responsible for communication functions (such as a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip containing a modem core or a system-in-package (SIP) chip), or a circuit or chip responsible for processing functions (such as a graphics processing unit (GPU)). Taking the application of this method to a first terminal as an example, in this method, the first terminal receives a first address, which is used for communication between the first terminal and N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer. The first data packet is sent, the destination address of the first data packet is the first address, and the first data packet is a data packet sent to the N second terminals.
[0046] Using the above method, the first terminal receives the first address and communicates with N second terminals based on the first address, which can effectively reduce network resource consumption.
[0047] In one possible design, before receiving the first address, the first terminal sends a request message to the control plane network element, the request message being used to request an address for communicating with the N second terminals; upon receiving the first address, the first terminal receives a response message from the first control network element, the response message including the first address.
[0048] Using the above design, the first terminal can request an address from the control plane network element for communication with N second terminals.
[0049] In one possible design, the request message includes the addresses of the N second terminals.
[0050] In one possible design, before sending the first data packet, the first terminal receives first indication information from a control plane network element, the first indication information being used to trigger the first terminal to use the first address.
[0051] With the above design, the first terminal can use the first address based on the first instruction information.
[0052] In one possible design, before receiving the first address, the first terminal sends N unicast data packets to the N second terminals. The N second terminals correspond one-to-one with the N unicast data packets. The destination address of the i-th unicast data packet is the address of the i-th second terminal, where i is a positive integer and i≤N. The i-th unicast data packet is any one of the N unicast data packets, and the content of the N unicast data packets is the same.
[0053] With the above design, the first terminal sends N unicast data packets before receiving the first address, and only sends one data packet after receiving the first address, which can effectively reduce network resource consumption.
[0054] Fifthly, this application provides a communication device, the device comprising a transceiver unit and a processing unit, wherein the processing unit is configured to determine that a first terminal has a matching relationship with N second terminals, where N is a positive integer, and to assign a first address to the first terminal, the first address being used for communication between the first terminal and the N second terminals; the transceiver unit is configured to send first configuration information to a first user plane network element, the first user plane network element serving the first terminal, the first configuration information including the first address; and to send the first address to the first terminal.
[0055] In one possible design, when it is determined that a first terminal forms a matching relationship with N second terminals, the transceiver unit is configured to receive a request message from the first terminal, the request message being used to request an address for communicating with the N second terminals; and when sending the first address to the first terminal, it sends a response message to the first terminal, the response message including the first address.
[0056] In one possible design, the request message includes the addresses of the N second terminals.
[0057] In one possible design, when it is determined that the first terminal has a matching relationship with N second terminals, the transceiver unit is used to send a first query message to a first network element, the first query message being used to query the second terminals that match the first terminal, and the first network element storing the matching relationships between the terminals; and to receive a first query response message from the first network element, the first query response message including information about the N second terminals that match the first terminal.
[0058] In one possible design, when it is determined that the first terminal has a matching relationship with N second terminals, the transceiver unit is configured to receive a first notification message from the first user plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals.
[0059] In one possible design, the first configuration information also includes the addresses of K of the N second terminals, where K ≤ N and K is a positive integer.
[0060] In one possible design, if K < N, the first user plane network element serves the K second terminals; the first configuration information also includes the addresses of M second user plane network elements, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
[0061] In one possible design, the transceiver unit is configured to send M second configuration information to the M second user plane network elements, wherein the M second user plane network elements correspond one-to-one with the M second configuration information, and the m-th second configuration information includes the first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element and the address and / or port number of the m-th second user plane network element, wherein the m-th second user plane network element is any one of the M user plane network elements, m≤M, and m is a positive integer.
[0062] In one possible design, if K < N, the first user plane network element serves the K second terminals; the first configuration information also includes the addresses of M second user plane network elements, and the addresses of the second terminals served by the M second user plane network elements respectively, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
[0063] In one possible design, the first configuration information further includes the addresses of M second user plane network elements, wherein the M second user planes serve the N second terminals, and M is a positive integer.
[0064] In one possible design, the first configuration information may also include the addresses of the second terminals served by the M second user plane network elements respectively.
[0065] In one possible design, the transceiver unit is configured to send first indication information to the first terminal, the first indication information being used to trigger the first terminal to use the first address.
[0066] Sixthly, this application provides a communication device, which is a first user plane network element or a module of the first user plane network element. The device includes a transceiver unit and a processing unit. The transceiver unit is configured to receive first configuration information, which includes a first address and the addresses of K second terminals, where K is a positive integer; receive a first data packet, the destination address of which is the first address; the processing unit is configured to determine K second data packets based on the first data packet and the addresses of the K second terminals; and the transceiver unit is configured to send the K second data packets.
[0067] In one possible design, when determining K second data packets based on the first data packet and the addresses of the K second terminals, the processing unit is configured to determine that the destination address of the first data packet is the same as the first address in the first configuration information, and obtain K first data packets based on the first data packet; determine the K second data packets according to the addresses of the K second terminals and the K first data packets, wherein the destination address of the kth second data packet is the address of the kth second terminal, k is a positive integer, k≤K, and the kth second terminal is any one of the K second terminals.
[0068] In one possible design, the first user plane network element serves the K second terminals; when sending the K second data packets, the transceiver unit is used to send the corresponding second data packets to the K terminals respectively, wherein the kth second data packet is sent to the kth second terminal.
[0069] In one possible design, the first configuration information includes the addresses of M second user plane network elements, where M is a positive integer; the transceiver unit is used to send the first data packet to the M second user plane network elements.
[0070] In one possible design, the first configuration information includes the addresses of M second user plane network elements and the addresses of the second terminals served by the M second user plane network elements respectively, where M is a positive integer, the m-th second user plane network element is any one of the M second user plane network elements, m≤M, m is a positive integer, and the m-th second user plane network element serves S second terminals, S is a positive integer; the processing unit is configured to obtain S first data packets based on the first data packets; determine S second data packets according to the addresses of the S second terminals and the S first data packets, where the destination address of the s-th second data packet is the address of the s-th second terminal, s is a positive integer, s≤S, and the s-th second terminal is any one of the S second terminals; the transceiver unit is configured to send the S second data packets to the m-th second user plane network element.
[0071] In one possible design, before receiving the first configuration information, the transceiver unit is configured to send a first notification message to the control plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
[0072] In a seventh aspect, this application provides a communication device, which is a first user plane network element or a module within a first user plane network element. The device includes a transceiver unit and a processing unit. The processing unit is used to control the operation of the transceiver unit. The transceiver unit is used to receive first configuration information, which includes a first address and addresses of M second user plane network elements, wherein the M second user planes serve N second terminals, and M is a positive integer; receive a first data packet, the destination address of which is the first address; and send the first data packet to each of the M second user plane network elements.
[0073] In one possible design, before receiving the first configuration information, the transceiver unit is configured to send a first notification message to the control plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
[0074] Eighthly, embodiments of this application provide a communication device, the device including a transceiver unit and a processing unit, wherein the processing unit is used to control the operation of the transceiver unit, the transceiver unit is used to receive a first address, the first address being used for communication between a first terminal and N second terminals, the first terminal and the N second terminals having a matching relationship, N being a positive integer; and to send a first data packet, the destination address of the first data packet being the first address, the first data packet being a data packet sent to the N second terminals.
[0075] In one possible design, before receiving the first address, the transceiver unit is configured to send a request message to a control plane network element, the request message being used to request an address for communicating with the N second terminals; upon receiving the first address, the first terminal receives a response message from the first control network element, the response message including the first address.
[0076] In one possible design, the request message includes the addresses of the N second terminals.
[0077] In one possible design, before sending the first data packet, the transceiver unit is configured to receive first indication information from a control plane network element, the first indication information being used to trigger the first terminal to use the first address.
[0078] In one possible design, before receiving the first address, the transceiver unit is used to send N unicast data packets to the N second terminals. The N second terminals correspond one-to-one with the N unicast data packets. The destination address of the i-th unicast data packet is the address of the i-th second terminal, where i is a positive integer and i≤N. The i-th unicast data packet is any one of the N unicast data packets, and the content of the N unicast data packets is the same.
[0079] Ninthly, this application provides a communication device that has the function of realizing any of the above aspects. For example, the communication device includes a module, unit, or means corresponding to the operation involved in any of the above aspects. The module, unit, or means can be implemented by software, hardware, or a combination of software and hardware.
[0080] Tenthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions involved in any of the above aspects. The one or more processors are executable to the computer program or instructions, which, when executed, cause the communication device to implement the methods in any possible design or implementation of any of the above aspects. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.
[0081] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.
[0082] In one possible design, the communication device may also include the memory.
[0083] In one aspect, this application provides a communication system comprising a control plane network element, a first user plane network element, a first terminal, and N second terminals, where N is a positive integer. The control plane network element is used to execute the method in any possible design of the first aspect described above, the first user plane network element is used to execute the method in any possible design of the second or third aspect described above, and the first terminal is used to execute the method in any possible design of the fourth aspect described above.
[0084] In one possible design, the communication system may further include M second user plane network elements, where M is a positive integer, and the M second user plane network elements serve some or all of the N second terminals.
[0085] In a twelfth aspect, this application provides a computer-readable storage medium storing computer-readable instructions that, when read and executed by a computer, cause the computer to perform any possible design method in any of the above aspects.
[0086] In a thirteenth aspect, this application provides a computer program product that, when read and executed by a computer, causes the computer to perform any of the possible design methods in any of the foregoing aspects. Attached Figure Description
[0087] Figure 1 shows a schematic diagram of a DDS architecture provided in this application;
[0088] Figure 2 shows a schematic diagram of a possible system architecture provided in this application;
[0089] Figure 3 shows an overview flowchart of a communication method provided in this application;
[0090] Figure 4 shows a flowchart of how a first terminal sends data packets to N second terminals using a first address in scenario 1, as provided in this application.
[0091] Figure 5 shows a flowchart of how the first terminal sends data packets to N second terminals using the first address in scenario 2, case 1, as provided in this application.
[0092] Figure 6 shows a flowchart of how the first terminal sends data packets to N second terminals using the first address in scenario 2, according to the present application.
[0093] Figure 7 shows a flowchart of how a first terminal sends data packets to N second terminals using a first address in scenario 3a, as provided in this application.
[0094] Figure 8 shows a flowchart of how a first terminal sends data packets to N second terminals using a first address in scenario 3b provided in this application.
[0095] Figure 9 shows an overview flowchart of another communication method provided in this application;
[0096] Figure 10 shows a schematic diagram of the structure of a communication device provided in this application;
[0097] Figure 11 shows a schematic diagram of another communication device provided in this application. Detailed Implementation
[0098] The specific implementations of this application are described below with reference to the accompanying drawings in the embodiments. However, the implementations of this application may also include combining these embodiments without departing from the scope of this application, such as using other embodiments and making structural changes. Therefore, the detailed description of the following embodiments should not be understood in a limiting sense. The terminology used in the embodiment section of this application is only used to explain the specific embodiments of this application and is not intended to limit this application.
[0099] Figure 1 shows a schematic diagram of a DDS architecture, which includes M data generators and N data readers, where M and N are positive integers. The data generators can also be called data publishers, and the data readers can also be called data subscribers, data consumers, data receivers, etc. This application does not limit the use of these names.
[0100] In this model, M data producers and N data readers can each be bound to one or more topics. A topic is defined with three parts: name, data structure, and QoS. Data producers and readers bound to the same topic establish a publish-subscribe relationship. In Figure 1, the data producer and three data readers circled by the lines have a publish-subscribe relationship. All three data readers are bound to topic B, meaning that data generated by the data producer for topic B is subscribed to by the three data readers.
[0101] Furthermore, in this application, the publish-subscribe relationship may also be referred to as a matching relationship or a pairing relationship, etc., and this application does not limit its name.
[0102] Furthermore, taking the one data generator and three data readers circled by the lines in Figure 1 as an example, the three data readers correspond one-to-one with the three unicast addresses. For a piece of data generated by the data generator, three copies are made and sent to the corresponding data readers, resulting in a large consumption of air interface resources and a large consumption of user plane resources in the core network.
[0103] Furthermore, multicast addresses can be configured between data producers and data readers, allowing data producers to send data to various data readers via these addresses. However, since multicast addresses are configured by the data producers themselves without network negotiation, the network may discard data for some multicast addresses due to regulatory reasons. Alternatively, some mobile networks may not support multicast, preventing multicast data from being delivered to data readers. Therefore, currently, multicast addresses configured by data producers may not guarantee reliable transmission, thus failing to meet the reliable transmission requirements for certain data topics.
[0104] Figure 2 shows a schematic diagram of the system architecture used in an embodiment of this application. The functions of each device involved in Figure 2 are briefly described below:
[0105] The AI-agent communication network controller (ACN-C), also known as a control plane element or control plane function, is not limited to any particular name in this application. Its functions include terminal access management, terminal session management, terminal subscription information management, assigning specific addresses to terminals, and creating forwarding channels for AI-agent communication network user plane function (ACN-U) elements.
[0106] The user plane function element of an intelligent agent communication network is a user plane network element or user plane function, and this application does not limit its name. Its functions include: receiving forwarding rules from control plane network elements (e.g., ACN-C), and performing corresponding operations according to the forwarding rules when data is received.
[0107] The data generator, also known as the data sender, can also be called UE, agent, participant, node, writer, publisher, sender, or other names. This application does not limit its name.
[0108] The data reader, also known as the data sender, can also be called a UE, agent, participant, node, generator, publisher, sender, or other names. This application does not limit its name.
[0109] Radio access network (RAN): Provides mobile network access for data generators and data readers. In 4G, it may be called eNodeB, and in 5G, it may be called gNodeB; the name is not limited in future networks. RAN, also known as radio access network equipment or access network equipment, can specifically be a base station, an evolved NodeB (eNodeB), a transmission reception point (TRP), a next-generation NodeB (gNB) in 5G mobile communication systems, a base station in future mobile communication systems, or an access node in a wireless fidelity (WiFi) system, etc.
[0110] A gateway (ACN gateway), also known as an access gateway, is a user plane network element. Its functions include providing IP or fixed network connections for data generators and / or data readers. For example, when the data generator or data reader is a virtual intelligent agent (AI-agent), it connects to the intelligent agent communication network through the access gateway.
[0111] It should be noted that if the data generator and data reader are physical entities, such as robots or drones, the data generator and data reader can be independent devices or sensors, or they can be contained within a device or sensor; that is, a device or sensor may contain one or more data generators and data readers. Data generators and data readers can access the network through any of the following methods: mobile network, fixed network, or IP network. As shown in Figure 2, data generator #1, data reader #2, and data reader #3 access the network through a mobile network (e.g., RAN), while data reader #4 accesses the network through an IP network.
[0112] In Figure 2, ACN-C1 serves as a control plane network element, supporting data generators #1, #2, #3, and #4. ACN-U#1 serves the data generator, which accesses the network via RAN-1. ACN-U#1 also serves data reader #1, which accesses via RAN-2. Therefore, ACN-U#1 can receive data from the data generator through RAN-1 and send data to data reader #1 through RAN-2. ACN-U#2 serves data readers #2 and #3, which access via RAN-3. Therefore, ACN-U#2 can send data to data reader #2 and data reader #3 through RAN-3. The gateway serves data reader #4, which accesses via the IP network. Therefore, the gateway can send data to data reader #4 through the IP network.
[0113] For ease of description, in the following embodiments, the data generator is referred to as the first terminal, and the data reader as the second terminal. Unless otherwise specified, both the first terminal and the second terminal have completed network access.
[0114] It is understood that the network architecture and business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0115] The communication method and apparatus will be further described below with reference to the accompanying drawings. It is understood that in the embodiment shown in Figure 3, the control plane network element, the first terminal, and the user plane network element are used as examples to illustrate the execution entities in the interaction. However, this application does not limit the execution entities in the interaction illustration. For example, the method executed by the control plane network element in this application can also be implemented by a module (e.g., circuit, chip, or chip system) in the control plane network element, or by a logic node, logic module, or software that can implement all or part of the control plane network element functions, such as ACN-C. The control plane network element can be the method executed by the first terminal in this application, or it can be implemented by a communication / processing module in the first terminal or by a circuit or chip in the terminal responsible for communication / processing functions; for example, the first terminal can be a data generator. The method executed by the user plane network element in this application can also be implemented by a module (e.g., circuit, chip, or chip system) in the user plane network element, or by a logic node, logic module, or software that can implement all or part of the user plane network element functions; for example, the user plane network element can be ACN-U or a gateway.
[0116] As shown in Figure 3, this application provides a communication method, which includes:
[0117] Step 300: The control plane network element determines that the first terminal has a matching relationship with N second terminals, where N is a positive integer. Here, the first terminal sending data to the N second terminals is considered a matching relationship; for example, the first terminal and the N second terminals form a publish-subscribe relationship.
[0118] For example, the control plane network element can be understood as the control plane network element that serves the first terminal. The value of N can be pre-configured or dynamically changed according to network conditions. For example, when network conditions are congested, the value of N is set to a larger value in order to save network resources.
[0119] For example, the control plane network element may determine the matching relationship between the first terminal and N second terminals in the following ways, but not limited to:
[0120] Method 1: The control plane network element receives a request message from a first terminal, which requests addresses for communication with N second terminals. The control plane network element then determines that the first terminal and the N second terminals form a matching relationship. Alternatively, the request message may also contain indication information indicating the matching relationship between the first terminal and the N second terminals.
[0121] The request message can also be understood as a request for a data transmission mode conversion, or a request for the allocation of a multicast address, etc. This application does not limit the name of the request message. For example, the request message can be a non-access stratum (NAS) message.
[0122] For example, the request message may also include the addresses of N second terminals. For instance, the IP address and / or port number of each second terminal. Furthermore, if the request message does not include the addresses of N second terminals, the control plane network element may request the addresses of the second terminals that form a matching relationship with the first terminal from the first terminal, and then the first terminal sends the addresses of the N second terminals to the control plane network element.
[0123] In some possible embodiments, the first terminal determines that it has formed a matching relationship with N second terminals, and then sends a request message to the control plane network element. For example, the first terminal can determine that it has formed a publish-subscribe relationship with N second terminals through the DDS discovery protocol. Here, the publish-subscribe relationship can be understood as a matching relationship. Furthermore, the control plane network element can pre-configure the value of N for the first terminal.
[0124] Method 2: The control plane network element sends a first query message to the first network element. The query request information is used to query the second terminals that match the first terminal. The first network element stores the matching relationships between various terminals. For example, the first network element can be a global control plane network element. The global control plane network element stores the mapping relationship between each terminal and the second terminals that form a matching relationship with it, and can communicate with various control plane network elements. The control plane network element receives a first query response message from the first network element. The first query response message includes information on N second terminals that match the first terminal.
[0125] It is understood that the control plane network elements serving the first terminal and the control plane network elements serving each of the second terminals may be the same or different. For example, the first terminal sends a member registration message to its own control plane network element. The member registration message includes the address of the first terminal, and optionally, it also includes a topic bound to the first terminal (e.g., a first topic). Each second terminal sends a member registration message to its own control plane network element. The member registration message includes the address of the second terminal, and optionally, it also includes a topic bound to the second terminal (e.g., a first topic). Further, each control plane network element sends information about the first or second terminals it serves to the first network element. The first network element can learn that the first terminal forms a matching relationship with N second terminals, or the first network element determines the multiple terminals forming a matching relationship based on the same topic bound to each terminal. When the control plane network element serving the first terminal sends a first query message to the first network element, the first network element can send a first query response message to the control plane network element serving the first terminal. The first query response message includes information about the N second terminals matching the first terminal, such as the addresses of the N second terminals.
[0126] Method 3: The control plane network element determines the matching relationship between the first terminal and N second terminals based on the information of the registered members it maintains.
[0127] It should be noted that the information of registered members here includes not only the information of members who have registered with themselves (or the information of members who have served themselves), but also the information of members who have registered with other control plane network elements (or the information of members who have served other control plane network elements).
[0128] For example, in conjunction with method 2 above, the control plane network elements serving the first terminal and the control plane network elements serving each of the second terminals may be the same or different. The first terminal sends a member registration message to its own control plane network element. Each second terminal sends a member registration message to its own control plane network element. Further, each control plane network element synchronizes the information of the members it serves; that is, each control plane network element maintains the same data (i.e., information of registered members), which includes information of all first terminals or second terminals, and may also include information of other members, which will not be elaborated upon in this application. It can be seen that since each control plane network element maintains its own information of registered members, it is possible to determine that the first terminal forms a matching relationship with N second terminals.
[0129] Method 4: The first user plane network element sends a first notification message to the control plane network element, indicating that the first terminal has a matching relationship with N second terminals. The first user plane network element then serves the first terminal.
[0130] It is understandable that the data packets sent by the first terminal will be forwarded to each of the second terminals through the first user plane network element.
[0131] For example, if the first terminal sends a unicast data packet, for the same data, the first terminal needs to copy it N times to send it to the corresponding second terminal. Then the first user plane network element can perform statistical analysis on the data packets to be forwarded, detect that a data packet is sent repeatedly N times, and send a first notification message to the control plane network element.
[0132] For example, a control plane network element can send a first subscription message to a first user plane network element. The first subscription message is used to subscribe to a first event, which is a data packet statistical analysis event. The first user plane network element counts the data packets sent by the first terminal based on the subscription message. If the first user plane network element determines that the number of data packets repeatedly sent by the first terminal is greater than or equal to a preset threshold, it sends a first notification message to the control plane network element.
[0133] Furthermore, in one possible implementation, if the first terminal sends multicast data packets using a multicast address, the first user plane network element can detect the address of the data packet to be forwarded. If a multicast data packet is detected, a second notification message can be sent to the control plane network element. This second notification message can instruct the first terminal to send the multicast data packet. The first user plane network element can pre-store multiple multicast addresses. If the address of the received data packet is one of the pre-stored multicast addresses, then the data packet is determined to be a multicast data packet. Additionally, the first user plane network element can store a multicast relationship table (or a mapping relationship between members associated with multicast addresses). This mapping relationship indicates that the first terminal, as a multicast source, has a matching relationship with N second terminals. Based on the above mapping relationship, the first user plane network element can also send a first notification message, indicating that the first terminal has a matching relationship with N second terminals.
[0134] Based on the above, it can be seen that the multicast address used by the first terminal to send multicast data packets is the multicast address determined by the first terminal, not a network-authorized multicast address. Therefore, when the first user plane network element detects a specific multicast address, it can be understood that the first user plane network element has detected that the multicast address used by the first terminal is not a network-authorized multicast address. That is, when the first user plane network element detects that the first terminal is sending multicast data packets using a non-network-authorized multicast address, the first user plane network element can send a notification message to the control plane network element. In this case, the first notification message can also be understood as instructing the first terminal to use a non-network-authorized multicast address.
[0135] For example, a control plane network element can send a second subscription message to a first user plane network element. This second subscription message is used to subscribe to a second event, which is a non-authorized multicast address detection event. Based on the second subscription message, the first user plane network element detects the address used to send data packets. If the first user plane network element determines that the data packets sent by the first terminal use a non-authorized multicast address, it then sends a second notification message to the control plane network element. Furthermore, the aforementioned first and second subscription messages can be a single subscription message, which includes both the first and second events.
[0136] It should be understood that the aforementioned first user plane network element can analyze the data packets sent by the first terminal itself, or it can send the data packets to other network elements (e.g., network data analytics function (NWDAF) network elements) for analysis, and the other network elements will send the analysis results back to the first user plane network element after completing the analysis.
[0137] It is understandable that by using any of the above methods 2 to 4 to determine the matching relationship between the first terminal and N second terminals, the control plane network element can reduce the dependence on the data generator (e.g., the first terminal), actively discover the matching relationship between each terminal, and promptly allocate addresses (e.g., the first address) for communication between the data generator and the data reader.
[0138] Step 310: The control plane network element assigns a first address to the first terminal. The first address is used for the first terminal to communicate with N second terminals.
[0139] The first address can be a multicast address or a unicast address, and can also be called the target address or other names. This application does not limit the specific names of these addresses.
[0140] In one example, if the control plane network element determines that the number of second terminals that form a matching relationship with the first terminal is greater than or equal to a preset threshold, the control plane network element can assign a first address to the first terminal; otherwise, it may not assign a first address to the first terminal. That is, if N is greater than or equal to the preset threshold, the control plane network element assigns a first address to the first terminal; if N is less than the preset threshold, the control plane network element may not assign a first address to the first terminal.
[0141] In another example, if the control plane network element determines that the first terminal uses a non-network authorized multicast address or the first terminal sends multicast data packets (for example, the control plane network element determines the above content in conjunction with the second notification message), then the first address is assigned to the first terminal.
[0142] Step 320: The control plane network element sends the first address to the first terminal.
[0143] For example, the first address can be sent to the first terminal via a NAS message.
[0144] For example, the first address can be sent to the first terminal in a separate message.
[0145] For example, combining with method 1 above, after the control plane network element assigns a first address to the first terminal, the control plane network element sends a response message to the first terminal, and the response message includes the first address. That is, the first address can be carried in the response message.
[0146] Step 330: The control plane network element sends the first configuration information to the first user plane network element. The first configuration information includes the first address.
[0147] In one example, the first configuration information includes a first address and the addresses of K out of N second terminals, where K ≤ N and K is a positive integer. See Scenario 1 and Scenario 2 below for details.
[0148] In another example, the first configuration information includes a first address and the addresses of M second user plane network elements, with the M second user planes serving N second terminals, where M is a positive integer. See Scenario 3 below for details.
[0149] It should be noted that the first network element can serve some or all of the second terminals, or it can serve only the first terminal.
[0150] The following explanation is based on specific scenarios:
[0151] Scenario 1: The first network element serves the first terminal and N second terminals.
[0152] At this point, K=N, and the first configuration information includes the first address and the addresses of N second terminals.
[0153] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 is for data readers #1 to data readers #7, and the data generator service, then ACN-C sends the first configuration information to ACN-U#1, which includes the first address and the addresses of data readers #1 to data readers #7.
[0154] Scenario 2: The first network element serves the first terminal and K of the N second terminals. The M second user planes serve NK of the N second terminals excluding the K second terminals, where K < N and M is a positive integer.
[0155] This can be further divided into two specific situations:
[0156] Case 1: The first configuration information includes a first address, the addresses of K second terminals, and the addresses of M second user plane network elements. The control plane network element also sends M second configuration information to the M second user plane network elements, wherein the M second user plane network elements correspond one-to-one with the M second configuration information. The m-th second configuration information includes the first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element, and the address and / or port number of the m-th second user plane network element. The m-th second user plane network element is any one of the M second user plane network elements, where m ≤ M, and m is a positive integer.
[0157] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 serves data readers #1, #2, and the data generator, ACN-U#2 serves data readers #3 and #4, and ACN-U#3 serves data readers #5, #6, and #7.
[0158] At this time, ACN-C sends configuration information to ACN-U#1, ACN-U#2, and ACN-U#3 respectively. The configuration information corresponding to ACN-U#1 includes the first address, the address of data reader #1, the address of data reader #2, the address of ACN-U#2, and the address of ACN-U#3. The configuration information corresponding to ACN-U#2 includes the first address (or the address of ACN-U#2 and / or the port number), the address of data reader #3, and the address of data reader #4. The configuration information corresponding to ACN-U#3 includes the first address (or the address of ACN-U#3 and / or the port number), the address of data reader #5, the address of data reader #6, and the address of data reader #7.
[0159] Case 2: The first configuration information includes a first address, the addresses of K second terminals, the addresses of M second user plane network elements, and the addresses of the second terminals served by the M second user plane network elements respectively.
[0160] For example, the control plane network element can also send M second configuration information to M second user plane network elements, wherein the m-th second configuration information includes a first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element, as well as the address and / or port number of the m-th second user plane network element, where the m-th second user plane network element is any one of the M second user plane network elements, m≤M, and m is a positive integer.
[0161] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 serves data readers #1, #2, and the data generator, ACN-U#2 serves data readers #3 and #4, and ACN-U#3 serves data readers #5, #6, and #7.
[0162] At this time, ACN-C sends configuration information to ACN-U#1, ACN-U#2, and ACN-U#3 respectively. The configuration information corresponding to ACN-U#1 includes a first address, the address of data reader #1, the address of data reader #2, the address of ACN-U#2 and the addresses of data readers #3 and #4 served by ACN-U#2, and the addresses of data readers #5, #6, and #7 served by ACN-U#3. The configuration information corresponding to ACN-U#2 includes a first address (or the address of ACN-U#2 and / or the port number), the address of data reader #3, and the address of data reader #4. The configuration information corresponding to ACN-U#3 includes a first address (or the address of ACN-U#3 and / or the port number), the address of data reader #5, the address of data reader #6, and the address of data reader #7.
[0163] In addition, the m-th second configuration information may also include the addresses of other user plane network elements besides the m-th second user plane network element and the addresses of the corresponding second terminals.
[0164] Referring back to the example above, at this point, ACN-C sends configuration information to ACN-U#1, ACN-U#2, and ACN-U#3 respectively. The configuration information corresponding to ACN-U#1 includes the first address, the address of data reader #1, the address of data reader #2, the address of ACN-U#2 and the addresses of data reader #3 and data reader #4 served by ACN-U#2, and the addresses of data reader #5, data reader #6, and data reader #7 served by ACN-U#3. The configuration information corresponding to ACN-U#2 includes the first address (or the address and / or port number of ACN-U#2), the address of data reader #3, the address of data reader #4, the address of ACN-U#1 and the addresses of data reader #1 and data reader #2 served by ACN-U#1, and the address of ACN-U#3 and the addresses of data reader #5, data reader #6, and data reader #7 served by ACN-U#3. The configuration information corresponding to ACN-U#3 includes the first address (or the address and / or port number of ACN-U#3), the address of data reader #5, the address of data reader #6, and the address of data reader #7, the address of ACN-U#1 and the addresses of data reader #1 and data reader #2 served by ACN-U#1, and the address of ACN-U#2 and the addresses of data reader #3 and data reader #4 served by ACN-U#2.
[0165] Scenario 3: The first network element only serves the first terminal, and M second user planes serve N second terminals, where M is a positive integer.
[0166] This can be further divided into two specific situations:
[0167] Case a: The first configuration information includes a first address and the addresses of M second user plane network elements. The control plane network element also sends M second configuration information to the M second user plane network elements, wherein the M second user plane network elements correspond one-to-one with the M second configuration information. The m-th second configuration information includes the first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element, and the address and / or port number of the m-th second user plane network element. The m-th second user plane network element is any one of the M second user plane network elements, where m ≤ M and m is a positive integer.
[0168] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 serves the data generator, ACN-U#2 serves data readers #1, #2, #3 and #4, and ACN-U#3 serves data readers #5, #6 and #7.
[0169] At this time, ACN-C sends configuration information to ACN-U#1, ACN-U#2, and ACN-U#3 respectively. The configuration information corresponding to ACN-U#1 includes the first address, the address of ACN-U#2, and the address of ACN-U#3. The configuration information corresponding to ACN-U#2 includes the first address (or the address of ACN-U#2 and / or the port number), the address of data reader #1, the address of data reader #2, the address of data reader #3, and the address of data reader #4. The configuration information corresponding to ACN-U#3 includes the first address (or the address of ACN-U#3 and / or the port number), the address of data reader #5, the address of data reader #6, and the address of data reader #7.
[0170] Case b: The first configuration information includes a first address, the addresses of M second user plane network elements, and the addresses of the second terminals served by the M second user plane network elements respectively.
[0171] For example, the control plane network element can also send M second configuration information to M second user plane network elements, wherein the m-th second configuration information includes a first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element, as well as the address and / or port number of the m-th second user plane network element, where the m-th second user plane network element is any one of the M second user plane network elements, m≤M, and m is a positive integer.
[0172] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 serves the data generator, ACN-U#2 serves data readers #1, #2, #3 and #4, and ACN-U#3 serves data readers #5, #6 and #7.
[0173] At this time, ACN-C sends configuration information to ACN-U#1, ACN-U#2, and ACN-U#3 respectively. The configuration information corresponding to ACN-U#1 includes the first address, the address of ACN-U#2, and the addresses of data readers #1, #2, #3, and #4 served by ACN-U#2. Similarly, the configuration information corresponding to ACN-U#3 includes the addresses of data readers #5, #6, and #7 served by ACN-U#3. The configuration information corresponding to ACN-U#2 includes the first address (or the address of ACN-U#2 and / or the port number), the addresses of data readers #1, #2, #3, and #4. The configuration information corresponding to ACN-U#3 includes the first address (or the address and / or port number of ACN-U#3), the address of data reader #5, the address of data reader #6, and the address of data reader #7.
[0174] In addition, the m-th second configuration information may also include the addresses of other user plane network elements besides the m-th second user plane network element and the addresses of the corresponding second terminals.
[0175] It is understood that the configuration information sent by the control plane network element to each user plane network element may also include other content, and this application does not limit this.
[0176] For example, the control plane network element can determine the information of the user plane network element serving N second terminals. The information of each user plane network element may include the address or identifier of the user plane network element, etc. Each user plane network element can be an ACN-U or a gateway, and this application does not limit it.
[0177] For example, each terminal sends a member registration message to the control plane network element serving itself. Further, each control plane network element sends information about the terminals it serves to the first network element. The control plane network element sends a second query message to the first network element, wherein the second query message includes the addresses of N second terminals. Then, the first network element sends a second query response message to the control plane network element, wherein the second query response message includes information about the user plane network element serving the N second terminals.
[0178] Furthermore, control plane network elements trigger the establishment of forwarding channels between various user plane network elements, such as forwarding channels between ACN-U and ACN-U, and forwarding channels between ACN-U and the gateway. For example, the establishment of forwarding tunnels may be based on tunneling or technologies such as IP.
[0179] Referring to Figure 2 above, taking the forwarding channel between ACN-U1 and ACN-U2 based on the GTP-U tunneling protocol as an example, ACN-U1 and ACN-U2 need to exchange (possibly via ACN-C) their respective GTP-U tunnel IPs and ports. That is, after ACN-U1 learns the GTP-U tunnel IP and port of ACN-U2, it can subsequently encapsulate data with the corresponding ACN-U2 GTP-U tunnel IP and port information before sending it to ACN-U2. Taking the forwarding channel between ACN-U1 and the gateway based on IP as an example, the gateway's IP address needs to be sent to ACN-U1. This can be done via ACN-C or directly through the user plane transmission channel.
[0180] The aforementioned first user plane network element and M second user plane network elements may also involve two control plane network elements. For example, assuming the first user plane network element and M second user plane network elements include user plane network element 1 and user plane network element 2, where user plane network element 1 is controlled by control plane network element 1 and user plane network element 2 is controlled by control plane network element 2, and taking the forwarding channel between user plane network element 1 and user plane network element 2 as an example based on the GTP-U tunnel protocol, then control plane network element 2 notifies control plane network element 1 of the GTP-U tunnel IP + port of user plane network element 2, which is then forwarded by control plane network element 1 to user plane network element 1. Similarly, control plane network element 1 can notify control plane network element 2 of the GTP-U tunnel IP + port of user plane network element 1, which is then forwarded by control plane network element 2 to user plane network element 2.
[0181] The following explanation, in conjunction with Figures 4 to 8, illustrates how the first terminal sends data packets to N second terminals using the first address in the various scenarios described above.
[0182] Figure 4 shows a flowchart of how a first terminal in scenario 1 sends data packets to N second terminals using a first address:
[0183] Step 401: The control plane network element sends a first address to the first terminal. Correspondingly, the first terminal receives the first address from the control plane network element. The first address is used for the first terminal to communicate with N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer.
[0184] It is understood that step 401 corresponds to step 320 above, and step 401 can also refer to the relevant content in step 320 above, which will not be repeated here.
[0185] For example, before the first terminal receives the first address, the first terminal sends data packets to N second terminals using unicast, or the first terminal may send data packets to N second terminals using multicast.
[0186] In one example, before the first terminal receives the first address, the first terminal sends N unicast data packets to N second terminals. The N second terminals correspond one-to-one with the N unicast data packets. The destination address of the i-th unicast data packet is the address of the i-th second terminal, where i is a positive integer and i≤N. The i-th unicast data packet is any one of the N unicast data packets, and the content or payload of the N unicast data packets is the same.
[0187] In another example, the first terminal sends a multicast data packet with the address of the multicast data packet determined by the first terminal, and the first terminal and N second terminals form a multicast group.
[0188] Step 402: The control plane network element sends the first configuration information to the first user plane network element, and correspondingly, the first user plane network element receives the first configuration information from the control plane network element.
[0189] The first configuration information includes a first address and the addresses of N second terminals. The first network element serves the first terminal and the N second terminals.
[0190] Step 402 corresponds to scenario 1 above. This application does not limit the order of steps 401 and 402.
[0191] Step 403: The first terminal sends a first data packet. The destination address of the first data packet is the first address. The first data packet is a data packet sent to N second terminals.
[0192] For example, when a first terminal has new data to send to N second terminals, the first terminal encapsulates the first data packet with the first address as the destination address. Since the first user plane network element serves the first terminal, the first data packet sent by the first terminal arrives at the first user plane network element first. For example, referring to Figure 2, the data generator accesses through RAN-1, and the data packet sent by the data generator reaches ACN-U#1 through RAN-1.
[0193] In one possible implementation, before the first terminal sends the first data packet using the first address, the control plane network element can also send a first indication message to the first terminal. The first indication message is used to trigger the first terminal to use the first address. For example, when the first user plane network element detects insufficient network bandwidth resources or network congestion causing increased transmission latency, the first user plane network element can send a second indication message to the control plane network element. The second indication message is used to notify that current network resources are insufficient or that there is network congestion. The control plane network element can then send the first indication message to the first terminal based on the second indication message.
[0194] Step 404: The first user plane network element determines N second data packets based on the first data packet and the first configuration information.
[0195] For example, if the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, then N first data packets are obtained based on the first data packet. For instance, the first user plane network element copies the first data packet N times to obtain N first data packets. Further, the first user plane network element can determine N second data packets based on the addresses of N second terminals and the N first data packets in the first configuration information, where the destination address of the nth second data packet is the address of the nth second terminal, n is a positive integer, n≤N, and the nth second terminal is any one of the N second terminals. That is, the first user plane replaces the first address in the N first data packets with the addresses of the N second terminals.
[0196] Step 405: The first user plane network element sends N second data packets.
[0197] For example, the first user plane network element sends corresponding second data packets to N second terminals respectively, wherein the first user plane network element sends the nth second data packet to the nth second terminal.
[0198] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 is for data readers #1 to data readers #7, and the data generator service, then ACN-C sends the first configuration information to ACN-U#1. The first configuration information includes the first address and the addresses of data readers #1 to data readers #7.
[0199] ACN-U#1 receives a first data packet from the data generator. It determines that the destination address of the first data packet is the same as the first address in the first configuration information. Based on the first configuration information, it copies the first data packet seven times, obtaining seven first data packets. Then, it replaces the first address in each of the seven first data packets with the addresses of data readers #1 to #7, obtaining seven second data packets. ACN-U#1 then sends the corresponding second data packets to data readers #1 to #7. Specifically, ACN-U#1 sends a second data packet with its destination address as its destination address to data reader #1, to data reader #2 with its destination address as its destination address as its destination address as its destination address as its destination address as its destination address as its destination address as its destination address for data reader #7. ACN-U#1 determines the corresponding forwarding path based on the data reader's address, thus sending the second data packets to each data reader. For example, ACN-U#1 determines the RAN serving data reader #1 based on the address of data reader #1, and then sends the packets to data reader #1.
[0200] Using the above method, the network resources consumed by the first terminal can be reduced. The first terminal only needs to send one piece of data, and since the first address is the address allocated by the control plane network element, the reliability of data transmission can be guaranteed.
[0201] Figure 5 shows a flowchart of how the first terminal sends data packets to N second terminals using the first address in scenario 2, case 1:
[0202] Step 501: The control plane network element sends a first address to the first terminal, and correspondingly, the first terminal receives the first address from the control plane network element.
[0203] The first address is used for communication between the first terminal and N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer.
[0204] For details, please refer to step 401 above, which will not be repeated here.
[0205] Step 502: The control plane network element sends the first configuration information to the first user plane network element, and correspondingly, the first user plane network element receives the first configuration information from the control plane network element.
[0206] The first network element serves the first terminal and K of the N second terminals. The M second user planes serve NK of the N second terminals, excluding the K second terminals, where K < N and M is a positive integer. The first configuration information includes the first address, the addresses of the K second terminals, and the addresses of the M second user plane network elements.
[0207] In addition, the control plane network element also sends M second configuration information to M second user plane network elements, wherein the M second user plane network elements correspond one-to-one with the M second configuration information. The m-th second configuration information includes a first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address and / or port number of the m-th second user plane network element and the address of the second terminal served by the m-th second user plane network element. The m-th second user plane network element is any one of the M second user plane network elements, m≤M, and m is a positive integer.
[0208] For example, in Figure 5, taking M second user plane network elements, including second user plane network element 1, as an example, second user plane network element 1 serves NK second terminals. That is, the first user plane network element serves K second terminals, and second user plane network element 1 serves NK second terminals, together serving N second terminals. At this time, the first configuration information includes a first address, the addresses of the K second terminals, and the address of second user plane network element 1.
[0209] Step 503: The control plane network element sends second configuration information to the second user plane network element 1. The second configuration information includes a first address and the addresses of NK second terminals. Alternatively, the second configuration information includes the addresses of NK second terminals, and the address and / or port number of the second user plane network element 1.
[0210] It is understood that steps 502 and 503 correspond to situation 1 in scenario 2 above, and this application does not limit the order of steps 501, 502, and 503.
[0211] Step 504: The first terminal sends a first data packet. The destination address of the first data packet is the first address. The first data packet is a data packet sent to N second terminals. For details, please refer to step 403 above, which will not be repeated here.
[0212] Step 505: The first user plane network element determines K second data packets based on the first data packet and the first configuration information.
[0213] For example, if the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, then it obtains K first data packets based on the first data packet. For instance, the first user plane network element copies the first data packet K times to obtain K first data packets. Further, the first user plane network element can determine K second data packets based on the addresses of K second terminals and the K first data packets, where the destination address of the kth second data packet is the address of the kth second terminal, k is a positive integer, k≤K, and the kth second terminal is any one of the K second terminals. That is, the first user plane replaces the first address in the K first data packets with the addresses of the K second terminals.
[0214] Step 506: The first user plane network element sends K second data packets.
[0215] For example, the first user plane network element sends corresponding second data packets to K second terminals respectively, wherein the first user plane network element sends the kth second data packet to the kth second terminal. The process of sending K second data packets can be referred to step 405, and will not be repeated here.
[0216] Step 507: The first user plane network element sends the first data packet to the second user plane network element 1.
[0217] For example, the first user plane encapsulates the first data packet with the address of the second user plane network element 1 and sends it to the second user plane network element 1.
[0218] Step 508: The second user plane network element 1 determines NK second data packets based on the first data packet and the second configuration information.
[0219] For example, if the second configuration information includes a first address, and the second user plane network element 1 determines that the destination address of the first data packet is the same as the first address in the second configuration information, then NK first data packets are obtained based on the first data packet. Alternatively, if the second configuration information includes the address and / or port number of the second user plane network element 1, and the second user plane network element 1 determines that the address and / or port number used to encapsulate the first data packet is the same as the address and / or port number of the second user plane network element 1 in the second configuration information, then NK first data packets are obtained based on the first data packet.
[0220] For example, the second user plane network element 1 copies the first data packet NK times to obtain NK first data packets. Further, the second user plane network element 1 can determine NK second data packets based on the addresses of NK second terminals and the NK first data packets, where the destination address of the j-th second data packet is the address of the j-th second terminal, j is a positive integer, j≤NK, and the j-th second terminal is any one of the NK second terminals. That is, the second user plane network element 1 replaces the first address in the NK first data packets with the addresses of the NK second terminals.
[0221] Step 509: Second user plane network element 1 sends NK second data packets.
[0222] For example, the second user plane network element 1 sends corresponding second data packets to NK second terminals respectively, wherein the second user plane network element 1 sends the j-th second data packet to the j-th second terminal.
[0223] For example, assuming N=7, the seven second terminals are data readers #1 to #7, the first terminal is the data generator, ACN-U#1 is for data readers #1 to #3 and provides data generator services, and ACN-U#2 is for data readers #4 to #7. In this case, ACN-C sends first configuration information to ACN-U#1, which includes a first address, the address of ACN-U#2, and the addresses of data readers #1 to #3. ACN-C sends second configuration information to ACN-U#2, which includes the first address and the addresses of data readers #4 to #7, or the second configuration information includes the addresses of data readers #4 to #7 and the address and / or port number of the second user plane network element 1.
[0224] ACN-U#1 receives a first data packet from the data generator. Based on the first configuration information, it copies the first data packet three times, obtaining three first data packets. Then, it replaces the first address in each of the three first data packets with the addresses of data readers #1 to #3, obtaining three second data packets. ACN-U#1 then sends the corresponding second data packets to data readers #1 to #3. Specifically, ACN-U#1 sends a second data packet to data reader #1 with its destination address as its destination address, to data reader #2 with its destination address as its destination address, and to data reader #3 with its destination address as its destination address. ACN-U#1 also sends a first data packet to ACN-U#2. Similarly, ACN-U#2, based on the second configuration information, obtains four second data packets and sends the corresponding second data packets to data readers #4 to #7. Specifically, ACN-U#2 sends a second data packet to data reader #4 with the destination address of data reader #4, ..., ACN-U#2 sends a second data packet to data reader #7 with the destination address of data reader #7.
[0225] Using the above method, the first terminal only needs to send one piece of data, which can reduce the network resources consumed by the first terminal. Furthermore, since the first address is the address allocated by the control plane network element, the reliability of data transmission can be guaranteed.
[0226] Figure 6 shows a flowchart of how the first terminal sends data packets to N second terminals using the first address in scenario 2, case 2:
[0227] Step 601: The control plane network element sends a first address to the first terminal, and correspondingly, the first terminal receives the first address from the control plane network element.
[0228] The first address is used for communication between the first terminal and N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer.
[0229] For details, please refer to step 401 above, which will not be repeated here.
[0230] Step 602: The control plane network element sends the first configuration information to the first user plane network element, and correspondingly, the first user plane network element receives the first configuration information from the control plane network element.
[0231] The first network element serves the first terminal and K of the N second terminals. The M second user planes serve NK of the N second terminals, excluding the K second terminals, where K < N and M is a positive integer. The first configuration information includes a first address, the addresses of the K second terminals, the addresses of the M second user plane network elements, and the addresses of the second terminals served by each of the M second user plane network elements.
[0232] For example, in Figure 6, taking M second user plane network elements, including second user plane network element 1, as an example, second user plane network element 1 serves NK second terminals. That is, the first user plane network element serves K second terminals, and second user plane network element 1 serves NK second terminals, together serving N second terminals. At this time, the first configuration information includes a first address, the addresses of the K second terminals, and the address of second user plane network element 1 and the addresses of the NK second terminals served by second user plane network element 1.
[0233] Step 603: The first terminal sends a first data packet. The destination address of the first data packet is the first address. The first data packet is a data packet sent to N second terminals. For details, please refer to step 403 above, which will not be repeated here.
[0234] In one possible implementation, the control plane network element may not send information to the second user plane network element 1. See steps 604A to 607A below for details.
[0235] Step 604A: The first user plane network element determines N second data packets based on the first data packet and the first configuration information.
[0236] For example, if the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, then N first data packets are obtained based on the first data packet. For instance, the first user plane network element copies the first data packet N times to obtain N first data packets. Further, the first user plane network element can determine N second data packets based on the addresses of N second terminals and the N first data packets, where the destination address of the nth second data packet is the address of the nth second terminal, n is a positive integer, n≤N, and the nth second terminal is any one of the N second terminals. That is, the first user plane replaces the first address in the N first data packets with the addresses of the N second terminals.
[0237] Step 605A: The first user plane network element sends K second data packets. The destination address of each of these K second data packets belongs to the address of the second terminal served by the first user plane network element.
[0238] For example, the first user plane network element sends corresponding second data packets to the K second terminals it serves.
[0239] Step 606A: The first user plane network element sends NK second data packets to the second user plane network element 1. Here, the destination address of each of the NK second data packets belongs to the address of the second terminal served by the second user plane network element 1.
[0240] Step 607A: Second user plane network element 1 sends NK second data packets.
[0241] For example, the second user plane network element 1 sends corresponding second data packets to the NK second terminals it serves.
[0242] For example, assuming N=7, the seven second terminals are data readers #1 to #7, the first terminal is the data generator, ACN-U#1 serves data readers #1 to #3 and provides data generator services, and ACN-U#2 serves data readers #4 to #7. At this time, ACN-C sends first configuration information to ACN-U#1. This configuration information includes a first address, the addresses of data readers #1 to #3, the address of ACN-U#2, and the addresses of data readers #4 to #7 served by ACN-U#2.
[0243] ACN-U#1 receives the first data packet from the data generator. It determines that the destination address of the first data packet is the same as the first address in the first configuration information. Based on the first configuration information, it copies the first data packet seven times, obtaining seven first data packets. Then, it replaces the first address in each of the seven first data packets with the addresses of data readers #1 to #7, obtaining seven second data packets. ACN-U#1 then sends the corresponding second data packets to data readers #1 to #3. Specifically, ACN-U#1 sends a second data packet with the destination address of data reader #1 to data reader #1, a second data packet with the destination address of data reader #2 to data reader #2, and a second data packet with the destination address of data reader #3 to data reader #3. ACN-U#1 also sends second data packets to ACN-U#2 with destination addresses of data reader #4, data reader #5, data reader #6, and data reader #7. The second data packet sent by ACN-U#1 to ACN-U#2 encapsulates the address of ACN-U#2. ACN-U#2 sends second data packets to data reader #4 with destination addresses of data reader #4, ..., and then sends second data packets to data reader #7 with destination addresses of data reader #7.
[0244] In another possible implementation, the control plane network element sends second configuration information to the second user plane network element 1. See steps 604B to 609B below for details.
[0245] Step 604B: The control plane network element sends the second configuration information to the second user plane network element 1.
[0246] The second configuration information includes a first address and the addresses of NK second terminals, or the second configuration information includes a first address, the addresses of NK second terminals, the address of a first user plane network element, and the addresses of K second terminals served by the first user plane network element. Furthermore, the first address can be replaced with the address and / or port number of the second user plane network element 1.
[0247] Step 605B: The first user plane network element determines K second data packets based on the first data packet and the first configuration information.
[0248] For example, if the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, then it obtains K first data packets based on the first data packet. For instance, the first user plane network element copies the first data packet K times to obtain K first data packets. Further, the first user plane network element can determine K second data packets based on the addresses of K second terminals and the K first data packets, where the destination address of the kth second data packet is the address of the kth second terminal, k is a positive integer, k≤K, and the kth second terminal is any one of the K second terminals. That is, the first user plane replaces the first address in the K first data packets with the addresses of the K second terminals.
[0249] Step 606B: The first user plane network element sends K second data packets.
[0250] For example, the first user plane network element sends corresponding second data packets to K second terminals respectively, wherein the first user plane network element sends the kth second data packet to the kth second terminal.
[0251] Step 607B: The first user plane network element sends the first data packet to the second user plane network element 1. For example, the first user plane network element sends only one data packet to the second user plane network element 1, which then performs address replacement.
[0252] For example, the first user plane encapsulates the first data packet with the address of the second user plane network element 1 and sends it to the second user plane network element 1.
[0253] Step 608B: The second user plane network element 1 determines NK second data packets based on the first data packet and the second configuration information.
[0254] For example, if the second configuration information includes a first address, and the second user plane network element 1 determines that the destination address of the first data packet is the same as the first address in the second configuration information, then NK first data packets are obtained based on the first data packet. Alternatively, if the second configuration information includes the address and / or port number of the second user plane network element 1, and the second user plane network element 1 determines that the address and / or port number used to encapsulate the first data packet is the same as the address and / or port number of the second user plane network element 1 in the second configuration information, then NK first data packets are obtained based on the first data packet.
[0255] For example, the second user plane network element 1 copies the first data packet NK times to obtain NK first data packets. Further, the second user plane network element 1 can determine NK second data packets based on the addresses of NK second terminals and the NK first data packets, where the destination address of the j-th second data packet is the address of the j-th second terminal, j is a positive integer, j≤NK, and the j-th second terminal is any one of the NK second terminals. That is, the second user plane network element 1 replaces the first address in the NK first data packets with the addresses of the NK second terminals.
[0256] Step 609B: Second user plane network element 1 sends NK second data packets.
[0257] For example, the second user plane network element 1 sends corresponding second data packets to NK second terminals respectively, wherein the second user plane network element 1 sends the j-th second data packet to the j-th second terminal.
[0258] It is understandable that steps 604A to 607A and steps 604B to 609B are two parallel possible implementation methods, and the specific implementation process can be carried out by executing one set of steps.
[0259] Using the above method, the first terminal only needs to send one copy of data, which reduces the network resources consumed by the first terminal. Furthermore, since the first address is allocated by the control plane network element, data transmission reliability is guaranteed. In addition, if the user plane network element serving the second terminal performs data packet replication in the above method, network resource consumption can be further reduced.
[0260] Figure 7 shows a flowchart of how the first terminal sends data packets to N second terminals using the first address in scenario 3a:
[0261] Step 701: The control plane network element sends a first address to the first terminal, and correspondingly, the first terminal receives the first address from the control plane network element.
[0262] The first address is used for communication between the first terminal and N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer.
[0263] For details, please refer to step 401 above, which will not be repeated here.
[0264] Step 702: The control plane network element sends the first configuration information to the first user plane network element, and correspondingly, the first user plane network element receives the first configuration information from the control plane network element.
[0265] In this configuration, a first user plane network element serves a first terminal, and M second user plane network elements serve N second terminals, where M is a positive integer. The first configuration information includes a first address and the addresses of the M second user plane network elements.
[0266] For example, in Figure 7, taking M second user plane network elements, including second user plane network element 1, as an example, second user plane network element 1 serves N second terminals. In this case, the first configuration information includes the first address and the address of second user plane network element 1.
[0267] Step 703: The control plane network element sends the second configuration information to the second user plane network element 1.
[0268] The second configuration information includes a first address and the addresses of N second terminals, or the second configuration information includes the addresses of N second terminals, and the address and / or port number of the second user plane network element 1.
[0269] Step 704: The first terminal sends a first data packet. The destination address of the first data packet is the first address. The first data packet is a data packet sent to N second terminals. For details, please refer to step 403 above, which will not be repeated here.
[0270] Step 705: The first user plane network element sends the first data packet to the second user plane network element 1.
[0271] For example, if the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, then the second user plane network element 1 sends the first data packet. For example, the first data packet is encapsulated with the address of the second user plane network element 1.
[0272] Step 706: The second user plane network element 1 determines N second data packets based on the first data packet and the second configuration information.
[0273] For example, if the second configuration information includes a first address, and the second user plane network element 1 determines that the destination address of the first data packet is the same as the first address in the second configuration information, then N first data packets are obtained based on the first data packet. Alternatively, if the second configuration information includes the address and / or port number of the second user plane network element 1, and the second user plane network element 1 determines that the address and / or port number used to encapsulate the first data packet is the same as the address and / or port number of the second user plane network element 1 in the second configuration information, then N first data packets are obtained based on the first data packet.
[0274] For example, the second user plane network element 1 copies the first data packet N times to obtain N first data packets. Further, the second user plane network element 1 can determine N second data packets based on the addresses of N second terminals and the N first data packets, where the destination address of the nth second data packet is the address of the nth second terminal, where n is a positive integer, n≤N, and the nth second terminal is any one of the N second terminals. That is, the second user plane network element 1 replaces the first address in the N first data packets with the addresses of the N second terminals.
[0275] Step 707: Second user plane network element 1 sends N second data packets.
[0276] For example, the second user plane network element 1 sends corresponding second data packets to N second terminals respectively, wherein the second user plane network element 1 sends the nth second data packet to the nth second terminal.
[0277] For example, assuming N=7, the 7 second terminals are data readers #1 to data readers #7, the first terminal is the data generator, ACN-U#1 serves the data generator, and ACN-U#2 serves data readers #1 to data readers #7. At this time, ACN-C sends first configuration information to ACN-U#1, which includes the first address and the address of ACN-U#2. ACN-C sends second configuration information to ACN-U#2, which includes the first address and the addresses of data readers #1 to data readers #7.
[0278] ACN-U#1 receives the first data packet from the data generator, determines that the destination address of the first data packet is the same as the first address in the first configuration information, and then sends the first data packet to ACN-U#2. ACN-U#2 receives the first data packet, determines that the destination address of the first data packet is the same as the first address in the second configuration information, and then copies the first data packet seven times based on the first configuration information, obtaining seven first data packets. Then, it replaces the first address in each of the seven first data packets with the addresses of data readers #1 to #7, obtaining seven second data packets, and sends the corresponding second data packets to data readers #1 to #7 respectively. Specifically, ACN-U#2 sends a second data packet to data reader #1 with the destination address of data reader #1, sends a second data packet to data reader #2 with the destination address of data reader #2, and so on, until ACN-U#2 sends a second data packet to data reader #7 with the destination address of data reader #7.
[0279] Using the above method, the first terminal only needs to send one copy of data, which reduces the network resources consumed by the first terminal. Furthermore, since the first address is allocated by the control plane network element, data transmission reliability is guaranteed. In addition, if the user plane network element serving the second terminal performs data packet replication in the above method, network resource consumption can be further reduced.
[0280] Figure 8 shows a flowchart of how the first terminal sends data packets to N second terminals using the first address in scenario 3, case 2:
[0281] Step 801: The control plane network element sends a first address to the first terminal, and the first terminal receives the first address from the control plane network element.
[0282] The first address is used for communication between the first terminal and N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer.
[0283] For details, please refer to step 401 above, which will not be repeated here.
[0284] Step 802: The control plane network element sends the first configuration information to the first user plane network element, and correspondingly, the first user plane network element receives the first configuration information from the control plane network element.
[0285] In this configuration, a first user plane network element serves a first terminal, and M second user plane network elements serve N second terminals, where M is a positive integer. The first configuration information includes a first address, as well as the addresses of the M second user plane network elements and the addresses of the second terminals served by each of the M second user plane network elements.
[0286] For example, in Figure 8, taking M second user plane network elements, including second user plane network element 1, as an example, second user plane network element 1 serves N second terminals. In this case, the first configuration information includes a first address, the address of second user plane network element 1, and the addresses of the N second terminals served by second user plane network element 1.
[0287] Step 803: The first terminal sends a first data packet. The destination address of the first data packet is the first address. The first data packet is a data packet sent to N second terminals. For details, please refer to step 403 above, which will not be repeated here.
[0288] In one possible implementation, the control plane network element may not send information to the second user plane network element 1. See steps 804A to 806A below for details.
[0289] Step 804A: The first user plane network element determines N second data packets based on the first data packet and the first configuration information.
[0290] For example, if the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, then N first data packets are obtained based on the first data packet. For instance, the first user plane network element copies the first data packet N times to obtain N first data packets. Further, the first user plane network element can determine N second data packets based on the addresses of N second terminals and the N first data packets, where the destination address of the nth second data packet is the address of the nth second terminal, n is a positive integer, n≤N, and the nth second terminal is any one of the N second terminals. That is, the first user plane replaces the first address in the N first data packets with the addresses of the N second terminals.
[0291] Step 805A: The first user plane network element sends N second data packets to the second user plane network element 1.
[0292] Step 806A: Second user plane network element 1 sends N second data packets.
[0293] For example, the second user plane network element 1 sends corresponding second data packets to the N second terminals it serves.
[0294] In another possible implementation, the control plane network element sends second configuration information to the second user plane network element 1. See steps 804B to 809B below for details.
[0295] Step 804B: The control plane network element sends the second configuration information to the second user plane network element 1.
[0296] The second configuration information includes a first address and the addresses of N second terminals. Alternatively, the second configuration information includes the addresses of N second terminals, and the address and / or port number of the second user plane network element 1.
[0297] Step 805B: The first user plane network element sends the first data packet to the second user plane network element 1.
[0298] For example, the first user plane network element determines that the destination address of the first data packet is the same as the first address in the first configuration information, and sends the first data packet to the second user plane network element 1. For example, the first data packet is encapsulated with the address of the second user plane network element 1.
[0299] Step 806B: The second user plane network element 1 determines N second data packets based on the first data packet and the second configuration information.
[0300] For example, if the second configuration information includes a first address, and the second user plane network element 1 determines that the destination address of the first data packet is the same as the first address in the second configuration information, then N first data packets are obtained based on the first data packet. Alternatively, if the second configuration information includes the address and / or port number of the second user plane network element 1, and the second user plane network element 1 determines that the address and / or port number used to encapsulate the first data packet is the same as the address and / or port number of the second user plane network element 1 in the second configuration information, then N first data packets are obtained based on the first data packet.
[0301] For example, the second user plane network element 1 copies the first data packet N times to obtain N first data packets. Further, the second user plane network element 1 can determine N second data packets based on the addresses of N second terminals and the N first data packets, where the destination address of the nth second data packet is the address of the nth second terminal, where n is a positive integer, n≤N, and the nth second terminal is any one of the N second terminals. That is, the second user plane network element 1 replaces the first address in the N first data packets with the addresses of the N second terminals.
[0302] Step 807B: Second user plane network element 1 sends N second data packets.
[0303] For example, the second user plane network element 1 sends corresponding second data packets to N second terminals respectively, wherein the second user plane network element 1 sends the nth second data packet to the nth second terminal.
[0304] It is understandable that steps 804A to 806A and steps 804B to 807B are two possible implementation methods in parallel, and the specific implementation process can be carried out by executing one set of steps.
[0305] By employing the above method, network resource consumption by the first terminal can be reduced, as the first terminal only needs to send one copy of data. Furthermore, since the first address is allocated by the control plane network element, data transmission reliability can be guaranteed. In addition, if the user plane network element serving the second terminal performs data packet replication in the above method, network resource consumption can be further reduced.
[0306] As shown in Figure 9, this application provides another communication method, which includes:
[0307] Step 900: The control plane network element determines that the first terminal has a matching relationship with N second terminals, where N is a positive integer.
[0308] Step 901: The control plane network element assigns a first address to the first terminal. The first address is used for communication between the first terminal and N second terminals.
[0309] Step 902: The control plane network element sends the first address to the first terminal.
[0310] Steps 900 to 902 can be referred to steps 300 to 320 above, and will not be repeated here.
[0311] Step 903: The control plane network element sends a request to the multicast / broadcast session management function (MB-SMF) to create a multicast session.
[0312] Step 904: MB-SMF determines the first information, which includes the multicast IP address (hereinafter referred to as the second address) and the multicast session identifier.
[0313] Step 905: The MB-SMF sends a multicast session creation response to the control plane network element. The multicast session creation response includes the first information.
[0314] After step 905, the control plane network element sends the first information to each of the N second terminals.
[0315] For example, the control plane network element can obtain information from the user plane network element serving N second terminals, and then send the first information to the corresponding second terminal through the user plane network element serving N second terminals.
[0316] The following explanation uses the i-th and j-th second terminals out of N second terminals as examples. In Figure 9, the control plane network element sends first information (i.e., steps 906a and 906b) to the i-th and j-th second terminals out of the N second terminals, respectively. The other second terminals are not shown. The i-th and j-th second terminals belong to the N second terminals. The second user plane network element serves the i-th and j-th second terminals, which access the network through the RAN. Here, i and j are positive integers.
[0317] Step 906a: The control plane network element sends the first information to the i-th second terminal.
[0318] Step 907a: The i-th second terminal sends a join multicast request message 1 to the control plane network element. The join multicast request message 1 includes the first information.
[0319] Step 908a: After receiving the join multicast request message 1, the control plane network element can communicate with the MB-SMF to associate the session of the i-th second terminal with the multicast session.
[0320] Step 906b: The control plane network element sends the first information to the j-th second terminal.
[0321] Step 907b: The j-th second terminal sends a join multicast request message 2 to the control plane network element. The join multicast request message 2 includes the first information.
[0322] Step 908b: After receiving the join multicast request message 2, the control plane network element can communicate with the MB-SMF to associate the session of the j-th second terminal with the multicast session.
[0323] Step 909: The control plane network element sends a first rule to the first user plane network element. The first rule is used to send data packets destined for the first address to the MB-UPF. The first user plane network element serves the first terminal.
[0324] Step 910: The control plane network element sends a second rule to the second user plane network element and / or the RAN. The second rule indicates the address of the second terminal associated with the second address. For example, the address of the second terminal associated with the second address includes the address of the i-th second terminal and the address of the j-th second terminal.
[0325] For example, if the RAN does not support multicast, the control plane network element sends a second rule to the second user plane network element. If the RAN supports multicast, the control plane network element sends a second rule to the RAN.
[0326] Step 911: The MB-SMF sends a third rule to the multicast / broadcast user plane function (MB-UPF). This third rule is used to send data packets with a destination address of the first address to the second user plane network element, and to change the destination address of the data packets to the second address.
[0327] Step 912: The first terminal sends the first data packet, and the destination address of the first data packet is the first address.
[0328] For details, please refer to step 403 above, which will not be repeated here.
[0329] Step 913: The first user plane network element sends the first data packet to MB-UPF based on the first rule.
[0330] Step 914: MB-UPF changes the destination address of the first data packet to the second address to obtain the second data packet.
[0331] Step 915: MB-UPF sends the second data packet to the second user plane network element.
[0332] Depending on whether the RAN supports multicast, there are two scenarios:
[0333] Step 916A: If the RAN does not support multicast, the second user plane network element determines multiple third data packets based on the second rule and the received second data packets.
[0334] Step 917A: The second user plane network element sends the corresponding third data packet to the i-th second terminal and the j-th second terminal respectively based on the multi-session tunnel.
[0335] For example, the second user plane network element copies the second data packet based on the second rule to obtain two second data packets. It changes the destination address of one of the second data packets to the address of the i-th terminal to obtain a third data packet with the destination address of the i-th terminal, and sends it to the i-th second terminal through the RAN. It also changes the destination address of the other second data packet to the address of the j-th terminal to obtain a third data packet with the destination address of the j-th terminal, and sends it to the j-th second terminal through the RAN.
[0336] Step 916B: If the RAN supports multicast, the second user plane network element sends the second data packet to the RAN.
[0337] For example, the second user plane network element sends a second data packet to the RAN based on a shared tunnel, that is, it sends only one second data packet. Here, the shared tunnel refers to a tunnel for multicast between the second user plane network element and the RAN.
[0338] Step 917B: The RAN determines multiple third data packets based on the second rule and the received second data packet.
[0339] Step 918B: RAN sends the corresponding third data packet to the i-th second terminal and the j-th second terminal respectively.
[0340] For example, in step 917B, the second user plane network element sends a second data packet to the RAN. The RAN copies the second data packet based on the second rule to obtain two second data packets. It changes the destination address of one of the second data packets to the address of the i-th terminal to obtain a third data packet with the destination address of the i-th terminal and sends it to the i-th second terminal. It also changes the destination address of the other second data packet to the address of the j-th terminal to obtain a third data packet with the destination address of the j-th terminal and sends it to the j-th second terminal.
[0341] It is understandable that steps 916A and 917A, along with steps 916B and 918B, are two sets of parallel optional solutions, and only one set needs to be executed in the specific implementation process.
[0342] To achieve the functions described in the above embodiments, each communication device (e.g., a first terminal, a control plane network element, or a first user plane network element) includes hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, based on the units and method steps of the examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.
[0343] Figures 10 and 11 are schematic diagrams of possible communication devices provided in the embodiments of this application. These communication devices can be used to implement the functions of the various communication devices in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments.
[0344] As shown in Figure 10, the communication device 1000 includes a processing unit 1010 and a transceiver unit 1020.
[0345] When the communication device 1000 is used to implement the function of the control plane network element in the method embodiment shown in Figure 3 above:
[0346] The processing unit 1010 is used to determine that the first terminal has a matching relationship with N second terminals, where N is a positive integer, and to assign a first address to the first terminal, the first address being used for communication between the first terminal and the N second terminals; the transceiver unit 1020 is used to send first configuration information to a first user plane network element, the first user plane network element serving the first terminal, the first configuration information including the first address; and to send the first address to the first terminal.
[0347] In one possible design, when it is determined that a first terminal forms a matching relationship with N second terminals, the transceiver unit 1020 is configured to receive a request message from the first terminal, the request message being used to request an address for communicating with the N second terminals; and when sending the first address to the first terminal, sending a response message to the first terminal, the response message including the first address.
[0348] In one possible design, the request message includes the addresses of the N second terminals.
[0349] In one possible design, when it is determined that the first terminal has a matching relationship with N second terminals, the transceiver unit 1020 is used to send a first query message to a first network element, the first query message being used to query the second terminals that match the first terminal, and the first network element storing the matching relationships between the terminals; and to receive a first query response message from the first network element, the first query response message including information about the N second terminals that match the first terminal.
[0350] In one possible design, when it is determined that the first terminal has a matching relationship with N second terminals, the transceiver unit 1020 is used to receive a first notification message from the first user plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals.
[0351] In one possible design, the first configuration information also includes the addresses of K of the N second terminals, where K ≤ N and K is a positive integer.
[0352] In one possible design, if K < N, the first user plane network element serves the K second terminals; the first configuration information also includes the addresses of M second user plane network elements, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
[0353] In one possible design, the transceiver unit 1020 is used to send M second configuration information to the M second user plane network elements, wherein the M second user plane network elements correspond one-to-one with the M second configuration information, and the m-th second configuration information includes the first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element and the address and / or port number of the m-th second user plane network element, wherein the m-th second user plane network element is any one of the M user plane network elements, m≤M, and m is a positive integer.
[0354] In one possible design, if K < N, the first user plane network element serves the K second terminals; the first configuration information also includes the addresses of M second user plane network elements, and the addresses of the second terminals served by the M second user plane network elements respectively, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
[0355] In one possible design, the first configuration information further includes the addresses of M second user plane network elements, wherein the M second user planes serve the N second terminals, and M is a positive integer.
[0356] In one possible design, the first configuration information may also include the addresses of the second terminals served by the M second user plane network elements respectively.
[0357] In one possible design, the transceiver unit 1020 is used to send first indication information to the first terminal, the first indication information being used to trigger the first terminal to use the first address.
[0358] When the communication device 1000 is used to implement the function of the first user plane network element in the method embodiments shown in Figures 4 to 6 above:
[0359] The transceiver unit 1020 is configured to receive first configuration information, the first configuration information including a first address and the addresses of K second terminals, where K is a positive integer; receive a first data packet, the destination address of the first data packet being the first address; the processing unit 1010 is configured to determine K second data packets based on the first data packet and the addresses of the K second terminals; and the transceiver unit 1020 is configured to send the K second data packets.
[0360] In one possible design, when determining K second data packets based on the first data packet and the addresses of the K second terminals, the processing unit 1010 is used to determine that the destination address of the first data packet is the same as the first address in the first configuration information, and obtain K first data packets based on the first data packet; and determine the K second data packets according to the addresses of the K second terminals and the K first data packets, wherein the destination address of the kth second data packet is the address of the kth second terminal, k is a positive integer, k≤K, and the kth second terminal is any one of the K second terminals.
[0361] In one possible design, the first user plane network element serves the K second terminals; when sending the K second data packets, the transceiver unit 1020 is used to send the corresponding second data packets to the K terminals respectively, wherein the kth second data packet is sent to the kth second terminal.
[0362] In one possible design, the first configuration information includes the addresses of M second user plane network elements, where M is a positive integer; the transceiver unit 1020 is used to send the first data packet to the M second user plane network elements.
[0363] In one possible design, the first configuration information includes the addresses of M second user plane network elements and the addresses of the second terminals served by the M second user plane network elements respectively, where M is a positive integer, the m-th second user plane network element is any one of the M second user plane network elements, m≤M, m is a positive integer, and the m-th second user plane network element serves S second terminals, S is a positive integer; the processing unit 1010 is used to obtain S first data packets based on the first data packets; and to determine S second data packets according to the addresses of the S second terminals and the S first data packets, where the destination address of the s-th second data packet is the address of the s-th second terminal, s is a positive integer, s≤S, and the s-th second terminal is any one of the S second terminals; the transceiver unit 1020 is used to send the S second data packets to the m-th second user plane network element.
[0364] In one possible design, before receiving the first configuration information, the transceiver unit 1020 is configured to send a first notification message to the control plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
[0365] When the communication device 1000 is used to implement the function of the first user plane network element in the method embodiments shown in Figures 7 and 8 above:
[0366] The processing unit 1010 is used to control the operation of the transceiver unit 1020. The transceiver unit 1020 is used to receive first configuration information, which includes a first address and the addresses of M second user plane network elements, wherein the M second user planes serve N second terminals, and M is a positive integer; receive a first data packet, the destination address of which is the first address; and send the first data packet to the M second user plane network elements respectively.
[0367] In one possible design, before receiving the first configuration information, the transceiver unit 1020 is configured to send a first notification message to the control plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
[0368] When the communication device 1000 is used to implement the function of the first terminal in the method embodiments shown in Figures 3 to 9 above:
[0369] The processing unit 1010 is used to control the operation of the transceiver unit 1020. The transceiver unit 1020 is used to receive a first address, which is used for the first terminal to communicate with N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer. The transceiver unit 1020 is used to send a first data packet, the destination address of which is the first address. The first data packet is a data packet sent to the N second terminals.
[0370] In one possible design, before receiving the first address, the transceiver unit 1020 is configured to send a request message to a control plane network element, the request message being used to request an address for communicating with the N second terminals; upon receiving the first address, the first terminal receives a response message from the first control network element, the response message including the first address.
[0371] In one possible design, the request message includes the addresses of the N second terminals.
[0372] In one possible design, before sending the first data packet, the transceiver unit 1020 is configured to receive first indication information from a control plane network element, the first indication information being used to trigger the first terminal to use the first address.
[0373] In one possible design, before receiving the first address, the transceiver unit 1020 is used to send N unicast data packets to the N second terminals. The N second terminals correspond one-to-one with the N unicast data packets. The destination address of the i-th unicast data packet is the address of the i-th second terminal, where i is a positive integer and i≤N. The i-th unicast data packet is any one of the N unicast data packets, and the content of the N unicast data packets is the same.
[0374] For some possible designs and beneficial effects of the communication device 1000, please refer to the relevant content in the embodiments shown in Figures 3 to 9 above, which will not be repeated here.
[0375] As shown in Figure 11, the communication device 1100 includes a processor 1110 and an interface circuit 1120. The processor 1110 and the interface circuit 1120 are coupled to each other. It is understood that the interface circuit 1120 can be a transceiver or an input / output interface. Optionally, the communication device 1100 may also include a memory 1130 for storing instructions executed by the processor 1110, or storing input data required by the processor 1110 to execute instructions, or storing data generated after the processor 1110 executes instructions.
[0376] When the communication device 1100 is used to implement the above method embodiment, the processor 1110 is used to implement the function of the processing unit 1010, and the interface circuit 1120 is used to implement the function of the transceiver unit 1020.
[0377] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.
[0378] This application provides another example of a device, the notification device including at least one processor and at least one memory, the at least one processor and the at least one memory coupled together, the at least one memory for storing instructions, which, when executed by the at least one processor, cause the communication device to perform the methods described in the above embodiments. Taking a communication device including a processor and a memory as an example, as shown in FIG11, communication device 1100 includes a processor 1110 and a memory 1130. The processor 1110 and the memory 1130 are coupled together, the memory 1130 stores instructions, and when the instructions stored in the memory 1130 are executed by the processor 1110, the communication device 1100 performs the methods performed by the various communication devices in the above embodiments.
[0379] The method steps in the embodiments of this application can be implemented in hardware or in software instructions executable by a processor. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. The storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Furthermore, the ASIC can reside in the various communication devices described above. The processor and storage medium can also exist as discrete components in the various communication devices.
[0380] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium may be a volatile or non-volatile storage medium, or may include both types of storage media.
[0381] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0382] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally indicates an "or" relationship between the preceding and following related objects; in the formulas of this application, the character " / " indicates a "division" relationship between the preceding and following related objects. "Including at least one of A, B, and C" can mean: including A; including B; including C; including A and B; including A and C; including B and C; including A, B, and C.
[0383] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application. The order of the process numbers described above does not imply the order of execution; the execution order of each process should be determined by its function and internal logic.
Claims
1. A communication method characterized by comprising: The method is applied to control plane network elements, and the method includes: Determine that the first terminal has a matching relationship with N second terminals, where N is a positive integer; A first address is assigned to the first terminal, and the first address is used for the first terminal to communicate with the N second terminals; Send first configuration information to a first user plane network element, the first user plane network element serving the first terminal, the first configuration information including the first address; Send the first address to the first terminal.
2. The method of claim 1, wherein, Determine the matching relationship between the first terminal and N second terminals, including: Receive a request message from the first terminal, the request message being used to request an address for communicating with the N second terminals; Sending the first address to the first terminal includes: A response message is sent to the first terminal, the response message including the first address.
3. The method of claim 2, wherein, The request message includes the addresses of the N second terminals.
4. The method of claim 1, wherein, Determine that the first terminal has a matching relationship with N second terminals, including: Send a first query message to the first network element. The first query message is used to query a second terminal that matches the first terminal. The first network element stores the matching relationship between each terminal. Receive a first query response message from the first network element, the first query response message including information of the N second terminals that match the first terminal.
5. The method of claim 1, wherein, Determine that the first terminal has a matching relationship with N second terminals, including: The system receives a first notification message from the first user plane network element, the first notification message indicating that the first terminal has a matching relationship with the N second terminals.
6. The method according to any one of claims 1 to 5, wherein, The first configuration information also includes the addresses of K of the N second terminals, where K ≤ N and K is a positive integer.
7. The method of claim 6, wherein, If K < N, the first user plane network element serves the K second terminals; The first configuration information also includes the addresses of M second user plane network elements, wherein the M second user plane network elements serve NK second terminals out of the N second terminals, excluding the K second terminals, and M is a positive integer.
8. The method of claim 7, wherein, Also includes: M second configuration information is sent to the M second user plane network elements. The M second user plane network elements correspond one-to-one with the M second configuration information. The m-th second configuration information includes the first address and the address of the second terminal served by the m-th second user plane network element, or the m-th second configuration information includes the address of the second terminal served by the m-th second user plane network element and the address and / or port number of the m-th second user plane network element. The m-th second user plane network element is any one of the M user plane network elements, where m ≤ M and m is a positive integer.
9. The method of claim 6, wherein, If K < N, the first user plane network element serves the K second terminals; The first configuration information also includes the addresses of M second user plane network elements, and the addresses of the second terminals served by the M second user plane network elements respectively, wherein the M second user plane network elements serve NK second terminals out of the N second terminals excluding the K second terminals, and M is a positive integer.
10. The method of any one of claims 1-5, wherein, The first configuration information also includes the addresses of M second user plane network elements, wherein the M second user planes serve the N second terminals, and M is a positive integer.
11. The method of claim 10, wherein, The first configuration information also includes the addresses of the second terminals served by the M second user plane network elements respectively.
12. The method according to any one of claims 1-11, characterized in that, Also includes: Send a first indication message to the first terminal, the first indication message being used to trigger the first terminal to use the first address.
13. A communication method, characterized in that, The method is applied to a first user plane network element, and the method includes: Receive first configuration information, which includes a first address and the addresses of K second terminals, where K is a positive integer; Receive the first data packet, the destination address of the first data packet being the first address; K second data packets are determined based on the first data packet and the addresses of the K second terminals; Send the K second data packets.
14. The method as described in claim 13, characterized in that, Determining K second data packets based on the first data packet and the addresses of the K second terminals includes: Determine that the destination address of the first data packet is the same as the first address in the first configuration information, and obtain K first data packets based on the first data packet; Based on the addresses of the K second terminals and the K first data packets, the K second data packets are determined, wherein the destination address of the kth second data packet is the address of the kth second terminal, k is a positive integer, k≤K, and the kth second terminal is any one of the K second terminals.
15. The method as described in claim 13, characterized in that, The first user plane network element serves the K second terminals; Sending the K second data packets includes: The corresponding second data packet is sent to each of the K terminals, wherein the kth second data packet is sent to the kth second terminal.
16. The method according to any one of claims 13-15, characterized in that, The first configuration information includes the addresses of M second user plane network elements, where M is a positive integer; The method further includes: The first data packet is sent to the M second user plane network elements.
17. The method according to any one of claims 13-15, characterized in that, The first configuration information includes the addresses of M second user plane network elements and the addresses of the second terminals served by the M second user plane network elements respectively, where M is a positive integer, the m-th second user plane is any one of the M second user plane network elements, m≤M, m is a positive integer, and the m-th second user plane serves S second terminals, where S is a positive integer; The method further includes: S first data packets are obtained based on the first data packet; Based on the addresses of the S second terminals and the S first data packets, S second data packets are determined, wherein the destination address of the s-th second data packet is the address of the s-th second terminal, s is a positive integer, s≤S, and the s-th second terminal is any one of the S second terminals; Send the S second data packets to the m-th second user plane network element.
18. The method according to any one of claims 13-17, characterized in that, Before receiving the first configuration information, the method further includes: A first notification message is sent to the control plane network element, indicating that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
19. A communication method, characterized in that, The method is applied to a first terminal, and the method includes: Receive a first address, which is used for the first terminal to communicate with N second terminals. The first terminal and the N second terminals have a matching relationship, and N is a positive integer. Send a first data packet, the destination address of the first data packet is the first address, and the first data packet is a data packet sent to the N second terminals.
20. The method as described in claim 19, characterized in that, Before receiving the first address, it also includes: Send a request message to the control plane network element, the request message being used to request an address for communicating with the N second terminals; Receive the first address, including: Receive a response message from the first control network element, the response message including the first address.
21. The method as described in claim 20, characterized in that, The request message includes the addresses of the N second terminals.
22. The method according to any one of claims 19-21, characterized in that, Before sending the first data packet, it also includes: The system receives a first indication message from a control plane network element, which is used to trigger the first terminal to use the first address.
23. The method according to any one of claims 19-22, characterized in that, Before receiving the first address, it also includes: N unicast data packets are sent to the N second terminals. The N second terminals correspond one-to-one with the N unicast data packets. The destination address of the i-th unicast data packet is the address of the i-th second terminal, where i is a positive integer and i≤N. The i-th unicast data packet is any one of the N unicast data packets, and the content of the N unicast data packets is the same.
24. A communication method, characterized in that, The method is applied to a first user plane network element, and the method includes: Receive first configuration information, the first configuration information including a first address and the addresses of M second user plane network elements, the M second user planes serving N second terminals, where M is a positive integer; Receive the first data packet, the destination address of the first data packet being the first address; The first data packet is sent to each of the M second user plane network elements.
25. The method as described in claim 24, characterized in that, Before receiving the first configuration information, the method further includes: A first notification message is sent to the control plane network element, indicating that the first terminal has a matching relationship with the N second terminals, and the first user plane network element serves the first terminal.
26. A communication system, characterized in that, The communication system includes a control plane network element and a first user plane network element; wherein the control plane network element is used to perform the method as described in any one of claims 1 to 12, the first user plane network element is used to perform the method as described in any one of claims 13 to 18, or the first user plane network element is used to perform the method as described in claim 24 or 25.
27. A communication device, characterized in that, Includes units or modules for performing the method as described in any one of claims 1 to 25.
28. A communication device, characterized in that, The communication device includes at least one processor; the at least one processor is configured to perform the method as described in any one of claims 1 to 25.
29. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a program that, when run on the device, causes the device to perform the method as claimed in any one of claims 1 to 25.
30. A computer program product, characterized in that, The computer program product includes a program or instructions that, when executed by a device, cause the device to perform the method as described in any one of claims 1 to 25.