Message forwarding method and apparatus, and electronic device and storage medium

By determining the forwarding path and segmented list based on metric values ​​and load information in the 5G mobile core network, the problem that the GTP-U protocol cannot determine the forwarding path is solved, and the efficient forwarding of the SRv6 protocol on the core network data plane is realized.

WO2025055402A1PCT designated stage expired Publication Date: 2025-03-20CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/097095
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-11
Filing Date
2024-06-03
Publication Date
2025-03-20

AI Technical Summary

Technical Problem

The GTP-U protocol used by the existing 5G mobile core network data plane cannot determine the forwarding path, and the SRv6 protocol lacks a corresponding control surface solution in the core network standard, resulting in the inability to forward data packets through SRv6 on the core network data plane.

Method used

The forwarding path of the target message is determined based on the metric value information of the data network DN and the load information of the core network; then, based on the segment identifier SID of each SRv6 node included in the forwarding path, a target segment list is determined, and it is sent to the target forwarding surface network element through the session management function SMF, so that it forwards the target message based on the target segment list.

Benefits of technology

It realizes the determination of the optimal forwarding path and segmented list in the 5G mobile core network, and can efficiently forward data packets on the core network data surface through the SRv6 protocol, solving the problem that the original protocol cannot determine the forwarding path.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024097095_20032025_PF_FP_ABST
    Figure CN2024097095_20032025_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to a message forwarding method and apparatus, and an electronic device and a storage medium. The method comprises: on the basis of metric value information of a data network (DN) and load information of a core network, determining a forwarding path corresponding to a target message, wherein the metric value information is obtained on the basis of link information of a switch in the DN, and the load information is obtained on the basis of session information in a session management function (SMF) of the core network; on the basis of a segment identifier (SID) of each SRv6 node included in the forwarding path, determining a target segment list corresponding to the target message; and sending the target segment list to a target forwarding plane network element by means of the SMF, such that the target forwarding plane network element forwards the target message on the basis of the target segment list. By using the present method, on the basis of a target segment list which is generated by a control plane and corresponds to an SRv6 node, a forwarding plane can forward a data message on a data plane of a core network by means of an SRv6 protocol.
Need to check novelty before this filing date? Find Prior Art

Description

Message forwarding method, device, electronic device and storage medium

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on September 11, 2023, with application number 2023111672035, and application name “Message forwarding method, device, electronic device and storage medium”, all contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the technical field of wireless network communications, and in particular to a message forwarding method, device, electronic device, storage medium, and computer program product. Background Art

[0003] Currently, the data plane of the 5G mobile core network (i.e., RAN to UPF, UPF to UPF) uses the GTP-U (GPRS Tunneling Protocol-User Plane) protocol. This protocol is a tunneling protocol based on UDP (User Datagram Protocol) and does not have functions such as traffic engineering. Therefore, it is impossible to determine the forwarding path within the core network.

[0004] In related technologies, 3GPP TR 29.892 proposed using SRv6 (Segment Routing over IPv6) as the user plane protocol for the core network, replacing the existing GTP-U protocol. However, SRv6 is a forwarding plane protocol, and the core network standard does not include a corresponding control plane solution for SRv6. Therefore, data packets cannot be forwarded on the core network data plane using SRv6.

[0005] Summary of the Invention

[0006] Based on this, it is necessary to provide a message forwarding method, device, electronic device, computer-readable storage medium and computer program product to address the above technical problems.

[0007] In a first aspect, the present application provides a message forwarding method. The method comprises:

[0008] Determine the forwarding path corresponding to the target message based on the metric information of the data network DN and the load information of the core network; the metric information is obtained based on the link information of the switch in the DN, and the load information is obtained based on the session information in the session management function SMF of the core network;

[0009] Determining a target segment list corresponding to the target message based on a segment identifier SID of each SRv6 node included in the forwarding path;

[0010] The target segment list is sent to a target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

[0011] In one embodiment, determining the forwarding path corresponding to the target message based on the metric information of the data network DN and the load information of the core network includes:

[0012] According to a preset link state information exchange protocol, obtain link information corresponding to each switch in the DN, where the link information includes metric information corresponding to each SRv6 node of the DN;

[0013] Obtaining, through the network open function NEF in the core network, session information of the user plane network element UPF stored in the SMF, the session information including load information of the UPF;

[0014] Based on the metric information and the load information, a forwarding path corresponding to the target message is determined.

[0015] In one embodiment, determining the target segment list corresponding to the target message based on the segment identifier SID of each SRv6 node included in the forwarding path includes:

[0016] Determining, according to the forwarding path, each SRv6 node included in the forwarding path;

[0017] Determine a target segment list corresponding to the target message according to the segment identifier SID of each SRv6 node and the forwarding path.

[0018] In one of the embodiments, the method further includes: obtaining a correspondence between the source IP address and the target segment list based on the source IP address of the target message and the target segment list corresponding to the target message.

[0019] In one embodiment, the target forwarding plane network element includes a user plane network element UPF and / or a radio access network element RAN;

[0020] The sending the target segment list to a target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list, includes:

[0021] Sending the target segment list to the UPF through the SMF, so that the UPF forwards the target message based on the target segment list;

[0022] and / or, sending the target segment list to the RAN through the SMF, so that the RAN forwards the target message based on the target segment list.

[0023] In one embodiment, sending the target segment list to the UPF through the SMF, so that the UPF forwards the target message based on the target segment list, includes:

[0024] The target segment list is sent to the SMF, so that the SMF encapsulates the target segment list into an N4 message and then sends the N4 message to the UPF; the N4 message is used to enable the UPF to forward the target message in the transmission network corresponding to the N9 interface or N6 interface of the UPF according to the target segment list in the N4 message.

[0025] In one embodiment, sending the target segment list to the RAN through the SMF, so that the RAN forwards the target message based on the target segment list, includes:

[0026] The target segment list is sent to the SMF, so that the SMF sends the target segment list to the access mobility management network element AMF, so that the AMF encapsulates the target segment list into an N2 message and sends the N2 message to the RAN; the N2 message is used to enable the RAN to forward the target message in the transmission network corresponding to the N3 interface of the RAN according to the target segment list in the N2 message.

[0027] In a second aspect, the present application further provides a message forwarding method. The method comprises:

[0028] When a received target message matches a target segment list corresponding to the forwarding plane, encapsulate an IPv6 header corresponding to the target segment list into the target message to obtain an encapsulated target message, wherein the target segment list is determined based on segment identifiers (SIDs) of respective SRv6 nodes included in a forwarding path, and the forwarding path is determined based on metric information of a data network DN and load information of a core network;

[0029] The encapsulated target message is forwarded in a transport network corresponding to the forwarding plane based on the forwarding paths in the target segment list.

[0030] In one embodiment, the forwarding plane includes a radio access network (RAN); and forwarding the encapsulated target message in a transport network corresponding to the forwarding plane based on the forwarding path in the target segment list includes:

[0031] The encapsulated target message is forwarded to an N3 interface corresponding to the RAN through the RAN, so that a transmission network corresponding to the N3 interface forwards the encapsulated target message according to the forwarding path.

[0032] In one embodiment, the forwarding plane includes a user plane network element UPF; and forwarding the target message in a transport network corresponding to the forwarding plane based on the forwarding path in the target segment list includes:

[0033] The encapsulated target message is forwarded to the N6 interface or N9 interface corresponding to the UPF through the UPF, so that the transmission network corresponding to the N6 interface or the N9 interface forwards the encapsulated target message according to the forwarding path.

[0034] In one embodiment, forwarding the encapsulated target message includes: forwarding the encapsulated target message using the SRv6 protocol.

[0035] In a third aspect, the present application further provides a message forwarding device. The device comprises:

[0036] a path determination module, configured to determine a forwarding path corresponding to a target message based on metric information of a data network DN and load information of a core network; the metric information being obtained based on link information of switches in the DN, and the load information being obtained based on session information in a session management function SMF of the core network;

[0037] A list determination module, configured to determine a target segment list corresponding to the target message based on the segment identifier SID of each SRv6 node included in the forwarding path;

[0038] The list sending module is used to send the target segment list to the target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

[0039] In one embodiment, the path determination module is specifically configured to:

[0040] According to a preset link state information exchange protocol, obtain link information corresponding to each switch in the DN, where the link information includes metric information corresponding to each SRv6 node of the DN;

[0041] Obtaining, through the network open function NEF in the core network, session information of the user plane network element UPF stored in the SMF, the session information including load information of the UPF;

[0042] Based on the metric information and the load information, a forwarding path corresponding to the target message is determined.

[0043] In one embodiment, the list determination module is specifically configured to:

[0044] Determining, according to the forwarding path, each SRv6 node included in the forwarding path;

[0045] Determine a target segment list corresponding to the target message according to the segment identifier SID of each SRv6 node and the forwarding path.

[0046] In one embodiment, the list determination module is further configured to obtain a correspondence between the source IP address and the target segment list based on the source IP address of the target message and the target segment list corresponding to the target message.

[0047] In one embodiment, the target forwarding plane network element includes a user plane network element UPF and / or a radio access network element RAN; and the list sending module is specifically configured to:

[0048] The sending the target segment list to a target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list, includes:

[0049] Sending the target segment list to the UPF through the SMF, so that the UPF forwards the target message based on the target segment list;

[0050] and / or, sending the target segment list to the RAN through the SMF, so that the RAN forwards the target message based on the target segment list.

[0051] In one embodiment, the list sending module is further configured to:

[0052] The target segment list is sent to the SMF, so that the SMF encapsulates the target segment list into an N4 message and then sends the N4 message to the UPF; the N4 message is used to enable the UPF to forward the target message in the transmission network corresponding to the N9 interface or N6 interface of the UPF according to the target segment list in the N4 message.

[0053] In one embodiment, the list sending module is further configured to:

[0054] The target segment list is sent to the SMF, so that the SMF sends the target segment list to the access mobility management network element AMF, so that the AMF encapsulates the target segment list into an N2 message and sends the N2 message to the RAN; the N2 message is used to enable the RAN to forward the target message in the transmission network corresponding to the N3 interface of the RAN according to the target segment list in the N2 message.

[0055] In a fourth aspect, the present application further provides a message forwarding device. The device comprises:

[0056] a message encapsulation module, configured to, when a received target message matches a target segment list corresponding to the forwarding plane, encapsulate an IPv6 header corresponding to the target segment list into the target message to obtain an encapsulated target message, wherein the target segment list is determined based on segment identifiers SIDs of respective SRv6 nodes included in a forwarding path, and the forwarding path is determined based on metric information of a data network DN and load information of a core network;

[0057] The message forwarding module is configured to forward the encapsulated target message in a transmission network corresponding to the forwarding plane based on the forwarding path in the target segment list.

[0058] In one embodiment, the forwarding plane includes a radio access network RAN, and the message encapsulation module is specifically used to: forward the encapsulated target message to the N3 interface corresponding to the RAN through the RAN, so that the transmission network corresponding to the N3 interface forwards the encapsulated target message according to the forwarding path.

[0059] In one embodiment, the forwarding plane includes a user plane network element UPF, and the message encapsulation module is specifically used to: forward the encapsulated target message to the N6 interface or N9 interface corresponding to the UPF through the UPF, so that the transmission network corresponding to the N6 interface or the N9 interface forwards the encapsulated target message according to the forwarding path.

[0060] In one embodiment, the message forwarding module is specifically configured to: forward the encapsulated target message using the SRv6 protocol.

[0061] In a fifth aspect, the present application further provides an electronic device comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the steps of the method described in the first aspect or the second aspect are implemented.

[0062] In a sixth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in the first or second aspect.

[0063] In a seventh aspect, the present application further provides a computer program product, comprising a computer program, which, when executed by a processor, implements the steps of the method described in the first or second aspect.

[0064] The above-mentioned message forwarding method, device, electronic device, storage medium and computer program product are implemented by the following technical means: based on the metric information of the data network DN and the load information of the core network, determining the forwarding path corresponding to the target message; the metric information is obtained based on the link information of the switch in the DN, and the load information is obtained based on the session information in the session management function SMF of the core network; based on the segment identifier SID of each SRv6 node contained in the forwarding path, determining the target segment list corresponding to the target message; sending the target segment list to the target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

[0065] It can be seen that the SDN controller can know the network status of the entire network based on the DN measurement information and the core network load information, and thus select a forwarding path for forwarding messages. Since the forwarding path contains multiple SRv6 nodes, and the SRv6 protocol is used to communicate between SRv6 nodes, the target segment list obtained based on the SRv6 node can also be communicated using the SRv6 protocol. Based on this, the target segment list corresponding to the forwarding path is determined according to the segment identifier SID of the SRv6 node and the forwarding path. After the SDN controller sends the target segment list to the target forwarding plane network element, the target forwarding plane network element can forward the matching message according to the forwarding path on the target segment list based on the target segment list, so that the target forwarding plane network element can forward the data message on the core network data plane through the SRv6 protocol. BRIEF DESCRIPTION OF THE DRAWINGS

[0066] FIG1 is an application environment diagram of a message forwarding method according to an embodiment;

[0067] FIG2 is a schematic diagram of a flow chart of a message forwarding method in one embodiment;

[0068] FIG3 is a schematic diagram of a flow chart of a step of determining a forwarding path in one embodiment;

[0069] FIG4 is a schematic flow chart of the step of determining a target segment list in one embodiment;

[0070] FIG5 is a flow chart of the steps of sending a target segment list in one embodiment;

[0071] FIG6 is a schematic diagram of a flow chart of a message forwarding method in another embodiment;

[0072] FIG7 is a schematic structural diagram of a message forwarding method according to another embodiment;

[0073] FIG8 is a schematic diagram of a core network according to an embodiment;

[0074] FIG9 is a schematic diagram of a core network in another embodiment;

[0075] FIG10 is a structural block diagram of a message forwarding device according to an embodiment;

[0076] FIG11 is a structural block diagram of a message forwarding device according to an embodiment;

[0077] FIG12 is a diagram showing the internal structure of an electronic device in one embodiment. DETAILED DESCRIPTION

[0078] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0079] The message forwarding method provided in the embodiments of the present application can be applied in the application environment shown in Figure 1 . A user equipment (UE) 102 communicates with a data network (DN) 108 via a core network. For example, UE 102 sends a message to a forwarding plane network element 104 of the core network. The message is then forwarded from the core network to the DN based on the forwarding address. A control plane network element 106 can generate a segment list for forwarding the message and send the segment list to the corresponding forwarding plane network element 104. The forwarding plane network element 104 can then forward the corresponding message throughout the network based on the forwarding path in the segment list. User equipment UE 102 can include, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle devices. Portable wearable devices can include smart watches, smart bracelets, and head-mounted devices. Forwarding plane network element 104 can be implemented using communication equipment such as switches or base stations.

[0080] In one embodiment, as shown in FIG2 , a packet forwarding method is provided. This method is described using an example of a software-defined network (SDN) controller of the control plane network element in FIG1 . The SDN controller is a module in the SDN responsible for centrally managing network traffic and data forwarding. The SDN controller is used to separate the control plane from the data plane. The packet forwarding method includes the following steps:

[0081] Step S202: Determine a forwarding path corresponding to the target message based on the metric information of the data network DN and the load information of the core network.

[0082] The metric information is obtained based on the link information of the switches in the DN. This metric information can be used to determine the optimal path. Each routing algorithm generates a metric for each path when generating a routing table. The metric information can be used to determine the optimal path. The metric information can represent the status value of each SRv6 node included in the data network DN. This status value is used to determine the usage priority of the SRv6 node, thereby determining the SRv6 nodes included in the optimal forwarding path based on the usage priority of each SRv6 node. In one example, the SRv6 node status value included in the metric information can include the number of SRv6 node hops, data link delay, loan, latency, load, etc.

[0083] The load information is obtained based on the session information in the session management function SMF (Session Management function) of the core network. The load information is information about the network traffic carried by multiple UPFs. The load information can represent the status value of each SRv6 node contained in the core network. The status value is used to determine the usage priority of each SRv6 node in the core network, and the SRv6 nodes included in the optimal forwarding path are determined based on the usage priority of each SRv6 node. In one example, the load information may include the load information of multiple UPFs; the load information of the multiple UPFs includes the size of the transmitted data traffic, the transmission rate, the number of users connected to the UPF, and the number of connections established with the UPF.

[0084] A data network (DN) refers to a network that provides data-centric services such as the internet, cloud services, and enterprise networks. A data network can be a local area network (LAN), a wide area network (WAN), or the internet. The core network is a crucial component of a mobile communications network, processing and forwarding signaling and data in mobile communications. The core network is a layered network architecture that can include multiple network nodes and protocols to implement various mobile communications functions and services. A target message is a data message sent by a user terminal to the core network, which can contain data information. A forwarding path is a path used to forward a target message. The core network can forward the target message along a matching forwarding path.

[0085] In one example, the SDN controller obtains metric information for each network node in the DN and load information for multiple network nodes in the core network. The metric information is stored in multiple switches in the DN, and the load information is stored in session information in the SMF. The SDN controller uses a pre-defined optimal path calculation algorithm to determine the optimal path for forwarding a packet from the initial SRv6 node to the final SRv6 node, and uses this path as the forwarding path.

[0086] In an example, the forwarding path can be an uplink path from the UE to the DN, the initial SRv6 node can be the UE, and the ending SRv6 node can be a node in the DN; the forwarding path can be a downlink path from the DN to the UE, the initial SRv6 node can be a node in the DN, and the ending SRv6 node can be the UE; the forwarding path can also be any two SRv6 nodes in the core network and the DN, for example, the forwarding path is the uplink path of RAN-UPF, the downlink path of UPF-RAN, or the path of UPF-UPF, which is not specifically limited in the embodiments of the present application.

[0087] Step S204: Determine a target segment list corresponding to the target message based on the segment identifier SID of each SRv6 node included in the forwarding path.

[0088] An SRv6 node is a physical communication device in a communication network that uses the SRv6 protocol. A Segment Identifier (SID) is a segment identifier for an SRv6 node, serving as a unique identifier for that node. The target segment list is a list generated by the SDN controller that enables the control plane to forward packets corresponding to the target segment list along the forwarding path. A forwarding path can include multiple SRv6 nodes.

[0089] In one example, a forwarding path includes multiple SRv6 nodes, and each SRv6 node includes its own corresponding SID. The SDN controller can convert the forwarding path based on each SID to obtain a target segment list that can be recognized by the communication device; after determining the target message, the SDN controller can combine the SIDs of each SRv6 node included in the forwarding path according to the forwarding path corresponding to the target message to obtain a target segment list corresponding to the target message.

[0090] Step S206: Send the target segment list to the target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

[0091] The target forwarding plane network element is one or more network elements on the forwarding plane, which are used to forward the target message to the next network element. The target forwarding plane network element can receive the target segment list determined by the SDN controller and forward the target message based on the target segment list.

[0092] In one example, the SDN controller sends a message containing a target segment list to the SMF through the Network Exposure Function (NEF). The target segment list can be used for uplink and / or downlink forwarding of the target message. The SMF stores the target segment list in a message used to transmit data to the target forwarding plane network element and sends the target segment list to each target forwarding plane network element through the message. After receiving the target message, the target forwarding plane network element can forward the target message according to the target segment list.

[0093] Based on the above-mentioned message forwarding method, it can be known that the SDN controller can know the network status of the entire network based on the DN measurement information and the core network load information, and thus select a forwarding path for forwarding messages. Since the forwarding path contains multiple SRv6 nodes, and the SRv6 protocol is used to communicate between SRv6 nodes, the target segment list obtained based on the SRv6 node can also be communicated using the SRv6 protocol. Based on this, the target segment list corresponding to the forwarding path is determined according to the segment identifier SID of the SRv6 node and the forwarding path. After the SDN controller sends the target segment list to the target forwarding plane network element, the target forwarding plane network element can forward the matching message according to the forwarding path on the target segment list based on the target segment list, so that the target forwarding plane network element can forward the data message on the core network data plane through the SRv6 protocol.

[0094] In one embodiment, as shown in FIG3 , step S202 , based on the metric information of the data network DN and the load information of the core network, determines the forwarding path corresponding to the target message, including:

[0095] Step S302: Acquire link information corresponding to each switch in the DN according to a preset link state information exchange protocol.

[0096] The Link State Information Exchange Protocol enables the SDN controller to obtain link information from switches in the DN. This information is stored on the switch and includes information about network links, such as the status of multiple nodes in the link, bandwidth, latency, and packet loss rate. This information includes metrics for each SRv6 node in the DN.

[0097] In one example, the SDN controller can collect link information corresponding to each switch included in the DN through the BGP-LS protocol (BGP LinkState); the SDN controller can determine the network topology of the DN based on the metric information of each SRv6 node in the link information, and the SDN controller can determine the respective network status of multiple SRv6 nodes in the DN based on the network topology. The network status can represent the usage priority of each SRv6 node in the DN. The higher the usage priority, the more likely it is that the forwarding path passing through the SRv6 node will be selected when determining the forwarding path.

[0098] Step S304: Obtain the session information of the user plane network element UPF stored in the SMF through the network open function NEF in the core network.

[0099] The session information includes the load information of the UPF.

[0100] In an example, UPF regularly sends the load information corresponding to UPF to SMF through URR (Usage Reporting Rule); SMF stores the load information in the session information, and the SDN controller can obtain the session information of SMF through NEF to obtain the load information corresponding to UPF.

[0101] Step S306: Determine the forwarding path corresponding to the target message based on the metric information and the load information.

[0102] In one example, the SDN controller can determine the forwarding path corresponding to the target message in the DN based on the metric information, and determine the forwarding path corresponding to the target message in the core network based on the load information, and merge the two paths as the final forwarding path for the target message. In one example, the SDN controller can first merge the metric information of each SRv6 node in the DN with the load information of each SRv6 node in the core network to obtain the network topology of the entire network including the core network and the DN, and determine the forwarding path corresponding to the target message based on a preset optimal path calculation algorithm.

[0103] In this embodiment, the SDN controller obtains the network status information of the entire network through the link information corresponding to the switch and the session information of the UPF, and determines the forwarding path of the target message based on the network status information of the entire network. Since the network status information of the entire network includes the core network and DN, a more accurate forwarding path can be obtained.

[0104] In one embodiment, as shown in FIG4 , step S204 determines a target segment list corresponding to the target message based on the segment identifier SID of each SRv6 node included in the forwarding path, including:

[0105] Step S402: Determine, based on the forwarding path, each SRv6 node included in the forwarding path.

[0106] Step S404: Determine a target segment list corresponding to the target message according to the segment identifier SID of each SRv6 node and the forwarding path.

[0107] The forwarding path includes multiple SRv6 nodes, and each SRv6 node includes its corresponding SID. Therefore, each SID can represent a unique SRv6 node.

[0108] In one example, the SDN controller obtains the SID of each SRv6 node in the forwarding path; the SID corresponds to the SRv6 node one-to-one, so the SID can be merged into the forwarding path through a preset segment list algorithm to form a target segment list.

[0109] In one example, after the SDN controller determines a forwarding path for a target message, it uses the SIDs of the corresponding nodes of the devices (including UPFs or routers, switches, etc.) that the forwarding path passes through to form a target segment list.

[0110] In one example, the SDN controller determines the target segment list corresponding to the target message based on the segment identifier SID and forwarding path of each SRv6 node, wherein the target segment list may include the forwarding path between two target control plane network elements, or may include the forwarding path between two or more target control plane network elements, may include the forwarding path between the target control plane network element and the DN, or may be the forwarding path from the UE to the target control plane and then to the DN. In addition, the forwarding path may be an uplink path and a downlink path, therefore, the target segment list may include the forwarding path from the UE to the DN, or may include the forwarding path from the DN to the UE. This application does not specifically limit the forwarding paths contained in the target segment list.

[0111] In this embodiment, the SDN controller determines the target segment list through the forwarding path and the SID corresponding to the SRv6 node. Since the SID is the identifier of the SRv6 node, the target segment list is unique and can use the SRv6 protocol to forward the target message, thereby improving the accuracy of the target segment list.

[0112] In one embodiment, the message forwarding method further includes:

[0113] Based on the source IP address of the target message and the target segment list corresponding to the target message, a correspondence between the source IP address and the target segment list is obtained.

[0114] The source IP address can be used to match the target message with the target segment list. The corresponding relationship between the source IP address and the target segment list can be used as the basis for matching the target message with the target segment list. The corresponding relationship is used to match the target message with the target segment list.

[0115] In one embodiment, the SDN controller matches the source IP address of the target message with the target segment list corresponding to the target message according to a preset matching algorithm, and obtains the correspondence between the two, so that in subsequent steps, the target forwarding plane network element can determine the segment list corresponding to the message based on the correspondence.

[0116] In this embodiment, the SDN controller determines the correspondence between the source IP address and the target segment list, so that the target forwarding plane network element can determine the target segment list corresponding to the to-be-forwarded message based on the correspondence, thereby improving the matching accuracy between the target segment list and the to-be-forwarded message.

[0117] In one embodiment, the target forwarding plane network element includes a user plane network element UPF and / or a radio access network element RAN (Radio Access Network). As shown in FIG5 , step S206 of sending the target segment list to the target forwarding plane network element through the SMF so that the target forwarding plane network element forwards the target message based on the target segment list includes:

[0118] Step S502: Send the target segment list to the UPF through the SMF, so that the UPF forwards the target message based on the target segment list.

[0119] In one embodiment, the target forwarding plane network element may be a UPF. The SDN controller sends the target segment list to the SMF via the NEF. The SMF sends the target segment list to the UPF via an N4 message. After receiving the target packet from the N3 interface, the UPF may forward the target packet based on the target segment list that matches the target packet.

[0120] And / or, in step S504, the target segment list is sent to the RAN via the SMF, so that the RAN forwards the target message based on the target segment list.

[0121] Steps S502 and S504 may be performed separately or together. When the target forwarding plane network element includes a user plane network element (UPF), step S502 is performed; when the target forwarding plane network element includes a radio access network element (RAN), step S504 is performed; and when the target forwarding plane network element includes both a user plane network element (UPF) and a radio access network element (RAN), both steps are performed.

[0122] In one embodiment, the target forwarding plane network element may be a RAN. The SDN controller sends the target segment list to the SMF via the NEF. The SMF sends the target segment list to the AMF (Access and Mobility Management Function) via the N11 message. The AMF sends the target segment list to the RAN via the N2 message. After receiving the target message from the UE, the RAN may forward the target message to the UPF via the N3 message based on the target segment list that matches the target message.

[0123] In addition, the target forwarding plane network element may be a RAN and a UPF. Based on this, step S502 and step S504 are executed. There is no sequential relationship between step S502 and step S504, and the two can be regarded as a parallel relationship.

[0124] In this embodiment, the SDN controller sends target segment lists to multiple target forwarding plane network elements respectively, so that the multiple target forwarding plane network elements can forward target messages based on their respective corresponding target segment lists, thereby improving the flexibility of the target forwarding plane network elements in forwarding messages.

[0125] In one embodiment, step S502, sending the target segment list to the UPF via the SMF, so that the UPF forwards the target message based on the target segment list, includes:

[0126] The target segment list is sent to SMF, so that SMF encapsulates the target segment list into N4 message and then sends the N4 message to UPF.

[0127] The N4 message is used to enable the UPF to forward the target message in the transmission network corresponding to the UPF's N9 interface or N6 interface, according to the target segment list in the N4 message. The transmission network corresponding to the N9 interface is the transmission network corresponding to the UPF-UPF transmission network, and the transmission network of the N6 interface is the transmission network corresponding to the NPF-DN transmission network.

[0128] In one embodiment, the SDN controller sends the target segment list to the SMF via the NEF, so that the SMF encapsulates the target segment list into the N4 message and then sends the N4 message to the UPF. After the UPF receives the target message through the N3 interface, the UPF can delete the IPv6 header contained in the target message and use the PDR (Packet Detection Rule) rule in the N4 message to match the target message. If a match is found, the target message is added with an IPv6 header with a segment routing extension header SRH (Segment Routing Header) through the forwarding action rule FAR (Forwarding Action Rule) containing the target segment list, and forwarded to the transmission network corresponding to the N9 interface or the N6 interface respectively, and the target message is forwarded in the transmission network in the order of the target segment list.

[0129] In one example, the PDR contains matching data, which may include multiple source IP addresses. After the UPF receives the target message, it determines the source IP address corresponding to the target message and matches the multiple source IP addresses contained in the PDR with the source IP address of the target message. If a source IP address that is the same as the source IP address of the target message is found among the multiple source IP addresses contained in the PDR, it can be determined that the PDR matches the target message, i.e., a match is hit.

[0130] In this embodiment, the SDN controller sends the target segment list to the UPF, so that the UPF can forward the target message through the target segment list, and finally forward the target message to the DN according to the optimal path.

[0131] In one embodiment, step S504, sending the target segment list to the RAN via the SMF, so that the RAN forwards the target message based on the target segment list, includes:

[0132] The target segment list is sent to SMF so that SMF sends the target segment list to the access mobility management network element AMF, so that AMF encapsulates the target segment list into the N2 message and sends the N2 message to RAN.

[0133] The N2 message is used to enable the RAN to forward the target message in the transmission network corresponding to the N3 interface of the RAN according to the target segment list in the N2 message. The transmission network of the N3 interface is the transmission network corresponding to the UPF-UPF.

[0134] In one example, the SDN controller sends the target segment list to the SMF via the NEF, so that the SMF sends the target segment list to the access mobility management network element AMF, so that the AMF encapsulates the target segment list into the N2 message and sends the N2 message to the RAN. After the RAN receives the target message from the UE, it matches the target segment list corresponding to the target message through the source IP address of the target message, encapsulates the target segment list into the IPv6 header, and adds the IPv6 header to the target message. The RAN forwards the target message with the IPv6 header added to the transmission network corresponding to the N3 interface. The transmission network forwards the target message in the order of the target segment list and finally forwards the target message to the UPF.

[0135] In one example, the RAN can match the target segment list and the target message based on a preset mapping table, where the mapping table contains a correspondence between the target segment list and the source IP address of the target message; the RAN can query the mapping table based on the source IP address of the target message, and if a source IP address identical to the source IP address of the target message is found, the target segment list corresponding to the source IP address identical to the source IP address of the target message in the mapping table is used as the target segment list that matches the target message.

[0136] In this embodiment, the SDN controller sends the target segment list to the RAN, so that the RAN can forward the target message according to the target segment list, and finally forward the target message to the UPF according to the optimal path.

[0137] In one embodiment, as shown in FIG6 , a packet forwarding method is provided, which is described by taking the method applied to the forwarding plane as an example. The method includes the following steps:

[0138] Step S602: When the received target message matches the target segment list corresponding to the forwarding plane, the IPv6 header corresponding to the target segment list is encapsulated into the target message to obtain an encapsulated target message.

[0139] The target segment list is determined based on the segment identifier SID of each SRv6 node included in the forwarding path, and the forwarding path is determined based on the metric information of the data network DN and the load information of the core network; the IPv6 header can store the target segment list.

[0140] In one example, the forwarding plane matches the received target message with multiple target segment lists contained in the forwarding plane. If the match is successful, the matched target segment list is encapsulated into the IPv6 header. The forwarding plane can encapsulate the IPv6 header containing the target segment list into the target message to obtain the encapsulated target message.

[0141] In one example, the forwarding plane can match the target segment list and the target message based on a preset mapping table, where the mapping table contains the correspondence between the target segment list and the source IP address of the target message; the forwarding plane can query the mapping table based on the source IP address of the target message. If a source IP address that is the same as the source IP address of the target message is found, the target segment list corresponding to the source IP address that is the same as the source IP address of the target message in the mapping table is used as the target segment list that matches the target message.

[0142] Step S604: forwarding the encapsulated target message in the transport network corresponding to the forwarding plane based on the forwarding path in the target segment list.

[0143] In one embodiment, the forwarding plane can determine multiple SRv6 nodes in one or more transmission networks corresponding to the forwarding plane based on the target segment list contained in the IPv6 header, and forward the encapsulated target message in each SRv6 node in sequence according to the forwarding path in the target segment list.

[0144] In this embodiment, the forwarding plane encapsulates the target segment list matching the target message into an IPv6 header, and encapsulates the IPv6 header into the target message, so that the target message is forwarded along the optimal path of the target segment list in the transmission network corresponding to the forwarding plane.

[0145] In one embodiment, the forwarding plane includes a radio access network (RAN). Step S604 includes forwarding the encapsulated target message in a transport network corresponding to the forwarding plane based on the forwarding path in the target segment list. The forwarding plane includes:

[0146] The encapsulated target message is forwarded to the N3 interface corresponding to the RAN through the RAN, so that the transmission network corresponding to the N3 interface forwards the encapsulated target message according to the forwarding path.

[0147] In one embodiment, after receiving the target message from the UE, the RAN matches the target segment list corresponding to the target message through the source IP address of the target message, encapsulates the target segment list into the IPv6 header, and adds the IPv6 header to the target message. The RAN forwards the target message with the added IPv6 header to the transmission network corresponding to the N3 interface. The transmission network forwards the target message in the order of the target segment list and finally forwards the target message to the UPF.

[0148] In this embodiment, the RAN can forward the target message through the target segment list, and finally forward the target message to the UPF according to the optimal path.

[0149] In one embodiment, the forwarding plane includes a user plane network element UPF. Step S604, based on the forwarding path in the target segment list, forwarding the target message in the transport network corresponding to the forwarding plane includes:

[0150] The encapsulated target message is forwarded to the N6 interface or N9 interface corresponding to the UPF through the UPF, so that the transmission network corresponding to the N6 interface or N9 interface forwards the encapsulated target message according to the forwarding path.

[0151] In one embodiment, after the UPF receives the target message through the N3 interface, the UPF removes the IPv6 header contained in the target message and uses the PDR rule in the N4 message to match the message. If a match is hit, the target message is added with an IPv6 header with a segment routing extension header SRH through the forwarding action rule FAR containing the target segment list, and forwarded to the transmission network corresponding to the N9 interface or the N6 interface respectively, and the target message is forwarded in the transmission network in the order of the target segment list.

[0152] In one example, the PDR contains matching data, which may include multiple source IP addresses. After the UPF receives the target message, it determines the source IP address corresponding to the target message and matches the multiple source IP addresses contained in the PDR with the source IP address of the target message. If a source IP address that is the same as the source IP address of the target message is found among the multiple source IP addresses contained in the PDR, it can be determined that the PDR matches the target message, i.e., a match is hit.

[0153] In an example, if the transmission network corresponding to the UPF is UPF-UPF, the target message is forwarded in the transmission network in the order of the target segment list, and the target message is forwarded to the UPF; if the transmission network corresponding to the UPF is UPF-DN, the target message is forwarded in the transmission network in the order of the target segment list, and the target message is forwarded to the DN.

[0154] In this embodiment, the UPF can forward the target message through the target segment list, and finally forward the target message to the DN according to the optimal path.

[0155] In one embodiment, in step S604, forwarding the encapsulated target message includes: forwarding the encapsulated target message using the SRv6 protocol.

[0156] In an example, multiple network elements included in the forwarding plane all use the SRv6 protocol to forward target packets with IPv6 headers.

[0157] In this embodiment, the forwarding plane uses the SRv6 protocol to forward the target message, which can improve the forwarding efficiency of the target message.

[0158] In one embodiment, in an instance of an IPv6 header, the target segment list may be a Segment List. Taking the Segment List as an example, the IPv6 header includes a list Segment List[0..n], which includes n segments; each segment may be a 128-bit address; the Segment List may be obtained according to the SRv6 policy encoding. The Segment List is in the form of an IPv6 address. Segment List[0] is the last segment of the path; Segment List[1] is the second to last segment of the path, ..., Segment List[n-1] is the second segment of the path, and Segment List[n] is the first segment of the path.

[0159] As shown in Figure 7, the following describes the specific implementation process of the above-mentioned message forwarding method in detail with reference to a specific embodiment. Since the service messages between the UPF and RAN (N3 interface) and between the UPF and UPF (N9 interface) use the GTP-U protocol, and the UPF and DN (N6 interface) use the IP protocol, none of the above user plane protocols use the SRv6 protocol, and the control plane does not have SDN functions, the forwarding plane cannot forward messages using the SRv6 protocol.

[0160] Based on this, the embodiment of the present application can add an SDN controller to the control plane part, and add the SRv6 Segment List information type to the N2 message and N4 message, so that the N2 message and N4 message transmit messages with SRv6 data.

[0161] In the control plane, the control plane determines the segment list through the SDN controller. The steps are as follows:

[0162] Step 100: Introduce the SDN controller into the core network as the AF (The Application Function). The AF sends a control plane message containing the uplink and downlink Segment List to the SMF via the NEF.

[0163] Step 110: The SDN controller collects link information from switches in the DN using the BGP-LS protocol (BGP LinkState). After the information is collected, the SDN controller can restore the DN network topology, so that the SDN controller can obtain the state of the data network DN (the state can be determined by the metric value).

[0164] Step 120: The SDN controller collects session information in the SMF through the NEF and obtains the status information of the UPF (for example, the current load of the UPF). The UPF regularly reports its status to the SMF through the URR (Usage Reporting Rule), so the SDN controller can know the UPF status of the core network user plane.

[0165] Step 130: The SDN controller can learn the network status of the entire network (core network and data network DN) through steps 110 and 120 to determine an optimal path.

[0166] Step 140: After the SDN controller determines a path, it uses the SIDs of the nodes of the devices (including UPFs, routers, switches, etc.) that the path passes through to form a Segment List.

[0167] Step 150: SMF sends an N4 message with a Segment List to UPF.

[0168] Step 160: The SMF sends the Segment List to the AMF, which then sends it to the RAN via the N2 message.

[0169] In the control plane, when the RAN or UPF receives a service message, it encapsulates the service message according to the IPv6 header in the message and forwards it to the outbound interface. The IPv6 header contains the Segment List.

[0170] Step 210: (Uplink process) After receiving the message from the UE, the RAN matches the source IP address of the message, then encapsulates the corresponding Segment List header (SL1) and forwards it to the N3 interface. The transmission network of the N3 interface forwards it according to the order of SL1.

[0171] Step 220: After the message enters the UPF from the N3 interface, the UPF first removes the IPv6 header and matches the message with the PDR rule in the N4 PFCP message. If a match is found, the corresponding FAR with Segment List (SL2) is executed, the message is encapsulated with an IPv6 header with SRH, and forwarded to the outbound interface, and forwarded in the DN according to the order of SL2.

[0172] Step 310: (Downlink process) After receiving the message from DN, UPF will match the destination IP address of the message, then encapsulate the IPv6 header containing the downstream Segment List (SL3), and forward it to the N3 interface. The transmission network of the N3 interface will forward it in the order of SL3.

[0173] Step 320: After the message enters the RAN from the N3 interface, the RAN removes the original IPv6 header and forwards it to the outbound interface.

[0174] As can be seen, the forwarding plane is between the RAN-UPF (N3 interface), UPF-UPF (N9 interface), and UPF-DN (N6 interface), and forwards according to SRv6 rules. Among them, N1 is used to enable communication between the UE and AMF, and N11 is used to enable communication between the AMF and SMF. Accordingly, the branch point UPF can communicate with the first PDU (Packet Data Unit) session anchor and the second PDU session anchor through N9, thereby forwarding the message to the UPF corresponding to the PDU session anchor.

[0175] In one embodiment, as shown in FIG8 and FIG9 , a core network using an SRv6 data plane includes a traditional mode and an enhanced mode.

[0176] In the traditional mode, there are three SRv6 nodes, gNB, UPF1, and UPF2, and UE. gNB (gnodeB) is the node B corresponding to RAN in 5G, and UPF1 and UPF2 are two UPF nodes. The N3 interface is between gNB and UPF1, and SRv6 is used to forward messages. The N9 interface is between UPF1 and UPF2, and SRv6 protocol is used to forward messages. Finally, the messages are forwarded to DN through the N6 interface.

[0177] In enhanced mode, there are four SRv6 nodes: gNB, VNF (Virtualized Network Function), Router, and UPF. VNF is a software application that implements network functions (forwarding services, IP configuration, etc.), and Router is a router. The N3 interface is between gNB and VNF, the N3 interface is between VNF and Router, the N3 interface is between Router and UPF, and the N6 interface is between UPF and DN. SRv6 protocol is used to forward packets, and finally the packets are forwarded to DN through the N6 interface.

[0178] It should be understood that, although the steps in the flowcharts of the above embodiments are shown in sequence as indicated by the arrows, these steps are not necessarily performed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the flowcharts of the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times. The execution order of these steps or stages is not necessarily to be performed in sequence, but can be performed in turn or alternately with other steps or at least a portion of steps or stages in other steps.

[0179] Based on the same inventive concept, embodiments of the present application further provide a message forwarding device for implementing the message forwarding method described above. The implementation solution provided by this device is similar to the implementation solution described in the above method. Therefore, the specific limitations of one or more message forwarding device embodiments provided below can be found in the above limitations of the message forwarding method and will not be repeated here.

[0180] In one embodiment, as shown in FIG10 , a message forwarding device 1000 is provided, comprising: a path determination module 1001 , a list determination module 1002 , and a list sending module 1003 , wherein:

[0181] The path determination module 1001 is used to determine the forwarding path corresponding to the target message based on the metric information of the data network DN and the load information of the core network; the metric information is obtained based on the link information of the switch in the DN, and the load information is obtained based on the session information in the session management function SMF of the core network;

[0182] The list determination module 1002 is configured to determine a target segment list corresponding to a target message based on the segment identifier SID of each SRv6 node included in the forwarding path;

[0183] The list sending module 1003 is used to send the target segment list to the target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

[0184] In one embodiment, the path determination module 1001 is specifically configured to:

[0185] According to the preset link state information exchange protocol, the link information corresponding to each switch in the DN is obtained. The link information includes the metric information corresponding to each SRv6 node in the DN.

[0186] Through the network open function NEF in the core network, the session information of the user plane network element UPF stored in the SMF is obtained. The session information includes the load information of the UPF;

[0187] Based on the metric information and load information, the forwarding path corresponding to the target message is determined.

[0188] In one embodiment, the list determination module 1002 is specifically configured to:

[0189] According to the forwarding path, determine each SRv6 node included in the forwarding path;

[0190] The target segment list corresponding to the target message is determined based on the segment identifier SID and forwarding path of each SRv6 node.

[0191] In one embodiment, the list determining module 1002 is further configured to obtain a correspondence between the source IP address and the target segment list based on the source IP address of the target message and the target segment list corresponding to the target message.

[0192] In one embodiment, the target forwarding plane network element includes a user plane network element UPF and / or a radio access network element RAN; the list sending module 1003 is specifically configured to:

[0193] Sending the target segment list to the target forwarding plane NE through the SMF, so that the target forwarding plane NE forwards the target message based on the target segment list, including:

[0194] Send the target segment list to UPF through SMF, so that UPF forwards the target message based on the target segment list;

[0195] And / or, sending the target segment list to the RAN through the SMF, so that the RAN forwards the target message based on the target segment list.

[0196] In one embodiment, the list sending module 1003 is further configured to:

[0197] The target segment list is sent to SMF, so that SMF encapsulates the target segment list into N4 message and then sends the N4 message to UPF; the N4 message is used to enable UPF to forward the target message in the transmission network corresponding to the N9 interface or N6 interface of UPF according to the target segment list in the N4 message.

[0198] In one embodiment, the list sending module 1003 is further configured to:

[0199] The target segment list is sent to the SMF so that the SMF sends the target segment list to the access mobility management network element AMF, so that the AMF encapsulates the target segment list into the N2 message and sends the N2 message to the RAN; the N2 message is used to enable the RAN to forward the target message in the transmission network corresponding to the N3 interface of the RAN according to the target segment list in the N2 message.

[0200] In one embodiment, as shown in FIG11 , a message forwarding device 1100 is provided, comprising: a message encapsulation module 1101 and a message forwarding module 1102 , wherein:

[0201] The message encapsulation module 1101 is configured to encapsulate the IPv6 header corresponding to the target segment list into the target message when the received target message matches the target segment list corresponding to the forwarding plane, thereby obtaining the encapsulated target message. The target segment list is determined based on the segment identifiers (SIDs) of the SRv6 nodes included in the forwarding path, and the forwarding path is determined based on the metric information of the data network DN and the load information of the core network.

[0202] The message forwarding module 1102 is configured to forward the encapsulated target message in a transport network corresponding to the forwarding plane based on the forwarding path in the target segment list.

[0203] In one embodiment, the forwarding plane includes a radio access network RAN, and the message encapsulation module 1101 is specifically configured to forward the encapsulated target message to an N3 interface corresponding to the RAN through the RAN, so that a transmission network corresponding to the N3 interface forwards the encapsulated target message according to a forwarding path.

[0204] In one embodiment, the forwarding plane includes a user plane network element UPF, and the message encapsulation module 1101 is specifically used to: forward the encapsulated target message to the N6 interface or N9 interface corresponding to the UPF through the UPF, so that the transmission network corresponding to the N6 interface or N9 interface forwards the encapsulated target message according to the forwarding path.

[0205] In one embodiment, the message forwarding module 1402 is specifically configured to forward the encapsulated target message using the SRv6 protocol.

[0206] Each module in the above-mentioned message forwarding device can be implemented in whole or in part through software, hardware, or a combination thereof. Each module can be embedded in or independent of the processor in the electronic device in hardware form, or can be stored in the memory of the electronic device in software form, so that the processor can call and execute the corresponding operations of each module.

[0207] In one embodiment, an electronic device is provided, which may be a server, and its internal structure diagram may be shown in Figure 12. The electronic device includes a processor, a memory, an input / output interface (I / O) and a communication interface. The processor, the memory and the input / output interface are connected via a system bus, and the communication interface is connected to the system bus via the input / output interface. The processor of the electronic device is used to provide computing and control capabilities. The memory of the electronic device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the electronic device is used to store a target segment list, a segment identifier SID of an SRv6 node, etc. The input / output interface of the electronic device is used to exchange information between the processor and an external device. The communication interface of the electronic device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, a message forwarding method is implemented.

[0208] Those skilled in the art will understand that the structure shown in Figure 12 is merely a block diagram of a partial structure related to the scheme of the present application, and does not constitute a limitation on the electronic device to which the scheme of the present application is applied. The specific electronic device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0209] In one embodiment, an electronic device is further provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above method embodiments when executing the computer program.

[0210] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0211] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.

[0212] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, database or other media used in the embodiments provided in this application may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchains. The processor involved in the various embodiments provided herein may be, but are not limited to, a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic unit, a data processing logic unit based on quantum computing, and the like.

[0213] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0214] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.

Claims

1. A message forwarding method, applied to an SDN controller, the method comprising: Determine the forwarding path corresponding to the target message based on the metric information of the data network DN and the load information of the core network; The metric information is obtained based on the link information of the switch in the DN, and the load information is obtained based on the session information in the session management function SMF of the core network; Determine a target segment list corresponding to the target message based on a segment identifier SID of each SRv6 node included in the forwarding path; The target segment list is sent to a target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

2. The method according to claim 1, wherein: The determining the forwarding path corresponding to the target message based on the metric information of the data network DN and the load information of the core network includes: According to a preset link state information exchange protocol, link information corresponding to each switch in the DN is obtained, where the link information includes metric value information corresponding to each SRv6 node of the DN; Acquire, through the network open function NEF in the core network, session information of the user plane network element UPF stored in the SMF, wherein the session information includes load information of the UPF; Based on the metric information and the load information, a forwarding path corresponding to the target message is determined.

3. The method according to claim 1, wherein: The determining, based on the segment identifier SID of each SRv6 node included in the forwarding path, a target segment list corresponding to the target message includes: According to the forwarding path, determining each SRv6 node included in the forwarding path; Determine a target segment list corresponding to the target message according to the segment identifier SID of each SRv6 node and the forwarding path.

4. The method according to claim 3, further comprising: Based on the source IP address of the target message and the target segment list corresponding to the target message, a corresponding relationship between the source IP address and the target segment list is obtained.

5. The method according to claim 1, wherein: The target forwarding plane network element includes a user plane network element UPF and / or a radio access network element RAN; The step of sending the target segment list to a target forwarding plane network element through the SMF so that the target forwarding plane network element forwards the target message based on the target segment list includes: Sending the target segment list to the UPF through the SMF, so that the UPF forwards the target message based on the target segment list; And / or, sending the target segment list to the RAN through the SMF, so that the RAN forwards the target message based on the target segment list.

6. The method according to claim 5, wherein: The sending the target segment list to the UPF through the SMF so that the UPF forwards the target message based on the target segment list includes: The target segment list is sent to the SMF, so that the SMF encapsulates the target segment list into an N4 message and then sends the N4 message to the UPF; the N4 message is used to enable the UPF to forward the target message in the transmission network corresponding to the N9 interface or the N6 interface of the UPF according to the target segment list in the N4 message.

7. The method according to claim 5, wherein: The sending the target segment list to the RAN through the SMF so that the RAN forwards the target message based on the target segment list includes: The target segment list is sent to the SMF, so that the SMF sends the target segment list to the access mobility management network element AMF, so that the AMF encapsulates the target segment list into an N2 message and sends the N2 message to the RAN; the N2 message is used to enable the RAN to forward the target message in the transmission network corresponding to the N3 interface of the RAN according to the target segment list in the N2 message.

8. The method according to claim 1, wherein: The step of sending the target segment list to a target forwarding plane network element through the SMF so that the target forwarding plane network element forwards the target message based on the target segment list includes: Sending a message including the target segment list to the SMF through a network open function NEF, wherein the target segment list is used for uplink and / or downlink forwarding of the target message; The SMF stores the target segment list in a message used to transmit data to the target forwarding plane network element, so as to send the target segment list to each of the target forwarding plane network elements; After receiving the target message, each target forwarding plane network element forwards the target message according to the target segment list.

9. The method according to claim 2, wherein: The link information corresponding to each switch in the DN is obtained according to a preset link state information exchange protocol, wherein the link information includes metric value information corresponding to each SRv6 node of the DN, including: Collect link information corresponding to each switch in the DN through the BGP-LS protocol; Determine the network topology of the DN based on the metric information of each SRv6 node in the link information; Based on the network topology, a network status of each SRv6 node in the DN is determined, wherein the network status represents a usage priority of each SRv6 node in the DN.

10. A message forwarding method, applied to a forwarding plane, the method comprising: When the received target message matches the target segment list corresponding to the forwarding plane, encapsulate the IPv6 header corresponding to the target segment list into the target message to obtain the encapsulated target message, wherein the target segment list is determined based on the segment identifier SID of each SRv6 node included in the forwarding path, and the forwarding path is determined based on the metric information of the data network DN and the load information of the core network; Based on the forwarding paths in the target segment list, the encapsulated target message is forwarded in a transport network corresponding to the forwarding plane.

11. The method according to claim 10, wherein: The forwarding plane includes a radio access network RAN; the forwarding path in the target segment list, in a transmission network corresponding to the forwarding plane, forwarding the encapsulated target message, includes: The encapsulated target message is forwarded to the N3 interface corresponding to the RAN through the RAN, so that the transmission network corresponding to the N3 interface forwards the encapsulated target message according to the forwarding path.

12. The method according to claim 10, wherein: The forwarding plane includes a user plane network element UPF; the forwarding path in the target segment list, in a transmission network corresponding to the forwarding plane, forwarding the target message, includes: The encapsulated target message is forwarded to the N6 interface or the N9 interface corresponding to the UPF through the UPF, so that the transmission network corresponding to the N6 interface or the N9 interface forwards the encapsulated target message according to the forwarding path.

13. The method according to any one of claims 10 to 12, characterized in that: The forwarding of the encapsulated target message includes: The encapsulated target message is forwarded using the SRv6 protocol.

14. A message forwarding device, comprising: A path determination module, used to determine a forwarding path corresponding to a target message based on the metric information of the data network DN and the load information of the core network; The metric information is obtained based on the link information of the switch in the DN, and the load information is obtained based on the session information in the session management function SMF of the core network; A list determination module, configured to determine a target segment list corresponding to the target message based on a segment identifier SID of each SRv6 node included in the forwarding path; The list sending module is used to send the target segment list to the target forwarding plane network element through the SMF, so that the target forwarding plane network element forwards the target message based on the target segment list.

15. A message forwarding device, comprising: a message encapsulation module, configured to encapsulate the IPv6 header corresponding to the target segment list into the target message when the received target message matches the target segment list corresponding to the forwarding plane, so as to obtain the encapsulated target message, wherein the target segment list is determined based on the segment identifier SID of each SRv6 node included in the forwarding path, and the forwarding path is determined based on the metric information of the data network DN and the load information of the core network; A message forwarding module is used to forward the encapsulated target message in a transmission network corresponding to the forwarding plane based on the forwarding path in the target segment list.

16. An electronic device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 13 are implemented.

17. A computer-readable storage medium having a computer program stored thereon, wherein: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 13 are implemented.

Citation Information

Patent Citations

  • Transmitting MTNC-ID over SRv6 header for 5G transmission

    CN114128228A

  • SRv6-based message forwarding method, device and system, medium and electronic equipment

    CN115297521A

  • Message forwarding method and device, electronic equipment and storage medium

    CN117376285A

  • Transporting A Multi-Transport Network Context-Identifier (MTNC-ID) Across Multiple Domains

    US20210037410A1