User plane function identification method, device and equipment

By identifying the communication protocol and device type fields of UPF, multiple UPF identification problems under the SDN architecture are solved, ensuring that the business logic issuances to the correct UPF, and the correct processing of data forwarding is achieved.

CN119211387APending Publication Date: 2024-12-27DATANG MOBILE COMM EQUIP CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310762166.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-26
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

Under the software-defined network (SDN) architecture, multiple user surface functions (UPFs) cannot be accurately identified, resulting in the inability to correctly issue business processing logic, which in turn affects data forwarding processing.

Method used

Identify the type of UPF through the communication protocol between the network device and UPF, and use the destination port and device type fields of the protocol layer to identify the device type of UPF, and assign a unified or different format identification to send UPF information to the application layer device to achieve identification .

Benefits of technology

It realizes accurate identification of multiple UPFs, ensuring that the service processing logic is sent to the correct UPF, and data forwarding is completed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119211387A_ABST
    Figure CN119211387A_ABST
Patent Text Reader

Abstract

The invention provides a user plane function identification method, device and equipment. The method comprises the following steps: the network equipment identifies a user plane function (UPF) according to a communication protocol between the UPF and the network equipment; in the application, the network device can accurately identify the UPF according to the communication protocol between the UPF and the network device, so that the network device can issue a correct service processing logic to the corresponding UPF, and further completes forwarding processing of data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a method, device and equipment for identifying user plane functions. Background Art

[0002] In the prior art, there is only one type of user plane function (UPF) under the software defined network (SDN) architecture, namely OpenFlow UPF. With the development of programmable technology, P4 programmable technology has emerged, and with it, a variety of UPFs based on P4 programmable technology have emerged; there is also Segment Routing IPv6 (SRv6) programmable UPF based on the Internet Protocol Version 6 (IPv6) forwarding plane. In this way, the mobile core network under the original SDN architecture will have a variety of UPFs to flexibly and programmably define the user's processing logic.

[0003] When the UPF establishes a connection with the SDN controller, if the type of UPF cannot be accurately identified, the correct business processing logic cannot be sent to the corresponding UPF, and the data forwarding process cannot be completed. Therefore, how to accurately identify multiple UPFs will be an urgent problem to be solved. Summary of the invention

[0004] The purpose of this application is to provide a method, device and equipment for identifying user plane functions, which solves the problem of how to accurately identify multiple UPFs.

[0005] An embodiment of the present application provides a method for identifying a user plane function, including:

[0006] The network device identifies the UPF based on the communication protocol between the user plane function UPF and the network device.

[0007] Optionally, the identifying the UPF according to the communication protocol between the user plane function UPF and the network device includes at least one of the following:

[0008] In the case where the communication protocols between different types of UPFs and network devices are different, identifying the device type of the UPF according to the destination port of the protocol layer;

[0009] In the case that the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

[0010] Optionally, the identifying the device type of the UPF according to the destination port of the protocol layer includes:

[0011] Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols;

[0012] The device type of the UPF is identified according to the communication protocol.

[0013] Optionally, the identifying the device type of the UPF according to the device type field of the protocol layer includes:

[0014] Identify the value of the device type field in the protocol layer;

[0015] The device type of the UPF is identified according to the value; wherein different values ​​are used to indicate different device types.

[0016] Optionally, the method further includes:

[0017] Based on the device type of the UPF, identifiers are assigned to different types of UPFs.

[0018] Optionally, the assigning of identifiers to different types of UPFs based on the device type of the UPF includes:

[0019] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0020] or,

[0021] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0022] Optionally, the method further includes:

[0023] Send UPF information to the application layer device, where the UPF information includes: the device type of the UPF and / or an identifier corresponding to the UPF.

[0024] An embodiment of the present application provides a method for identifying a user plane function, including:

[0025] The application layer device receives UPF information sent by the network device, where the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF;

[0026] The application layer device identifies the UPF according to the UPF information.

[0027] Optionally, the method further includes:

[0028] If the UPF information does not include an identifier corresponding to the UPF, identifiers are assigned to different types of UPFs based on the device type of the UPF.

[0029] Optionally, the assigning of identifiers to different types of UPFs based on the device type of the UPF includes:

[0030] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0031] or,

[0032] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0033] Optionally, the method further includes:

[0034] If the UPF information includes an identifier corresponding to the UPF, and the formats of identifiers of different types of UPFs are different, unified mapping processing is performed on the identifiers of different types of UPFs.

[0035] Optionally, the method further includes:

[0036] Determine the UPF corresponding to the flow table according to the information of the flow table field and the capability of the UPF;

[0037] Send the corresponding flow table to the UPF.

[0038] An embodiment of the present application provides a network device, including: a memory, a transceiver, and a processor:

[0039] A memory for storing a computer program; a transceiver for receiving and sending data under the control of the processor; and a processor for reading the computer program in the memory and performing the following operations:

[0040] Identify the UPF based on the communication protocol between the user plane function UPF and the network device.

[0041] Optionally, the processor is configured to read the computer program in the memory and perform at least one of the following operations:

[0042] In the case where the communication protocols between different types of UPFs and network devices are different, identifying the device type of the UPF according to the destination port of the protocol layer;

[0043] In the case that the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

[0044] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0045] Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols;

[0046] The device type of the UPF is identified according to the communication protocol.

[0047] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0048] Identify the value of the device type field in the protocol layer;

[0049] The device type of the UPF is identified according to the value; wherein different values ​​are used to indicate different device types.

[0050] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0051] Based on the device type of the UPF, identifiers are assigned to different types of UPFs.

[0052] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0053] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0054] or,

[0055] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0056] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0057] Send UPF information to the application layer device, where the UPF information includes: the device type of the UPF and / or an identifier corresponding to the UPF.

[0058] The embodiment of the present application provides an application layer device, including: a memory, a transceiver, and a processor:

[0059] A memory for storing a computer program; a transceiver for receiving and sending data under the control of the processor; and a processor for reading the computer program in the memory and performing the following operations:

[0060] Receiving UPF information sent by a network device, the UPF information including: a device type of the UPF and / or an identifier corresponding to the UPF;

[0061] The UPF is identified according to the UPF information.

[0062] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0063] If the UPF information does not include an identifier corresponding to the UPF, identifiers are assigned to different types of UPFs based on the device type of the UPF.

[0064] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0065] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0066] or,

[0067] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0068] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0069] If the UPF information includes an identifier corresponding to the UPF, and the formats of identifiers of different types of UPFs are different, unified mapping processing is performed on the identifiers of different types of UPFs.

[0070] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0071] Determine the UPF corresponding to the flow table according to the information of the flow table field and the capability of the UPF;

[0072] Send the corresponding flow table to the UPF.

[0073] An embodiment of the present application provides a user plane function identification device, which is applied to a network device, including:

[0074] The first identification unit is used to identify the UPF according to the communication protocol between the user plane function UPF and the network device.

[0075] An embodiment of the present application provides a user plane function identification device, which is applied to an application layer device, including:

[0076] A first receiving unit, configured to receive UPF information sent by a network device, wherein the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF;

[0077] The second identification unit is used to identify the UPF according to the UPF information.

[0078] An embodiment of the present application provides a processor-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned method for identifying a user plane function are implemented.

[0079] The beneficial effects of the above technical solution of the present application are:

[0080] In the embodiments of the present application, the network device can accurately identify the UPF based on the communication protocol between the UPF and the network device, so that the network device can send the correct business processing logic to the corresponding UPF, and then complete the forwarding processing of the data. BRIEF DESCRIPTION OF THE DRAWINGS

[0081] Figure 1 A schematic diagram showing the architecture of an SDN network;

[0082] Figure 2 A schematic diagram showing the location of the SDN controller in the SDN architecture;

[0083] Figure 3 A flowchart of a method for identifying a user plane function according to an embodiment of the present application is shown;

[0084] Figure 4 A second flowchart of a method for identifying a user plane function according to an embodiment of the present application is shown;

[0085] Figure 5 A third flowchart of a method for identifying a user plane function according to an embodiment of the present application;

[0086] Figure 6 A fourth flowchart of a method for identifying a user plane function according to an embodiment of the present application;

[0087] Figure 7 A fifth flowchart of a method for identifying a user plane function according to an embodiment of the present application;

[0088] Figure 8 One of the structural schematic diagrams showing the device for identifying the user plane function according to an embodiment of the present application;

[0089] Fig. 9 A second structural diagram showing a device for identifying a user plane function according to an embodiment of the present application;

[0090] Fig.10 A schematic diagram showing the structure of a network device according to an embodiment of the present application;

[0091] Fig.11 A schematic diagram showing the structure of an application layer device according to an embodiment of the present application. DETAILED DESCRIPTION

[0092] In order to make the technical problems, technical solutions and advantages to be solved by the application clearer, the following will be described in detail in conjunction with the accompanying drawings and specific embodiments. In the following description, specific details such as specific configurations and components are provided only to help fully understand the embodiments of the application. Therefore, it should be clear to those skilled in the art that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the application. In addition, for clarity and brevity, the description of known functions and structures has been omitted.

[0093] It should be understood that the references to "one embodiment" or "an embodiment" throughout the specification mean that the specific features, structures, or characteristics associated with the embodiment are included in at least one embodiment of the present application. Therefore, the references to "in one embodiment" or "in an embodiment" appearing throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0094] In the various embodiments of the present application, it should be understood that the size of the serial numbers of the following processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0095] In the embodiments of the present application, the term "and / or" describes the association relationship of the associated objects, indicating that three relationships may exist. For example, A and / or B may represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the associated objects before and after are in an "or" relationship.

[0096] In the embodiments of the present application, the term "plurality" refers to two or more than two, and other quantifiers are similar.

[0097] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0098] When describing the embodiments of the present application, some concepts used in the following description are first explained.

[0099] 1. P4

[0100] P4 technology includes two versions: P4 14 and P4 16 Their names are based on the year of the release, P4 14 It is the version released in 2014, P416 This is the version released in 2016. P4 16 The technology consists of the following five parts: Header, Parser, Control Ingress, Table, and Action.

[0101] (1) Header

[0102] The header defines the header fields of the data packet processed in the programmable device. In theory, the header is used for data storage, header parsing and field matching. If the match is successful, the defined action operation is executed, such as modification in the header field, assignment of the header field, etc. The header is divided into the header and metadata.

[0103] The packet header is used to describe the data packet structure and defines the name and length of each protocol field. It can define the length of each field and assign values ​​to each field. Metadata is used to carry data and configuration information. There are two main types: one is user-defined metadata, which can store user-defined values, temporary fields, etc., such as the calculation results of the header field; the other is inherent metadata, which is used to display the switch port number and other self-configuration information.

[0104] (2) Parser

[0105] The P4 parser describes a state machine with one start state and two final states. The start state is named start. The two final states are named accept (indicating successful parsing) and reject (indicating failed parsing). The start state is part of the parser, while the accept and reject states are distinct from the states provided by the programmer and are logically outside the parser.

[0106] (3) Flow Table

[0107] The flow table mainly consists of three parts: matching fields, specific action operations and flow table entries. It defines the forwarding processing mechanism for data packets. The flow table will be applied by BMv2 to the processing of data packets.

[0108] P4 supports multiple matching types, such as exact matching, triple matching, and longest prefix matching.

[0109] The action domain is a description of the action of data packet processing. The corresponding action is executed according to the matching result, and the number of specific parameters in each action operation is different. However, in the action domain (Actions), only the action name can be seen, and the specific parameters of the execution cannot be seen.

[0110] Table capacity limits the number of specific flow tables that each flow table can accommodate.

[0111] (4) Action

[0112] Actions define the specific operation parameters executed by the action domain. In P4 applications, the corresponding action will be executed after a successful match. The specific execution operations and variables defined in the Action are composed of action primitives. The P4 language is mainly divided into primitive actions and compound actions. The basic operations mainly include: discarding, adding and deleting headers, counting and metering. In addition, users can customize compound actions composed of one or more primitive actions.

[0113] (5) Control flow program

[0114] The control flow program mainly defines the judgment condition statements and the flow tables to be called. According to the judgment conditions, the execution order of the flow tables is determined to realize the jump of data packets between multiple flow tables. When the data packet enters the control flow program and meets the judgment conditions, it enters the flow table to perform parameter matching. This process can be understood as a function call to the flow table.

[0115] 2. SDN

[0116] The main idea of ​​software-defined networking (SDN) is the separation of the control plane and the forwarding plane; centralized control and scheduling of network resources; open programmable capabilities, allowing applications to program and schedule network resources, and achieve seamless integration of applications and network resources. Figure 1 As shown, it includes an infrastructure layer, a control layer and an application layer. The infrastructure layer includes network devices, and the control layer includes an SDN controller, which transmits data with the network devices via a control data plane interface (such as OpenFlow).

[0117] The network devices in the SDN network are usually OpenFlow switches. In a broader sense, the network devices may include forwarding devices whose forwarding rules are all controlled by the SDN controller.

[0118] (1) OpenFlow

[0119] OpenFlow is a network communication protocol used for communication between controllers and forwarders in the SDN architecture. One of the core ideas of software-defined networks (SDN) is "separation of forwarding and control". To achieve separation of forwarding and control, it is necessary to establish a communication interface standard between the controller and the forwarder, allowing the controller to directly access and control the forwarding plane of the forwarder. OpenFlow introduces the concept of "flow table", and the forwarder guides the forwarding of data packets through the flow table. The controller deploys the corresponding flow table on the forwarder through the interface provided by OpenFlow, thereby realizing the control of the forwarding plane.

[0120] The idea of ​​OpenFlow: Network devices maintain a flow table (FlowTable) and only forward according to the FlowTable. The generation, maintenance and distribution of the FlowTable itself are completely implemented by an external controller (Controller). The FlowTable here does not refer to the IP quintuple. OpenFlow 1.0 defines 10 keywords including port number, virtual local area network (VLAN), layer 2 / layer 3 / layer 4 (L2 / L3 / L4) information, but each field can be wildcarded. The network operator can decide what granularity of flow to use. For example, if the operator only needs to route according to the destination IP, then only the destination IP field in the flow table can be valid, and the others are all general configurations.

[0121] (2) SDN Controller

[0122] like Figure 2 As shown in Figure 1, the SDN controller is located in the control layer of the SDN architecture and guides the forwarding of devices through the southbound protocol. Currently, the mainstream SDN controllers are divided into two categories: open source controllers and commercial controllers developed by manufacturers.

[0123] (3) P4 Runtime

[0124] P4 Runtime is a set of protocols based on protocol buffer (Protobuf) and gRPC framework. P4-supported devices can be controlled by P4 Runtime SDN controller or users.

[0125] The difference between P4 Runtime and OpenFlow: In addition to having a highly flexible message format, the order of connection between the controller and the device is also different. OpenFlow requires the controller to open a specific interface, and then the device connects to the controller. The design of P4 Runtime is to open the gRPC server on the device, and the controller connects to the device. Therefore, there will be an agent on the device to handle the connection from the controller.

[0126] (4) Southbound Protocol

[0127] a) Border Gateway Protocol Link State (BGP-LS)

[0128] BGP-LS is also an instance of Multiprotocol Border Gateway Protocol (MP-BGP). BGP-LS abstracts the underlying network link status information into three types of network layer reachability information (NLRI) of node, link, and prefix, and reports them to the controller, which respectively describe the node capability, neighbor relationship, and IP prefix information. The controller restores the network topology and calculates the path based on this.

[0129] BGP-LS mainly carries link status data through the combination of NLRI+attribute. In order to support SRv6 features, it is necessary to add SRv6 capabilities (Capabilities) of Node NLRI, SRv6 End.X SID of Link NLRI, SRv6 locator (Locator) of NLRI prefix (Prefix NLRI) and other type length values ​​(Tag Length Value, TLV). In addition, the SRv6 system identifier (System IDentify, SID) NLRI type needs to be added.

[0130] b) BGP Traffic Engineering System (Segment Routing, SR) Policy

[0131] In SDN networking, the controller can send SRv6 Policy to the forwarder through BGP SR Policy. BGP SRPolicy is also based on the MP-BGP protocol. The SRv6 Policy information is mainly carried by NLRI and Tunnel_Encapsulation attributes. NLRI is used to carry SRv6 Policy and candidate path information.

[0132] The embodiments of the present application provide a method, apparatus and device for identifying a user plane function, so as to solve the problem of how to accurately identify multiple UPFs.

[0133] Among them, the method and the device are based on the same application concept. Since the method and the device solve the problem in a similar principle, the implementation of the device and the method can refer to each other, and the repeated parts will not be repeated.

[0134] like Figure 3 As shown, an embodiment of the present application provides a method for identifying a user plane function, which is applied to a network device and specifically includes the following steps:

[0135] Step 301: The network device identifies the UPF according to the communication protocol between the user plane function UPF and the network device.

[0136] In this embodiment, the network device may be an SDN controller or a physical device with SDN control functions. There may be multiple types of UPFs in the mobile core network under the SDN architecture, such as: OpenFlow UPF, P4 UPF (UPF based on P4 programmable technology, or other names), SRv6 UPF (SRv6 programmable UPF based on IPv6, or other names). The device type of UPF is only an example, and the specific type is not limited here. The UPF and the network device are connected using a communication protocol. The network device can identify a specific UPF based on the communication protocol between the UPF and the network device, such as identifying the type of UPF, the specific UPF, etc.

[0137] In the embodiments of the present application, the network device can accurately identify the UPF based on the communication protocol between the UPF and the network device, so that the network device can send the correct business processing logic to the corresponding UPF, and then complete the forwarding processing of the data.

[0138] As an optional embodiment, the identifying the UPF according to the communication protocol between the user plane function UPF and the network device includes at least one of the following:

[0139] (1) When the communication protocols between different types of UPFs and network devices are different, the device type of the UPF is identified according to the destination port of the protocol layer.

[0140] Optionally, the identifying the device type of the UPF according to the destination port of the protocol layer includes:

[0141] Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols; and identify the device type of the UPF according to the communication protocol.

[0142] In this embodiment, the communication protocols between different types of UPFs and network devices may be the same or different. If different UPFs are connected to network devices using different communication protocols, that is, different UPFs use different communication protocols, the UPF can be identified by the communication protocol corresponding to the destination port of the protocol layer. For example: the communication protocol is identified by the destination port of the Transmission Control Protocol (TCP) protocol layer, and then the specific UPF type is identified by the communication protocol.

[0143] (2) When the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

[0144] Optionally, identifying the device type of the UPF according to the device type field of the protocol layer includes: identifying the value of the device type field in the protocol layer; identifying the device type of the UPF according to the value; wherein different values ​​are used to indicate different device types.

[0145] In this embodiment, if different UPFs use the same communication protocol, the device type of the UPF can be carried in the relevant fields in the communication protocol (such as the device type field). For example, the value of the device type field is 1, which represents OpenflowUPF, the value of the device type field is 2, which represents P4 UPF, and the value of the device type field is 3, which represents SRv6 UPF.

[0146] As an optional embodiment, the method further includes: assigning identifiers to different types of UPFs based on the device type of the UPF.

[0147] In this embodiment, when the network device identifies the device type of the UPF, it can identify and number the UPFs of different types to distinguish the specific UPFs.

[0148] Optionally, the assigning of identifiers to different types of UPFs based on the device type of the UPF includes:

[0149] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0150] or,

[0151] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0152] In this embodiment, when classifying and identifying UPFs, different types of UPFs can adopt a unified identification format, for example: the identification of OpenFlow UPF is assigned as: of1, of2, of3, etc.; the identification of P4 UPF is assigned as: p41, p42, p43, etc.; the identification of SRv6 UPF is assigned as: sr1, sr2, sr3, etc.

[0153] Different types of UPFs may also use different identification formats. For example, the identifiers for OpenFlow UPFs are 1, 2, 3, etc.; the identifiers for P4 UPFs are p1, p2, p3, etc.; and the identifiers for SRv6 UPFs are sr1, sr2, sr3, etc.

[0154] It should be noted that the above-mentioned identification formats are only examples and are not specifically limited.

[0155] As an optional embodiment, the method further includes: sending UPF information to the application layer device, wherein the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF.

[0156] In this embodiment, the network device can send UPF information to the application layer device, such as: the device type of the UPF and / or the identifier corresponding to the UPF. The application layer device can identify the device type of the UPF or identify the specific UPF based on the UPF information. For example, the application layer device can assign identifiers to UPFs of different device types; the application layer device can unify the identifiers of UPFs of different formats. When the specific UPF under the device type cannot be identified, the application layer device can also determine the type of UPF based on the flow table field, thereby further determining the UPF corresponding to the flow table.

[0157] The implementation of the method for identifying the user plane function is described below through a specific embodiment.

[0158] As an optional embodiment, the communication protocols between different types of UPFs and network devices are different.

[0159] This embodiment uses different communication protocols to connect different UPFs to network devices to identify UPFs. Take the network device as an example, the OpenFlow UPF communicates with the SDN controller using the OpenFlow protocol, the P4 UPF connects with the SDN controller using the P4Runtime protocol, and the SRv6 protocol connects with the SDN controller using the BGP-LS protocol. When the UPF establishes a TCP connection with the SDN controller, different communication protocols are identified by defining different port numbers, thereby achieving the distinction between different types of UPFs.

[0160] Assume that 6633 represents the OpenFlow protocol, 28000 represents P4Runtime, and 35000 represents the BGP-LS protocol. This embodiment uses TCP connection as an example. The connection between UPF and SDN controller can also use UDP. When establishing a specific connection, the protocol used by the transport layer is not limited. For example, Figure 4 As shown, the step of the SDN controller identifying the UPF may include:

[0161] Step 41: When the SDN controller receives a data packet, it first checks the destination port number of the TCP protocol layer in the data packet. If the port is 6633, it determines that the UPF corresponding to the data packet is the OpenFlow UPF. If not, execute step 42.

[0162] Step 42, determine whether the port number is 28000, if yes, determine that the UPF corresponding to this data packet is P4 UPF, if not, execute step 43;

[0163] Step 43: Determine whether the port number is 35000. If so, determine that the UPF corresponding to this data packet is SRv6UPF. If not, determine that it is other UPF.

[0164] Optionally, after the SDN controller identifies the type of UPF, it further identifies the UPF by assigning an identifier. The SDN controller may identify the UPF using a unified identifier allocation method, such as assigning the identifier of the OpenFlow UPF to of:1, of:2, of:3, etc.; assigning the identifier of the P4 UPF to p4:1, p4:2, p4:3, etc.; assigning the identifier of the SRv6 UPF to sr:1, sr:2, sr:3, etc. The SDN controller may also identify the UPF using a non-uniform identifier allocation method, such as assigning the identifier of the OpenFlow UPF to 1, 2, 3, etc.; assigning the identifier of the P4 UPF to p1, p2, p3, etc.; assigning the identifier of the SRv6 UPF to sr1, sr2, sr3, etc. The identifier allocation for the UPF may adopt a unified format or a non-uniform format, and the format includes but is not limited to the examples in this embodiment.

[0165] It should be noted that the above port numbers are only examples and do not actually represent specific communication protocol types.

[0166] As an optional embodiment, the communication protocols between different types of UPFs and network devices are the same.

[0167] In this embodiment, different UPFs and controllers can be connected using the same communication protocol to distinguish them. For example, the network device is an SDN controller. For example, the OpenFlow UPF, P4 UPF, SRv6 UPF and SDN controller communicate using the Programmable protocol. When the UPF establishes a TCP connection with the SDN controller, the device type field in the Programmable protocol layer is used to identify the device type. For example, a device type field of 1 represents an OpenFlow UPF, a device type field of 2 represents a P4 UPF, and a device type field of 3 represents an SRv6 UPF. Figure 5 shown.

[0168] The step of the SDN controller identifying the UPF may include:

[0169] Step 51: When the SDN controller receives a data packet, it first checks the field value of the device type in the data packet. If it is 1, it determines that the UPF corresponding to the data packet is the OpenFlow UPF. If not, execute step 52.

[0170] Step 52, determine whether the field value is 2, if so, determine that the UPF corresponding to this data packet is P4 UPF, if not, execute step 53;

[0171] Step 53: Determine whether the field value is 3. If so, determine that the UPF corresponding to this data packet is SRv6 UPF. If not, determine that it is other UPF.

[0172] Optionally, after the SDN controller identifies the type of UPF, it further identifies the UPF by assigning an identifier. The SDN controller may identify the UPF using a unified identifier allocation method, such as assigning the identifier of the OpenFlow UPF to of:1, of:2, of:3, etc.; assigning the identifier of the P4 UPF to p4:1, p4:2, p4:3, etc.; assigning the identifier of the SRv6 UPF to sr:1, sr:2, sr:3, etc. The SDN controller may also identify the UPF using a non-uniform identifier allocation method, such as assigning the identifier of the OpenFlow UPF to 1, 2, 3, etc.; assigning the identifier of the P4 UPF to p1, p2, p3, etc.; assigning the identifier of the SRv6 UPF to sr1, sr2, sr3, etc. The identifier allocation for the UPF may adopt a unified format or a non-uniform format, and the format includes but is not limited to the examples in this embodiment.

[0173] It should be noted that the above field values ​​are only used as examples and do not actually represent specific UPF types. Programmable protocol is the name of the same communication protocol used by different types of UPF and SDN controllers.

[0174] As another optional embodiment, after the SDN controller identifies the UPF, the UPF information can be sent to the application layer device, and the application layer device receives various information of the UPF, such as the device type of the UPF and the identifier corresponding to the UPF; then the application layer device can complete the identification of the UPF based on the UPF information.

[0175] As another optional embodiment, after the SDN controller identifies the UPF, the UPF information can be sent to the application layer device, and the application layer device receives various information of the UPF, such as the device type of the UPF, that is, the application layer device does not receive the identifier corresponding to the UPF. Then the application layer device can assign an identifier to each UPF under different device types, and specifically, assign an identifier of a unified format to different types of UPFs; or assign identifiers of different formats to different types of UPFs, thereby realizing the identification of multiple UPFs.

[0176] As another optional embodiment, after receiving the UPF type information from the SDN controller, the application layer device cannot identify a specific UPF in a certain UPF type, that is, the application layer device does not receive the identifier corresponding to the UPF, and does not support numbering of UPFs. For example, the application layer device can know that there are 3 OpenFlow UPFs, 3 P4 UPFs, and 3 SRv6 UPFs, but cannot determine the specific identifier of each UPF. When sending down the processing logic, there will be a situation where it is unknown to which UPF the processing logic will be sent. In order to avoid this situation, the application layer device can determine the UPF corresponding to the flow table based on the information of the flow table field and the capabilities of the UPF, and thus send down the corresponding processing logic.

[0177] For example: Figure 6 As shown, the application layer device identifies based on the flow table fields. The types of fields supported by OpenFlow UPF are fixed and have certain type restrictions, while the fields supported by P4 UPF are customized, flexible, and have unfixed types. When the application layer device determines that the fields in the flow table are not supported by OpenFlow UPF, that is, it determines whether the non-OpenFlow flow table fields exist. If so, it determines that the processing logic is sent to P4 UPF and sends the flow table to the P4 switch. If there are no non-OpenFlow flow table fields, it determines whether there is a P4 device identifier. If so, the flow table is sent to the P4 switch. If there is no P4 device identifier, the flow table is sent to the OpenFlow switch. Among them:

[0178] 1) If there is only one P4 UPF, it is directly sent to the P4 UPF;

[0179] 2) If there are multiple P4 UPFs: all P4 UPFs can be issued; or, specific information of the UPF can be further obtained, and the specific P4 UPF to be issued can be further determined based on the UPF information.

[0180] If the application layer device determines that the fields in the flow table are supported by both OpenFlow UPF and P4 UPF, the flow table can be sent to multiple UPFs; or, further obtain specific information of the UPF to determine which specific UPF or multiple UPFs to send the flow table to.

[0181] Optionally, after receiving multiple UPF information sent by the SDN controller, the application layer device can perform unified mapping processing on the UPF identifier, that is, re-map and manage the multiple UPF identifiers in a unified format, and then present a unified identifier format to the outside world to complete the identification of multiple UPFs.

[0182] It should be noted that the above embodiment is described only by taking three UPF formats as examples. When multiple UPFs are involved, the above method is still applicable.

[0183] In the embodiments of the present application, the network device can accurately identify the UPF based on the communication protocol between the UPF and the network device, so that the network device can send the correct business processing logic to the corresponding UPF, and then complete the forwarding processing of the data.

[0184] like Figure 7 As shown, the embodiment of the present application also provides a method for identifying a user plane function, which is applied to an application layer device, including:

[0185] Step 701: The application layer device receives UPF information sent by the network device, where the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF;

[0186] Step 702: The application layer device identifies the UPF according to the UPF information.

[0187] In this embodiment, the network device may be an SDN controller or a physical device with an SDN control function, and the application layer device may be an application layer device under the SDN architecture. There may be multiple types of UPFs in the mobile core network under the SDN architecture, and the UPF and the network device are connected using a communication protocol. The network device can identify a specific UPF based on the communication protocol between the UPF and the network device, for example, identify the type of UPF, the specific UPF, etc., and send the UPF information to the application layer device. After receiving the UPF information, the application layer device can perform UPF identification based on the UPF information.

[0188] In an embodiment of the present application, the application layer device receives UPF information sent by the network device and performs UPF identification based on the UPF information, so that the application layer device can send the correct business processing logic to the corresponding UPF, thereby completing the forwarding processing of the data.

[0189] Optionally, the method further includes: if the UPF information does not include an identifier corresponding to the UPF, assigning identifiers to different types of UPFs based on the device type of the UPF.

[0190] Optionally, the assigning of identifiers to different types of UPFs based on the device type of the UPF includes:

[0191] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0192] or,

[0193] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0194] In this embodiment, when the application layer device identifies the device type of the UPF according to the UPF information, the UPFs of different types can be numbered to distinguish the specific UPFs. When classifying and identifying the UPFs, different types of UPFs can use a unified identification format, for example: the identification of the OpenFlow UPF is assigned as: of1, of2, of3, etc.; the identification of the P4 UPF is assigned as: p41, p42, p43, etc.; the identification of the SRv6 UPF is assigned as: sr1, sr2, sr3, etc.

[0195] Different types of UPFs may also use different identification formats. For example, the identifiers for OpenFlow UPFs are 1, 2, 3, etc.; the identifiers for P4 UPFs are p1, p2, p3, etc.; and the identifiers for SRv6 UPFs are sr1, sr2, sr3, etc.

[0196] As an optional embodiment, the method further includes: if the UPF information includes an identifier corresponding to the UPF, and the formats of the identifiers of different types of UPFs are different, then a unified mapping process is performed on the identifiers of different types of UPFs.

[0197] In this embodiment, the UPF information received by the application layer device includes the UPF identifier, but the format of the identifier is not uniform. The application layer device can perform unified mapping processing on the UPF identifier, that is, re-map and manage the identifiers of multiple UPFs according to a unified mode, and then present a unified identifier format to the outside world to complete the identification of multiple UPFs.

[0198] As an optional embodiment, the method further includes:

[0199] Determine the UPF corresponding to the flow table according to the information of the flow table field and the capability of the UPF; and send the corresponding flow table to the UPF.

[0200] In this embodiment, there may be a situation where the application layer device cannot identify a specific UPF, which will result in the inability to accurately send the correct processing logic (i.e., flow table) to the UPF. In order to avoid this situation, the application layer device can determine the UPF corresponding to the flow table based on the information of the flow table field and the capabilities of the UPF. That is, when the application layer device can only identify the UPF type, it can perform fuzzy identification through the processing logic field, and then send the processing logic to the UPF.

[0201] For example, you can first identify based on the flow table fields. The types of fields supported by OpenFlow UPF are fixed and have certain type restrictions, while the fields supported by P4 UPF are customized, flexible, and have unfixed types. When the application layer device determines that the fields in the flow table are not supported by OpenFlow UPF, it can be determined that the flow table is sent to P4 UPF.

[0202] In an embodiment of the present application, the application layer device receives UPF information sent by the network device and performs UPF identification based on the UPF information, so that the application layer device can send the correct business processing logic to the corresponding UPF, thereby completing the forwarding processing of the data.

[0203] The above embodiment introduces the method for identifying the user plane function of the present application. The following embodiment will further illustrate the corresponding device in conjunction with the accompanying drawings.

[0204] Specifically, Figure 8 As shown, the embodiment of the present application provides a user plane function identification device 800, which is applied to a network device, including:

[0205] The first identification unit 810 is used to identify the UPF according to the communication protocol between the user plane function UPF and the network device.

[0206] Optionally, the first identification unit is specifically configured to perform at least one of the following:

[0207] In the case where the communication protocols between different types of UPFs and network devices are different, identifying the device type of the UPF according to the destination port of the protocol layer;

[0208] In the case that the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

[0209] Optionally, the first identification unit is specifically used for:

[0210] Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols;

[0211] The device type of the UPF is identified according to the communication protocol.

[0212] Optionally, the first identification unit is specifically used to

[0213] Identify the value of the device type field in the protocol layer;

[0214] The device type of the UPF is identified according to the value; wherein different values ​​are used to indicate different device types.

[0215] Optionally, the device further comprises:

[0216] The first allocation unit is used to allocate identifiers to different types of UPFs based on the device type of the UPF.

[0217] Optionally, the first allocation unit is specifically used to:

[0218] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0219] or,

[0220] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0221] Optionally, the device further comprises:

[0222] The first sending unit is used to send UPF information to the application layer device, and the UPF information includes: the device type of the UPF and / or the identifier corresponding to the UPF.

[0223] It should be noted here that the above-mentioned device provided in the embodiment of the present application can implement all the method steps implemented in the above-mentioned method embodiment applied to the network device, and can achieve the same technical effect. The parts and beneficial effects of this embodiment that are the same as the method embodiment will not be described in detail here.

[0224] Specifically, Fig. 9 As shown, the embodiment of the present application provides a user plane function identification device 900, which is applied to an application layer device, including:

[0225] The first receiving unit 910 is used to receive UPF information sent by the network device, where the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF;

[0226] The second identification unit 920 is configured to identify the UPF according to the UPF information.

[0227] Optionally, the device further comprises:

[0228] The second allocation unit is used to allocate identifiers to different types of UPFs based on the device type of the UPF if the UPF information does not include the identifier corresponding to the UPF.

[0229] Optionally, the second allocation unit is specifically used to:

[0230] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0231] or,

[0232] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0233] Optionally, the device further comprises:

[0234] A processing unit is used to perform unified mapping processing on the identifiers of different types of UPFs if the UPF information includes the identifier corresponding to the UPF and the formats of the identifiers of different types of UPFs are different.

[0235] Optionally, the device further comprises:

[0236] A determination unit, configured to determine a UPF corresponding to a flow table according to information of a flow table field and a capability of the UPF;

[0237] The second sending unit is used to send the corresponding flow table to the UPF.

[0238] It should be noted here that the above-mentioned device provided in the embodiment of the present application can implement all the method steps implemented by the above-mentioned method embodiment applied to the application layer device, and can achieve the same technical effect. The parts and beneficial effects that are the same as the method embodiment in this embodiment will not be described in detail here.

[0239] It should be noted that the division of units in the embodiments of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. In addition, each functional unit in each embodiment of the present application may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0240] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a processor-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) or a processor (processor) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), disk or optical disk and other media that can store program codes.

[0241] like Fig.10 As shown, an embodiment of the present application further provides a network device, including: a memory 1020, a transceiver 1000, and a processor 1010; wherein the memory 1020 is used to store a computer program; the transceiver 1000 is used to receive and send data under the control of the processor 1010; the processor 1010 is used to read the computer program in the memory and perform the following operations:

[0242] Identify the UPF based on the communication protocol between the user plane function UPF and the network device.

[0243] Optionally, the processor is configured to read the computer program in the memory and perform at least one of the following operations:

[0244] In the case where the communication protocols between different types of UPFs and network devices are different, identifying the device type of the UPF according to the destination port of the protocol layer;

[0245] In the case that the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

[0246] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0247] Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols;

[0248] The device type of the UPF is identified according to the communication protocol.

[0249] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0250] Identify the value of the device type field in the protocol layer;

[0251] The device type of the UPF is identified according to the value; wherein different values ​​are used to indicate different device types.

[0252] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0253] Based on the device type of the UPF, identifiers are assigned to different types of UPFs.

[0254] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0255] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0256] or,

[0257] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0258] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0259] Send UPF information to the application layer device, where the UPF information includes: the device type of the UPF and / or an identifier corresponding to the UPF.

[0260] Among them, Fig.10 In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically linking together various circuits of one or more processors represented by processor 1010 and memory represented by memory 1020. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 1000 may be a plurality of components, namely including a transmitter and a transceiver, providing a unit for communicating with various other devices on a transmission medium. The processor 1010 is responsible for managing the bus architecture and general processing, and the memory 1020 may store data used by the processor 1010 when performing operations.

[0261] The processor 1010 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or a complex programmable logic device (CPLD). The processor may also adopt a multi-core architecture.

[0262] It should be noted here that the above-mentioned network device provided in the embodiment of the present application can implement all the method steps implemented by the above-mentioned method embodiment applied to the network device, and can achieve the same technical effect. The parts and beneficial effects that are the same as the method embodiment in this embodiment will not be described in detail here.

[0263] like Fig.11As shown, an embodiment of the present application further provides an application layer device, including: a memory 1120, a transceiver 1100, and a processor 1110; wherein the memory 1120 is used to store a computer program; the transceiver 1100 is used to receive and send data under the control of the processor 1110; the processor 1110 is used to read the computer program in the memory and perform the following operations:

[0264] Receiving UPF information sent by a network device, the UPF information including: a device type of the UPF and / or an identifier corresponding to the UPF;

[0265] The UPF is identified according to the UPF information.

[0266] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0267] If the UPF information does not include an identifier corresponding to the UPF, identifiers are assigned to different types of UPFs based on the device type of the UPF.

[0268] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0269] Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs;

[0270] or,

[0271] Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

[0272] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0273] If the UPF information includes an identifier corresponding to the UPF, and the formats of identifiers of different types of UPFs are different, unified mapping processing is performed on the identifiers of different types of UPFs.

[0274] Optionally, the processor is configured to read the computer program in the memory and perform the following operations:

[0275] Determine the UPF corresponding to the flow table according to the information of the flow table field and the capability of the UPF;

[0276] Send the corresponding flow table to the UPF.

[0277] Among them, Fig.11In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically linking together various circuits of one or more processors represented by processor 1110 and memory represented by memory 1120. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 1100 may be a plurality of components, namely including a transmitter and a transceiver, providing a unit for communicating with various other devices on a transmission medium. The processor 1110 is responsible for managing the bus architecture and general processing, and the memory 1120 may store data used by the processor 1110 when performing operations.

[0278] The processor 1110 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or a complex programmable logic device (CPLD). The processor may also adopt a multi-core architecture.

[0279] It should be noted here that the above-mentioned device provided in the embodiment of the present application can implement all the method steps implemented by the above-mentioned method embodiment applied to the application layer device, and can achieve the same technical effect. The parts and beneficial effects that are the same as the method embodiment in this embodiment will not be described in detail here.

[0280] In addition, a specific embodiment of the present application also provides a processor-readable storage medium on which a computer program is stored, wherein when the program is executed by the processor, the steps of the method for identifying the user plane function of the network device as described above are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0281] A specific embodiment of the present application also provides a processor-readable storage medium on which a computer program is stored, wherein when the program is executed by the processor, the steps of the method for identifying the user plane function applied to the application layer device as described above are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0282] Among them, the readable storage medium can be any available medium or data storage device that can be accessed by the processor, including but not limited to magnetic storage (such as floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc.), optical storage (such as CD, DVD, BD, HVD, etc.), and semiconductor storage (such as ROM, EPROM, EEPROM, non-volatile memory (NANDFLASH), solid-state drive (SSD)), etc.

[0283] It should be noted that the technical solution provided in the embodiment of the present application can be applicable to a variety of systems, especially 5G systems. For example, the applicable system can be a global system of mobile communication (GSM) system, a code division multiple access (CDMA) system, a wideband code division multiple access (WCDMA) general packet radio service (GPRS) system, a long term evolution (LTE) system, a LTE frequency division duplex (FDD) system, a LTE time division duplex (TDD) system, an advanced long term evolution (LTE-A) system, a universal mobile telecommunication system (UMTS), a world-wide interoperability for microwave access (WiMAX) system, a 5G new radio (NR) system, etc. These various systems include terminal equipment and network equipment. The system may also include a core network part, such as an evolved packet system (EPS), a 5G system (5GS), etc.

[0284] The terminal device involved in the embodiment of the present application may be a device that provides voice and / or data connectivity to a user, a handheld device with a wireless connection function, or other processing devices connected to a wireless modem. In different systems, the name of the terminal device may also be different. For example, in a 5G system, the terminal device may be called a user equipment (UE). A wireless terminal device can communicate with one or more core networks (CN) via a radio access network (RAN). The wireless terminal device may be a mobile terminal device, such as a mobile phone (or a "cellular" phone) and a computer with a mobile terminal device. For example, it may be a portable, pocket-sized, handheld, computer-built-in or vehicle-mounted mobile device that exchanges language and / or data with a wireless access network. For example, personal communication service (PCS) phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs) and other devices. The wireless terminal device may also be referred to as a system, a subscriber unit, a subscriber station, a mobile station, a mobile station, a remote station, an access point, a remote terminal device, an access terminal device, a user terminal device, a user agent, and a user device, but is not limited in the embodiments of the present application.

[0285] The network device involved in the embodiment of the present application may be a base station, which may include multiple cells providing services for the terminal. Depending on the specific application scenario, the base station may also be called an access point, or may be a device in the access network that communicates with the wireless terminal device through one or more sectors on the air interface, or other names. The network device may be used to interchange received air frames with Internet Protocol (IP) packets, and serve as a router between the wireless terminal device and the rest of the access network, wherein the rest of the access network may include an Internet Protocol (IP) communication network. The network device may also coordinate the attribute management of the air interface. For example, the network device involved in the embodiments of the present application may be a network device (Base Transceiver Station, BTS) in the Global System for Mobile communications (Global System for Mobile communications, GSM) or Code Division Multiple Access (Code Division Multiple Access, CDMA), or a network device (NodeB) in Wide-band Code Division Multiple Access (WCDMA), or an evolutionary network device (evolutional Node B, eNB or e-NodeB) in the long term evolution (long term evolution, LTE) system, a 5G base station (gNB) in the 5G network architecture (next generation system), or a home evolved Node B (Home evolved Node B, HeNB), a relay node, a home base station (femto), a pico base station (pico), etc., which is not limited in the embodiments of the present application. In some network structures, the network device may include a centralized unit (CU) node and a distributed unit (DU) node, and the centralized unit and the distributed unit may also be arranged geographically separately.

[0286] Network devices and terminal devices can each use one or more antennas for multiple-input multiple-output (MIMO) transmission. MIMO transmission can be single-user MIMO (SU-MIMO) or multi-user MIMO (MU-MIMO). Depending on the form and number of antenna combinations, MIMO transmission can be 2D-MIMO, 3D-MIMO, FD-MIMO or massive-MIMO, or it can be diversity transmission, precoded transmission or beamforming transmission, etc.

[0287] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) that contain computer-usable program code.

[0288] The present application is described with reference to the flowchart and / or block diagram of the method, device (system) and computer program product according to the embodiment of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, and the combination of the process and / or box in the flowchart and / or block diagram can be implemented by computer executable instructions. These computer executable instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing a process or multiple processes in the flowchart and / or a box or multiple boxes in the block diagram.

[0289] These processor-executable instructions may also be stored in a processor-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the processor-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0290] These processor-executable instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are performed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0291] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

Claims

1. A method for identifying a user plane function, characterized in that: include: The network device identifies the UPF based on the communication protocol between the user plane function UPF and the network device.

2. The method according to claim 1, characterized in that The identifying the UPF according to the communication protocol between the user plane function UPF and the network device includes at least one of the following: In the case where the communication protocols between different types of UPFs and network devices are different, identifying the device type of the UPF according to the destination port of the protocol layer; In the case that the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

3. The method according to claim 2, characterized in that The identifying the device type of the UPF according to the destination port of the protocol layer includes: Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols; The device type of the UPF is identified according to the communication protocol.

4. The method according to claim 2, characterized in that: The identifying the device type of the UPF according to the device type field of the protocol layer includes: Identify the value of the device type field in the protocol layer; The device type of the UPF is identified according to the value; wherein different values ​​are used to indicate different device types.

5. The method according to claim 1, characterized in that: The method further comprises: Based on the device type of the UPF, identifiers are assigned to different types of UPFs.

6. The method according to claim 5, characterized in that The assigning of identifiers to different types of UPFs based on the device type of the UPF includes: Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs; or, Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

7. The method according to claim 1, characterized in that The method further comprises: Send UPF information to the application layer device, where the UPF information includes: the device type of the UPF and / or an identifier corresponding to the UPF.

8. A method for identifying a user plane function, characterized in that: include: The application layer device receives UPF information sent by the network device, where the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF; The application layer device identifies the UPF according to the UPF information.

9. The method according to claim 8, characterized in that The method further comprises: If the UPF information does not include an identifier corresponding to the UPF, identifiers are assigned to different types of UPFs based on the device type of the UPF.

10. The method according to claim 9, characterized in that The assigning of identifiers to different types of UPFs based on the device type of the UPF includes: Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs; or, Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

11. The method according to claim 8, characterized in that The method further comprises: If the UPF information includes an identifier corresponding to the UPF, and the formats of identifiers of different types of UPFs are different, unified mapping processing is performed on the identifiers of different types of UPFs.

12. The method according to claim 8, characterized in that The method further comprises: Determine the UPF corresponding to the flow table according to the information of the flow table field and the capability of the UPF; Send the corresponding flow table to the UPF.

13. A network device, characterized in that: include: Memory, transceiver, processor: Memory for storing computer programs; a transceiver for receiving and sending data under the control of the processor; A processor is configured to read the computer program in the memory and perform the following operations: Identify the UPF based on the communication protocol between the user plane function UPF and the network device.

14. The network device according to claim 13, characterized in that: The processor is configured to read the computer program in the memory and perform at least one of the following operations: In the case where the communication protocols between different types of UPFs and network devices are different, identifying the device type of the UPF according to the destination port of the protocol layer; In the case that the communication protocols between different types of UPFs and network devices are the same, the device type of the UPF is identified according to the device type field of the protocol layer.

15. The network device according to claim 14, characterized in that: The processor is configured to read the computer program in the memory and perform the following operations: Determine the communication protocol corresponding to the destination port of the protocol layer, where different destination ports are used to indicate different communication protocols; The device type of the UPF is identified according to the communication protocol.

16. The network device according to claim 14, characterized in that: The processor is configured to read the computer program in the memory and perform the following operations: Identify the value of the device type field in the protocol layer; The device type of the UPF is identified according to the value; wherein different values ​​are used to indicate different device types.

17. The network device according to claim 13, characterized in that: The processor is configured to read the computer program in the memory and perform the following operations: Based on the device type of the UPF, identifiers are assigned to different types of UPFs.

18. The network device according to claim 17, characterized in that: The processor is configured to read the computer program in the memory and perform the following operations: Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs; or, Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

19. The network device according to claim 13, characterized in that: The processor is configured to read the computer program in the memory and perform the following operations: Send UPF information to the application layer device, where the UPF information includes: the device type of the UPF and / or an identifier corresponding to the UPF.

20. An application layer device, characterized in that: include: Memory, transceiver, processor: Memory for storing computer programs; a transceiver for receiving and sending data under the control of the processor; A processor is configured to read the computer program in the memory and perform the following operations: Receiving UPF information sent by a network device, the UPF information including: a device type of the UPF and / or an identifier corresponding to the UPF; The UPF is identified according to the UPF information.

21. The device according to claim 20, characterized in that The processor is configured to read the computer program in the memory and perform the following operations: If the UPF information does not include an identifier corresponding to the UPF, identifiers are assigned to different types of UPFs based on the device type of the UPF.

22. The device according to claim 21, characterized in that The processor is configured to read the computer program in the memory and perform the following operations: Based on the device type of the UPF, assigning identifiers of a unified format to different types of UPFs; or, Based on the device type of the UPF, different formats of identifiers are assigned to different types of UPFs.

23. The device according to claim 20, characterized in that The processor is configured to read the computer program in the memory and perform the following operations: If the UPF information includes an identifier corresponding to the UPF, and the formats of identifiers of different types of UPFs are different, unified mapping processing is performed on the identifiers of different types of UPFs.

24. The device according to claim 20, characterized in that The processor is configured to read the computer program in the memory and perform the following operations: Determine the UPF corresponding to the flow table according to the information of the flow table field and the capability of the UPF; Send the corresponding flow table to the UPF.

25. A user plane function identification device, characterized in that: include: The first identification unit is used to identify the UPF according to the communication protocol between the user plane function UPF and the network device.

26. A user plane function identification device, characterized in that: include: A first receiving unit, configured to receive UPF information sent by a network device, wherein the UPF information includes: a device type of the UPF and / or an identifier corresponding to the UPF; The second identification unit is used to identify the UPF according to the UPF information.

27. A processor-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method for identifying a user plane function according to any one of claims 1 to 7 are implemented.

28. A processor-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method for identifying a user plane function according to any one of claims 8 to 12 are implemented.