Message forwarding method and computing power network

By maintaining a policy cache table and tunnel policy groups in the computing power network, and selecting the preferred tunnel policy for packet forwarding, the problems of uneven computing power network resources and unstable services are solved, achieving balanced resource utilization and stable service forwarding.

CN119835114BActive Publication Date: 2025-10-28MAIPU COMM TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411973277.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-10-28
Estimated Expiration
2044-12-30

AI Technical Summary

Technical Problem

Existing technologies struggle to simultaneously achieve balanced utilization of computing network resources and service stability in computing networks, especially when there are multiple computing service nodes, which can easily lead to some nodes being overloaded or computing tasks being interrupted.

Method used

By maintaining a policy cache table and tunnel policy group at the head node, the computing power tunnel policy is determined by the service flow identifier, the preferred tunnel policy is selected for packet forwarding, and the tunnel policy group is updated when the network topology or load changes, so as to achieve balanced utilization and flexible scheduling of resources.

Benefits of technology

It achieves balanced utilization of computing network resources and stable forwarding of request messages, avoiding node overload and ensuring business continuity and stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119835114B_ABST
    Figure CN119835114B_ABST
Patent Text Reader

Abstract

This invention relates to the field of data communication technology, providing a message forwarding method and a computing power network. The method includes: a head node receiving a request message carrying a service flow identifier sent by a terminal, the request message requesting a corresponding computing power service; the head node determining whether a computing power tunnel policy corresponding to the service flow identifier exists in a policy cache table based on the service flow identifier; if a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table, the computing power tunnel policy is used as the target tunnel policy; if no computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table, a tunnel policy group is determined based on the computing power service, and the preferred tunnel policy in the tunnel policy group is used as the target tunnel policy; the head node forwards the request message according to the target tunnel policy. This invention enables balanced utilization of computing power network resources.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data communication technology, and more specifically, to a message forwarding method and a computing network. Background Technology

[0002] Computing power networks are a new type of network architecture that deeply integrates computing and networking. Centered on computing and based on the network, they connect distributed computing nodes through a ubiquitous network. Logically, the architecture of a computing power network can be divided into a computing power service layer, a computing power routing layer, a computing-network management layer, and a computing-network infrastructure layer. The computing power routing layer, by sensing business needs, computing power resources, and network resources, dynamically selects the "forwarding path + destination service node" that meets business requirements, achieving deep integration of computing power and the network in dimensions such as transactions, operations, scheduling, orchestration, and forwarding.

[0003] SRv6 (Segment Routing IPv6) is an innovative technology application based on IPv6, possessing advantages such as high network programmability and strong scalability. Using SRv6 to implement computing power routing technology in computing power networks can more flexibly meet the needs of new computing power network services.

[0004] One implementation scheme is to use existing SRv6 Traffic Engineering (SRv6 TE) as the tunneling technology in the computing power network. The End.DT4 SID (Endpoint with Decapsulation and specific IPv4 Table lookup SID) or End.DT6 SID (Endpoint with Decapsulation and specific IPv6 Table lookup SID) is used as the VPN SID (Virtual Private Network SID) for the computing power service. Based on the destination address or packet 5-tuple and other characteristic information, the data packets are routed to the SRv6 TEPolicy (SRv6 Traffic Engineering Policy, an industry-standard term corresponding to an SRv6 tunnel path to a tail node). The SRH (Segment Routing Header) is encapsulated based on the VPN SID and the Segment List in the SRv6 TE Policy. The Segment List is used to plan the traffic path for the computing power service. However, when multiple computing service nodes exist in the network at the same time, this solution is difficult to simultaneously satisfy the balance of computing network resource utilization and business stability. Summary of the Invention

[0005] The purpose of this invention is to provide a message forwarding method and a computing network that can achieve balanced utilization of computing network resources.

[0006] The embodiments of the present invention can be implemented as follows:

[0007] In a first aspect, the present invention provides a message forwarding method applied to an SRv6-based computing network, the computing network including a head node, the head node being communicatively connected to a terminal, the method comprising:

[0008] The head node receives a request message carrying a service flow identifier sent by the terminal, and the request message is used to request the corresponding computing power service.

[0009] The head node determines whether a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table based on the service flow identifier.

[0010] If a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table, then the computing power tunnel policy is used as the target tunnel policy.

[0011] If there is no computing power tunnel policy corresponding to the service flow identifier in the policy cache table, then a tunnel policy group is determined based on the computing power service, and the preferred tunnel policy in the tunnel policy group is taken as the target tunnel policy.

[0012] The head node forwards the request message according to the target tunneling policy.

[0013] In an optional implementation, the target tunnel strategy includes the tunnel tail node address, tunnel color identifier, and service segment identifier;

[0014] The step of the head node forwarding the request message according to the target tunnel policy includes:

[0015] The head node determines the SRv6 tunnel based on the tunnel tail node address and the tunnel color identifier;

[0016] The header node performs SRv6 tunnel encapsulation on the request message based on the service segment identifier and the SRv6 tunnel;

[0017] The head node forwards the encapsulated request message according to the SRv6 tunnel.

[0018] In an optional implementation, the service segment identifier is used to identify a computing power service node associated with the tail node, and the step of forwarding the encapsulated request message according to the SRv6 tunnel includes:

[0019] The head node forwards the encapsulated request message to the tail node of the SRv6 tunnel according to the SRv6 tunnel.

[0020] The tail node obtains the service segment identifier from the encapsulated request message;

[0021] The tail node decapsulates the encapsulated request message to obtain the request message, and sends the request message to the corresponding computing power service node in the computing power network according to the service segment identifier.

[0022] In an optional implementation, after the step of using the preferred tunnel strategy from the tunnel strategy group as the target tunnel strategy, the method further includes:

[0023] Add the preferred tunneling strategy to the strategy cache table.

[0024] In an optional implementation, the head node is also communicatively connected to a controller in the computing network, and the method further includes:

[0025] The controller updates the tunnel policy group and / or preferred tunnel policy corresponding to the computing power service in the head node;

[0026] Based on the updated tunnel policy group, the head node deletes the computing power tunnel policy that is not in the updated tunnel policy group from the policy cache table.

[0027] In an optional implementation, the computing network further includes a controller, a tail node, and computing service nodes, and the method further includes:

[0028] Based on the network topology of the computing power network, the controller creates a service segment identifier that associates the tail node with the computing power service node, and sends it to the tail node;

[0029] The controller plans available SRv6 tunnels based on the network topology of the computing power network;

[0030] The controller determines the tunnel policy group corresponding to the computing power service based on the service segment identifier and the available SRv6 tunnel, and sends it to the head node.

[0031] In an optional implementation, the method further includes:

[0032] The controller acquires computing load information in the computing network;

[0033] The controller determines the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service based on the computing power load information and the business requirements of the computing power service.

[0034] In an optional implementation, the method further includes:

[0035] The controller re-plans available SRv6 tunnels when the network topology changes or when the service requirements of computing power services change.

[0036] The controller updates the tunnel policy group corresponding to the computing power service based on the replanned available SRv6 tunnels and sends it to the head node.

[0037] In an optional implementation, the computing load information includes bandwidth or computing power utilization, and the method further includes:

[0038] When the bandwidth exceeds the bandwidth threshold or the computing power utilization rate exceeds the computing power utilization rate threshold, the controller re-determines the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service and sends it to the head node.

[0039] Compared with the prior art, the present invention has the following beneficial effects: When the head node receives a request message carrying a service flow identifier sent by the terminal, the present invention determines whether there is a computing power tunnel policy corresponding to the service flow identifier in the policy cache table based on the service flow identifier. If it exists, the computing power tunnel policy is used as the target tunnel policy; otherwise, a tunnel policy group is determined based on the computing power service, and the preferred tunnel policy in the tunnel policy group is used as the target tunnel policy. The head node forwards the request message according to the target tunnel policy. By caching the tunnel policy and the preferred tunnel policy in the tunnel policy group through the policy cache table, the balanced utilization and flexible scheduling of computing network resources are realized, and the stability of request message forwarding is guaranteed. Attached Figure Description

[0040] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0041] Figure 1 This is an example diagram illustrating an application scenario provided in this embodiment.

[0042] Figure 2 This is a flowchart illustrating the message forwarding method provided in this embodiment.

[0043] Figure 3 This is an example diagram illustrating the application tunneling strategy provided in this embodiment. Detailed Implementation

[0044] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. The components of the embodiments of the present invention described and shown in the accompanying drawings can generally be arranged and designed in various different configurations.

[0045] Therefore, the following detailed description of the embodiments of the invention provided in the accompanying drawings is not intended to limit the scope of the claimed invention, but merely to illustrate selected embodiments of the invention. All other embodiments obtained by those skilled in the art based on the embodiments of the invention without inventive effort are within the scope of protection of the invention.

[0046] It should be noted that similar labels and letters in the following figures indicate similar items. Therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures.

[0047] In the description of this invention, it should be noted that if terms such as "upper," "lower," "inner," or "outer" are used to indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings, or the orientation or positional relationship in which the product of this invention is usually placed, they are only for the convenience of describing this invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of this invention.

[0048] Furthermore, the terms "first" and "second" are used only to distinguish descriptions and should not be interpreted as indicating or implying relative importance.

[0049] It should be noted that, where there is no conflict, the features in the embodiments of the present invention can be combined with each other.

[0050] To address the issues of unbalanced utilization of computing network resources and service stability that existing technologies cannot satisfy, the inventors have conducted an in-depth analysis. The analysis process will be explained below with reference to application scenarios. Figure 1 , Figure 1 This is an example diagram illustrating an application scenario provided in this embodiment. Figure 1 In this context, the SRv6-based computing network comprises four PEs (Provider Edge Devices): PE1 to PE4, three computing service nodes: computing service node 1 to computing service node 3, and a controller. SRv6 is a network routing technology that allows network paths to be defined and controlled through segment lists in the IPv6 packet header.

[0051] PE1 communicates with computing service nodes 1 and 2, and PE2 communicates with computing service node 3. The controller communicates with each PE. PE3 communicates with terminal 1 and terminal 2, and PE4 communicates with terminal 3 and terminal 4. The terminals are the requesters of computing services, and the computing service nodes are the providers of computing services.

[0052] exist Figure 1 In the context of request messages sent from terminals to computing power service nodes, PE3 and PE4 are header nodes, while PE1 and PE2 are tail nodes. The header node is also called the computing power access gateway, and the tail node is also called the computing power service gateway. Although Figure 1 The head node and the tail node are directly connected, but in practical applications, the head node and the tail node can also be connected through multiple intermediate nodes.

[0053] Figure 1Each of the three computing power service nodes in the system can provide a certain computing power service. Each terminal initiates a computing power request through its connected PE to obtain the computing power service provided by the computing power service node. Different computing power services correspond to different anycast addresses. The terminal uses the corresponding anycast address as the destination address of the request message and sends the request message to the PE with which it is communicating. The PE determines the tail node and VPN SID corresponding to the computing power service through the routing information corresponding to the anycast address, so as to obtain the corresponding computing power service from the corresponding computing power service node.

[0054] In existing technologies, the decision of which tail node to forward a request message for decapsulation, and which computing power service node to deliver the decapsulated message to, is actually determined by the routing tables of the head and tail nodes. This can lead to situations where the same tail node sends all received request messages to the same computing power service node, resulting in uneven load distribution across the computing power service nodes. For example, under certain optimal routing conditions, PE3 and PE4 might send all service traffic to PE2 based on their routing tables, potentially overloading computing power service node 3.

[0055] To address the overload issue of computing power service node 3, one intervention method is for controller 30 to modify the routing priority, causing all computing power requests to be switched to PE1 for decapsulation. However, this would cause the computing tasks on computing power service node 3 to be interrupted, affecting business stability. At the same time, it may also cause new computing power service nodes to be overloaded, and still fail to achieve balanced utilization of computing network resources.

[0056] In view of this, this embodiment provides a packet forwarding method and a computing network. Its core improvement lies in achieving balanced utilization and flexible scheduling of computing network resources by maintaining a policy cache table, tunnel policy groups, and the optimal tunnel policy within the tunnel policy groups, thus ensuring the stability of request packet forwarding. This will be described in detail below.

[0057] Please refer to Figure 2 , Figure 2 This is a flowchart illustrating the message forwarding method provided in this embodiment. The method includes the following steps:

[0058] In step S101, the head node receives a request message carrying a service flow identifier sent by the terminal. The request message is used to request the corresponding computing power service.

[0059] In this embodiment, the service flow identifier is used to represent different service flows. The service flow identifier can be represented by information such as IP address and / or port in the request message. The IP address can be the source IP address and / or the destination IP address, and the port can be the source port and / or the destination port. Different service flows can request different computing power services and can use different computing power tunnels for transmission. The same service flow can also use different computing power tunnels for transmission.

[0060] In this embodiment, a computing tunnel represents a transmission path, for example, Figure 1 In the process, the request message sent by terminal 1 to computing power service node 1 can be sent either through the transmission path PE3-PE1-computing power service node 1 or through the transmission path PE3-PE4-PE2-PE1-computing power service node 1. The two transmission paths correspond to different computing power tunnels.

[0061] Step S102: The head node determines whether there is a computing power tunnel policy corresponding to the business flow identifier in the policy cache table based on the business flow identifier.

[0062] Step S103: If a computing power tunnel policy corresponding to the business flow identifier exists in the policy cache table, then the computing power tunnel policy is used as the target tunnel policy.

[0063] In this embodiment, the head node stores a policy cache table. This policy cache table is used to quickly find the computing power tunneling policy for forwarding request packets. When the head node can simultaneously forward multiple types of request packets carrying service flow identifiers, as one implementation, the policy cache table can store multiple entries. Each entry corresponds to a service flow identifier and a cached computing power tunneling policy used to forward the service corresponding to that service flow identifier. The head node first searches the policy cache table for the computing power tunneling policy corresponding to the service flow identifier, and uses it as the target tunneling policy. Once found, it forwards the request packet according to that computing power tunneling policy.

[0064] Step S104: If there is no computing power tunnel policy corresponding to the business flow identifier in the policy cache table, then a tunnel policy group is determined based on the computing power service, and the preferred tunnel policy in the tunnel policy group is taken as the target tunnel policy.

[0065] In this embodiment, the computing power tunnel policy corresponding to the service flow identifier may not exist in the policy cache table. At least in two cases, the computing power tunnel policy cannot be found in the policy cache table: Case 1: When the request message is the first message carrying the service flow identifier, there is no corresponding tunnel policy in the policy cache table; Case 2: For the request message, the current tunnel policy has been rescheduled, causing the previously corresponding tunnel policy to become invalid and be deleted from the policy cache table.

[0066] In this embodiment, when the computing power tunnel policy cannot be found in the policy cache table, in order to ensure the normal forwarding of request messages, the head node also maintains a tunnel policy group corresponding to the computing power service. The tunnel policy group is used to quickly find an alternative tunnel policy when the tunnel policy corresponding to the service flow identifier in the policy cache table does not exist or becomes unavailable. The tunnel policy group includes multiple available tunnel policies. In order to make the re-found alternative tunnel policy meet the changed service requirements or achieve the balance of the current load of the computing power network, the preferred tunnel policy can be determined from multiple available tunnel policies. When an alternative tunnel policy needs to be found, the preferred tunnel policy is preferentially selected to ensure the balanced utilization of computing power network resources. The preferred tunnel policy can be determined according to the pre-set selection principle, and the selection principle can be related to the load of the computing power service node, the network link quality and the bandwidth. For example, the tunnel policy with the minimum load of the computing power service node, the best network link quality and the minimum bandwidth occupancy can be selected, or the corresponding selection principle can be set according to actual needs.

[0067] In this embodiment, when there is no computing power tunnel policy corresponding to the service flow identifier in the policy cache table, the preferred tunnel policy in the tunnel policy group is used as the computing power tunnel policy to ensure the normal forwarding of request messages.

[0068] For example, for Figure 1 the application scenario, the computing power service that all three computing power service nodes can provide is service-a. When the head node receives the first request message carrying the service flow identifier sent by terminal 1 and there is no tunnel policy corresponding to the service flow identifier in the policy cache table, the preferred tunnel policy <Endpoint2::2,Color 200, service segment identifier b2::3> in the tunnel policy group is added to the policy cache table. In the preferred tunnel policy, Endpoint 2::2 indicates that the tail node is PE2, the Color value is 200, and the service segment identifier b2::3 indicates that it is related to PE2 and the computing power service node 3, that is, the message received by PE2 will be sent to the computing power service node 3. If the policy cache table was empty before, the updated policy cache table is shown in Table 1.

[0069] Table 1

[0070]

[0071] Step S105, the head node forwards the request message according to the target tunnel policy.

[0072] The above method provided by this embodiment realizes the balanced utilization and flexible scheduling of computing power network resources by caching the tunnel policy and the preferred tunnel policy in the tunnel policy group in the policy cache table, and ensures the stability of the request message forwarding.

[0073] In an optional implementation, when using the preferred tunnel policy in the tunnel policy group as the target tunnel policy, to ensure that subsequent request packets of the same service flow can continue to be forwarded quickly and normally, this embodiment also provides an implementation method: adding the preferred tunnel policy to the policy cache table. Therefore, when subsequent request packets of this service flow are forwarded, the corresponding computing power tunnel policy can be found in the policy cache table, achieving fast forwarding of the request packets.

[0074] In an optional implementation, in order to quickly forward request packets according to the target tunneling policy, this embodiment also provides an implementation method:

[0075] First, the head node determines the SRv6 tunnel based on the tunnel tail node address and the tunnel color identifier;

[0076] In this embodiment, in order to determine the corresponding SRv6 tunnel according to the target tunneling strategy, the target tunneling strategy also includes a tunnel endpoint address and a tunnel color identifier (Color value). The tunnel endpoint address represents the endpoint corresponding to the target tunneling strategy, and the tunnel color identifier is used for path selection. The Color value can represent link quality or priority. For example, for multiple paths to a computing power service node that provides the same computing power service, a target path that meets the Color value requirement can be selected from multiple paths through the Color value.

[0077] Secondly, the head node encapsulates the request message with SRv6 tunnel based on the service segment identifier and SRv6 tunnel;

[0078] In this embodiment, to enable request packets to reach the provider of the requested service through an SRv6 tunnel, the target tunnel policy also includes a service segment identifier. The service segment identifier is an SRv6SID configured on the tail node corresponding to the target tunnel policy. It identifies the processing action of the tail node on request packets of the corresponding type of service flow. The service segment identifier is associated with the next hop of the computing power service node to which the tail node is headed, or with a VPN instance on the tail node. This computing power service node can provide the computing power service requested by the request packet, or it is a service node requested by the request packet that can be reached through the VPN instance. For example, the service segment identifier b1::1 is used to identify... Figure 1 The computing power service node 1 associated with the mid-tail node PE1 is identified by the service segment identifier b1::2. Figure 1 The computing power service node 2 associated with the tail node PE1 means that although the two service segment identifiers correspond to the same tail node PE1, they are two different forwarding paths to different computing power service nodes.

[0079] Finally, the head node forwards the encapsulated request message based on the SRv6 tunnel.

[0080] In this embodiment, after the head node sends the encapsulated request message to the tail node, the tail node, in order to send the original request message to the corresponding computing power service node, provides an implementation method for the tail node to process the encapsulated request message:

[0081] The head node forwards the encapsulated request message to the tail node of the SRv6 tunnel based on the SRv6 tunnel.

[0082] The tail node obtains the business segment identifier from the encapsulated request message;

[0083] The tail node decapsulates the encapsulated request message to obtain the request message, and sends the request message to the computing power service node according to the service segment identifier.

[0084] In an optional implementation, in order to promptly adjust the currently used tunneling strategy when the network topology of the computing network changes, or to respond promptly to changes in the requirements of the tunneling strategy, this embodiment also provides a method for updating the strategy cache table and tunneling strategy group in the head node:

[0085] First, the controller updates the tunnel policy group and / or preferred tunnel policy corresponding to the computing power service in the head node.

[0086] Secondly, based on the updated tunnel policy group, the head node will delete the computing power tunnel policy that is not in the updated tunnel policy group from the policy cache table.

[0087] In this embodiment, if the tunnel policy cached in the policy cache table is not in the updated tunnel policy group, it means that the request packet can no longer be forwarded according to the tunnel policy cached in the policy cache table. At this time, it can be set to invalid and deleted from the policy cache table. As a result, when a request packet carrying a service flow identifier is received, there is no computing power tunnel policy corresponding to the service flow identifier in the policy cache table. At this time, the preferred tunnel policy in the updated tunnel policy group is updated to the policy cache table, so as to realize the normal forwarding of subsequent request packets of this service type.

[0088] In this embodiment, depending on changes in the actual network topology or network load, it may only be necessary to update the tunnel policy group corresponding to the computing power service, or the preferred tunnel policy therein, or both.

[0089] In this embodiment, when a head node is newly added to the computing power network, or when the computing power network has just been initialized, the head node does not yet have a tunnel strategy group and a preferred tunnel strategy. This embodiment provides an implementation method for creating a tunnel strategy group:

[0090] First, based on the network topology of the computing power network, the controller creates a service segment identifier that associates the tail node with the computing power service node and sends it to the tail node.

[0091] Secondly, the controller plans available SRv6 tunnels based on the network topology of the computing power network.

[0092] Finally, the controller determines the tunnel policy group corresponding to the computing power service based on the service segment identifier and available SRv6 tunnels, and sends it to the head node.

[0093] In this embodiment, there can be multiple available SRv6 tunnels, and the available SRv6 tunnels corresponding to the computing power service are grouped into a tunnel strategy group.

[0094] In this embodiment, in order to optimize the utilization of computing network resources and improve the flexibility of computing network resource scheduling, this embodiment also provides an implementation method for determining the preferred tunnel strategy in the tunnel strategy group based on computing load information and the service requirements of computing power services:

[0095] The controller acquires computing load information from the computing network;

[0096] The controller determines the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service based on the computing power load information and the business requirements of the computing power service.

[0097] In this embodiment, changes in network topology, such as the failure of computing service nodes in the computing power network or a user's need to adjust computing power service plans, will affect the forwarding path of request packets. In order to enable request packets to be forwarded according to the latest network topology, this embodiment also provides an implementation method for updating tunnel policy groups:

[0098] When the network topology changes or the service requirements of computing power services change, the controller re-plans available SRv6 tunnels;

[0099] The controller updates the tunnel policy group corresponding to the computing power service based on the replanned available SRv6 tunnels and sends it to the head node.

[0100] This embodiment also provides an implementation method for determining the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service:

[0101] When the bandwidth exceeds the bandwidth threshold or the computing power utilization exceeds the computing power utilization threshold, the controller re-determines the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service and sends it to the head node.

[0102] In this embodiment, both the bandwidth threshold and the computing power utilization threshold can be set according to the actual scenario to more flexibly meet the computing power service needs in the actual scenario.

[0103] For a clearer description of the process of the tunnel policy group and the preferred tunnel policy provided in this embodiment, this embodiment is described in conjunction with Figure 3 as follows:

[0104] (1) The controller obtains the network topology, information of computing power service nodes, and anycast address information of computing power services;

[0105] (2) The controller plans SRv6 tunnels according to the network topology, and creates corresponding SRv6 TE Policy and Segment List on Figure 3 PE3 and PE4 therein. Taking PE3 as an example, SRv6 TE Policy te-policy1 going to PE1 and SRv6 TE Policy te-policy2 going to PE2 are issued on PE3. Among them, the Endpoint (tail node) of te-policy1 is 1::1, and the Color is 100; the Endpoint (tail node) of te-policy1 is 2::2, and the Color is 200.

[0106] (3) The controller creates service segment identifiers corresponding to computing power service nodes on Figure 3 PE1 and PE2 therein, and each service segment is respectively associated with a next hop (designated next hop address or outgoing interface). The service segment identifier b1::1 corresponding to the computing power service node 1 is created on PE1, and the service segment identifier b1::2 corresponding to the computing power service node 2 is created on PE1. The service segment identifier b2::3 corresponding to the computing power service node 3 is created on PE2.

[0107] (4) The controller creates a tunnel policy group corresponding to the computing power service on PE3 and PE4 according to the SRv6 tunnel and the service segment identifier corresponding to the computing power service node. For example, the tunnel policy group of service-a created on PE3 is:

[0108] <Endpoint 1::1,Color 100, service segment identifier b1::1>

[0109] <Endpoint 1::1,Color 100, service segment identifier b1::2>

[0110] <Endpoint 2::2,Color 200, service segment identifier b2::3>

[0111] (5) The controller creates a preferred tunnel policy corresponding to the computing power service on PE3 and PE4 according to information such as link bandwidth occupancy and computing power service node load. The preferred tunnel policy of service-a created on PE3:

[0112] <Endpoint 2::2, Color 200, Service Segment Identifier b2::3>

[0113] Finally, the tunnel policy group and the preferred tunnel policy corresponding to the computing power service service-a on PE3 are shown in Table 2 below:

[0114] Table 2

[0115]

[0116] Refer to again Figure 3 , this embodiment continues to combine Figure 3 the process of packet forwarding and the process of updating the tunnel policy group and the preferred tunnel policy during the forwarding process.

[0117] (1) PE3 receives a request packet from Terminal 1, and the destination address is the anycast address 10.0.0.1.

[0118] (2) PE3 determines a computing power tunnel policy for SRv6 encapsulation and forwarding.

[0119] (2.1) According to the traffic identifier in the request packet, look up the computing power tunnel policy corresponding to this traffic identifier in the policy cache table. In this embodiment, the source IP address and destination IP address of the packet are selected as the traffic identifier.

[0120] (2.2) When PE3 processes the first packet of each traffic flow, if there is no corresponding computing power tunnel policy in the policy cache table, the preferred tunnel policy in the tunnel policy group corresponding to the computing power service is used as the computing power tunnel policy. At the same time, based on this computing power tunnel policy and the traffic identifier of the packet, PE3 adds this preferred tunnel policy to the policy cache table.

[0121] (2.3) PE3 obtains the computing power tunnel policy and stores it in the policy cache table at the same time, as shown in Table 3:

[0122] Table 3

[0123]

[0124] (2.4) When PE3 processes non-first packets of the traffic flow and can find the corresponding computing power tunnel policy in the policy cache table, use this computing power tunnel policy to forward the request packet.

[0125] (3) After PE3 obtains the computing power tunnel policy, it performs SRv6 SRH encapsulation and forwarding on the request packet.

[0126] Determine an SRv6 TE Policy, i.e., te-policy2, based on Endpoint 2::2 and Color 200 in the computing power tunnel policy. Determine the SRH to be encapsulated based on the Segment List of the SRv6 TE Policy and the service segment identifier in the computing power tunnel policy, where the service segment identifier b2::3 serves as the last SID of the SRH.

[0127] (4) The tail node receives the encapsulated request message, obtains the service segment identifier from the SRH in the outer IPv6 header of the message, obtains the next-hop information for the corresponding computing power service node based on the service segment identifier, decapsulates the message, and forwards the message to the corresponding computing power service node according to the next-hop information.

[0128] According to the tunnel path of te-policy2, PE2 will receive the message with SRv6 tunnel encapsulation, extract the service segment identifier b2::3 from the message, and forward the message to the computing power service node 3 based on the next-hop information associated with the service segment identifier b2::3.

[0129] (5) The controller monitors the network bandwidth occupancy and the load status of the computing power service nodes, and determines whether to adjust the computing power tunnel policy based on this. With the initiation of computing power requests from different terminals (such as terminal 3 and terminal 4), the load of the computing power service nodes may reach a certain threshold (such as the number of computing power service flows exceeding a certain threshold). The controller adjusts the preferred tunnel policy. Suppose the controller decides to schedule subsequent new service flows to the computing power service node 1, then the controller adjusts the preferred tunnel policy corresponding to service-a on PE3 to:

[0130] <Endpoint 1::1,Color 100, service segment identifier b1::1>

[0131] After the adjustment, the tunnel policy group and the preferred tunnel policy corresponding to the computing power service service-a on PE3 are shown in Table 4:

[0132] Table 4

[0133]

[0134] (6) PE3 receives a request message from terminal 2, and the destination address is the anycast address 10.0.0.1. Then repeat steps (1) to (4) to determine a computing power tunnel policy and forward the request message to a computing power service node. According to the adjusted preferred tunnel policy, PE3 obtains the computing power tunnel policy for terminal 2 and stores it in the policy cache table at the same time. The policy cache table of PE3 is updated as shown in Table 5:

[0135] Table 5

[0136]

[0137]

[0138] (6.1) PE3 determines an SRv6 TEPolicy, i.e., te-policy1, based on the Endpoint 1::1 and Color 100 of the computing power tunnel policy. An SRH to be encapsulated is jointly determined based on the Segment List of the SRv6 TE Policy and the service segment identifier b1::1 in the computing power tunnel policy.

[0139] (6.2) According to the tunnel path of te-policy1, PE2 will receive a packet with SRv6 encapsulation. PE2 extracts the service segment identifier b1::1 from the packet, decapsulates the packet, and forwards the packet to the computing power service node 1 according to the next-hop information associated with the service segment identifier.

[0140] (7) After the above processing, the new service flow will no longer be sent to the computing power service node 3, avoiding the risk that the load of the computing power service node 3 exceeds the maximum limit. Moreover, this update processing will not affect the <Terminal 1, 10.0.0.1> service flow that is already in progress, ensuring service stability.

[0141] In this example, the tunnel policy group is also used to manage the validity of the tunnel policies cached in the cache policy table. When the network topology changes, the computing power service node fails, or the user needs to adjust the computing power service plan, the tunnel policy group on the computing power access gateway device is updated. The computing power access gateway updates the policy cache table according to the adjusted tunnel policy group. If the computing power tunnel policy cached in the cache policy table is not in the tunnel policy group, the tunnel policy cached in the cache policy table is set to an invalid state.

[0142] This embodiment continues to combine Figure 3 to illustrate the processing process of using the tunnel policy group to manage the validity of the tunnel policies in the established policy cache table. For example, if the user is going to abolish the computing power service node 3, the tunnel policy group can be updated on PE3 to delete <Endpoint 2::2, Color 200, service segment identifier b2::3>. The updated tunnel policy group and the preferred tunnel policy are shown in Table 6.

[0143] Table 6

[0144]

[0145]

[0146] PE3 automatically clears cached tunnel policies in the policy cache table that cannot match the latest tunnel policy group. The updated policy cache table is shown in Table 7.

[0147] Table 7

[0148]

[0149] In summary, this invention provides a message forwarding method and a computing power network, applied to an SRv6-based computing power network. The computing power network includes a head node and a communication connection between the head node and a terminal. The method includes: the head node receiving a request message carrying a service flow identifier sent by the terminal, the request message being used to request a corresponding computing power service; the head node determining whether a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table based on the service flow identifier; if a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table, then the computing power tunnel policy is used as the target tunnel policy; if no computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table, then a tunnel policy group is determined based on the computing power service, and the preferred tunnel policy in the tunnel policy group is used as the target tunnel policy; the head node forwards the request message according to the target tunnel policy. Compared with the prior art, this embodiment has at least the following advantages: (1) Since the service segment identifier in the computing power tunnel strategy is related to the computing power service node and the corresponding tail node in the computing power network that provides computing power services, different computing power service nodes are associated with different service segment identifiers, and thus correspond to different computing power tunnel strategies. By determining different computing power tunnel strategies, the balanced utilization of computing power network resources can be achieved when forwarding request packets; (2) The computing power tunnel strategy is cached using a cache strategy table, which ensures the continuity and stability of services; at the same time, when the computing power tunnel strategy changes, the corresponding computing power tunnel strategy in the cache strategy table is set to invalid and deleted from the cache strategy table, thereby realizing the timely switching of the computing power tunnel strategy and improving the computing power tunnel. The flexibility of the strategy scheduling ensures the stability of the service; (3) When the computing power network topology changes or the load of the computing power service node needs to be adjusted, the tunnel strategy group is updated, and the computing power tunnel strategy that is not in the tunnel strategy group but is in the cache strategy table is updated in a timely manner, thus realizing the effective management of the cache strategy table; (4) The tail node and its corresponding computing power service node are associated through the service segment identifier, thus realizing flexible control of the target tail node and target computing power service node of the computing power request; (5) The preferred tunnel strategy in the tunnel strategy group is determined based on the bandwidth and computing power utilization rate in the computing power load information, thus ensuring the load balance of each computing power service node and the rationality of the scheduling.

[0150] The above descriptions are merely various embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. A message forwarding method, characterized in that, An application to an SRv6-based computing network, the computing network including a head node, the head node being communicatively connected to a terminal, the method comprising: The head node receives a request message carrying a service flow identifier sent by the terminal, and the request message is used to request the corresponding computing power service. The head node determines whether a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table based on the service flow identifier. If a computing power tunnel policy corresponding to the service flow identifier exists in the policy cache table, then the computing power tunnel policy is used as the target tunnel policy. If there is no computing power tunnel policy corresponding to the service flow identifier in the policy cache table, then a tunnel policy group is determined based on the computing power service, and the preferred tunnel policy in the tunnel policy group is taken as the target tunnel policy. The head node forwards the request message according to the target tunneling policy.

2. The message forwarding method according to claim 1, characterized in that, The target tunnel strategy includes the tunnel tail node address, tunnel color identifier, and service segment identifier; The step of the head node forwarding the request message according to the target tunnel policy includes: The head node determines the SRv6 tunnel based on the tunnel tail node address and the tunnel color identifier; The header node performs SRv6 tunnel encapsulation on the request message based on the service segment identifier and the SRv6 tunnel; The head node forwards the encapsulated request message according to the SRv6 tunnel.

3. The message forwarding method according to claim 2, characterized in that, The service segment identifier is used to identify a computing power service node associated with the tail node, and the step of forwarding the encapsulated request message according to the SRv6 tunnel includes: The head node forwards the encapsulated request message to the tail node of the SRv6 tunnel according to the SRv6 tunnel. The tail node obtains the service segment identifier from the encapsulated request message; The tail node decapsulates the encapsulated request message to obtain the request message, and sends the request message to the corresponding computing power service node in the computing power network according to the service segment identifier.

4. The message forwarding method according to claim 1, characterized in that, After the step of selecting the preferred tunnel strategy from the tunnel strategy group as the target tunnel strategy, the method further includes: Add the preferred tunneling strategy to the strategy cache table.

5. The message forwarding method according to claim 1, characterized in that, The head node is also communicatively connected to the controller in the computing network, and the method further includes: The controller updates the tunnel policy group and / or preferred tunnel policy corresponding to the computing power service in the head node; Based on the updated tunnel policy group, the head node deletes the computing power tunnel policy that is not in the updated tunnel policy group from the policy cache table.

6. The message forwarding method according to claim 1, characterized in that, The computing power network further includes a controller, a tail node, and computing power service nodes, and the method further includes: Based on the network topology of the computing power network, the controller creates a service segment identifier that associates the tail node with the computing power service node, and sends it to the tail node; The controller plans available SRv6 tunnels based on the network topology of the computing power network; The controller determines the tunnel policy group corresponding to the computing power service based on the service segment identifier and the available SRv6 tunnel, and sends it to the head node.

7. The message forwarding method according to claim 6, characterized in that, The method further comprises: The controller acquires computing load information in the computing network; The controller determines the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service based on the computing power load information and the business requirements of the computing power service.

8. The message forwarding method according to claim 6, characterized in that, The method further comprises: The controller re-plans available SRv6 tunnels when the network topology changes or when the service requirements of computing power services change. The controller updates the tunnel policy group corresponding to the computing power service based on the replanned available SRv6 tunnels and sends it to the head node.

9. The message forwarding method according to claim 7, characterized in that, The computing load information includes bandwidth or computing power utilization, and the method further includes: When the bandwidth exceeds the bandwidth threshold or the computing power utilization rate exceeds the computing power utilization rate threshold, the controller re-determines the preferred tunnel strategy in the tunnel strategy group corresponding to the computing power service and sends it to the head node.

10. A computing power network system, characterized in that, The computing power network system includes a head node, a tail node, and a controller. The head node executes the packet forwarding method executed by the head node in any one of claims 1-9. The tail node executes the packet forwarding method executed by the tail node in any one of claims 1-9. The controller executes the packet forwarding method executed by the controller in any one of claims 1-9.

Citation Information

Patent Citations

  • SRv6 end-to-end flow strategy method, router, routing system and storage medium

    CN112437009A

  • Service flow forwarding method and device based on 5G core network, and equipment

    CN113676959A