A communication method and a communication system
By forwarding service packets between user plane devices within the core network and using traffic splitting strategies and address management servers to allocate public IP addresses to terminals, the problem of low communication connection success rate under NAT routers is solved, achieving low-latency and highly reliable data transmission and reducing the latency and security risks of VPN relay.
Patent Information
- Application Number
- CN202511632813.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-06
- Publication Date
- 2026-02-13
- Estimated Expiration
- 2045-11-06
AI Technical Summary
Under NAT routers, especially symmetric NAT routers, the success rate of communication connections between terminals is low. Existing methods of relaying via VPN servers increase latency and security risks, and are also costly.
By forwarding service packets among user plane devices within the core network, and using traffic splitting strategies and address management servers to assign public IP addresses to terminals, data transmission within the private network is achieved, avoiding bypassing public NAT routers.
It achieves low-latency, highly reliable data transmission, reduces the risk of data leakage, and lowers deployment costs.
Smart Images

Figure CN121078022B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of communication technology, and in particular to a communication method and a communication system. BACKGROUND
[0002] With reference to Figure 1 In a communication based on a network address translation (NAT) session traversal utilities for NAT (STUN) protocol, a communication process between a terminal A (hereinafter referred to as A) and a terminal B (hereinafter referred to as B) is as follows:
[0003] (1) A connects a STUN server, the STUN server obtains public internet protocol (IP) address information of A, the public IP address information of A includes a public IP and a public port, and returns the public IP address information of A to A. The public IP address information of A is mapped by a NAT-A router (also referred to as a firewall) connected by A based on private IP address information of A. That is, the public IP address information of A and the private IP address information of A have a mapping relationship. The private IP address information of A includes a private IP and a private port.
[0004] (2) B connects the STUN server, the STUN server obtains public IP address information of B, the public IP address information of B includes a public IP and a public port, and returns the public IP address information of B to B. The public IP address information of B is mapped by a NAT-B router (also referred to as a firewall) connected by B based on private IP address information of B. That is, the public IP address information of B and the private IP address information of B have a mapping relationship. The private IP address information of B includes a private IP and a private port.
[0005] (3) A informs an application controller (APP controller) through the NAT-A router that A wants to communicate with B, and sends the public IP address information of A to the application controller.
[0006] (4) The application controller sends the public IP address information of A to B through the NAT-B router, so that B obtains the public IP address information of A.
[0007] (5) B sends a packet to the NAT-A router, which is discarded by the NAT-A router because there is no A->NAT-B legal session (i.e. NAT mapping of the public IP address information of B->A) on the NAT-A router, but a B->NAT-A legal session has been established on the NAT-B router (i.e. NAT mapping of the public IP address information of B->A).
[0008] (6) B sends the public IP address information allocated by the NAT-B router for B to the application controller.
[0009] (7) The application controller sends the public IP address information of B to A.
[0010] (8) A sends a packet to the NAT-B according to the public IP address information of B to attempt to establish a connection with B.
[0011] The types of the NAT router include a full cone NAT, a port-restricted cone NAT, a restricted cone NAT, and a symetric NAT.
[0012] The symetric NAT requires that the same private IP address information outwards or inwards traffic needs to match the same public IP address information, which leads to a very low success rate of end-to-end connection. For example, if the NAT-A router and the NAT-B router are both symetric NAT routers, the success rate of connection between the terminal A and the terminal B is very low.
[0013] Therefore, it is proposed in the industry to add a public virtual private network (VPN) server as a relay node between the terminal A and the terminal B, and the data between the terminal A and the terminal B is forwarded through the VPN server, so as to bypass the NAT router. However, the problem of this method is that the data needs to bypass the relay node in the public network, which increases the end-to-end delay and also increases the risk of data leakage, and a VPN server cluster needs to be deployed, which increases the cost.
[0014] Therefore, how to realize low-latency and high-reliability data transmission between different terminals needs to be studied. SUMMARY
[0015] The embodiments of the present application provide a communication method and a communication system to realize low-latency and high-reliability data transmission between different terminals.
[0016] In a first aspect, an embodiment of the present application provides a communication method, which comprises: a first user plane device receiving a first service message from a first terminal, the first service message comprising first private network IP address information of the first terminal, public network IP address information of a second terminal, and service data, the public network IP address information of the second terminal being allocated to the second terminal by an address management server deployed in a user plane network element corresponding to a second user plane device; the first user plane device sending the first service message to the second user plane device according to a first distribution strategy, the first distribution strategy comprising home group information and public network IP address segment information, the public network IP address segment information indicating a public network IP address segment comprising an IP address in the public network IP address information of the second terminal, and the home group information indicating a home group comprising the first terminal and the second terminal; the second user plane device sending a second service message to a third user plane device serving the second terminal, the second service message comprising public network IP address information of the first terminal, first private network IP address information of the second terminal, and the service data, the public network IP address information of the first terminal being allocated to the first terminal by the address management server; and the third user plane device sending the second service message to the second terminal.
[0017] Based on the above scheme, the first terminal sends a service message to the second terminal, first, the first terminal sends the service message to a first user plane device serving the first terminal, then the first user plane device distributes the service message to a second user plane device based on a first distribution strategy, then the second user plane device distributes the service message to a third user plane device serving the second terminal, and finally the third user plane device sends the service message to the second terminal. Since the service message sent by the first terminal to the second terminal is forwarded through the first user plane device, the second user plane device, and the third user plane device in the core network without bypassing the public network (such as a network address translation router in the public network), the service message sent by the first terminal to the second terminal is forwarded in the private network without being forwarded through the public network, and the time delay of the service message forwarding is low and the service message forwarding is safe and reliable, thereby realizing low-time-delay and high-reliability data transmission between the first terminal and the second terminal.
[0018] As a possible implementation method, the first terminal is a terminal of the 3rd generation partnership project (3GPP), and the second terminal is a terminal of the 3GPP.
[0019] As a possible implementation method, the method further comprises: the second user plane device generating a third service message according to the first service message, the third service message comprising the second private network IP address information of the first terminal, the public network IP address information of the second terminal and the service data; the second user plane device generating a fourth service message according to the third service message, the fourth service message comprising the public network IP address information of the first terminal, the second private network IP address information of the second terminal and the service data; and the second user plane device generating the second service message according to the fourth service message.
[0020] Based on the above scheme, when the service message is forwarded among the first user plane device, the second user plane device and the third user plane device, the source IP address information and / or the destination IP address information is replaced, which helps to correctly identify the source IP address information and / or the destination IP address information of the service message, thereby helping to correctly transmit the service message. As a possible implementation method, the method further comprises: the third user plane device receiving a first binding request from the second terminal, the first binding request comprising the first private network IP address information of the second terminal and the address information of the address management server; the third user plane device sending the first binding request to the second user plane device; the second user plane device sending a second binding request to the address management server, the second binding request comprising the second private network IP address information of the second terminal and the address information of the address management server; the second user plane device allocating an IP address in the public network IP address information of the second terminal according to the first distribution strategy; and sending the IP address in the public network IP address information of the second terminal to the address management server; the address management server determining the public network IP address information of the second terminal according to the IP address in the public network IP address information of the second terminal; the address management server sending a first binding response to the second user plane device, the first binding response comprising a first message header and a message body, the first message header comprising the address information of the address management server and the second private network IP address information of the second terminal, and the message body comprising the public network IP address information of the second terminal; the second user plane device sending a second binding response to the third user plane device, the second binding response comprising a second message header and the message body, the second message header comprising the address information of the address management server and the first private network IP address information of the second terminal; and the third user plane device sending the second binding response to the second terminal.
[0021] Based on the above scheme, the second terminal can obtain the public IP address information of the second terminal allocated by the address management server, and then the second terminal can send the public IP address information of the second terminal to the first terminal. Subsequently, the first terminal can send service data to the second terminal based on the public IP address information of the second terminal, thereby realizing correct transmission of service data.
[0022] As a possible implementation method, the method further includes: the third user plane device receives a second offloading policy from a policy control device, the second offloading policy including address information of the address management server; and the third user plane device sends the first binding request to the second user plane device, including: the third user plane device sends the first binding request to the second user plane device according to the second offloading policy.
[0023] Based on the above scheme, the third user plane device can forward the received first binding request to the second user plane device based on the second offloading policy, thereby realizing correct forwarding of the first binding request.
[0024] As a possible implementation method, the method further includes: the second user plane device sends a second binding request to the address management server, including: the second user plane device determines, according to a deep packet inspection policy, that the first binding request is a first protocol packet, generates the second binding request according to the first binding request, and sends the second binding request to the address management server.
[0025] Based on the above scheme, the second user plane device judges whether to send a binding request to the address management server based on a deep packet inspection policy, which is helpful for correct forwarding of the binding request.
[0026] As a possible implementation method, the method further includes: the method further includes: the second user plane device receives the deep packet inspection policy from the policy control device.
[0027] As a possible implementation method, the method further comprises: the third user plane device receives a domain name query request from the second terminal, the domain name query request comprising domain name information of the address management server; the third user plane device sends the domain name query request to the second user plane device according to a third distribution strategy, the third distribution strategy comprising the domain name information of the address management server; the second user plane device sends the domain name query request to a domain name system server; the second user plane device receives a domain name query response from the domain name system server, the domain name query response comprising IP address information of the address management server corresponding to the domain name information of the address management server; the second user plane device sends the domain name query response to the third user plane device; and the third user plane device sends the domain name query response to the second terminal.
[0028] Based on the above scheme, the second terminal can query the IP address information of the corresponding address management server based on the domain name information of the address management server, so as to subsequently request the address management server to allocate a public network IP address information for the second terminal based on the IP address information of the address management server.
[0029] As a possible implementation method, the method further comprises: the method further comprises: the first user plane device receives the first distribution strategy from the policy control device.
[0030] As a possible implementation method, the method further comprises: the method further comprises: a session management device served by the first user plane device obtains the IP address information of the address management server corresponding to the home group information from a policy control device or a unified data management device; and the session management device selects the second user plane device according to the IP address information of the address management server.
[0031] Based on the above scheme, the selected second user plane device is associated with the address management server, which helps correct communication between the second user plane device and the address management server.
[0032] As a possible implementation method, the method further comprises: the method further comprises: a session management device served by the first user plane device selects the second user plane device and configures the IP address information of the address management server to the second user plane device.
[0033] Based on the above scheme, the IP address information of the address management server is configured to the second user plane device after the second user plane device is selected, thereby realizing the association of the second user plane device with the address management server, which helps correct communication between the second user plane device and the address management server.
[0034] In a second aspect, an embodiment of the present application provides a communication method, which comprises: a first user plane device receiving a fifth service message from a first terminal, the fifth service message comprising first private network IP address information of the first terminal, public network IP address information of a third terminal, and service data, the public network IP address information of the third terminal being allocated to the third terminal by an address management server deployed in a user plane network element corresponding to a second user plane device; the first user plane device sending the fifth service message to the second user plane device according to a first distribution strategy, the first distribution strategy comprising home group information and public network IP address segment information, the public network IP address segment information indicating a public network IP address segment comprising an IP address in the public network IP address information of the third terminal, and the home group information indicating a home group comprising the first terminal and the third terminal; and the second user plane device sending a sixth service message to the third terminal, the sixth service message comprising public network IP address information of the first terminal, private network IP address information of the third terminal, and the service data, the public network IP address information of the first terminal being allocated to the first terminal by the address management server.
[0035] Based on the above scheme, the first terminal sends a service message to the third terminal, and first, the first terminal sends the service message to the first user plane device serving the first terminal, and then the first user plane device distributes the service message to the second user plane device based on the first distribution strategy, and then the second user plane device sends the service message to the third terminal. Since the service message sent by the first terminal to the third terminal is forwarded through the first user plane device and the second user plane device in the core network, without bypassing the public network (such as a network address translation router in the public network), the service message sent by the first terminal to the third terminal is forwarded in the private network, without being forwarded through the public network, so that the service message forwarding has low latency and is safe and reliable, thereby realizing low-latency and high-reliability data transmission between the first terminal and the third terminal.
[0036] As a possible implementation method, the first terminal is a 3GPP terminal, and the third terminal is a non-3GPP terminal.
[0037] As a possible implementation method, the method further comprises: the second user plane device generating a seventh service message according to the fifth service message, the seventh service message comprising second private network IP address information of the first terminal, the public network IP address information of the third terminal, and the service data; and the second user plane device generating the sixth service message according to the seventh service message.
[0038] Based on the above scheme, when the service message is forwarded between the first user plane device and the second user plane device, the source IP address information and / or the destination IP address information is replaced, which helps to correctly identify the source IP address information and / or the destination IP address information of the service message, thereby helping to correctly transmit the service message.
[0039] As a possible implementation method, the method further comprises: the second user plane device receiving a third binding request from the third terminal, the third binding request comprising private network IP address information of the third terminal and address information of the address management server; the second user plane device sending a third binding request to the address management server; the second user plane device allocating an IP address in public network IP address information of the third terminal according to the first splitting strategy, and sending the IP address in the public network IP address information of the third terminal to the address management server; the address management server determining the public network IP address information of the third terminal according to the IP address in the public network IP address information of the third terminal; the address management server sending a third binding response to the second user plane device, the third binding response comprising a third message header and a message body, the third message header comprising address information of the address management server and private network IP address information of the third terminal, and the message body comprising the public network IP address information of the third terminal; and the second user plane device sending the third binding response to the third terminal.
[0040] Based on the above scheme, the third terminal can obtain the public network IP address information of the third terminal allocated by the address management server for the third terminal, and then the third terminal can send the public network IP address information of the third terminal to the first terminal. The first terminal can subsequently send service data to the third terminal based on the public network IP address information of the third terminal, thereby realizing correct transmission of the service data.
[0041] As a possible implementation method, the method further comprises: the second user plane device sending a third binding request to the address management server, comprising: the second user plane device determining that the third binding request is a first protocol message according to the deep packet detection strategy, and then sending the third binding request to the address management server.
[0042] Based on the above scheme, the second user plane device judges whether to send a binding request to the address management server based on the deep packet detection strategy, which helps to correctly forward the binding request.
[0043] As a possible implementation method, the method further comprises: the method further comprises: the second user plane device receiving the deep packet detection strategy from the policy control device.
[0044] As a possible implementation method, the method further includes: the second user plane device receives a domain name query request from the third terminal, the domain name query request including domain name information of the address management server; the second user plane device sends the domain name query request to a domain name system server; the second user plane device receives a domain name query response from the domain name system server, the domain name query response including IP address information of the address management server corresponding to the domain name information of the address management server; and the second user plane device sends the domain name query response to the third terminal.
[0045] Based on the above scheme, the third terminal can query the IP address information of the corresponding address management server based on the domain name information of the address management server, so that the third terminal can subsequently request the address management server to allocate public network IP address information for the third terminal based on the IP address information of the address management server.
[0046] As a possible implementation method, the method further includes: the method further includes: the first user plane device receives the first offloading policy from the policy control device.
[0047] As a possible implementation method, the method further includes: the method further includes: a session management device serving the first user plane device acquires IP address information of the address management server corresponding to the home group information from a policy control device or a unified data management device; and the session management device selects the second user plane device according to the IP address information of the address management server.
[0048] Based on the above scheme, the selected second user plane device is associated with the address management server, which helps correct communication between the second user plane device and the address management server.
[0049] As a possible implementation method, the method further includes: the method further includes: a session management device serving the first user plane device selects the second user plane device and configures the second user plane device with IP address information of the address management server.
[0050] Based on the above scheme, the second user plane device is configured with the IP address information of the address management server after the second user plane device is selected, thereby associating the second user plane device with the address management server, which helps correct communication between the second user plane device and the address management server.
[0051] In a third aspect, the present application provides a communication apparatus (also referred to as a first user plane apparatus), which has the functions implemented by the first user plane apparatus in any of the implementation methods of the first aspect to the second aspect. For example, the communication apparatus includes modules, units or means corresponding to the operations involving the first user plane apparatus in any of the implementation methods of the first aspect to the second aspect. The modules, units or means can be implemented in software, or in hardware, or in a combination of software and hardware.
[0052] In a fourth aspect, the present application provides a communication apparatus (also referred to as a second user plane apparatus), which has the functions implemented by the second user plane apparatus in any of the implementation methods of the first aspect to the second aspect. For example, the communication apparatus includes modules, units or means corresponding to the operations involving the second user plane apparatus in any of the implementation methods of the first aspect to the second aspect. The modules, units or means can be implemented in software, or in hardware, or in a combination of software and hardware.
[0053] In a fifth aspect, the present application provides a communication apparatus (also referred to as a third user plane apparatus), which has the functions implemented by the third user plane apparatus in any of the implementation methods of the first aspect to the second aspect. For example, the communication apparatus includes modules, units or means corresponding to the operations involving the third user plane apparatus in any of the implementation methods of the first aspect to the second aspect. The modules, units or means can be implemented in software, or in hardware, or in a combination of software and hardware.
[0054] In a sixth aspect, the present application provides a communication apparatus (also referred to as a first user plane apparatus), which includes an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory is configured to store part or all of the necessary computer programs or instructions for implementing the functions of the first user plane apparatus in any of the implementation methods of the first aspect to the second aspect. The one or more processors can execute the computer programs or instructions, which, when executed, cause the communication apparatus to implement any of the implementation methods of the first aspect to the second aspect. The interface circuit is configured to implement the communication function within the communication apparatus and / or the communication function of the communication apparatus with other apparatuses or components.
[0055] In a seventh aspect, the present application provides a communication apparatus (also referred to as a second user plane apparatus), which comprises an interface circuit and one or more processors. The one or more processors are coupled with a memory. The memory is configured to store part or all of the computer programs or instructions necessary for implementing the functions of the second user plane apparatus involved in any of the implementation methods of the first aspect to the second aspect. The one or more processors can execute the computer programs or instructions, which, when executed, cause the communication apparatus to implement any of the implementation methods of the first aspect to the second aspect. The interface circuit is configured to implement the communication function within the communication apparatus and / or the communication function of the communication apparatus with other apparatuses or components.
[0056] In an eighth aspect, the present application provides a communication apparatus (also referred to as a third user plane apparatus), which comprises an interface circuit and one or more processors. The one or more processors are coupled with a memory. The memory is configured to store part or all of the computer programs or instructions necessary for implementing the functions of the third user plane apparatus involved in any of the implementation methods of the first aspect. The one or more processors can execute the computer programs or instructions, which, when executed, cause the communication apparatus to implement any of the implementation methods of the first aspect. The interface circuit is configured to implement the communication function within the communication apparatus and / or the communication function of the communication apparatus with other apparatuses or components.
[0057] In a ninth aspect, the present application provides a chip (or chip system), which comprises a processor configured to implement the operations performed by the first user plane apparatus in any of the implementation methods of the first aspect to the second aspect.
[0058] In a tenth aspect, the present application provides a chip (or chip system), which comprises a processor configured to implement the operations performed by the second user plane apparatus in any of the implementation methods of the first aspect to the second aspect.
[0059] In an eleventh aspect, the present application provides a chip (or chip system), which comprises a processor configured to implement the operations performed by the third user plane apparatus in any of the implementation methods of the first aspect.
[0060] In a twelfth aspect, the present application provides a computer-readable storage medium, which stores computer programs or instructions, which, when executed, implement the operations performed by the first user plane apparatus in any of the implementation methods of the first aspect to the second aspect.
[0061] In a thirteenth aspect, the present application provides a computer readable storage medium, having stored therein computer programs or instructions, which when executed by a computer, implement the operations performed by the second user plane device in any of the implementation methods of the first aspect to the second aspect.
[0062] In a fourteenth aspect, the present application provides a computer readable storage medium, having stored therein computer programs or instructions, which when executed by a computer, implement the operations performed by the third user plane device in any of the implementation methods of the first aspect.
[0063] In a fifteenth aspect, the present application provides a computer program product, comprising computer programs or instructions, which when executed by a computer, implement the operations performed by the first user plane device in any of the implementation methods of the first aspect to the second aspect.
[0064] In a sixteenth aspect, the present application provides a computer program product, comprising computer programs or instructions, which when executed by a computer, implement the operations performed by the second user plane device in any of the implementation methods of the first aspect to the second aspect.
[0065] In a seventeenth aspect, the present application provides a computer program product, comprising computer programs or instructions, which when executed by a computer, implement the operations performed by the third user plane device in any of the implementation methods of the first aspect.
[0066] In an eighteenth aspect, the application provides a communication system, comprising: a first user plane device, configured to receive a first service message from a first terminal, wherein the first service message comprises first private network IP address information of the first terminal, public network IP address information of a second terminal, and service data, the public network IP address information of the second terminal is allocated to the second terminal by an address management server deployed in a user plane network element corresponding to a second user plane device; and send the first service message to the second user plane device according to a first distribution strategy, wherein the first distribution strategy comprises family group information and public network IP address segment information, the public network IP address segment information indicates that a public network IP address segment comprises an IP address in the public network IP address information of the second terminal, and the family group information indicates that a family group comprises the first terminal and the second terminal; the second user plane device, configured to send a second service message to a third user plane device serving the second terminal, wherein the second service message comprises public network IP address information of the first terminal, first private network IP address information of the second terminal, and the service data, the public network IP address information of the first terminal is allocated to the first terminal by the address management server; and the third user plane device, configured to send the second service message to the second terminal.
[0067] The first user plane device is further configured to perform the method performed by the first user plane device in any of the implementation methods of the first aspect.
[0068] The second user plane device is further configured to perform the method performed by the second user plane device in any of the implementation methods of the first aspect.
[0069] The third user plane device is further configured to perform the method performed by the third user plane device in any of the implementation methods of the first aspect.
[0070] As an implementation method, the system further comprises a session management device, configured to perform the method performed by the session management device in any of the implementation methods of the first aspect.
[0071] As an implementation method, the system further comprises a policy control device, configured to perform the method performed by the policy control device in any of the implementation methods of the first aspect.
[0072] As an implementation method, the system further comprises an address management server, configured to perform the method performed by the address management server in any of the implementation methods of the first aspect.
[0073] In a nineteenth aspect, the application provides a communication system, comprising: a first user plane device, configured to receive a fifth service message from a first terminal, wherein the fifth service message comprises first private network IP address information of the first terminal, public network IP address information of a third terminal, and service data, the public network IP address information of the third terminal is allocated to the third terminal by an address management server deployed in a user plane network element corresponding to a second user plane device; and send the fifth service message to the second user plane device according to a first distribution strategy, wherein the first distribution strategy comprises family group information and public network IP address segment information, the public network IP address segment information indicates that a public network IP address segment comprises an IP address in the public network IP address information of the third terminal, and the family group information indicates that a family group comprises the first terminal and the third terminal; and the second user plane device, configured to send a sixth service message to the third terminal, wherein the sixth service message comprises public network IP address information of the first terminal, private network IP address information of the third terminal, and the service data, and the public network IP address information of the first terminal is allocated to the first terminal by the address management server.
[0074] The first user plane device is further configured to perform the method performed by the first user plane device in any of the implementation methods of the second aspect.
[0075] The second user plane device is further configured to perform the method performed by the second user plane device in any of the implementation methods of the second aspect.
[0076] As an implementation method, the system further comprises a session management device, configured to perform the method performed by the session management device in any of the implementation methods of the second aspect.
[0077] As an implementation method, the system further comprises a policy control device, configured to perform the method performed by the policy control device in any of the implementation methods of the second aspect.
[0078] As an implementation method, the system further comprises an address management server, configured to perform the method performed by the address management server in any of the implementation methods of the second aspect.
[0079] The beneficial effects of the implementation methods of the third aspect to the nineteenth aspect can refer to the beneficial effects of the corresponding implementation methods of the first aspect to the second aspect. BRIEF DESCRIPTION OF DRAWINGS
[0080] Figure 1 FIG. 1 is a schematic diagram of a communication flow based on a STUN protocol;
[0081] FIG. 2(a) is a schematic diagram of a communication system provided by an embodiment of the application;
[0082] Figure 2(b) is a schematic diagram of a communication system according to an embodiment of the application;
[0083] Figure 3 Figure 3 is a schematic diagram of a network architecture based on a service-oriented architecture according to an embodiment of the application;
[0084] Figure 4 Figure 4 is a schematic diagram of a communication method according to an embodiment of the application;
[0085] Figure 5 Figure 5 is an example diagram of a transmission process of a service message according to an embodiment of the application;
[0086] Figure 6 Figure 6 is a schematic diagram of a communication method according to an embodiment of the application;
[0087] Figure 7 Figure 7 is an example diagram of a process in which a first terminal acquires public IP address information of the first terminal according to an embodiment of the application;
[0088] Figure 8 Figure 8 is an example diagram of a process in which a second terminal acquires public IP address information of the second terminal according to an embodiment of the application;
[0089] Figure 9 Figure 9 is a schematic diagram of a communication method according to an embodiment of the application;
[0090] Figure 10 Figure 10 is a schematic diagram of a communication method according to an embodiment of the application;
[0091] Figure 11 Figure 11 is a schematic diagram of a communication method according to an embodiment of the application;
[0092] Figure 12 Figure 12 is an example diagram of a transmission process of a service message according to an embodiment of the application;
[0093] Figure 13 Figure 13 is a schematic diagram of a communication method according to an embodiment of the application;
[0094] Figure 14 Figure 14 is an example diagram of a process in which a first terminal acquires public IP address information of the first terminal according to an embodiment of the application;
[0095] Figure 15 Figure 15 is an example diagram of a process in which a third terminal acquires public IP address information of the third terminal according to an embodiment of the application;
[0096] Figure 16 Figure 16 is a schematic diagram of a communication method according to an embodiment of the application;
[0097] Figure 17 Figure 17 is a schematic diagram of a communication method according to an embodiment of the application;
[0098] Figure 18 A possible exemplary block diagram of a communication apparatus involved in embodiments of the present application;
[0099] Figure 19 A possible exemplary block diagram of a communication apparatus involved in embodiments of the present application. DETAILED DESCRIPTION
[0100] To achieve low latency and high reliability data transmission between different terminals, referring to FIG. 2(a), embodiments of the present application provide a communication system. The communication system includes a first user plane apparatus, a second user plane apparatus and a third user plane apparatus. Optionally, the communication system further includes one or more of a policy control apparatus, a session management apparatus or an address management server (not shown in the figure). Wherein, when the second user plane apparatus is a user plane network element, the address management server is deployed in the user plane network element; when the second user plane apparatus is a module (such as a circuit, a chip or a chip system, etc.) in a user plane network element, or a logical node, a logical module or software capable of realizing all or part of the functions of a user plane network element, the address management server is deployed in a user plane network element containing the second user plane apparatus. Wherein, the session management apparatus serves the first user plane apparatus, the second user plane apparatus and the third user plane apparatus.
[0101] The first user plane apparatus is configured to receive a first service packet from a first terminal, the first service packet including first private network IP address information of the first terminal, public network IP address information of a second terminal and service data, the public network IP address information of the second terminal being allocated to the second terminal by an address management server deployed in a user plane network element corresponding to the second user plane apparatus; and send the first service packet to the second user plane apparatus according to a first distribution strategy, the first distribution strategy including home group information and public network IP address segment information, the public network IP address segment information indicating a public network IP address segment including an IP address in the public network IP address information of the second terminal, and the home group information indicating a home group including the first terminal and the second terminal. The second user plane apparatus is configured to send a second service packet to a third user plane apparatus serving the second terminal, the second service packet including public network IP address information of the first terminal, first private network IP address information of the second terminal and the service data, the public network IP address information of the first terminal being allocated to the first terminal by the address management server. The third user plane apparatus is configured to send the second service packet to the second terminal.
[0102] As one possible implementation, the second user plane device is further configured to generate a third service message based on the first service message, the third service message including the second private network IP address information of the first terminal, the public network IP address information of the second terminal, and the service data; generate a fourth service message based on the third service message, the fourth service message including the public network IP address information of the first terminal, the second private network IP address information of the second terminal, and the service data; and generate the second service message based on the fourth service message.
[0103] As one possible implementation, the third user plane device is further configured to receive a first binding request from the second terminal, the first binding request including the first private network IP address information of the second terminal and the address information of the address management server; send the first binding request to the second user plane device; the second user plane device is further configured to send a second binding request to the address management server, the second binding request including the second private network IP address information of the second terminal and the address information of the address management server; allocate an IP address from the public network IP address information of the second terminal according to the first traffic splitting strategy; and send the IP address from the public network IP address information of the second terminal to the address management server; the address management server is configured to, according to the first traffic splitting strategy, allocate an IP address from the public network IP address information of the second terminal; and send the IP address from the public network IP address information of the second terminal to the address management server; the address management server is configured to, according to the first traffic splitting strategy, allocate an IP address from the public network IP address information of the second terminal; and allocate an IP address from the public network IP address information of the second terminal. The second user plane device is further configured to send a first binding response to the third user plane device. The second binding response includes a first header and a body. The first header includes the address information of the address management server and the second private IP address information of the second terminal. The body includes the public IP address information of the second terminal. The second user plane device is also configured to send a second binding response to the third user plane device. The second binding response includes a second header and a body. The second header includes the address information of the address management server and the first private IP address information of the second terminal. The third user plane device is also configured to send the second binding response to the second terminal.
[0104] As one possible implementation, the policy control device is configured to send a second traffic splitting policy to the third user plane device, the second traffic splitting policy including the address information of the address management server; the third user plane device is further configured to send the first binding request to the second user plane device according to the second traffic splitting policy.
[0105] As a possible implementation method, the second user plane device is further configured to determine, according to the deep packet inspection policy, that the first binding request is a first protocol packet, generate the second binding request according to the first binding request, and send the second binding request to the address management server.
[0106] As a possible implementation method, the policy control device is configured to send the deep packet inspection policy to the second user plane device.
[0107] As a possible implementation method, the third user plane device is further configured to receive a domain name query request from the second terminal, the domain name query request comprising domain name information of the address management server; send the domain name query request to the second user plane device according to a third distribution policy, the third distribution policy comprising the domain name information of the address management server; the second user plane device is further configured to send the domain name query request to a domain name system server; receive a domain name query response from the domain name system server, the domain name query response comprising IP address information of the address management server corresponding to the domain name information of the address management server; send the domain name query response to the third user plane device; and the third user plane device is further configured to send the domain name query response to the second terminal.
[0108] As a possible implementation method, the policy control device is configured to send the first distribution policy to the first user plane device.
[0109] As a possible implementation method, the session management device is configured to acquire IP address information of the address management server corresponding to the home group information from a policy control device or a unified data management device; and select the second user plane device according to the IP address information of the address management server.
[0110] As a possible implementation method, the session management device is configured to select the second user plane device, and configure the IP address information of the address management server to the second user plane device.
[0111] To realize low latency and high reliability data transmission between different terminals, with reference to FIG. 2(b), an embodiment of the present application provides a communication system. The communication system comprises a first user plane device and a second user plane device. Optionally, the communication system further comprises one or more of a policy control device, a session management device or an address management server (not shown in the figure). Wherein, when the second user plane device is a user plane network element, the address management server is deployed in the user plane network element; when the second user plane device is a module (such as a circuit, a chip or a chip system, etc.) in a user plane network element, or a logical node, a logical module or software capable of realizing all or part of the functions of the user plane network element, the address management server is deployed in the user plane network element containing the second user plane device. Wherein, the session management device serves the first user plane device and the second user plane device.
[0112] The first user plane device is configured to receive a fifth service packet from a first terminal, wherein the fifth service packet comprises first private network IP address information of the first terminal, public network IP address information of a third terminal, and service data, the public network IP address information of the third terminal being allocated to the third terminal by an address management server deployed in a user plane network element corresponding to a second user plane device; and transmit the fifth service packet to the second user plane device according to a first distribution strategy, wherein the first distribution strategy comprises home group information and public network IP address segment information, the public network IP address segment information indicates a public network IP address segment comprising an IP address in the public network IP address information of the third terminal, and the home group information indicates a home group comprising the first terminal and the third terminal. The second user plane device is configured to transmit a sixth service packet to the third terminal, wherein the sixth service packet comprises public network IP address information of the first terminal, private network IP address information of the third terminal, and the service data, the public network IP address information of the first terminal being allocated to the first terminal by the address management server.
[0113] As a possible implementation method, the second user plane device is further configured to generate a seventh service packet according to the fifth service packet, wherein the seventh service packet comprises second private network IP address information of the first terminal, the public network IP address information of the third terminal, and the service data; and generate the sixth service packet according to the seventh service packet.
[0114] As a possible implementation method, the second user plane device is further configured to receive a third binding request from the third terminal, the third binding request comprising private network IP address information of the third terminal and address information of the address management server; send the third binding request to the address management server; allocate an IP address in public network IP address information of the third terminal according to the first offloading policy; and send the IP address in the public network IP address information of the third terminal to the address management server; and the address management server is configured to determine the public network IP address information of the third terminal according to the IP address in the public network IP address information of the third terminal; send a third binding response to the second user plane device, the third binding response comprising a third packet header and a packet body, the third packet header comprising the address information of the address management server and the private network IP address information of the third terminal, and the packet body comprising the public network IP address information of the third terminal; and the second user plane device is further configured to send the third binding response to the third terminal.
[0115] As a possible implementation method, the second user plane device is further configured to determine, according to a deep packet inspection policy, that the third binding request is a first protocol packet, and send the third binding request to the address management server.
[0116] As a possible implementation method, the policy control device is configured to send the deep packet inspection policy to the second user plane device.
[0117] As a possible implementation method, the second user plane device is further configured to receive a domain name query request from the third terminal, the domain name query request comprising domain name information of the address management server; send the domain name query request to a domain name system server; receive a domain name query response from the domain name system server, the domain name query response comprising IP address information of the address management server corresponding to the domain name information of the address management server; and send the domain name query response to the third terminal.
[0118] As a possible implementation method, the policy control device is configured to send the first offloading policy to the first user plane device.
[0119] As a possible implementation method, the system session management device is configured to acquire, from a policy control device or a unified data management device, IP address information of the address management server corresponding to the home group information; and select the second user plane device according to the IP address information of the address management server.
[0120] As a possible implementation method, the system session management apparatus is configured to select the second user plane apparatus and configure the IP address information of the address management server to the second user plane apparatus.
[0121] The specific implementation operations of the various apparatuses of the communication system shown in FIG. 2(a) and FIG. 2(b) and the beneficial effects brought by the same can be referred to the subsequent description of the method embodiments.
[0122] The first user plane apparatus, the second user plane apparatus, and the third user plane apparatus can be a user plane network element, a module (such as a circuit, a chip, or a chip system, etc.) in the user plane network element, or a logical node, a logical module, or software capable of realizing the functions of the entire or partial user plane network element. For example, the user plane network element can be a user plane function (UPF) network element or other network element with user plane management functions in the 5G network. Figure 3
[0123] The first user plane apparatus and the second user plane apparatus are different apparatuses, the second user plane apparatus and the third user plane apparatus are different apparatuses, and the first user plane apparatus and the third user plane apparatus can be different user plane apparatuses or can be the same user plane apparatus. In the case where the first user plane apparatus and the third user plane apparatus are the same user plane apparatus, the third user plane apparatus in the embodiments of the present application can be replaced by the first user plane apparatus.
[0124] The policy control apparatus can be a policy control network element, a module (such as a circuit, a chip, or a chip system, etc.) in the policy control network element, or a logical node, a logical module, or software capable of realizing the functions of the entire or partial policy control network element. For example, the policy control network element can be a policy control function (PCF) network element or other network element with policy control and management functions in the 5G network. Figure 3
[0125] The session management apparatus can be a session management network element, a module (such as a circuit, a chip, or a chip system, etc.) in the session management network element, or a logical node, a logical module, or software capable of realizing the functions of the entire or partial session management network element. For example, the session management network element can be a session management function (SMF) network element or other network element with session management functions in the 5G network. Figure 3
[0126] Here, the first user plane apparatus, the second user plane apparatus, the third user plane apparatus, the policy control apparatus, and the session management apparatus are collectively described, and will not be described again later.
[0127] Figure 3 This is a schematic diagram of a network architecture based on a service-oriented architecture. Figure 3 The network architecture shown may include access network equipment and core network equipment. Terminals access the data network (DN) through access network equipment and core network equipment. Among them, core network equipment includes, but is not limited to, some or all of the following network elements: PCF network elements, access and mobility management function (AMF) network elements, SMF network elements, and UPF network elements.
[0128] It should be noted that the term "network element" can be omitted in the description of the above network elements (such as SMF network elements, UPF network elements, etc.). For example, an SMF network element can be abbreviated as SMF, a UPF network element as UPF, and so on. Furthermore... Figure 1 This abbreviated description is also used in Chinese.
[0129] Access network equipment, sometimes also called radio access network (RAN) nodes, RAN entities, or access nodes, is used to help terminals achieve wireless access.
[0130] In one possible scenario, the access network device can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next-generation NodeB (gNB), a base station in a future mobile communication system, or an access node in a wireless fidelity (WiFi) system. The access network device can be a macro base station, a micro base station, an indoor station, a relay node, or a donor node. Optionally, the access network device can also be a server, a vehicle, or an in-vehicle device. For example, the access network device in vehicle-to-everything (V2X) technology can be a roadside unit (RSU). All or part of the functions of the access network device in this application embodiment can also be implemented through software functions running on hardware, or through virtualization functions instantiated on a platform (e.g., a cloud platform). The access network device can also be equipped with communication modules, circuits, or chips that perform corresponding communication functions. The access network device can also be configured with program instructions for performing corresponding communication functions and corresponding program instructions. The access network device in this application may also be a logical node, logical module, or software that can implement all or part of the functions of the access network device.
[0131] In another possible scenario, a terminal is assisted by multiple access network devices to implement wireless access, and different access network devices respectively implement part of functions of a base station. For example, an access network device can be a central unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU), etc. The CU and the DU can be separately arranged, or can be included in the same network element, for example, in a baseband unit (BBU). The RU can be included in a radio frequency device or a radio frequency unit, for example, in a remote radio unit (RRU), an active antenna processing unit (AAU), or a remote radio head (RRH).
[0132] In different systems, the CU (or CU-CP and CU-UP), the DU, or the RU can also have different names, but a person skilled in the art can understand their meanings. For example, in an open radio access network (ORAN) system, the CU can also be referred to as an O-CU (open CU), the DU can also be referred to as an O-DU, the CU-CP can also be referred to as an O-CU-CP, the CU-UP can also be referred to as an O-CU-UP, and the RU can also be referred to as an O-RU. For the convenience of description, the CU, the CU-CP, the CU-UP, the DU, and the RU are taken as examples for description in this application. Any one of the CU (or the CU-CP, the CU-UP), the DU, and the RU in this application can be implemented by means of a software module, a hardware module, or a combination of a software module and a hardware module.
[0133] The terminal can also be referred to as a terminal device, user equipment (UE), mobile station, mobile terminal, etc. The terminal can be widely applied to various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), internet of things (IOT), virtual reality, augmented reality, industrial control, automatic driving, remote medical treatment, smart power grid, smart furniture, smart office, smart wear, smart transportation, smart city, etc. The terminal can be a mobile phone, tablet computer, computer with wireless transceiver function, wearable device, vehicle, unmanned aerial vehicle, helicopter, airplane, ship, robot, mechanical arm, smart home device, wireless communication function transport vehicle, communication module, etc. Embodiments of the present application do not limit the device form of the terminal. The terminal is usually provided with a communication module, circuit or chip for executing corresponding communication functions. The terminal is also configured with program instructions for executing corresponding communication functions.
[0134] The access network device and the terminal can be fixed in position or mobile. The access network device and the terminal can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; can also be deployed on the water surface; can also be deployed on aircraft, balloons and artificial satellites in the air. Embodiments of the present application do not limit the application scenarios of the access network device and the terminal.
[0135] The AMF network element contains functions such as performing mobility management, or access authentication / authorization, etc. In addition, it is also responsible for transmitting user policies between the terminal and the PCF network element.
[0136] The SMF network element contains functions such as performing session management, executing control policies issued by the PCF network element, selecting a UPF network element, and allocating an IP address of the terminal, etc.
[0137] The UPF network element contains functions such as completing user plane data forwarding, session / stream level-based charging statistics, bandwidth limitation, etc.
[0138] The PCF network element contains policy control functions such as charging for session, service flow level, quality of service (QoS) bandwidth guarantee and mobility management, terminal policy decision, etc.
[0139] Figure 3Npcf, Namf, Nsmf are service based interfaces (SBI) provided by the above-mentioned PCF network element, AMF network element, and SMF network element, respectively, for invoking corresponding service operations. N1, N2, N3, N4, and N6 are interface serial numbers, and the meanings of these interface serial numbers are as follows:
[0140] 1) N1: the interface between the AMF network element and the terminal, which can be used to deliver non-access stratum (NAS) signaling (such as including QoS rules from the AMF network element) to the terminal, etc.
[0141] 2) N2: the interface between the AMF network element and the access network device, which can be used to deliver wireless bearer control information from the core network side to the access network device, etc.
[0142] 3) N3: the interface between the access network device and the UPF network element, which is mainly used to deliver uplink and downlink user plane data between the access network device and the UPF network element.
[0143] 4) N4: the interface between the SMF network element and the UPF network element, which can be used to deliver information between the control plane and the user plane, including the delivery of forwarding rules, QoS rules, and traffic statistics rules from the control plane to the user plane, and the information reporting of the user plane.
[0144] Figure 3 Each NF network element in the architecture shown is connected through a service bus and interacts through a service interface. The service bus has the advantages of improving the flexibility, openness, scalability, and intelligence of the network, and can support diversified business scenarios and needs. The service bus can be used to transmit various types of data and signaling, such as real-time signaling (for example, service interface invocation signaling between functional network elements) sensitive to latency, real-time data sensitive to latency, and non-real-time data. Moreover, when the service bus transmits these data or signaling, the data or signaling are coupled together, that is, the service bus can be used to transmit real-time signaling, real-time data, and non-real-time data at the same time.
[0145] It can be understood that the above-mentioned network elements or functions can be network elements in a hardware device, or software functions running on a dedicated hardware, or virtualized functions instantiated on a platform (for example, a cloud platform). Optionally, the above-mentioned network elements or functions can be implemented by one device, or can be implemented by multiple devices together, or can be a functional module in a device, and the embodiments of the present application do not make specific limitations thereto.
[0146] To realize low-latency and high-reliability data transmission between different terminals, the application provides corresponding solutions.
[0147] The communication method and the communication system provided by the application will be described below in combination with the drawings. It can be understood that in the embodiments of the application, the execution subject of interaction is at least two of the first user plane device, the second user plane device, the third user plane device, the policy control device, and the session management device. The meanings of the first user plane device, the second user plane device, the third user plane device, the policy control device, and the session management device can be referred to the previous description.
[0148] In the embodiments of the application, the private IP address information is also referred to as the internal network IP address information. The private IP address information includes a private IP and a private port. For example, the first private IP address information includes a first private IP and a first private port, the second private IP address information includes a second private IP and a second private port, and so on.
[0149] In the embodiments of the application, the public IP address information is also referred to as the external network IP address information. The public IP address information includes a public IP and a public port. For example, the public IP address information includes a public IP and a public port, and so on.
[0150] Figure 4 A flowchart of a communication method provided by an embodiment of the application is shown in FIG. 3. The first user plane device, the second user plane device, the third user plane device, the policy control device, and the session management device in this embodiment can be the first user plane device, the second user plane device, the third user plane device, the policy control device, and the session management device in FIG. 2(a).
[0151] The method Figure 4 In the method embodiment, the first terminal and the second terminal are both terminals of 3GPP.
[0152] The method includes the following steps:
[0153] Step 401, the first terminal sends a first service packet to the first user plane device serving the first terminal. Correspondingly, the first user plane device receives the first service packet.
[0154] That is, the first terminal sends the first service packet to the first user plane device through the access network device.
[0155] The first service packet includes the first private IP address information of the first terminal, the public IP address information of the second terminal, and service data.
[0156] The first private IP address information of the first terminal is source IP address information. The first private IP address information of the first terminal is allocated by the first user plane device for the first terminal.
[0157] The public IP address information of the second terminal is destination IP address information. The public IP address information of the second terminal is allocated by an address management server for the second terminal, and the address management server is deployed on a user plane network element corresponding to the second user plane device. When the second user plane device is a user plane network element, the user plane network element corresponding to the second user plane device is the second user plane device. When the second user plane device is a module (such as a circuit, a chip, or a chip system, etc.) in a user plane network element, or a logical node, a logical module, or software capable of implementing all or part of the functions of a user plane network element, etc., the user plane network element corresponding to the second user plane device refers to a user plane network element containing the second user plane device.
[0158] In the embodiments of the present application, the address management server can be a STUN server or other servers with address management functions or address allocation functions. Here, it is uniformly described, and will not be described again later.
[0159] As an implementation method, the first service packet includes a packet header and a packet body, the packet header includes source IP address information and destination IP address information, and the packet body includes the service data. The source IP address information is the first private IP address information of the first terminal, and the destination IP address information is the public IP address information of the second terminal.
[0160] In step 402, the first user plane device sends a first service packet to the second user plane device according to a first distribution strategy. Correspondingly, the second user plane network element receives the first service packet.
[0161] The first distribution strategy includes home group information and public IP address segment information. The public IP address segment information can be a public IP address segment, or can be indication information (such as an identifier of the public IP address segment) used to indicate the public IP address segment.
[0162] The public IP address segment is composed of a plurality of public IP addresses, and the public IP address segment includes the IP address in the public IP address information of the second terminal.
[0163] The home group indicated by the home group information includes the first terminal and the second terminal. Optionally, the home group also includes other terminals, such as a third terminal, a fourth terminal, etc.
[0164] The home group information corresponds to the second user plane device. That is, the home group information and the second user plane device have a mapping relationship, wherein the home group information and the second user plane device can be a one-to-one correspondence, or a plurality of home group information can correspond to the second user plane device.
[0165] For example, the home group information can be an identifier of the home group.
[0166] The first user plane device receives the first service packet, obtains the destination IP address information (i.e. the public IP address information of the second terminal), and determines that the IP address in the public IP address information of the second terminal is included in the public IP address segment indicated by the public IP address segment information in the first split strategy. Then, the first service packet is sent to the second user plane device corresponding to the home group information in the first split strategy.
[0167] For example, the first split strategy can be sent by the policy control device to the first user plane device. Meanwhile, the policy control device can also send the first split strategy to the user plane device serving the terminals in the home group except the first terminal, for example, the policy control device sends the first split strategy to the third user plane device serving the second terminal.
[0168] In step 403, the second user plane device sends the second service packet to the third user plane device serving the second terminal. Correspondingly, the third user plane device receives the second service packet.
[0169] The second service packet includes the public IP address information of the first terminal, the first private IP address information of the second terminal, and service data. The service data is the same as the service data in the first service packet.
[0170] The public IP address information of the first terminal is the source IP address information. The public IP address information of the first terminal is allocated by the address management server for the first terminal.
[0171] The first private IP address information of the second terminal is the destination IP address information. The first private IP address information of the second terminal is allocated by the third user plane device for the second terminal.
[0172] As an implementation method, the second service packet includes a packet header and a packet body. The packet header includes the source IP address information and the destination IP address information, and the packet body includes the service data. The source IP address information is the public IP address information of the first terminal, and the destination IP address information is the first private IP address information of the second terminal.
[0173] As an implementation method, the second user plane device generates the second service packet according to the first service packet in the following process: the second user plane device generates a third service packet according to the first service packet, the third service packet comprising the second private network IP address information of the first terminal, the public network IP address information of the second terminal and the service data. It can also be understood that the second user plane device replaces the source IP address information in the first service packet from the first private network IP address information of the first terminal to the second private network IP address information of the first terminal to obtain the third service packet. The second private network IP address information of the first terminal is allocated to the first terminal by the second user plane device. Then, the second user plane device generates a fourth service packet according to the third service packet, the fourth service packet comprising the public network IP address information of the first terminal, the second private network IP address information of the second terminal and the service data. It can also be understood that the second user plane device replaces the source IP address information in the third service packet from the second private network IP address information of the first terminal to the public network IP address information of the first terminal, and replaces the destination IP address information in the third service packet from the public network IP address information of the second terminal to the second private network IP address information of the second terminal. The second private network IP address information of the second terminal is allocated to the second terminal by the third user plane device. Finally, the second user plane device generates the second service packet according to the fourth service packet. It can also be understood that the second user plane device replaces the destination IP address information in the fourth service packet from the second private network IP address information of the second terminal to the first private network IP address information of the second terminal to obtain the second service packet. Based on this method, when the service packet is forwarded between the first user plane device, the second user plane device and the third user plane device, the source IP address information and / or the destination IP address information is replaced, which helps to correctly identify the source IP address information and / or the destination IP address information of the service packet, thereby helping to correctly transmit the service packet.
[0174] At step 404, the third user plane device sends the second service packet to the second terminal.
[0175] That is, the third user plane device sends the second service packet to the second terminal through the access network device.
[0176] Based on the above scheme, the first terminal sends a service packet to the second terminal. First, the first terminal sends the service packet to the first user plane device serving the first terminal. Then, the first user plane device distributes the service packet to the second user plane device based on the first split strategy. Then, the second user plane device distributes the service packet to the third user plane device serving the second terminal. Finally, the third user plane device sends the service packet to the second terminal. Since the service packet sent by the first terminal to the second terminal is forwarded through the first user plane device, the second user plane device and the third user plane device in the core network, it does not bypass the public network (such as a network address translation router in the public network), so the service packet sent by the first terminal to the second terminal is forwarded in the private network without passing through the public network. The service packet forwarding delay is low and safe and reliable, thereby realizing low-delay and high-reliability data transmission between the first terminal and the second terminal.
[0177] The transmission process of the service packet in the above scheme will be described below in conjunction with a specific example.
[0178] Figure 5 An example diagram of the transmission process of the service packet provided by the embodiments of the present application is provided. In this example, the large network UPF1 is a specific example of the first user plane device, the private network UPF is a specific example of the second user plane device, the large network UPF2 is a specific example of the third user plane device, and the STUN server is a specific example of the address management server, which is deployed on the private network UPF. Among them, "large network" and "private network" are relative concepts. The private network refers to a network serving specific users, for example, a network in a park is a private network, or a network in a family is a private network. The large network does not limit the users it serves, that is, the large network can serve any user.
[0179] In this example, the large network UPF1 serves the first terminal, which is a 3GPP terminal (such as a mobile phone). The large network UPF1 allocates the first private network IP address information of the first terminal to the first terminal, Figure 5 where IP1 represents the first private network IP address information of the first terminal. The private network UPF allocates the second private network IP address information of the first terminal to the first terminal, Figure 5 where IP2 represents the second private network IP address information of the first terminal. The STUN server allocates the public network IP address information of the first terminal to the first terminal, Figure 5 where IP3 represents the public network IP address information of the first terminal.
[0180] In this example, the large network UPF2 serves the second terminal, which is a 3GPP terminal (such as a mobile phone). The large network UPF2 allocates the first private network IP address information of the second terminal to the second terminal, Figure 5The first private network IP address information of the second terminal is represented by IP4. The private network UPF allocates the second private network IP address information of the second terminal to the second terminal, Figure 5 The second private network IP address information of the second terminal is represented by IP5. The STUN server allocates the public network IP address information of the second terminal to the second terminal, Figure 5 The public network IP address information of the second terminal is represented by IP6.
[0181] When the first terminal needs to send service data to the second terminal, the first terminal can send a first service message to the public network UPF1 through the access network device, the first service message including IP1, IP6 and service data, wherein IP1 is source IP address information and IP6 is destination IP address information. The public network UPF1 distributes the first service message to the private network UPF according to the first distribution strategy. The private network UPF replaces IP1 in the first service message with IP2 to obtain a third service message, the third service message including IP2, IP6 and service data, wherein IP2 is source IP address information and IP6 is destination IP address information. Then, the private network UPF replaces IP2 in the third service message with IP3 and replaces IP6 with IP5 to obtain a fourth service message, the fourth service message including IP3, IP5 and service data, wherein IP3 is source IP address information and IP5 is destination IP address information. This step realizes the conversion of an uplink service message (i.e. the first service message) into a downlink service message (i.e. the fourth service message). Then, the private network UPF replaces IP5 in the fourth service message with IP4 to obtain a second service message, the second service message including IP3, IP4 and service data, wherein IP3 is source IP address information and IP4 is destination IP address information. The private network UPF sends the second service message to the public network UPF2, and the public network UPF2 sends the second service message to the second terminal through the access network device. The second terminal determines that the service data in the second service message comes from the first terminal based on IP3.
[0182] As an implementation method, the session management device obtains the IP address information of the address management server corresponding to the home group information from the policy control device or the unified data management device, and then the session management device selects the second user plane device according to the IP address information of the address management server. The unified data management device can be a unified data management (UDM) network element or a module (such as a circuit, a chip or a chip system, etc.) in the UDM network element, or a logical node, a logical module or software capable of realizing all or part of the functions of the policy control network element. Based on this method, the selected second user plane device is associated with the address management server, which is helpful for correct communication between the second user plane device and the address management server.
[0183] As another implementation method, the session management apparatus can also select the second user plane apparatus first, and then configure the IP address information of the address management server to the second user plane apparatus. Based on this method, the IP address information of the address management server is configured to the second user plane apparatus after the second user plane apparatus is selected, so as to associate the second user plane apparatus with the address management server, which is helpful for the correct communication between the second user plane apparatus and the address management server.
[0184] The process that the first terminal obtains the public IP address information of the second terminal will be introduced below. Figure 6
[0185] Figure 6 The communication method shown in the figure is executed before the method shown in the figure, and the method comprises the following steps: Figure 4
[0186] Step 601, the second terminal sends a first binding request to the third user plane apparatus. Correspondingly, the third user plane apparatus receives the first binding request.
[0187] That is, the second terminal sends the first binding request to the third user plane apparatus through the access network device.
[0188] The first binding request comprises the first private IP address information of the second terminal and the IP address information of the address management server. The first binding request is used to request the allocation of the public IP address information to the second terminal. The first private IP address information of the second terminal is the source IP address information, and the IP address information of the address management server is the destination IP address information.
[0189] Step 602, the third user plane apparatus sends the first binding request to the second user plane apparatus. Correspondingly, the second user plane apparatus receives the first binding request.
[0190] As an implementation method, the third user plane device can send the first binding request to the second user plane device according to a second split strategy, and the second split strategy includes IP address information of the address management server. The second split strategy has a corresponding relationship with the second user plane device, for example, the session management device selects the second user plane device based on the second split strategy, or the second split strategy further includes home group information corresponding to the second user plane device. The third user plane device receives the first binding request, obtains the destination IP address information (i.e. the address information of the address management server) in the first binding request, and determines that the address information of the address management server is included in the second split strategy. Then, the third user plane device forwards the first binding request to the second user plane device corresponding to the second split strategy. The second split strategy can be sent by the policy control device to the third user plane device. Based on the method, the third user plane device can forward the received first binding request to the second user plane device based on the second split strategy, so as to realize correct forwarding of the first binding request.
[0191] In step 603, the second user plane device sends a second binding request to the address management server. Correspondingly, the address management server receives the second binding request.
[0192] The second binding request includes second private network IP address information of the second terminal and IP address information of the address management server. The second binding request is used to request allocation of public network IP address information for the second terminal.
[0193] The second private network IP address information of the second terminal is source IP address information, and the IP address information of the address management server is destination IP address information.
[0194] As an implementation method, step 603 can be specifically: the second user plane device detects the first binding request according to a deep packet detection strategy, determines that the first binding request is a first protocol packet (for example, a STUN protocol packet), generates a second binding request according to the first binding request, and sends the second binding request to the address management server. Based on the method, the second user plane device judges whether to send a binding request to the address management server based on the deep packet detection strategy, which helps correct forwarding of the binding request.
[0195] For example, the deep packet detection strategy on the second user plane device can come from a policy control network element, or from a session management device, or be pre-configured on the second user plane device.
[0196] In step 604, the second user plane device allocates an IP address in the public network IP address information of the second terminal according to the first split strategy.
[0197] Specifically, the second user plane network element selects one public network IP address from the public network IP address segment indicated by the public network IP address segment information in the first offloading strategy as the IP address in the public network IP address information of the second terminal.
[0198] In step 605, the second user plane device sends the IP address in the public network IP address information of the second terminal to the address management server. Correspondingly, the address management server receives the IP address in the public network IP address information of the second terminal.
[0199] It should be noted that the above step 603 can be executed before step 604, after step 605, or between step 604 and step 605, which is not limited in the present application.
[0200] In step 606, the address management server determines the public network IP address information of the second terminal according to the IP address in the public network IP address information of the second terminal.
[0201] The public network IP address information of the second terminal includes the public network IP address of the second terminal and the public network port of the second terminal. The public network IP address of the second terminal is from the second user plane network element, and the public network port of the second terminal is allocated by the address management server.
[0202] As another alternative implementation method, the second user plane network element can also send the public network IP address segment information in the first offloading strategy to the address management server, select one public network IP address from the public network IP address segment indicated by the public network IP address segment information, and then allocate a public network port, so as to obtain the public network IP address information of the second terminal, which includes the public network IP address and the public network port allocated by the address management server for the second terminal.
[0203] In step 607, the address management server sends the first binding response to the second user plane device. Correspondingly, the second user plane device receives the first binding response.
[0204] The first binding response includes a first message header and a message body. The first message header includes the IP address information of the address management server and the second private network IP address information of the second terminal, and the message body includes the public network IP address information of the second terminal. The public network IP address information of the second terminal is allocated by the STUN server for the second terminal.
[0205] In step 608, the second user plane device sends the second binding response to the third user plane device. Correspondingly, the third user plane device receives the second binding response.
[0206] The second binding response includes a second packet header and the packet body. The second packet header includes IP address information of the address management server and the first private network IP address information of the second terminal. The IP address information of the address management server is the source IP address information, and the first private network IP address information of the second terminal is the destination IP address information. That is, the second user plane device replaces the second private network IP address information of the second terminal in the first binding response with the first private network IP address information of the second terminal, obtains the second binding response, and sends the second binding response to the third user plane device.
[0207] At step 609, the third user plane device sends the second binding response to the second terminal. Accordingly, the second terminal receives the second binding response.
[0208] That is, the third user plane device sends the second binding response to the second terminal through the access network device.
[0209] The second terminal obtains the public network IP address information of the second terminal from the packet body of the second binding response.
[0210] At step 610, the second terminal sends the public network IP address information of the second terminal to the first terminal through the application controller.
[0211] That is, the second terminal sends the public network IP address information of the second terminal to the application controller, and then the application controller sends the public network IP address information of the second terminal to the first terminal. Subsequently, the first terminal can send service data to the second terminal based on the public network IP address information of the second terminal, thereby realizing correct transmission of the service data.
[0212] For example, the application controller can be a play station (PS) cloud device or the like.
[0213] It should be noted that if the first terminal, the second terminal, and the other at least one terminal constitute a home group, after the second terminal sends the public network IP address information of the second terminal to the application controller, the application controller can send the public network IP address information of the second terminal to the other terminals (including the first terminal) in the home group except the second terminal, so that the other terminals in the home group except the second terminal can send service data to the second terminal based on the public network IP address information of the second terminal.
[0214] Similarly, the other terminals in the home group except the second terminal can also obtain the public IP address information allocated by the address management server according to the process similar to steps 601-610, and then send their own public IP address information to the other terminals in the home group through the application controller. For example, the first terminal obtains the public IP address information of the first terminal allocated by the address management server according to the process similar to steps 601-610, and then sends the public IP address information of the first terminal to the application controller, and the application controller sends the public IP address information of the first terminal to the other terminals in the home group except the first terminal (including the second terminal). The other terminals in the home group except the first terminal can send service data to the first terminal based on the public IP address information of the first terminal, so as to realize correct transmission of service data.
[0215] The process in which the first terminal obtains the public IP address information of the first terminal will be described below in conjunction with an example of Figure 7 . In the example, the first terminal, the public network UPF1, the private network UPF, and the STUN server in Figure 7 are the first terminal, the public network UPF1, the private network UPF, and the STUN server in Figure 5 . IP1 represents the first private IP address information of the first terminal allocated by the public network UPF1 for the first terminal, IP2 represents the second private IP address information of the first terminal allocated by the private network UPF for the first terminal, IP3 represents the public IP address information of the first terminal allocated by the STUN server for the first terminal, and server IP represents the IP address information of the STUN server.
[0216] The first terminal sends a first binding request to the public network UPF1, and the first binding request includes IP1 and server IP. The public network UPF1 sends the first binding request to the private network UPF. The private network UPF sends a second binding request to the STUN server based on the first binding request, and the second binding request includes IP2 and server IP. The STUN server allocates IP3 for the first terminal, and sends a first binding response to the private network UPF, and the first binding response includes server IP, IP2, and IP3. The private network UPF sends a second binding response to the public network UPF1, and the second binding response includes server IP, IP1, and IP3. The public network UPF1 sends the second binding response to the first terminal. The first terminal obtains IP3 from the second binding response.
[0217] The process in which the second terminal obtains the public IP address information of the second terminal will be described below in conjunction with an example of Figure 8 . In the example, the first terminal, the public network UPF1, the private network UPF, and the STUN server in Figure 8The second terminal in the home group, the large network UPF 2, the private network UPF, and the STUN server are as shown in Figure 5 The second terminal in the home group, the large network UPF 2, the private network UPF, and the STUN server are as shown in
[0218] The second terminal sends a first binding request to the large network UPF 2, and the first binding request includes IP4 and server IP. The large network UPF 2 sends the first binding request to the private network UPF. The private network UPF sends a second binding request to the STUN server, and the second binding request includes IP5 and server IP. The STUN server allocates IP6 to the second terminal, and sends a first binding response to the private network UPF, and the first binding response includes server IP, IP5, and IP6. The private network UPF sends a second binding response to the large network UPF 2, and the second binding response includes server IP, IP4, and IP6. The large network UPF 2 sends the second binding response to the second terminal. The second terminal obtains IP6 from the second binding response.
[0219] As an implementation method, the IP address information of the address management server (for example, the STUN server) can be pre-configured on the terminal in the home group.
[0220] As another implementation method, the terminal in the home group can query the IP address information of the address management server based on the obtained domain name information of the address management server.
[0221] The process in which the second terminal in the home group queries the IP address information of the address management server based on the obtained domain name information of the address management server will be described below in combination with Figure 9 The process in which the other terminals (for example, the first terminal) in the home group query the IP address information of the address management server based on the obtained domain name information of the address management server is similar, and will not be described in detail.
[0222] Figure 9 The communication method shown in Figure 6 The method shown in
[0223] In step 901, the second terminal sends a domain name query request to the third user plane device. Correspondingly, the third user plane device receives the domain name query request.
[0224] The domain name query request includes domain name information of the address management server.
[0225] At step 902, the third user plane device sends a domain name query request to the second user plane device according to a third offloading policy. Correspondingly, the second user plane device receives the domain name query request.
[0226] The third offloading policy includes domain name information of the address management server.
[0227] The third offloading policy has a corresponding relationship with the second user plane device, for example, the session management device selects the second user plane device based on the third offloading policy, or the third offloading policy further includes home group information corresponding to the second user plane device. When the third user plane device receives the domain name query request, obtains the domain name information of the address management server in the domain name query request, and determines that the address information of the address management server is included in the third offloading policy, the third user plane device forwards the domain name query request to the second user plane device corresponding to the third offloading policy. The third offloading policy can be sent by the policy control device to the third user plane device. Based on the method, the third user plane device can forward the received domain name query request to the second user plane device based on the third offloading policy, so as to realize correct forwarding of the domain name query request.
[0228] At step 903, the second user plane device sends a domain name query request to the domain name system server. Correspondingly, the domain name system server receives the domain name query request.
[0229] At step 904, the domain name system server sends a domain name query response to the second user plane device. Correspondingly, the second user plane device receives the domain name query response.
[0230] The domain name query response includes IP address information of the address management server corresponding to the domain name information of the address management server.
[0231] At step 905, the second user plane device sends a domain name query response to the third user plane device. Correspondingly, the third user plane device receives the domain name query response.
[0232] At step 906, the third user plane device sends a domain name query response to the second terminal. Correspondingly, the second terminal receives the domain name query response.
[0233] The second terminal can obtain the IP address information of the address management server from the domain name query response.
[0234] Based on the above scheme, the second terminal can query the IP address information of the corresponding address management server based on the domain name information of the address management server, so that the second terminal can request the address management server to allocate public network IP address information for the second terminal based on the IP address information of the address management server in the subsequent process.
[0235] The following describes a specific embodiment of the method embodiment based on the above Figure 10 , the above Figure 4 , Figure 6 and Figure 9 .
[0236] Figure 10 A flowchart of a communication method provided by an embodiment of the present application is shown in FIG. 10. In the method, terminal 1 and terminal 2 are specific examples of the first terminal and the second terminal in the foregoing embodiments, respectively. Terminal 1 and terminal 2 belong to the same home group, and terminal 1 and terminal 2 are both subscribed to a home service (or a dual-domain service, i.e., a home service and other normal services other than the home service). Terminal 1 has two sessions at the network side, for example, session 1 and session 2, where the anchor point of session 1 is a large network UPF, and the anchor point of session 2 is a private network UPF (also referred to as a home service anchor point). Terminal 2 has two sessions at the network side, for example, session 3 and session 4, where the anchor point of session 3 is a large network UPF, and the anchor point of session 4 is a private network UPF (also referred to as a home service anchor point).
[0237] In this example, the large network UPF serving terminal 1 and the large network UPF serving terminal 2 are the same UPF.
[0238] In this example, the SMF, the PCF, and the STUN server are specific examples of the session management apparatus, the policy control apparatus, and the address management server in the foregoing embodiments, respectively.
[0239] In this example, terminal 1 and terminal 2 are both 3GPP terminals.
[0240] The method includes the following steps.
[0241] In step 1001, terminal 1 sends a protocol data unit (PDU) session creation request to an AMF. Correspondingly, the AMF receives the PDU session creation request.
[0242] The PDU session creation request includes an identifier of terminal 1, and the PDU session creation request is used to request creation of a PDU session of terminal 1.
[0243] The identifier of the terminal 1 may be, for example, an international mobile subscriber identity (IMSI) or a mobile station international ISDN number (MSISDN). The ISDN refers to an integrated services digital network (ISDN).
[0244] At step 1002, the AMF selects an SMF.
[0245] At step 1003, the SMF obtains general subscription information of the terminal 1 from a unified data management (UDM).
[0246] The general subscription information includes general DNN and general slice information.
[0247] The general subscription information is also referred to as a general network subscription information.
[0248] At step 1004, the SMF sends a request message to a PCF. Correspondingly, the PCF receives the request message.
[0249] The request message is used to request a subscription policy of the terminal 1.
[0250] At step 1005, the PCF sends a STUN split policy to the SMF. Correspondingly, the SMF receives the STUN split policy.
[0251] The STUN split policy includes public IP address segment information, a domain name of a STUN server, and IP address information of the STUN server. The IP address information includes an IP address and a port number. The STUN server is built in a private network UPF.
[0252] Exemplarily, the STUN split policy further includes home group information, and the home group indicated by the home group information includes the terminal 1 and the terminal 2, and optionally includes one or more other terminals.
[0253] It can also be understood that the STUN split policy includes the first split policy, the second split policy, and the third split policy in the foregoing method embodiments.
[0254] It should be noted that if the public IP address segment information is preconfigured in the SMF or the general network UPF, the STUN split policy may not include the public IP address segment information.
[0255] At step 1006, the SMF sends a packet forwarding control protocol (PFCP) session creation request to the big-net UPF. Accordingly, the big-net UPF receives the PFCP session creation request.
[0256] The PFCP session creation request includes the STUN offload policy and the generic subscription information of the terminal 1.
[0257] The big-net UPF creates the session 1 of the terminal 1 based on the generic subscription information of the terminal 1.
[0258] At step 1007, the big-net UPF sends a PFCP session creation response to the SMF. Accordingly, the SMF receives the PFCP session creation response.
[0259] The PFCP session creation response indicates that the PFCP session creation is successful.
[0260] At step 1008, the SMF obtains the private subscription information of the terminal 1 from the UDM.
[0261] The private subscription information includes a private DNN, private slice information, and home group information to which the terminal 1 subscribes. The home group information includes an identifier of a home group. The home group includes a plurality of terminals, including the terminal 1 and a terminal 2. Optionally, the home group includes other terminals.
[0262] The private subscription information is also referred to as private-network subscription information or special-network subscription information.
[0263] At step 1009, the SMF selects an SMF for activating a session corresponding to the private DNN.
[0264] The embodiments of the present application take the SMF selecting itself as the SMF for activating the session corresponding to the private DNN as an example for illustration. If the SMF selects another SMF as the SMF for activating the session corresponding to the private DNN, the SMF in the subsequent steps is replaced by the other SMF.
[0265] For example, the SMF selects the SMF for activating the session corresponding to the private DNN according to the private subscription information of the terminal 1.
[0266] At step 1010, the SMF sends a request message to the UDM. Accordingly, the UDM receives the request message.
[0267] The request message is used to obtain the private subscription information of the terminal 1.
[0268] The private subscription information is also referred to as private-network subscription information or special-network subscription information.
[0269] At step 1011, the UDM sends a response message to the SMF. Accordingly, the SMF receives the response message.
[0270] The response message includes the dedicated subscription information of the terminal 1, and the dedicated subscription information includes the dedicated DNN, the dedicated slice information, and the home group information to which the terminal 1 subscribes. The home group information includes an identifier of the home group.
[0271] It should be noted that the dedicated subscription information of the terminal 1 obtained at the step 1011 can be the same as the dedicated subscription information of the terminal 1 obtained by the SMF at the step 1008, or can further include other contents on the basis of the contents included in the dedicated subscription information of the terminal 1 at the step 1008.
[0272] At step 1012, the SMF obtains the STUN deep packet inspection policy from the PCF.
[0273] The STUN deep packet inspection policy is used to detect the data packets of the service flow. The STUN deep packet inspection policy is a specific example of the deep packet inspection policy in the foregoing method embodiment.
[0274] Optionally, in this step, the SMF further obtains the IP address information of the STUN server built in the private network UPF from the PCF.
[0275] The step 1012 is an optional step.
[0276] At step 1013, the SMF selects the private network UPF and sends a PFCP session establishment request to the private network UPF. Accordingly, the private network UPF receives the PFCP session establishment request.
[0277] Illustratively, the SMF selects the private network UPF according to the dedicated subscription information of the terminal 1, and further sends the public IP address segment information in the STUN split strategy to the private network UPF. Optionally, the SMF further configures the IP address information of the STUN server to the private network UPF. The SMF can obtain the IP address information of the STUN server from the PCF or obtain the IP address information of the STUN server from the local configuration.
[0278] Illustratively, the SMF selects the private network UPF according to the dedicated subscription information of the terminal 1 and the STUN split strategy. For example, the SMF selects the private network UPF corresponding to the IP address information of the STUN server described above, and further sends the public IP address segment information in the STUN split strategy to the private network UPF.
[0279] The PFCP session establishment request includes the private subscription information of the terminal 1. Optionally, the PFCP session establishment request further includes one or more of the STUN deep packet inspection policy, the IP address information of the STUN server, or the public network IP address segment information.
[0280] The private network UPF creates the session 2 of the terminal 1 according to the private DNN and the private slice information, and associates the information of the session 2 with the home group information.
[0281] As an implementation method, the SMF can obtain the STUN deep packet inspection policy through step 1012, and send the PFCP session establishment request to the private network UPF, wherein the STUN deep packet inspection policy is carried in the PFCP session establishment request.
[0282] As another implementation method, the STUN deep packet inspection policy is pre-configured on the SMF, and the SMF obtains the STUN deep packet inspection policy from the local configuration, and sends the PFCP session establishment request to the private network UPF, wherein the STUN deep packet inspection policy is carried in the PFCP session establishment request. In this case, the above step 1012 can not be performed.
[0283] As another implementation method, the STUN deep packet inspection policy is pre-configured on the private network UPF. In this case, the above step 1012 can not be performed, and the PFCP session establishment request can not include the STUN deep packet inspection policy.
[0284] Step 1014, the private network UPF sends a PFCP session establishment response to the SMF.
[0285] After the above step 1014, the private network UPF and the public network UPF further perform N9 tunnel information synchronization between the session 1 and the session 2. Moreover, the public network UPF further sends the STUN splitting policy to the terminal 1.
[0286] Step 1015, configuration of other terminals (for example, terminal 2) in the home group except the terminal 1.
[0287] Specifically, other terminals (for example, terminal 2) in the home group except the terminal 1 also complete the corresponding session establishment (for example, establishing the session 3 and the session 4 for the terminal 2), the policy configuration process and the subscription process of the STUN service detection information according to the above steps 1001~1014.
[0288] It should be noted that different terminals in the same family group can share one private network UPF or correspond to different private network UPFs respectively, can share one public network UPF or correspond to different public network UPFs respectively, and the public network UPF and the private network UPF can be different entity devices deployed independently or different logical units deployed in the same entity device. For the convenience of description, the application takes the example of different terminals (for example, terminal 1 and terminal 2) in the same family group sharing one private network UPF and sharing one public network UPF for description.
[0289] Step 1016, the terminal 1 sends a domain name query request to the public network UPF. Correspondingly, the public network UPF receives the domain name query request.
[0290] The domain name query request includes the domain name information of the STUN server.
[0291] Step 1017, the public network UPF sends the domain name query request to the private network UPF according to the STUN splitting policy. Correspondingly, the private network UPF receives the domain name query request.
[0292] That is, the public network UPF determines that the domain name information of the STUN server in the domain name query request is contained in the STUN splitting policy, and then sends the domain name query request to the private network UPF.
[0293] The domain name query request includes the domain name information of the STUN server.
[0294] Step 1018, the private network UPF sends a domain name query request to the DNS server. Correspondingly, the DNS server receives the domain name query request.
[0295] The domain name query request includes the domain name information of the STUN server.
[0296] Step 1019, the DNS server sends a domain name query response to the private network UPF. Correspondingly, the private network UPF receives the domain name query response.
[0297] The domain name query response includes the IP address information of the STUN server corresponding to the domain name of the STUN server.
[0298] Step 1020, the private network UPF sends a domain name query response to the public network UPF. Correspondingly, the public network UPF receives the domain name query response.
[0299] The domain name query response includes the IP address information of the STUN server.
[0300] Step 1021, the public network UPF sends a domain name query response to the terminal 1. Correspondingly, the terminal 1 receives the domain name query response.
[0301] The domain name query response includes IP address information of the STUN server.
[0302] At step 1022, the terminal 1 sends a STUN binding request to the big-net UPF. Accordingly, the big-net UPF receives the STUN binding request.
[0303] The STUN binding request includes IP address information 1 of the terminal 1 and IP address information of the STUN server. The IP address information 1 of the terminal 1 includes IP address 1 and port 1 of the terminal 1. The IP address information 1 of the terminal 1 is allocated by the big-net UPF for the terminal 1.
[0304] The IP address information 1 of the terminal 1 in the STUN binding request is source IP address information, and the IP address information of the STUN server is destination IP address information.
[0305] At step 1023, the big-net UPF sends the STUN binding request to the private-net UPF. Accordingly, the private-net UPF receives the STUN binding request.
[0306] The STUN binding request includes IP address information 1 of the terminal 1 and IP address information of the STUN server.
[0307] At step 1024, the private-net UPF sends the STUN binding request to the STUN server. Accordingly, the STUN server receives the STUN binding request.
[0308] Specifically, the private-net UPF identifies, according to the STUN deep packet detection policy, that the STUN binding request is a STUN packet, and then forwards the STUN binding request to the STUN server.
[0309] The STUN binding request includes IP address information 2 of the terminal 1 and IP address information of the STUN server. The IP address information 2 of the terminal 1 in the STUN binding request is source IP address information, and the IP address information of the STUN server is destination IP address information.
[0310] That is, the private-net UPF replaces the IP address information 1 of the terminal 1 in the packet header of the received STUN binding request with the IP address information 2 of the terminal 1.
[0311] The IP address information 2 of the terminal 1 includes IP address 2 and port 2 of the terminal 1. The IP address information 2 of the terminal 1 is allocated by the private-net UPF for the terminal 1.
[0312] The IP address information 1 of the terminal 1 and the IP address information 2 of the terminal 1 are both private IP address information.
[0313] The STUN server sends a STUN binding response to the private network UPF. Accordingly, the private network UPF receives the STUN binding response.
[0314] The STUN server receives the STUN binding request, which includes the IP address information 2 of the terminal 1 and the IP address information of the STUN server, allocates IP address information 3 for the terminal 1, and sends a STUN binding response to the private network UPF. The STUN binding response includes a message header and a message body. The message header includes the IP address information of the STUN server and the IP address information 2 of the terminal 1, and the message body includes the IP address information 3 of the terminal 1. The IP address information 3 of the terminal 1 includes the IP address 3 and the port 3 of the terminal 1.
[0315] The IP address information of the STUN server in the message header is source IP address information, and the IP address information 2 of the terminal 1 in the message header is destination IP address information.
[0316] The private network UPF sends the STUN binding response to the public network UPF. Accordingly, the public network UPF receives the STUN binding response.
[0317] The STUN binding response includes a message header and a message body. The message header includes the IP address information of the STUN server and the IP address information 1 of the terminal 1, and the message body includes the IP address information 3 of the terminal 1. That is, the private network UPF replaces the IP address information 2 of the terminal 1 in the message header of the received STUN binding response with the IP address information 1 of the terminal 1.
[0318] The public network UPF sends the STUN binding response to the terminal 1. Accordingly, the terminal 1 receives the STUN binding response.
[0319] The STUN binding response includes a message header and a message body. The message header includes the IP address information of the STUN server and the IP address information 1 of the terminal 1, and the message body includes the IP address information 3 of the terminal 1.
[0320] After the terminal 1 obtains the IP address information 3 of the terminal 1, the terminal 1 can provide the IP address information 3 of the terminal 1 to other terminals (e.g., terminal 2) in the home group except the terminal 1 through the PS cloud device, so that the other terminals in the home group except the terminal 1 can send service messages to the terminal 1 based on the IP address information 3 of the terminal 1.
[0321] For other terminals (e.g., terminal 2) in the home group except the terminal 1, obtain the public network IP address information of the other terminal.
[0322] Specifically, for the other terminal (e.g., terminal 2) in the home group except for the terminal 1, the public network IP address information of the other terminal is also acquired according to the above steps 1016 to 1027.
[0323] Taking the terminal 2 in the home group as an example, the terminal 2 sends a STUN binding request to the public network UPF, the STUN binding request including the IP address information 4 of the terminal 2 allocated by the public network UPF for the terminal 2 and the IP address information of the STUN server. The public network UPF sends the STUN binding request to the private network UPF, the private network UPF replaces the IP address information 4 of the terminal 2 with the IP address information 5 of the terminal 2 allocated by the private network UPF for the terminal 2 and sends the STUN binding request to the STUN server, the STUN binding request including the IP address information 5 of the terminal 2 and the IP address information of the STUN server. The STUN server allocates the IP address information 6 of the terminal 2 for the terminal 2 and sends a STUN binding response to the private network UPF, the STUN binding response including a message header and a message body, the message header including the IP address information of the STUN server and the IP address information 5 of the terminal 2, and the message body including the IP address information 6 of the terminal 2. The private network UPF sends the STUN binding response to the public network UPF, the STUN binding response including a message header and a message body, the message header including the IP address information of the STUN server and the IP address information 4 of the terminal 2, and the message body including the IP address information 6 of the terminal 2. The public network UPF sends the STUN binding response to the terminal 2, the STUN binding response including a message header and a message body, the message header including the IP address information of the STUN server and the IP address information 4 of the terminal 2, and the message body including the IP address information 6 of the terminal 2.
[0324] After the terminal 2 acquires the IP address information 6 of the terminal 2, the terminal 2 can provide the IP address information 6 of the terminal 2 to the other terminal (e.g., the terminal 1) in the home group except for the terminal 2 through the PS cloud device, so that the other terminal in the home group except for the terminal 2 can send a service message to the terminal 2 based on the IP address information 6 of the terminal 2.
[0325] The process in which the terminal 1 sends a service message to the terminal 2 can refer to the following steps 1029 to 1035.
[0326] Step 1029, the terminal 1 sends a service message 1 to the public network UPF. Correspondingly, the public network UPF receives the service message 1.
[0327] The service message 1 includes a message header and a message body, the message header including the IP address information 1 of the terminal 1 and the IP address information 6 of the terminal 2, and the message body including service data. The IP address information 1 of the terminal 1 is source IP address information, and the IP address information 6 of the terminal 2 is destination IP address information.
[0328] The service packet 1 is a STUN packet.
[0329] It can also be understood that the terminal 1 sends the service packet 1 to the public network UPF through the session 1.
[0330] In step 1030, the public network UPF sends the service packet 1 to the private network UPF according to the STUN splitting policy.
[0331] Specifically, the public network UPF identifies that the IP address in the destination IP address information (i.e., the IP address information 6 of the terminal 2) in the service packet 1 is contained in the public network IP address segment indicated by the public network IP address segment information in the STUN splitting policy, and then forwards the service packet 1 to the private network UPF.
[0332] It can also be understood that the public network UPF sends the service packet 1 to the private network UPF through the session 2 according to the STUN splitting policy.
[0333] In step 1031, the private network UPF generates a service packet 2 according to the service packet 1.
[0334] The private network UPF replaces the IP address information 1 of the terminal 1 in the packet header of the service packet 1 with the IP address information 2 of the terminal 1 to obtain the service packet 2.
[0335] The service packet 2 includes a packet header and a packet body, the packet header includes the IP address information 2 of the terminal 1 and the IP address information 6 of the terminal 2, and the packet body includes service data. The IP address information 2 of the terminal 1 is source IP address information, and the IP address information 6 of the terminal 2 is destination IP address information.
[0336] In step 1032, the private network UPF generates a service packet 3 according to the service packet 2.
[0337] The private network UPF replaces the IP address information 2 of the terminal 1 in the packet header of the service packet 2 with the IP address information 3 of the terminal 1 according to the record information 1, and replaces the IP address information 6 of the terminal 2 in the packet header of the service packet 2 with the IP address information 5 of the terminal 2 according to the record information 2, to obtain the service packet 3.
[0338] The service packet 3 includes a packet header and a packet body, the packet header includes the IP address information 3 of the terminal 1 and the IP address information 5 of the terminal 2, and the packet body includes service data. The IP address information 3 of the terminal 1 is source IP address information, and the IP address information 5 of the terminal 2 is destination IP address information.
[0339] In step 1033, the private network UPF generates a service packet 4 according to the service packet 3.
[0340] The private network UPF replaces the IP address information 5 of the terminal 2 in the header of the service packet 3 with the IP address information 4 of the terminal 2, to obtain a service packet 4.
[0341] The service packet 4 includes a header and a body, the header includes the IP address information 3 of the terminal 1 and the IP address information 4 of the terminal 2, and the body includes service data. The IP address information 3 of the terminal 1 is source IP address information, and the IP address information 4 of the terminal 2 is destination IP address information.
[0342] In step 1034, the private network UPF sends the service packet 4 to the public network UPF. Correspondingly, the public network UPF receives the service packet 4.
[0343] It can be understood that the private network UPF converts the uplink service packet (i.e., the service packet 1) from the terminal 1 into a downlink service packet (i.e., the service packet 4) sent to the terminal 2.
[0344] In step 1035, the public network UPF sends the service packet 4 to the terminal 2. Correspondingly, the terminal 2 receives the service packet 4.
[0345] The terminal 2 receives the service packet 4 and can obtain the service data sent by the terminal 1 therefrom, thereby completing the process of sending the service data from the terminal 1 to the terminal 2.
[0346] The process of sending the service packet by the terminal 2 to the terminal 1 is similar to the above steps 1029 to 1035, and will not be described herein again.
[0347] When the above method embodiment is applied to a game ecological service, the core network can realize 100% intranet penetration assisted by the STUN protocol identification technology, can break through the complexity of the mainstream game ecological service remote streaming technology, and can realize a ubiquitous and service-unaware direct connection streaming network, ultra-low latency, the shortest path, and ultra-high bandwidth.
[0348] In the above Figure 4~Figure 10 embodiment, both of the two terminals in the home group that communicate with each other are 3GPP terminals. In the following, another specific implementation of an application scenario is given, in which one of the two terminals in the home group that communicate with each other is a 3GPP terminal, and the other is a non-3GPP terminal. Figure 11~Figure 17
[0349] When the terminal is a non-3GPP terminal, the non-3GPP terminal can perform data plane communication with the private network UPF through a gateway, the gateway has a mapping relationship with the private network UPF, and the service message received by the gateway is all forwarded to the private network UPF. Therefore, the gateway does not need to be configured with a shunting strategy (for example, the first shunting strategy, the second shunting strategy, the third shunting strategy, and the STUN shunting strategy described above), that is, the gateway does not need to determine, based on the configured shunting strategy, which device needs to send the received service message to, but directly sends it to the private network UPF.
[0350] The gateway may be, for example, a packet data network gateway (PGW), a packet data gateway (PDG), an evolved packet data gateway (ePDG), or an evolved user plane function (eUPF).
[0351] Figure 11 A flowchart of a communication method provided by an embodiment of the present application is shown. The first user plane device, the second user plane device, the policy control device, and the session management device in this embodiment may be the first user plane device, the second user plane device, the policy control device, and the session management device in FIG. 2(b).
[0352] The Figure 11 In the method embodiment of the present application, the first terminal is a 3GPP terminal (for example, a mobile phone), and the third terminal is a non-3GPP terminal (for example, a game console).
[0353] The method comprises the following steps:
[0354] In step 1101, the first terminal sends a fifth service message to the first user plane device serving the first terminal. Correspondingly, the first user plane device receives the fifth service message.
[0355] That is, the first terminal sends the fifth service message to the first user plane device through the access network device.
[0356] The fifth service message comprises first private network IP address information of the first terminal, public network IP address information of the third terminal, and service data.
[0357] The first private network IP address information of the first terminal is source IP address information. The first private network IP address information of the first terminal is allocated by the first user plane device for the first terminal.
[0358] The public IP address information of the third terminal is destination IP address information. The public IP address information of the third terminal is allocated by an address management server for the third terminal, and the address management server is deployed on a user plane network element corresponding to the second user plane device. When the second user plane device is a user plane network element, the user plane network element corresponding to the second user plane device is the second user plane device. When the second user plane device is a module (such as a circuit, a chip, or a chip system, etc.) in a user plane network element, or a logical node, a logical module, or software capable of implementing all or part of the functions of a user plane network element, etc., the user plane network element corresponding to the second user plane device refers to a user plane network element containing the second user plane device.
[0359] In the embodiments of the present application, the address management server can be a STUN server or other server with address management functions or address allocation functions. Here, it is uniformly described, and the subsequent steps are described in detail.
[0360] As an implementation method, the fifth service packet includes a packet header and a packet body. The packet header includes source IP address information and destination IP address information, and the packet body includes the service data. The source IP address information is the first private IP address information of the first terminal, and the destination IP address information is the public IP address information of the third terminal.
[0361] In step 1102, the first user plane device sends a fifth service packet to the second user plane device according to the first split strategy. Correspondingly, the second user plane network element receives the fifth service packet.
[0362] The first split strategy includes home group information and public IP address segment information. The public IP address segment information can be a public IP address segment, or can be indication information (such as an identifier of the public IP address segment) used to indicate the public IP address segment.
[0363] The public IP address segment is composed of a plurality of public IP addresses, and the public IP address segment includes the IP address in the public IP address information of the third terminal.
[0364] The home group indicated by the home group information includes the first terminal and the third terminal. Optionally, the home group also includes other terminals, such as the second terminal, the fourth terminal, etc. The home group information corresponds to the second user plane device. Illustratively, the home group information can be an identifier of the home group.
[0365] When the first user plane device receives the fifth service packet, obtains the destination IP address information (i.e., the public IP address information of the third terminal), and determines that the IP address in the public IP address information of the third terminal is included in the public IP address segment indicated by the public IP address segment information in the first split strategy, the first user plane device sends the fifth service packet to the second user plane device corresponding to the home group information in the first split strategy.
[0366] For example, the first offloading policy can be sent by the policy control device to the first user plane device. Meanwhile, the policy control device can also send the first offloading policy to the user plane device serving the other 3GPP terminals in the home group except the first terminal, but does not need to send the first offloading policy to the gateway serving the other non-3GPP terminals in the home group except the first terminal, for example, the policy control device does not need to send the first offloading policy to the gateway serving the third terminal.
[0367] In step 1103, the second user plane device sends a sixth service packet to the third terminal. Accordingly, the third terminal receives the sixth service packet.
[0368] The sixth service packet includes the public IP address information of the first terminal, the private IP address information of the third terminal and service data. The service data is the same as the service data in the fifth service packet.
[0369] The public IP address information of the first terminal is the source IP address information. The public IP address information of the first terminal is allocated by the aforementioned address management server for the first terminal.
[0370] The private IP address information of the third terminal is the destination IP address information. The private IP address information of the third terminal is allocated by the second user plane device for the third terminal.
[0371] As an implementation method, the sixth service packet includes a packet header and a packet body. The packet header includes the source IP address information and the destination IP address information, and the packet body includes the service data. The source IP address information is the public IP address information of the first terminal, and the destination IP address information is the private IP address information of the third terminal.
[0372] As an implementation method, the second user plane device generates the sixth service packet according to the fifth service packet in the following manner: the second user plane device generates a seventh service packet according to the fifth service packet, the seventh service packet comprising the second private network IP address information of the first terminal, the public network IP address information of the third terminal, and the service data. It can also be understood that the second user plane device replaces the source IP address information in the fifth service packet from the first private network IP address information of the first terminal to the second private network IP address information of the first terminal to obtain the seventh service packet. The second user plane device generates the sixth service packet according to the seventh service packet, the sixth service packet comprising the public network IP address information of the first terminal, the private network IP address information of the third terminal, and the service data. It can also be understood that the second user plane device replaces the source IP address information in the seventh service packet from the second private network IP address information of the first terminal to the public network IP address information of the first terminal, and replaces the destination IP address information in the seventh service packet from the public network IP address information of the third terminal to the private network IP address information of the third terminal. Based on this method, the source IP address information and / or the destination IP address information is replaced when the service packet is forwarded between the first user plane device and the second user plane device, which helps to correctly identify the source IP address information and / or the destination IP address information of the service packet, thereby helping to correctly transmit the service packet.
[0373] In a specific implementation, the step 1103 can be that the second user plane device sends the sixth service packet to the third terminal through the gateway. That is, the second user plane sends the sixth service packet to the gateway, and the gateway sends the sixth service packet to the third terminal.
[0374] Based on the above scheme, the first terminal sends a service packet to the third terminal. First, the first terminal sends the service packet to the first user plane device serving the first terminal. Then, the first user plane device distributes the service packet to the second user plane device based on the first distribution strategy. Then, the second user plane device sends the service packet to the third terminal. Since the service packet sent by the first terminal to the third terminal is forwarded through the first user plane device and the second user plane device in the core network, it does not bypass the public network (such as a network address translation router in the public network), so the service packet sent by the first terminal to the third terminal is forwarded in the private network without being forwarded through the public network. The time delay of service packet forwarding is low and safe and reliable, thereby realizing low-latency and high-reliability data transmission between the first terminal and the third terminal.
[0375] The transmission process of the service packet in the above scheme will be described below in conjunction with a specific example.
[0376] Figure 12An example of the transmission process of the service message provided by the embodiment of the present application is shown in the figure. In this example, the large network UPF is a specific example of the first user plane device, the private network UPF is a specific example of the second user plane device, the ePDG is a specific example of the gateway, and the STUN server is a specific example of the address management server, which is deployed on the private network UPF.
[0377] In this example, the large network UPF provides services for the first terminal, which is a 3GPP terminal (for example, a mobile phone). The large network UPF allocates the first private network IP address information of the first terminal to the first terminal, Figure 12 where IP1 represents the first private network IP address information of the first terminal. The private network UPF allocates the second private network IP address information of the first terminal to the first terminal, Figure 12 where IP2 represents the second private network IP address information of the first terminal. The STUN server allocates the public network IP address information of the first terminal to the first terminal, Figure 12 where IP3 represents the public network IP address information of the first terminal.
[0378] In this example, the ePDG provides services for the third terminal, which is a non-3GPP terminal (for example, a game console). The private network UPF allocates the private network IP address information of the third terminal to the third terminal, Figure 12 where IP7 represents the private network IP address information of the third terminal. The STUN server allocates the public network IP address information of the third terminal to the third terminal, Figure 12 where IP8 represents the public network IP address information of the third terminal.
[0379] When the first terminal needs to send service data to the third terminal, the first terminal can send a fifth service message to the large network UPF through the access network device, where the fifth service message includes IP1, IP8, and the service data, IP1 is the source IP address information, and IP8 is the destination IP address information. The large network UPF distributes the fifth service message to the private network UPF according to the first distribution strategy. The private network UPF replaces IP1 in the fifth service message with IP2 to obtain a seventh service message, where the seventh service message includes IP2, IP8, and the service data, IP2 is the source IP address information, and IP8 is the destination IP address information. Then, the private network UPF replaces IP2 in the seventh service message with IP3 and replaces IP8 with IP7 to obtain a sixth service message, where the sixth service message includes IP3, IP7, and the service data, IP3 is the source IP address information, and IP7 is the destination IP address information. This step realizes the conversion of the uplink service message (i.e., the fifth service message) to the downlink service message (i.e., the sixth service message). Then, the private network UPF sends the sixth service message to the third terminal through the gateway. The third terminal determines that the service data in the sixth service message comes from the first terminal based on IP3.
[0380] As an implementation method, the session management device obtains IP address information of the address management server corresponding to the family group information from the policy control device or the unified data management device, and then the session management device selects the second user plane device according to the IP address information of the address management server. The unified data management device can be a UDM network element or a module (such as a circuit, a chip or a chip system, etc.) in the UDM network element, or a logical node, a logical module or software capable of realizing all or part of the functions of the policy control network element. Based on this method, the selected second user plane device is associated with the address management server, which helps the correct communication between the second user plane device and the address management server.
[0381] As another implementation method, the session management device can also select the second user plane device first, and then configure the IP address information of the address management server to the second user plane device. Based on this method, the IP address information of the address management server is configured to the second user plane device after the second user plane device is selected, so as to realize the association of the second user plane device with the address management server, which helps the correct communication between the second user plane device and the address management server.
[0382] The above Figure 11 method embodiments and Figure 12The example described above illustrates the sending of service messages from a 3GPP-compliant first terminal to a non-3GPP-compliant third terminal. The specific process of a non-3GPP-compliant third terminal sending service messages to a 3GPP-compliant first terminal is as follows: First, the third terminal sends an eighth service message to the second user plane device (e.g., the third terminal sends the eighth service message to the second user plane device through a gateway). This eighth service message includes the third terminal's private network IP address information, the first terminal's public network IP address information, and service data. The third terminal's private network IP address information is the source IP address information, and the first terminal's public network IP address information is the destination IP address information. The private network UPF determines a ninth service message based on the eighth service message. This ninth service message includes the third terminal's public network IP address information, the first terminal's second private network IP address information, and service data. Again, the third terminal's public network IP address information is the source IP address information, and the first terminal's second private network IP address information is the destination IP address information. Next, the second user plane device determines the tenth service message based on the ninth service message. This tenth service message includes the public IP address information of the third terminal, the first private IP address information of the first terminal, and service data. The public IP address information of the third terminal is the source IP address information, and the first private IP address information of the first terminal is the destination IP address information. Then, the second user plane device sends the tenth service message to the first user plane device. The first user plane device sends the tenth service message to the first terminal through the access network equipment. The first terminal obtains the service data from the tenth service message and determines that the service data originates from the third terminal based on the public IP address information of the third terminal in the tenth service message.
[0383] The following is combined Figure 13 This describes the process by which the first terminal obtains the public IP address information of the third terminal.
[0384] Figure 13 The communication method shown is in Figure 11 The method shown is executed prior to this, and includes the following steps:
[0385] In step 1301, the third terminal sends a third binding request to the second user plane device. Accordingly, the second user plane device receives the third binding request.
[0386] That is, the third terminal sends a third binding request to the second user plane device through the gateway.
[0387] The third-party binding request includes the private IP address information of the third terminal and the IP address information of the address management server. This third-party binding request is used to request the allocation of a public IP address for the third terminal. Specifically, the private IP address information of the third terminal is the source IP address information, and the IP address information of the address management server is the destination IP address information.
[0388] At step 1302, the second user plane device sends a third binding request to the address management server. Accordingly, the address management server receives the third binding request.
[0389] As an implementation method, the step 1302 can be specifically: the second user plane device detects the third binding request according to the deep packet detection policy, and determines that the third binding request is a first protocol packet (for example, a STUN protocol packet), and then sends the third binding request to the address management server. Based on this method, the second user plane device judges whether to send a binding request to the address management server based on the deep packet detection policy, which helps the correct forwarding of the binding request.
[0390] Exemplarily, the deep packet detection policy on the second user plane device can come from a policy control network element, or from a session management device, or be pre-configured on the second user plane device.
[0391] At step 1303, the second user plane network element allocates an IP address in the public network IP address information of the third terminal according to the first splitting policy.
[0392] Specifically, the second user plane network element selects one public network IP address from the public network IP address segment indicated by the public network IP address segment information in the first splitting policy as the IP address in the public network IP address information of the third terminal.
[0393] At step 1304, the second user plane device sends the IP address in the public network IP address information of the third terminal to the address management server. Accordingly, the address management server receives the IP address in the public network IP address information of the third terminal.
[0394] It should be noted that the above step 1302 can be executed before step 1303, or after step 1304, or between step 1303 and step 1304, which is not limited in the present application.
[0395] At step 1305, the address management server determines the public network IP address information of the third terminal according to the IP address in the public network IP address information of the third terminal.
[0396] The public network IP address information of the third terminal includes the public network IP address of the third terminal and the public network port of the third terminal. The public network IP address of the third terminal comes from the second user plane network element, and the public network port of the third terminal is allocated by the address management server.
[0397] As another alternative implementation method, the second user plane network element can also send the public network IP address segment information in the first split strategy to the address management server, select a public network IP address from the public network IP address segment indicated by the public network IP address segment information, and then allocate a public network port, so as to obtain the public network IP address information of the third terminal, which includes the public network IP address allocated by the address management server for the third terminal and the public network port.
[0398] At step 1306, the address management server sends a third binding response to the second user plane device. Accordingly, the second user plane device receives the third binding response.
[0399] The third binding response includes a third message header and a message body. The third message header includes the IP address information of the address management server and the private network IP address information of the third terminal. The message body includes the public network IP address information of the third terminal. The public network IP address information of the third terminal is allocated by the STUN server for the third terminal.
[0400] At step 1307, the second user plane device sends the third binding response to the third terminal. Accordingly, the third terminal receives the third binding response.
[0401] That is, the second user plane device sends the third binding response to the third terminal through the gateway.
[0402] The third terminal obtains the public network IP address information of the third terminal from the message body of the third binding response.
[0403] At step 1308, the third terminal sends the public network IP address information of the third terminal to the first terminal through the application controller.
[0404] That is, the third terminal sends the public network IP address information of the third terminal to the application controller, and then the application controller sends the public network IP address information of the third terminal to the first terminal. Subsequently, the first terminal can send service data to the third terminal based on the public network IP address information of the third terminal, so as to realize correct transmission of the service data.
[0405] For example, the application controller can be a PS cloud device or the like.
[0406] It should be noted that if the first terminal, the third terminal, and the other at least one terminal constitute a home group, after the third terminal sends the public network IP address information of the third terminal to the application controller, the application controller can send the public network IP address information of the third terminal to the other terminals (including the first terminal) in the home group except the third terminal, so that the other terminals in the home group except the third terminal can send service data to the third terminal based on the public network IP address information of the third terminal.
[0407] Similarly, the other terminals in the home group except the third terminal can obtain the public IP address information allocated by the address management server according to a process similar to steps 1301-1308, and then send their own public IP address information to the other terminals in the home group through the application controller. For example, the first terminal obtains the public IP address information of the first terminal allocated by the address management server according to a process similar to steps 1301-1308, and then sends the public IP address information of the first terminal to the application controller, and the application controller sends the public IP address information of the first terminal to the other terminals in the home group except the first terminal (including the third terminal). The other terminals in the home group except the first terminal can send service data to the first terminal based on the public IP address information of the first terminal, so as to realize correct transmission of service data.
[0408] The process in which the first terminal obtains the public IP address information of the first terminal will be described below in conjunction with an example of Figure 14 . In the example, the first terminal, the public network UPF, the private network UPF, and the STUN server in Figure 14 are the first terminal, the public network UPF, the private network UPF, and the STUN server in Figure 12 . IP1 represents the first private IP address information of the first terminal allocated by the public network UPF, IP2 represents the second private IP address information of the first terminal allocated by the private network UPF, IP3 represents the public IP address information of the first terminal allocated by the STUN server, and server IP represents the IP address information of the STUN server.
[0409] The first terminal sends a third binding request to the public network UPF, and the third binding request includes IP1 and server IP. The public network UPF sends the third binding request to the private network UPF. The private network UPF sends a fourth binding request to the STUN server, and the fourth binding request includes IP2 and server IP. The STUN server allocates IP3 to the first terminal, and sends a third binding response to the private network UPF, and the third binding response includes server IP, IP2, and IP3. The private network UPF sends a fourth binding response to the public network UPF, and the fourth binding response includes server IP, IP1, and IP3. The public network UPF sends the fourth binding response to the first terminal. The first terminal obtains IP3 from the fourth binding response.
[0410] The process in which the third terminal obtains the public IP address information of the third terminal will be described below in conjunction with an example of Figure 15 . In the example, the first terminal, the public network UPF, the private network UPF, and the STUN server in Figure 15The third terminal, the large network UPF 2, the private network UPF, and the STUN server in the above-mentioned process are as shown in Figure 12 The third terminal, the large network UPF 2, the private network UPF, and the STUN server in the above-mentioned process are as shown in
[0411] The third terminal sends a third binding request to the private network UPF through the gateway, and the third binding request includes IP7 and server IP. The private network UPF sends a third binding request to the STUN server. The STUN server allocates IP8 to the third terminal, and sends a third binding response to the private network UPF, and the third binding response includes server IP, IP7, and IP8. The private network UPF sends the third binding response to the third terminal through the gateway. The third terminal obtains IP8 from the third binding response.
[0412] As an implementation method, the IP address information of the address management server (for example, the STUN server) can be pre-configured on the terminals in the home group.
[0413] As another implementation method, the terminals in the home group can query the IP address information of the address management server based on the obtained domain name information of the address management server.
[0414] The process that the third terminal in the home group queries the IP address information of the address management server based on the obtained domain name information of the address management server will be introduced below in combination with Figure 16 The process that the other terminals (for example, the first terminal) in the home group query the IP address information of the address management server based on the obtained domain name information of the address management server is similar, and will not be described in detail.
[0415] Figure 16 The communication method shown in the above-mentioned process is executed before the method shown in Figure 13 The method includes the following steps:
[0416] Step 1601, the third terminal sends a domain name query request to the second user plane device. Correspondingly, the second user plane device receives the domain name query request.
[0417] That is, the third terminal sends a domain name query request to the second user plane device through the gateway.
[0418] The domain name query request includes the domain name information of the address management server.
[0419] At step 1602, the second user plane device sends a domain name query request to the domain name system server. Accordingly, the domain name system server receives the domain name query request.
[0420] At step 1603, the domain name system server sends a domain name query response to the second user plane device. Accordingly, the second user plane device receives the domain name query response.
[0421] The domain name query response includes IP address information of the address management server corresponding to the domain name information of the address management server.
[0422] At step 1604, the second user plane device sends the domain name query response to the third terminal. Accordingly, the third terminal receives the domain name query response.
[0423] The third terminal can obtain the IP address information of the address management server from the domain name query response.
[0424] Based on the above scheme, the third terminal can query the IP address information of the corresponding address management server based on the domain name information of the address management server, so that the address management server can be requested to allocate public network IP address information for the third terminal based on the IP address information of the address management server subsequently.
[0425] In the following, a specific embodiment of the method embodiments based on the above Figure 17 , Figure 11 , Figure 13 and Figure 16 is given.
[0426] Figure 17 A flowchart of a communication method provided by the embodiments of the present application is shown. In the method, the terminal 1 and the terminal 3 are specific examples of the first terminal and the third terminal in the foregoing embodiments respectively. The terminal 1 and the terminal 3 belong to the same home group, and the terminal 1 and the terminal 3 are both subscribed to a home service (or a dual-domain service, i.e., a home service and other normal service except the home service). The terminal 1 has two sessions at the network side, for example, session 1 and session 2, wherein the anchor point of the session 1 is a large network UPF, and the anchor point of the session 2 is a private network UPF (also referred to as a home service anchor point). The terminal 3 has two sessions at the network side, for example, session 3 and session 4, wherein the anchor point of the session 3 is a gateway, and the anchor point of the session 4 is a private network UPF (also referred to as a home service anchor point).
[0427] In this example, the SMF, the PCF and the STUN server are specific examples of the session management device, the policy control device and the address management server in the foregoing embodiments respectively.
[0428] In this example, the terminal 1 is a 3GPP terminal, and the terminal 3 is a non-3GPP terminal.
[0429] The method comprises the following steps:
[0430] Step 1701, same as Figure 10 Steps 1001 to 1014 in the embodiment of the first terminal.
[0431] Step 1702, same as Figure 10 Steps 1016 to 1027 in the embodiment of the first terminal.
[0432] Step 1703, the terminal 3 completes the IKEv2 initialization process with the non-3GPP through the gateway.
[0433] Wherein, IKEv2 represents internet key exchange version 2.
[0434] Step 1704, the gateway initiates the IKEv2 federation authentication and tunnel creation.
[0435] Step 1705, the gateway sends a session establishment request to the SMF. Correspondingly, the SMF receives the session establishment request.
[0436] Step 1706, the SMF completes the IP connectivity access network (IP-CAN) session creation with the PCF.
[0437] Step 1707, the terminal 3 obtains the IP address information of the STUN server.
[0438] The specific implementation process of this step 1707 is similar to the process of the third terminal obtaining the IP address information of the address management server in the embodiment of the first terminal. Figure 16 Step 1708, the terminal 3 obtains the public network IP address information of the terminal 3 allocated by the STUN server for the terminal 3.
[0439] The specific implementation process of this step 1708 is similar to the process of the third terminal obtaining the public network IP address information of the third terminal allocated by the address management server in the embodiment of the first terminal.
[0440] Figure 13 Step 1709, the process of the terminal 1 sending a service message to the terminal 3.
[0441] The specific implementation process of this step 1709 can refer to the process of the first terminal sending a service message to the third terminal in the embodiment of the first terminal.
[0442] Figure 11
[0443] When the method embodiment is applied to a game ecological business, the core network identifies the technology based on the STUN protocol, realizes 100% intranet penetration of the auxiliary application, and can realize the complexity of breaking through the mainstream game ecological business remote streaming technology, realize the ubiquitous, business-unaware direct connection streaming network, ultra-low latency, shortest path, and ultra-high bandwidth.
[0444] The above mainly introduces the scheme provided by the embodiments of the application from the perspective of interaction of multiple communication devices. It can be understood that, in order to realize the above functions, each communication device can include a hardware structure and / or a software module for executing each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiments disclosed in the present text, the embodiments of the application can be realized in the form of hardware or a combination of hardware and computer software. Whether a certain function is realized in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the application.
[0445] The embodiments of the application can divide the functional units of each communication device according to the above method examples, for example, each functional unit can be divided according to each function, or two or more functions can be integrated into one unit. The integrated unit can be realized in the form of hardware or software functional unit.
[0446] In the case of using an integrated unit, Figure 18 A possible exemplary block diagram of the device involved in the embodiments of the application is shown. Referring to Figure 18 The communication device 1800 can include a processing unit 1802 and a communication unit 1803. The processing unit 1802 is configured to control and manage the actions of the communication device 1800. The communication unit 1803 is configured to support the communication between the communication device 1800 and other devices. Optionally, the communication unit 1803, also known as a transceiver unit, can include a receiving unit and / or a sending unit, which are configured to perform receiving and sending operations, respectively. The communication device 1800 can further include a storage unit 1801 configured to store the program code and / or data of the communication device 1800.
[0447] The communication device 1800 can be the first user plane device in the above embodiments. The processing unit 1802 can support the communication device 1800 to perform the actions of the first user plane device in the above method embodiments. Alternatively, the processing unit 1802 mainly performs the internal actions of the first user plane device in the method embodiments, and the communication unit 1803 can support the communication between the communication device 1800 and other devices.
[0448] The communication apparatus 1800 can be the second user plane apparatus in the above embodiments. The processing unit 1802 can support the communication apparatus 1800 to perform the actions of the second user plane apparatus in the above method embodiments. Alternatively, the processing unit 1802 mainly performs the internal actions of the second user plane apparatus in the method embodiments, and the communication unit 1803 can support the communication between the communication apparatus 1800 and other devices.
[0449] The communication apparatus 1800 can be the third user plane apparatus in the above embodiments. The processing unit 1802 can support the communication apparatus 1800 to perform the actions of the third user plane apparatus in the above method embodiments. Alternatively, the processing unit 1802 mainly performs the internal actions of the third user plane apparatus in the method embodiments, and the communication unit 1803 can support the communication between the communication apparatus 1800 and other devices.
[0450] As an implementation method, the communication unit 1803 in the first user plane apparatus is configured to receive a first service packet from a first terminal, the first service packet comprising first private Internet Protocol (IP) address information of the first terminal, public IP address information of a second terminal, and service data, the public IP address information of the second terminal being allocated to the second terminal by an address management server deployed in a user plane network element corresponding to a second user plane apparatus; the processing unit 1802 in the first user plane apparatus is configured to send, according to a first distribution strategy, the first service packet to the second user plane apparatus through the communication unit 1803 in the first user plane apparatus, the first distribution strategy comprising home group information and public IP address segment information, the public IP address segment information indicating a public IP address segment comprising an IP address in the public IP address information of the second terminal, and the home group information indicating a home group comprising the first terminal and the second terminal; the communication unit 1803 in the second user plane apparatus is configured to send a second service packet to a third user plane apparatus serving the second terminal, the second service packet comprising public IP address information of the first terminal, first private IP address information of the second terminal, and the service data, the public IP address information of the first terminal being allocated to the first terminal by the address management server; and the communication unit 1803 in the third user plane apparatus is configured to send the second service packet to the second terminal.
[0451] As another implementation method, the communication unit 1803 in the first user plane device is configured to receive a fifth service packet from the first terminal, the fifth service packet comprising first private network Internet Protocol (IP) address information of the first terminal, public network IP address information of a third terminal, and service data, the public network IP address information of the third terminal being allocated to the third terminal by an address management server deployed in a user plane network element corresponding to a second user plane device; the processing unit 1802 in the first user plane device is configured to send, according to a first distribution strategy, the fifth service packet to the second user plane device through the communication unit 1803 in the first user plane device, the first distribution strategy comprising home group information and public network IP address segment information, the public network IP address segment information indicating a public network IP address segment comprising an IP address in the public network IP address information of the third terminal, and the home group information indicating a home group comprising the first terminal and the third terminal; and the communication unit 1803 in the second user plane device is configured to send a sixth service packet to the third terminal, the sixth service packet comprising public network IP address information of the first terminal, private network IP address information of the third terminal, and the service data, the public network IP address information of the first terminal being allocated to the first terminal by the address management server.
[0452] It can be understood that the division of the units in the communication device is only a logical function division, one function unit can correspond to one function, or two or more functions can be integrated into one function unit. In actual implementation, all or part of the units can be integrated into one physical entity, or distributed in different physical entities. In addition, the above-mentioned function units can be realized in the form of hardware, or in the form of software, or in the form of hardware combined with software. Whether a certain function is executed in the form of hardware or software depends on the specific application and design constraints of the technical scheme. Professional technicians can use different methods to implement the described functions for specific applications, but such implementation should not be considered beyond the scope of the present application.
[0453] In an example, the functional units in the communication device described above can be one or more integrated circuits configured to implement the above method, for example: one or more application specific integrated circuits (ASICs), or, one or more central processing units (CPUs), one or more microcontroller Units (MCUs), one or more digital signal processors (DSPs), or, one or more field programmable gate arrays (FPGAs), or a combination of at least two of these integrated circuit forms.
[0454] In an example, the storage unit 1801 can include random access memory, flash memory, read only memory, programmable read only memory, electrically erasable programmable memory, and / or registers, etc.
[0455] Figure 19 A possible exemplary block diagram of a communication device involved in the embodiments of the present application is shown. Figure 19 The communication device 1900 shown includes a processor 1910 and an interface circuit 1920. The processor 1910 and the interface circuit 1920 are coupled to each other. It can be understood that the interface circuit 1920 can be a transceiver or an input / output interface. Optionally, the communication device 1900 can further include a memory 1930 for storing instructions executed by the processor 1910 or storing input data required by the processor 1910 to run instructions or storing data generated after the processor 1910 runs instructions.
[0456] When the communication device 1900 is used to implement the above method embodiments, the processor 1910 is configured to implement the functions of the processing unit 1802 described above, and the interface circuit 1920 is configured to implement the functions of the communication unit 1803 described above.
[0457] It can be understood that the processor in the embodiments of the present application can be a CPU, and can also be other general-purpose processors, DSPs, ASICs, FPGAs or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. The general-purpose processor can be a microprocessor, or any conventional processor.
[0458] The steps of the methods in the embodiments of the present application can be implemented by hardware, or by a processor executing software instructions. The software instructions can be composed of one or more software modules. The software modules can be stored in a memory, such as a random access memory (RAM), a flash memory, a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a register, a magnetic media, a magneto-optical media, a compact disc read-only memory (CD-ROM), and so on. An exemplary storage medium is coupled to a processor such that the processor can read information from, and write information to, the storage medium. Of course, the storage medium can be a component of the processor. A processor and a storage medium can be located in an ASIC. Alternatively, a processor and a storage medium can be located as discrete components in an access network device or a terminal device.
[0459] In the embodiments described above, all or some of the steps can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or some of the steps can be implemented by one or more computer programs or instructions. A computer program (computer program) refers to a set of instructions that instruct an electronic computer or other device with message processing capability to perform each step. The computer program is usually written in a certain programming language and runs on a certain target architecture. When the computer program or instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present application are performed. The computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices. The computer program or instructions can be stored in a computer readable storage medium or transferred from one computer readable storage medium to another computer readable storage medium, 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 through wired or wireless means. The computer readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that integrates one or more available media. The available media can be a magnetic medium, such as a floppy disk, a hard disk, a magnetic tape; an optical medium, such as a digital video disc; and a semiconductor medium, such as a solid state disk. The computer readable storage medium can be a volatile or non-volatile storage medium, or can include both volatile and non-volatile storage media.
[0460] In the various embodiments of the present application, the terms and / or descriptions between different embodiments are consistent and can be referred to each other if there is no special description and logical conflict, and the technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0461] In the present application, "at least one" means one or more, and "multiple" means two or more. The "and / or" describes the association relationship between the associated objects, which means that there can be three relationships, for example, A and / or B can represent the following three cases: A exists alone, A and B exist together, and B exists alone, where A and B can be singular or plural. In the character description of the present application, the character " / " generally represents that the front and rear associated objects are in an "or" relationship; in the formula of the present application, the character " / " represents that the front and rear associated objects are in a "division" relationship.
[0462] It can be understood that various numbers involved in the embodiments of the present application are only distinguished for the convenience of description, and are not used to limit the scope of the embodiments of the present application. The size of the serial number of the above processes does not mean the order of execution, and the execution order of the processes should be determined according to its function and inherent logic.
[0463] The terms "system" and "network" in the embodiments of the present application can be used interchangeably. "At least one" means one or more, and "multiple" means two or more. The "and / or" describes the association relationship between the associated objects, which means that there can be three relationships, for example, A and / or B can represent the following three cases: A exists alone, A and B exist together, and B exists alone, where A and B can be singular or plural. The character " / " generally represents that the front and rear associated objects are in an "or" relationship. "At least one of the following" or similar expressions means any combination of these items, including any combination of single item or multiple items. For example, "at least one of A, B or C" includes A, B, C, AB, AC, BC or ABC, and "at least one of A, B and C" can also be understood to include A, B, C, AB, AC, BC or ABC. In addition, unless otherwise specified, the ordinal numbers "first", "second" and the like mentioned in the embodiments of the present application are used to distinguish a plurality of objects, and are not used to limit the order, time sequence, priority or importance of the plurality of objects.
[0464] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer usable storage media (including but not limited to disk storage, optical storage, etc.) containing computer usable program code.
[0465] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flow or blocks Figure 1 means for functionally implementing the steps in one or more flow or blocks
[0466] These computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart block or blocks. Figure 1 one or more flow or blocks Figure 1 means for functionally implementing the steps in one or more flow or blocks
[0467] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flow or blocks Figure 1 means for functionally implementing the steps in one or more flow or blocks
[0468] Those skilled in the art should appreciate that the functions described in the above one or more examples can be implemented in hardware, software, firmware, or any combination thereof. Should be appreciated that the functions described in the above one or more examples can be implemented in hardware, software, firmware, or any combination thereof. When implemented in software, the functions can be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media include both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media can be any available media that can be accessed by a general purpose or special purpose computer.
[0469] The above detailed description of the specific implementation, for the purpose of the application, technical solutions and beneficial effects have been further detailed, should be understood that the above described only for the specific implementation of the present application has, and is not used to limit the scope of protection of the present application, any modification, equivalent replacement, improvement, etc. on the basis of the technical solutions of the present application, should be included in the scope of protection of the present application. The above description of the present application specification can make the technical any can utilize or implement the content of the present application, any modification based on the disclosed content should be considered as obvious in the art, the basic principles described in the present application can be applied to other variations without departing from the essence and scope of the present application. Therefore, the content disclosed in the present application is not only limited to the described embodiments and designs, but also can be extended to the maximum range consistent with the principles of the present application and the disclosed new features.
[0470] Although the present application is described in connection with specific features and embodiments thereof, it is to be understood that it is not limited to the described embodiments and that various modifications and combinations can occur to those skilled in the art without departing from the spirit and scope of the application. Accordingly, the description and drawings are to be regarded in an illustrative rather than a restrictive sense, and all such modifications of equivalents and alternatives are intended to be included within the scope of the present application. Obviously, those skilled in the art can make various modifications and changes to the present application without departing from the scope of the present application. Thus, if these modifications and changes of the present application belong to the scope of the claims of the present application and their equivalent technologies, the present application also intends to include these modifications and changes.
Claims
1. A communication method, characterized in that, The method includes: The first user plane device receives a first service message from a first terminal. The first service message includes the first private network Internet Protocol (IP) address information of the first terminal, the public network IP address information of the second terminal, and service data. The public network IP address information of the second terminal is allocated to the second terminal by the address management server of the user plane network element deployed in the second user plane device. The first user plane device sends the first service message to the second user plane device according to the first traffic splitting strategy. The first traffic splitting strategy includes home group information and public IP address range information. The public IP address range indicated by the public IP address range information includes the IP address in the public IP address information of the second terminal. The home group indicated by the home group information includes the first terminal and the second terminal. The second user plane device sends a second service message to the third user plane device serving the second terminal. The second service message includes the public IP address information of the first terminal, the first private IP address information of the second terminal, and the service data. The public IP address information of the first terminal is allocated to the first terminal by the address management server. The third user plane device sends the second service message to the second terminal.
2. The method as described in claim 1, characterized in that, The method further includes: The second user plane device generates a third service message based on the first service message. The third service message includes the second private network IP address information of the first terminal, the public network IP address information of the second terminal, and the service data. The second user plane device generates a fourth service message based on the third service message. The fourth service message includes the public IP address information of the first terminal, the second private IP address information of the second terminal, and the service data. The second user plane device generates the second service message based on the fourth service message.
3. The method as described in claim 1 or 2, characterized in that, The method further includes: The third user plane device receives a first binding request from the second terminal, the first binding request including the first private network IP address information of the second terminal and the address information of the address management server; The third user plane device sends the first binding request to the second user plane device; The second user plane device sends a second binding request to the address management server. The second binding request includes the second private network IP address information of the second terminal and the address information of the address management server. The second user plane device allocates an IP address from the public IP address information of the second terminal according to the first traffic splitting strategy; and sends the IP address from the public IP address information of the second terminal to the address management server. The address management server determines the public IP address information of the second terminal based on the IP address in the public IP address information of the second terminal; The address management server sends a first binding response to the second user plane device. The first binding response includes a first header and a message body. The first header includes the address information of the address management server and the second private IP address information of the second terminal. The message body includes the public IP address information of the second terminal. The second user plane device sends a second binding response to the third user plane device. The second binding response includes a second header and a message body. The second header includes the address information of the address management server and the first private network IP address information of the second terminal. The third user plane device sends the second binding response to the second terminal.
4. The method as described in claim 3, characterized in that, The method further includes: The third user plane device receives a second traffic splitting policy from the policy control device, the second traffic splitting policy including the address information of the address management server; The third user plane device sends the first binding request to the second user plane device, including: The third user plane device sends the first binding request to the second user plane device according to the second traffic splitting strategy.
5. The method as described in claim 3, characterized in that, The second user plane device sends a second binding request to the address management server, including: The second user plane device determines that the first binding request is a first protocol message according to the deep packet inspection strategy, then generates a second binding request based on the first binding request and sends the second binding request to the address management server.
6. The method as described in claim 5, characterized in that, The method further includes: The second user plane device receives the deep packet inspection policy from the policy control device.
7. The method as described in claim 3, characterized in that, The method further includes: The third user plane device receives a domain name query request from the second terminal, the domain name query request including the domain name information of the address management server; The third user plane device sends the domain name query request to the second user plane device according to the third traffic splitting strategy, wherein the third traffic splitting strategy includes the domain name information of the address management server; The second user plane device sends the domain name query request to the domain name system server; The second user plane device receives a domain name query response from the domain name system server, the domain name query response including the IP address information of the address management server corresponding to the domain name information of the address management server; The second user plane device sends the domain name query response to the third user plane device; The third user plane device sends the domain name query response to the second terminal.
8. The method as described in claim 1 or 2, characterized in that, The method further includes: The first user plane device receives the first traffic splitting policy from the policy control device.
9. The method as described in claim 1 or 2, characterized in that, The method further includes: The session management device serving the first user plane device obtains the IP address information of the address management server corresponding to the home group information from the policy control device or the unified data management device. The session management device selects the second user plane device based on the IP address information of the address management server.
10. The method as described in claim 1 or 2, characterized in that, The method further includes: The session management device serving the first user plane device selects the second user plane device and configures the IP address information of the address management server to the second user plane device.
11. A communication method, characterized in that, The method includes: The first user plane device receives a fifth service message from the first terminal. The fifth service message includes the first private network Internet Protocol (IP) address information of the first terminal, the public network IP address information of the third terminal, and service data. The public network IP address information of the third terminal is allocated to the third terminal by the address management server of the user plane network element deployed in the second user plane device. The first user plane device sends the fifth service message to the second user plane device according to the first traffic splitting strategy. The first traffic splitting strategy includes home group information and public IP address range information. The public IP address range indicated by the public IP address range information includes the IP address in the public IP address information of the third terminal. The home group indicated by the home group information includes the first terminal and the third terminal. The second user plane device sends a sixth service message to the third terminal. The sixth service message includes the public IP address information of the first terminal, the private IP address information of the third terminal, and the service data. The public IP address information of the first terminal is allocated to the first terminal by the address management server.
12. The method as described in claim 11, characterized in that, The method further includes: The second user plane device generates a seventh service message based on the fifth service message. The seventh service message includes the second private network IP address information of the first terminal, the public network IP address information of the third terminal, and the service data. The second user plane device generates the sixth service message based on the seventh service message.
13. The method as described in claim 11 or 12, characterized in that, The method further includes: The second user plane device receives a third binding request from the third terminal, the third binding request including the private network IP address information of the third terminal and the address information of the address management server; The second user plane device sends a third binding request to the address management server; The second user plane device allocates the IP address from the public IP address information of the third terminal according to the first traffic splitting strategy; and sends the IP address from the public IP address information of the third terminal to the address management server. The address management server determines the public IP address information of the third terminal based on the IP address in the public IP address information of the third terminal. The address management server sends a third binding response to the second user plane device. The third binding response includes a third header and a message body. The third header includes the address information of the address management server and the private network IP address information of the third terminal. The message body includes the public network IP address information of the third terminal. The second user plane device sends the third binding response to the third terminal.
14. The method as described in claim 13, characterized in that, The second user plane device sends a third binding request to the address management server, including: The second user plane device determines, based on the deep packet inspection strategy, that the third binding request is a first protocol packet, and then sends the third binding request to the address management server.
15. The method as described in claim 14, characterized in that, The method further includes: The second user plane device receives the deep packet inspection policy from the policy control device.
16. The method as described in claim 13, characterized in that, The method further includes: The second user plane device receives a domain name query request from the third terminal, the domain name query request including the domain name information of the address management server; The second user plane device sends the domain name query request to the domain name system server; The second user plane device receives a domain name query response from the domain name system server, the domain name query response including the IP address information of the address management server corresponding to the domain name information of the address management server; The second user plane device sends the domain name query response to the third terminal.
17. The method as described in claim 11 or 12, characterized in that, The method further includes: The first user plane device receives the first traffic splitting policy from the policy control device.
18. The method as described in claim 11 or 12, characterized in that, The method further includes: The session management device serving the first user plane device obtains the IP address information of the address management server corresponding to the home group information from the policy control device or the unified data management device. The session management device selects the second user plane device based on the IP address information of the address management server.
19. The method as described in claim 11 or 12, characterized in that, The method further includes: The session management device serving the first user plane device selects the second user plane device and configures the IP address information of the address management server to the second user plane device.
20. A communication system, characterized in that, include: The first user plane device is used to receive a first service message from a first terminal. The first service message includes the first private network Internet Protocol (IP) address information of the first terminal, the public network IP address information of the second terminal, and service data. The public network IP address information of the second terminal is allocated to the second terminal by the address management server of the user plane network element deployed in the second user plane device. According to the first traffic splitting strategy, the first service message is sent to the second user plane device. The first traffic splitting strategy includes home group information and public IP address range information. The public IP address range indicated by the public IP address range information includes the IP address in the public IP address information of the second terminal. The home group indicated by the home group information includes the first terminal and the second terminal. The second user plane device is used to send a second service message to a third user plane device serving the second terminal. The second service message includes the public IP address information of the first terminal, the first private IP address information of the second terminal, and the service data. The public IP address information of the first terminal is allocated to the first terminal by the address management server. The third user plane device is used to send the second service message to the second terminal.
21. The system as claimed in claim 20, characterized in that, The second user plane device is further configured to generate a third service message based on the first service message, the third service message including the second private network IP address information of the first terminal, the public network IP address information of the second terminal, and the service data; generate a fourth service message based on the third service message, the fourth service message including the public network IP address information of the first terminal, the second private network IP address information of the second terminal, and the service data; and generate the second service message based on the fourth service message.
22. The system as claimed in claim 20 or 21, characterized in that, The third user plane device is further configured to receive a first binding request from the second terminal, the first binding request including the first private network IP address information of the second terminal and the address information of the address management server; Send the first binding request to the second user plane device; The second user plane device is further configured to send a second binding request to the address management server, the second binding request including the second private network IP address information of the second terminal and the address information of the address management server; allocate an IP address from the public network IP address information of the second terminal according to the first traffic splitting strategy; and send the IP address from the public network IP address information of the second terminal to the address management server. The system further includes the address management server, which is used to determine the public IP address information of the second terminal based on the IP address in the public IP address information of the second terminal; and send a first binding response to the second user plane device. The first binding response includes a first header and a message body. The first header includes the address information of the address management server and the second private IP address information of the second terminal. The message body includes the public IP address information of the second terminal. The second user plane device is further configured to send a second binding response to the third user plane device. The second binding response includes a second header and a message body. The second header includes the address information of the address management server and the first private network IP address information of the second terminal. The third user plane device is also used to send the second binding response to the second terminal.
23. The system as described in claim 22, characterized in that, The system also includes a policy control device for sending a second traffic splitting policy to the third user plane device, the second traffic splitting policy including the address information of the address management server; The third user plane device is further configured to send the first binding request to the second user plane device according to the second traffic splitting strategy.
24. The system as claimed in claim 22, characterized in that, The second user plane device is further configured to determine, according to the deep packet inspection strategy, that the first binding request is a first protocol packet, generate a second binding request according to the first binding request, and send the second binding request to the address management server.
25. The system as described in claim 24, characterized in that, The system also includes a policy control device for sending the deep packet detection policy to the second user plane device.
26. The system as claimed in claim 20 or 21, characterized in that, The system also includes a policy control device for sending the first traffic splitting policy to the first user plane device.
27. A communication system, characterized in that, The system includes: A first user plane device is configured to receive a fifth service message from a first terminal, the fifth service message including the first private network Internet Protocol (IP) address information of the first terminal, the public network IP address information of a third terminal, and service data. The public network IP address information of the third terminal is allocated to the third terminal by an address management server deployed in the user plane network element corresponding to the second user plane device. The device also sends the fifth service message to the second user plane device according to a first traffic splitting strategy. The first traffic splitting strategy includes home group information and public network IP address range information. The public network IP address range information indicates that the public network IP address range includes the IP address in the public network IP address information of the third terminal, and the home group information indicates that the home group includes the first terminal and the third terminal. The second user plane device is used to send a sixth service message to the third terminal. The sixth service message includes the public IP address information of the first terminal, the private IP address information of the third terminal, and the service data. The public IP address information of the first terminal is allocated to the first terminal by the address management server.
28. The system as claimed in claim 27, characterized in that, The second user plane device is further configured to generate a seventh service message based on the fifth service message, the seventh service message including the second private network IP address information of the first terminal, the public network IP address information of the third terminal, and the service data; and generate a sixth service message based on the seventh service message.
29. The system as described in claim 27 or 28, characterized in that, The second user plane device is further configured to receive a third binding request from the third terminal, the third binding request including the private network IP address information of the third terminal and the address information of the address management server; send the third binding request to the address management server; allocate an IP address from the public network IP address information of the third terminal according to the first traffic splitting strategy; and send the IP address from the public network IP address information of the third terminal to the address management server. The system further includes the address management server, which is used to determine the public IP address information of the third terminal based on the IP address in the public IP address information of the third terminal; and send a third binding response to the second user plane device. The third binding response includes a third header and a message body. The third header includes the address information of the address management server and the private IP address information of the third terminal. The message body includes the public IP address information of the third terminal. The second user plane device is also configured to send the third binding response to the third terminal.
30. The system as described in claim 29, characterized in that, The second user plane device is further configured to, based on a deep packet inspection strategy, determine that the third binding request is a first protocol packet, and then send the third binding request to the address management server.
Citation Information
Patent Citations
Communication method and communication device
CN120152060A