Message forwarding method and computing power network

By maintaining the policy cache table and tunnel policy group in the head node of the computing power network, and judging and cacheing the computing power tunnel strategy based on the service flow identification, the problem of resource utilization imbalance and business stability in the computing power network is solved, and stable and flexible request message forwarding is achieved.

CN119835114AActive Publication Date: 2025-04-15MAIPU COMM TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

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

AI Technical Summary

Technical Problem

The prior art is difficult to meet the balance of resource utilization and service stability of computing networks in the computing power network, especially when multiple computing power service nodes exist.

Method used

By maintaining the policy cache table, tunnel policy group and preferred tunnel policies in the tunnel policy group in the head node, and judging and cacheing the computing power tunnel policy based on the service flow identification, determining the target tunnel policy and forwarding the request message.

Benefits of technology

The balanced utilization and flexible scheduling of computing network resources are realized, the stability of request message forwarding is ensured, and the uneven load problem of computing power service nodes is avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119835114A_ABST
    Figure CN119835114A_ABST
Patent Text Reader

Abstract

The present invention relates to the technical field of data communication, and provides a message forwarding method and a computing power network, the method comprising: a head node receiving a request message carrying a service flow identifier sent by a terminal, the request message being used for requesting a corresponding computing power service; the head node judges whether a computing power tunnel strategy corresponding to the service flow identifier exists in a strategy cache table based on the service flow identifier; if the computing power tunnel strategy corresponding to the service flow identifier exists in the strategy cache table, taking the computing power tunnel strategy as a target tunnel strategy; if the computing power tunnel strategy corresponding to the service flow identifier does not exist in the strategy cache table, determining a tunnel strategy group based on the computing power service, and taking a preferred tunnel strategy in the tunnel strategy group as a target tunnel strategy; and the head node forwards the request message according to the target tunnel strategy. According to the invention, balanced utilization of computing power network resources can be realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data communication technology, and in particular to a message forwarding method and a computing power network. Background Art

[0002] The computing network is a new network architecture that deeply integrates computing and networking. It is centered on computing and based on networking, connecting distributed computing nodes through ubiquitous networks. The architecture of the computing network can be divided into the computing service layer, computing routing layer, computing network management layer, and computing network infrastructure layer from a logical function perspective. The computing routing layer dynamically selects the "forwarding path + destination service node" that meets business needs through the perception of business needs, computing resources, and network resources, thereby achieving deep integration of computing power and network in terms of transactions, operations, scheduling, orchestration, and forwarding.

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

[0004] One implementation scheme is to use the existing SRv6 TE (SRv6 Traffic Engineering) as the tunnel technology in the computing network. End.DT4 SID (Endpoint with Decapsulation and specific IPv4 Table lookup SID, segment identifier for decapsulation and IPv4 routing) or End.DT6 SID (Endpoint with Decapsulation and specific IPv6 Table lookup SID, segment identifier for decapsulation and IPv6 routing) is used as the VPN SID (Virtual Private Network SID) of the computing service. Based on the data message destination address or message quintuple and other feature information, the data message is directed to the SRv6 TEPolicy (SRv6 Traffic Engineering Policy, a common term in the industry, corresponding to an SRv6 tunnel path to an end node). Based on the VPN SID and the Segment List in the SRv6 TE Policy, the SRH (Segment Routing Header) is encapsulated, and the computing service traffic path is planned through the Segment List. However, when there are multiple computing service nodes in the network at the same time, this solution is difficult to simultaneously meet the requirements of balanced computing network resource utilization and business stability. Summary of the invention

[0005] The purpose of the present invention is to provide a message forwarding method and a computing power network, which can achieve balanced utilization of computing power 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, which is applied to a computing network based on SRv6, wherein the computing network includes a head node, and the head node is communicatively connected to a terminal, and the method includes:

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

[0009] The head node determines whether there is a computing power tunnel strategy corresponding to the business flow identifier in the strategy cache table based on the business flow identifier;

[0010] 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;

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

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

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

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

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

[0016] The head node performs SRv6 tunnel encapsulation on the request message according to 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 egress node obtains a 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 manner, after the step of using the preferred tunnel strategy in the tunnel strategy group as the target tunnel strategy, the method further includes:

[0023] The preferred tunnel strategy is added to the strategy cache table.

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

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

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

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

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

[0029] The controller plans an available SRv6 tunnel according to the network topology of the computing network;

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

[0031] In an optional embodiment, the method further comprises:

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

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

[0034] In an optional embodiment, the method further comprises:

[0035] The controller replans available SRv6 tunnels when the network topology changes or the business demand of the computing service changes;

[0036] The controller updates the tunnel policy group corresponding to the computing service according to the re-planned available SRv6 tunnel, and sends it to the head node.

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

[0038] When the bandwidth exceeds a bandwidth threshold, or the computing power utilization exceeds a computing power utilization threshold, the controller re-determines a 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 so, the computing power tunnel policy is used as the target tunnel policy; otherwise, the 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, and caches the tunnel policy and the preferred tunnel policy in the tunnel policy group through the policy cache table, thereby achieving balanced utilization and flexible scheduling of computing network resources and ensuring the stability of request message forwarding. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.

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

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

[0043] Figure 3 This is an example diagram of the application tunnel strategy provided in this embodiment. DETAILED DESCRIPTION

[0044] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.

[0045] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0046] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.

[0047] In the description of the present invention, it should be noted that if the terms "upper", "lower", "inside", "outside", etc. appear to indicate an orientation or position relationship, they are based on the orientation or position relationship shown in the accompanying drawings, or are the orientation or position relationship in which the product of the invention is usually placed when used. They are only for the convenience of describing the present invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present invention.

[0048] In addition, the terms “first”, “second”, etc., if used, are merely used to distinguish between the descriptions and should not be understood as indicating or implying relative importance.

[0049] It should be noted that, in the absence of conflict, the features in the embodiments of the present invention may be combined with each other.

[0050] The inventor has conducted an in-depth analysis of the problem that the existing technology cannot meet the balance of computing power network resource utilization and business stability. The following will explain the analysis process in combination with application scenarios. Please refer to Figure 1 , Figure 1 This is an example diagram of an application scenario provided in this embodiment. Figure 1 In the SRv6-based computing network, there are four PEs (Provider Edge Devices): PE1 to PE4, three computing service nodes: computing service node 1 to computing service node 3, and a controller. Among them, SRv6 is a network routing technology that allows network paths to be defined and controlled through segment lists in IPv6 packet headers.

[0051] PE1 is connected to computing service node 1 and computing service node 2, and PE2 is connected to computing service node 3. The controller is connected to each PE. PE3 is connected to terminal 1 and terminal 2, and PE4 is connected to terminal 3 and terminal 4. The terminal is the requester of computing service, and the computing service node is the provider of computing service.

[0052] exist Figure 1 In the example, for the request message sent by the terminal to the computing service node, PE3 and PE4 are the head nodes, PE1 and PE2 are the tail nodes, the head node is also called the computing access gateway, and the tail node is also called the computing service gateway. Figure 1 The head node and the tail node are directly connected, but in actual application scenarios, the head node and the tail node can also be connected through multiple intermediate nodes.

[0053] Figure 1The three computing service nodes in the figure can all provide a computing service. Each terminal initiates a computing request through the PE connected to it to obtain the computing service provided by the computing service node. Different computing 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 connected to it. The PE determines the tail node and VPN SID corresponding to the computing service through the routing information corresponding to the anycast address to obtain the corresponding computing service from the corresponding computing service node.

[0054] In the prior art, the routing tables of the head node and the tail node determine which tail node the request message is forwarded to for decapsulation, and which computing service node the request message is sent to after decapsulation. As a result, the same tail node may send all the received request messages to the same computing service node, resulting in uneven load on the computing service node. For example, under certain routing optimization conditions, PE3 and PE4 may send all business traffic to PE2 based on the routing table, resulting in the risk of overload of computing service node 3.

[0055] In order to solve the problem of overload of computing power service node 3, one intervention method is for controller 30 to modify the routing priority so that all computing power requests are switched to PE1 for decapsulation, but this will cause the original computing tasks on computing power service node 3 to be interrupted, affecting business stability; at the same time, it may cause the new computing power service node to be overloaded, and it is still impossible to achieve balanced utilization of computing network resources.

[0056] In view of this, this embodiment provides a message forwarding method and a computing network, the core improvement of which is that by maintaining a policy cache table, a tunnel policy group and a preferred tunnel policy in the tunnel policy group, balanced utilization and flexible scheduling of computing network resources are achieved, and the stability of request message forwarding is ensured. It will be described in detail below.

[0057] Please refer to Figure 2 , Figure 2 The example flow chart of the message forwarding method provided in this embodiment includes the following steps:

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

[0059] In this embodiment, the service flow identifier is used to characterize different service flows. The service flow identifier can be represented by information such as the 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 services and can be transmitted using different computing tunnels. The same service flow can also be transmitted using different computing tunnels.

[0060] In this embodiment, a computing power tunnel represents a transmission path, for example, Figure 1 In the example, the request message sent from terminal 1 to computing power service node 1 can be sent through the transmission path of PE3-PE1-computing power service node 1, or through the transmission path of 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 there is a computing power tunnel policy corresponding to the service flow identifier in the policy cache table, the computing power tunnel policy is used as the target tunnel policy.

[0063] In this embodiment, the head node stores a policy cache table, and the policy cache table is used to quickly find the computing power tunnel strategy for forwarding the request message when forwarding the request message. When the head node can simultaneously forward multiple types of request messages carrying business flow identifiers, as an implementation method, the policy cache table can store multiple table entries, each of which corresponds to a business flow identifier and the cached computing power tunnel strategy for forwarding the business corresponding to the business flow identifier. The head node first searches the policy cache table for the computing power tunnel strategy corresponding to the business flow identifier according to the business flow identifier, and uses it as the target tunnel strategy. After finding it, it forwards the request message according to the computing power tunnel strategy.

[0064] Step S104: If there is no computing power tunnel policy corresponding to the service flow identifier 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.

[0065] In this embodiment, the computing power tunnel policy corresponding to the service flow identifier may not exist in the policy cache table. The computing power tunnel policy cannot be found in the policy cache table in at least two cases: Case 1: When the request message is the first message carrying the service flow identifier, the corresponding tunnel policy does not exist in the policy cache table; Case 2: For the request message, the current tunnel policy is rescheduled, causing the previously corresponding tunnel policy to become invalid and 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 newly 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 network resources. The preferred tunnel policy can be determined according to the pre-set selection principle. 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 in this embodiment realizes the balanced utilization and flexible scheduling of computing 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 the preferred tunnel policy in the tunnel policy group is used as the target tunnel policy, in order to ensure that subsequent request messages of the same service flow can continue to be quickly and normally forwarded, this embodiment also provides an implementation method: adding the preferred tunnel policy to the policy cache table. As a result, when the request message of the subsequent service flow is forwarded, the corresponding computing power tunnel policy can be found in the policy cache table, thereby realizing fast forwarding of the request message.

[0074] In an optional implementation manner, in order to quickly forward the request message according to the target tunnel policy, this embodiment also provides an implementation manner:

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

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

[0077] Secondly, the head node performs SRv6 tunnel encapsulation on the request message according to the service segment identifier and SRv6 tunnel;

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

[0079] Finally, the head node forwards the encapsulated request message according to the SRv6 tunnel.

[0080] In this embodiment, after the head node sends the encapsulated request message to the tail node, in order to send the original request message to the corresponding computing power service node, this embodiment 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 according to the SRv6 tunnel;

[0082] The egress node obtains the service 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 business segment identifier.

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

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

[0086] Secondly, based on the updated tunnel policy group, the head node deletes the computing power tunnel policy in the policy cache table 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 message 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 message carrying a business flow identifier is received, the computing power tunnel policy corresponding to the business flow identifier does not exist 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 to achieve normal forwarding of subsequent request messages of this business type.

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

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

[0090] First, based on the network topology of the computing network, the controller creates a business segment identifier that associates the tail node with the computing 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 network.

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

[0093] In this embodiment, there may be multiple available SRv6 tunnels, and the available SRv6 tunnels corresponding to the computing power service are classified into a tunnel policy 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 according to computing power load information and business requirements of computing power services:

[0095] The controller obtains computing power load information in the computing power network;

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

[0097] In this embodiment, the network topology changes, for example, if the computing service node in the computing network fails or the user has the need to adjust the computing service planning, it will affect the change of the forwarding path of the request message. In order to enable the request message to be forwarded according to the latest network topology, this embodiment also provides an implementation method for updating the tunnel policy group:

[0098] The controller replans available SRv6 tunnels when the network topology changes or the business requirements of computing services change;

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

[0100] This embodiment also provides an implementation method for determining a preferred tunnel strategy in a tunnel strategy group corresponding to a 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 demand for computing power services 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 the SRv6 tunnel 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, the SRv6 TE Policy te-policy1 going to PE1 and the 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 the computing power service nodes on Figure 3 PE1 and PE2 therein, and each service segment is respectively associated with a next hop (specifying the 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 identifiers corresponding to the computing power service nodes. 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 as 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 service flow identifier in the request packet, look up the computing power tunnel policy corresponding to the service flow identifier in the policy cache table. In this embodiment, the source IP address and destination IP address of the packet are selected as the service flow identifier.

[0120] (2.2) When PE3 processes the first packet of each service 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 service flow 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 service 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 is used 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 according to 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 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 Endpoint 1::1 and Color 100 of the computing power tunnel policy. An SRH to be encapsulated is jointly determined according to 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 wants 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 , and illustrates the processing procedure for managing the validity of the tunnel policies in the established policy cache table by using the tunnel policy group. 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 the 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, an embodiment of the present invention provides a message forwarding method and a computing power network, which are applied to a computing power network based on SRv6, wherein the computing power network includes a head node, and the head node and the terminal are communicated and connected, and the method includes: the head node receives a request message carrying a business flow identifier sent by the terminal, and the request message is used to request the corresponding computing power service; 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; if there is a computing power tunnel policy corresponding to the business flow identifier in the policy cache table, the computing power tunnel policy is used as the target tunnel policy; if there is no computing power tunnel policy corresponding to the business flow identifier in the policy cache table, the 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 providing computing power services in the computing power network, 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, balanced utilization of computing power network resources can be achieved when forwarding request messages; (2) The computing power tunnel strategy is cached by using a cache strategy table to ensure business continuity and stability; 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, so that the computing power tunnel strategy can be switched in time, thereby improving the computing power tunnel. The flexibility of policy scheduling ensures the stability of the business; (3) When the computing network topology changes or the load of the computing service node needs to be adjusted, the tunnel policy group is updated, and the updated tunnel policy group is used to timely update the computing tunnel policy that is not in the tunnel policy group but in the cache policy table, thereby realizing the effectiveness management of the cache policy table; (4) The tail node and its corresponding computing service node are associated through the business segment identifier, realizing flexible control of the target tail node and target computing service node of the computing request; (5) The preferred tunnel strategy in the tunnel policy group is determined based on the bandwidth and computing power utilization in the computing power load information, thereby ensuring the balance of the load of each computing power service node and the rationality of scheduling.

[0150] The above are only various embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.

Claims

1. A message forwarding method, characterized in that: Applied to a computing network based on SRv6, the computing network includes a head node, the head node is communicatively connected to a terminal, and the method includes: The head node receives a request message carrying a service flow identifier sent by the terminal, where the request message is used to request a corresponding computing power service; The head node determines whether there is a computing power tunnel strategy corresponding to the business flow identifier in the strategy cache table based on the business 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 there is no computing power tunnel policy corresponding to the service flow identifier in the policy cache table, determining a tunnel policy group based on the computing power service, and using the preferred tunnel policy in the tunnel policy group as the target tunnel policy; The head node forwards the request message according to the target tunnel policy.

2. The message forwarding method according to claim 1, characterized in that: The target tunnel strategy includes a tunnel tail node address, a tunnel color identifier, and a service segment identifier; The step of forwarding the request message by the head node according to the target tunnel policy comprises: The head node determines the SRv6 tunnel according to the tunnel tail node address and the tunnel color identifier; The head node performs SRv6 tunnel encapsulation on the request message according to 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 egress node obtains a 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 taking the preferred tunnel strategy in the tunnel strategy group as the target tunnel strategy, the method further includes: The preferred tunnel strategy is added to the strategy cache table.

5. The message forwarding method according to claim 1, characterized in that: The head node is also in communication with a controller in the computing power network, and the method further includes: The controller updates the tunnel strategy group and / or the preferred tunnel strategy corresponding to the computing service in the head node; Based on the updated tunnel policy group, the head node deletes the computing power tunnel policy in the policy cache table 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 also includes a controller, a tail node and a computing power service node, and the method also includes: The controller creates a service segment identifier that associates the tail node with the computing service node based on the network topology of the computing network, and sends the identifier to the tail node; The controller plans an available SRv6 tunnel according to the network topology of the computing network; The controller determines the tunnel policy group corresponding to the computing power service according to 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 obtains computing power load information in the computing power network; The controller determines a preferred tunnel strategy in a tunnel strategy group corresponding to the computing service according to 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 replans available SRv6 tunnels when the network topology changes or the business demand of the computing service changes; The controller updates the tunnel policy group corresponding to the computing service according to the re-planned available SRv6 tunnel, and sends it to the head node.

9. The message forwarding method according to claim 7, characterized in that: The computing power load information includes bandwidth or computing power utilization, and the method further includes: When the bandwidth exceeds a bandwidth threshold or the computing power utilization exceeds a computing power utilization threshold, the controller re-determines a 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, characterized in that: The computing power network includes a head node, a tail node, and a controller. The head node executes the message forwarding method executed by the head node in any one of claims 1-9, the tail node executes the message forwarding method executed by the tail node in any one of claims 1-9, and the controller executes the message 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

  • SRv6-based computing power routing system and method

    CN114980250A

  • Traffic forwarding method and device, SRv6 head node and storage medium

    CN116962277A

  • Scheduling strategy determination method and related device

    CN117812014A