Forwarding method of computing power routing, electronic equipment and computer readable medium
By receiving the computing power segment identifier and service identifier of the target message in the computing power network, querying the forwarding information table to obtain the next hop routing information and replacing the SID, the problem of forwarding loop in the computing power network is solved and network performance is improved .
Patent Information
- Application Number
- CN202310802457.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2024-12-31
AI Technical Summary
In computing power network, due to the different changes in computing power and network states perceived by each edge device, the status on the service message forwarding path is inconsistent, and a forwarding loop may occur, affecting network performance.
By receiving the computing power segment identification SID and service identification in the target message, query multiple forwarding information tables to obtain the computing power routing information for the next hop, and replace the computing power SID in the destination address field in the message to ensure the path The accuracy of decision making avoids forwarding loops.
Effectively ensure the accuracy of path decisions, avoid forwarding loops, and improve network performance.
Smart Images

Figure CN119232683A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a forwarding method for computing power routing, an electronic device, and a computer-readable medium. Background Art
[0002] 5G has driven edge computing to become a hot topic, accelerating the deployment of mobile edge computing (MEC). Among them, for emerging businesses such as the future industrial Internet, network-side edge computing and even field-level edge computing will provide users with flexible local access and provide the ultimate user experience. Therefore, computing power has shifted from centralization to sinking, and distributed resources / computing power and distributed services have become a trend. In addition, with the development of container technology and microservice architecture, applications are deconstructed into functions and services, and the network has shifted from host-oriented addressing to service / computing power-oriented addressing. Under this circumstance, a new technical form and operation model of computing power network came into being.
[0003] Among them, for the computing power network, since the status of computing power resources is often highly dynamic and the number of computing power service instances is large, the status information of highly dynamic and fine-grained computing power service instances is aggregated into relatively stable coarse-grained resource pool status information, and then announced in the computing power network as a hierarchical computing power perception and routing method. It is believed that it can better adapt to the new scenario of computing power network.
[0004] However, considering that in hierarchical computing power routing, the forwarding of business messages will go through multiple edge devices, and each edge device will make routing decisions based on the computing / network status information recorded at the current moment. Since each edge device perceives the computing / network status change at different times, the convergence order and time will be different, which may lead to inconsistent convergence states of business messages on the forwarding path of each edge device, resulting in forwarding loops and affecting network performance. Summary of the invention
[0005] The purpose of the embodiments of the present application is to provide a forwarding method, electronic device and computer-readable medium for computing power routing, which can ensure the accuracy of path decisions, avoid forwarding loops, and improve network performance.
[0006] To solve the above technical problems, the embodiments of the present application are implemented through the following aspects.
[0007] In a first aspect, an embodiment of the present application provides a forwarding method for computing power routing, which is applied to a first edge device, and the method includes: receiving a target message to be forwarded, the target message carrying a first computing power segment identifier SID and a service identifier of a requested specific service; determining a target forwarding information table associated with the first computing power SID in multiple forwarding information tables; querying the target forwarding information table according to the service identifier to obtain the computing power routing information of the next hop, the computing power routing information including a second computing power SID and a first output interface information; replacing the first computing power SID in the destination address field in the target message with the second computing power SID, and forwarding the replaced target message according to the first output interface information; wherein the first edge device stores multiple computing power SIDs, different computing power SIDs are associated with different forwarding information tables, and different forwarding information tables are used for message forwarding at different network levels in the computing power network, and the first computing power SID belongs to the multiple different computing power SIDs.
[0008] In a second aspect, an embodiment of the present application provides an electronic device, comprising: a memory, a processor, and computer executable instructions stored in the memory and executable on the processor, wherein the computer executable instructions, when executed by the processor, implement the steps of executing the method described in the first aspect.
[0009] In a third aspect, an embodiment of the present application provides a computer-readable storage medium, which is used to store computer-executable instructions. When the computer-executable instructions are executed by a processor, the steps of the method described in the first aspect are implemented.
[0010] In an embodiment of the present application, for a received target message to be forwarded, the edge device in the computing network can make a decision on the next-hop forwarding path and forward the target message (also referred to as a service message) based on the hierarchical SID stored in itself and the hierarchical forwarding information table associated with the SID, thereby effectively ensuring the accuracy of the path decision, avoiding forwarding loops, and improving network performance. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0012] Figure 1 A flow chart showing a forwarding method for computing power routing provided in an embodiment of the present application is shown.
[0013] Figure 2 One of the schematic diagrams showing the process of determining computing power status information provided in an embodiment of the present application.
[0014] Figure 3 The second schematic diagram shows the process of determining the computing power status information provided in an embodiment of the present application.
[0015] Figure 4 A schematic diagram of the hierarchical table entry generation process provided in an embodiment of the present application is shown.
[0016] Figure 5 One of the schematic diagrams of the aggregation and release process of computing power status information provided in an embodiment of the present application is shown.
[0017] Figure 6 The second schematic diagram of the aggregation and release process of computing power status information provided in an embodiment of the present application is shown.
[0018] Figure 7 One of the schematic diagrams of the hierarchical computing power routing process provided in an embodiment of the present application is shown.
[0019] Figure 8a The second schematic diagram of the hierarchical computing power routing process provided in an embodiment of the present application is shown.
[0020] Figure 8b A schematic diagram of the computing power routing process in the related technology provided in an embodiment of the present application is shown.
[0021] Fig. 9 A schematic diagram of the structure of a forwarding device for computing power routing provided in an embodiment of the present application is shown.
[0022] Fig.10 A schematic diagram of the hardware structure of an electronic device for executing the forwarding method of computing power routing provided in an embodiment of the present application. DETAILED DESCRIPTION
[0023] In order to enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of this application.
[0024] Figure 1A flow chart of a forwarding method 100 for computing power routing provided in an embodiment of the present application is shown. The method 100 can be executed by a first edge device, specifically by software and / or hardware installed in the first edge device. In this embodiment, the first edge device can be a terminal device or a server device, etc.
[0025] It is worth noting that in this embodiment, multiple computing power segment identifiers (Segment Identifier, SID) can be configured and stored in the first edge device, different computing power SIDs are associated with different forwarding information tables (also called forwarding information base (FIB)), and different forwarding information tables are used for message forwarding at different network levels in the computing power network.
[0026] Based on this, in the process of implementing the forwarding of computing power routing, the present application realizes the forwarding of the target message by matching the computing power SID carried in the message with the hierarchical table entry. For example, the first edge device judges the hit relationship between the computing power SID carried in the message and the locally defined computing power SID based on the hierarchical computing power SID stored in itself and the hierarchical multiple forwarding information tables corresponding to the hierarchical computing power SID, and makes a decision on the next-hop forwarding path for the target message to be forwarded (also called the business message) according to the hit relationship. As a result, the level of the forwarding information table used in the decision-making can be consistent with that indicated by the computing power SID in the target message, that is, the level of the forwarding information table used in the decision-making is consistent with the network level at which the edge device is located during the message forwarding process, which effectively ensures the accuracy of the path decision, avoids forwarding loops, and improves network performance.
[0027] In addition, the specific services or computing power services mentioned in the context of this application can be determined according to demand, and this application does not impose any restrictions on this.
[0028] Based on this, Figure 1 As shown, the forwarding method 100 of computing power routing provided in this embodiment may include the following steps.
[0029] S110: The first edge device receives a target message to be forwarded.
[0030] Among them, the target message carries the first computing power SID and the service identifier (Service ID) of the requested specific service. In this embodiment, the first computing power SID can be carried in the destination address (Destination Address) field in the target message for querying hierarchical table entries and hierarchical forwarding in the computing power routing process. In this embodiment, the first computing power SID belongs to one of the multiple computing power SIDs stored in the first edge device, and is used for the previous hop edge device to forward the target message to the first edge device.
[0031] In one implementation, the process of the first edge device receiving the target message to be forwarded may include: after determining that the target message to be forwarded is received, parsing the specified field in the message header of the target message to obtain the service identifier of the specific service, that is, in this application, the computing power service (such as a specific service) is characterized by the service identifier.
[0032] Optionally, the designated field may be, but is not limited to, a destination options header (Destination Options Header, DOH) field, a hop-by-hop options header (Hop-by-Hop Options Header, HBH) field, or a segment routing header (Segment Routing Header, SRH) field, etc.
[0033] S120: Determine a target forwarding information table associated with the first computing power SID from multiple forwarding information tables.
[0034] S130, query the target forwarding information table according to the service identifier to obtain the computing power routing information of the next hop (Next Hop).
[0035] Among them, the first edge device queries the target forwarding information table with the service identifier as the index to obtain the computing power routing information of the next hop, such as the second computing power SID and the first output interface information, for forwarding the target message.
[0036] It should be noted that the computing power routing information may be different depending on the network level corresponding to the target forwarding information table. For example, when the network level corresponding to the target forwarding information table includes multiple different edge devices, the computing power routing information may include the SID and outbound interface information corresponding to a certain edge device under the network level.
[0037] For another example, the network layer corresponding to the target forwarding information table includes multiple computing service instances corresponding to the current edge device. Then, the computing routing information may include the SID and output interface information corresponding to a computing service instance under the network layer.
[0038] S140: Replace the first computing power SID in the destination address field of the target message with the second computing power SID, and forward the replaced target message according to the first outbound interface information.
[0039] In this embodiment, for the received target message to be forwarded, the edge device in the computing power network can make a decision on the next-hop forwarding path and forward the target message (also called a service message) based on the hierarchical SID stored in itself and the hierarchical forwarding information table associated with the SID, thereby effectively ensuring the accuracy of the path decision, avoiding forwarding loops, and improving network performance.
[0040] Based on this, for the multiple forwarding information tables stored in the aforementioned first edge device, there can be multiple implementation methods according to the different network levels actually divided. For example, in one implementation method, the multiple forwarding information tables may include a global forwarding information table and a local forwarding information table. Among them, the global forwarding information table is used to indicate the message forwarding routing information of the target message between the edge devices in the computing power network, and the local forwarding information table is used to indicate the message forwarding routing information of the target message between the computing power service instances corresponding to the first edge device.
[0041] Corresponding to the hierarchical forwarding information table, when determining the forwarding information table, the present application may also be determined based on a hierarchical routing information table (also referred to as a routing information base (RIB)). For example, the global forwarding information table may be determined by the first edge device based on the global routing information table, wherein the global routing information table stores the device information of each edge device in the computing power network and the ability of each edge device to provide the specific service.
[0042] For example, the local forwarding information table may also be determined by the first edge device based on a local routing information table, in which the service instance information of each local computing service instance and the capability of each computing service instance to provide the specific service are stored.
[0043] For the generation of the aforementioned table items, in this application, each edge device in the computing network can generate a routing information table through the control plane, and send the generated routing information table to the forwarding plane to generate a forwarding information table. In this case, the generation process of each table item is described below using the first edge device as an example.
[0044] First, considering that for computing power services, different types of computing power services may be sensitive to different computing / network resource status metadata, such as the number of central processing unit (CPU) cores, CPU load, input / output interface (I / O), memory size, latency size, etc. Then, for a type of computing power service represented by a Service ID, the metadata of the relevant computing power service instances and the corresponding network forwarding paths that this type of computing power service is sensitive to can reflect their ability to provide this type of computing power service. And based on the evaluation method adapted to this type of computing power service, the metadata of the computing power service instances and the corresponding network forwarding paths can be converted into a metric value to reflect their ability to provide this type of computing power service through the metric value.
[0045] Based on this, the determination of the local routing information table and the global routing information table will be described below respectively.
[0046] In one implementation, the process of determining the global routing information table may include: the first edge device receives first computing power status information sent by at least one second edge device, and then determines the global routing information table according to the second computing power status information and at least one of the first computing power status information. The second computing power status information is obtained by the first edge device performing coarse-grained aggregation on the perceived local computing power status information.
[0047] It can be understood that the first computing power status information indicates the ability of the second edge device to provide a specific service, which can be a set of meta-information on the second edge device that is sensitive to the specific service, or a metric value obtained by converting the set of meta-information on the second edge device that is sensitive to the specific service. Similarly, the second computing power status information indicates the ability of the first edge device to provide a specific service, which can be a set of meta-information on the second edge device that is sensitive to the specific service, or a metric value obtained by converting the set of meta-information on the second edge device that is sensitive to the specific service.
[0048] That is to say, each edge device in the computing power network can adopt the two different implementation methods mentioned above when determining the computing power status information. In this case, considering that the second edge device determines the computing power status information in a similar way to the first device, this application will take the first edge device as an example to illustrate the process of determining the computing power status information.
[0049] For example, the first edge device aggregates the perceived local computing power status information to obtain the first computing power status information as shown in the following implementation method 1 and / or implementation method 2.
[0050] Implementation method 1: Aggregate multiple metric values representing specific services provided by computing power service instances into one metric value, namely computing power status information. The implementation process can be as follows: Figure 2 As shown, the content is as follows.
[0051] S210, the first edge determines a computing network resource status metadata set corresponding to each computing power service instance.
[0052] Among them, considering that in the computing power network, there are multiple computing power service instances that can provide computing power services in the edge cloud or data center to which each edge device is connected, such as Instance 1, Instance 2,..., then each edge device can determine the computing network resource status metadata set corresponding to each computing power service instance based on the metadata set of different computing / network resource states of these computing power service instances connected to it at a certain moment, which can be recorded as Attr Set i, j.
[0053] S220, the first edge device determines the first metric value corresponding to each computing power service instance, such as Metric i, based on the computing network resource status metadata set corresponding to each computing power service instance. The first metric value is used to characterize the ability of the computing power service instance to provide a specific service.
[0054] S230, the first edge device aggregates the first metric value corresponding to each of the computing power service instances to obtain a second metric value corresponding to the second computing power status information, where the second metric value is used to characterize the ability of the resource pool at the first edge device to provide the specific service.
[0055] In this implementation, there may be multiple ways for the first edge device to aggregate the first metric values corresponding to each of the computing service instances to obtain the second metric value, such as shown in (11)-(15), that is, the first edge device may aggregate the first metric value based on any one of the following (11)-(15).
[0056] (11) The weighted average of the first metric values corresponding to each of the computing power service instances is used as the second metric value.
[0057] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding first metric value is 15, 30, 10, 20, then the second metric value can be (15*w1+30*w2+20*w3+15*w4) / (w1+w2+w3+w4), where w1, w2, w3, w4 are weights, which can be set according to needs and are not limited here.
[0058] (12) The maximum value of the first metric values corresponding to each of the computing power service instances is used as the second metric value.
[0059] For example, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding first metric value is 15, 30, 10, and 20 respectively, then the maximum value can be determined to be 30, and then the second metric value is determined to be 30.
[0060] (13) The minimum value of the first metric values corresponding to each of the computing power service instances is used as the second metric value.
[0061] For example, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding first metric value is 15, 30, 10, 20, then the minimum value can be determined to be 10, and then the second metric value is determined to be 10.
[0062] (14) The median of the first metric values corresponding to each of the computing power service instances is used as the second metric value.
[0063] For example, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding first metric value is 15, 30, 10, and 20 respectively, then the median can be determined to be 15 and 20, and then the second metric value can be determined to be (20+15) / 2=17.5.
[0064] (15) The average value of the first metric value corresponding to each of the computing power service instances is used as the second metric value.
[0065] For example, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding first metric value is 15, 30, 10, and 20 respectively, then it can be determined that the second metric value is (30+10+20+15) / 4=18.75.
[0066] Implementation method 2: Aggregate the metadata sets of multiple computing service instances into an aggregate metadata set, namely, computing power status information. The implementation process can be as follows: Figure 3 As shown, the content is as follows.
[0067] S310, for each computing power service instance, respectively determine a first set of metadata of the computing network resource status metadata that the computing power service instance can provide for each computing power service, and determine the union of the first metadata sets corresponding to the computing power service instance to obtain a second metadata set.
[0068] For example, assuming that the metadata set that the computing power service is sensitive to is recorded as Attr Set, then the metadata set of computing network resource status that the computing power service instance j is sensitive to at a certain moment can be recorded as Attr Set i, j (i.e., the first metadata set), then, for multiple computing power services, the first metadata set corresponding to the computing power service instance j can be Attr Set 1, j, Attr Set 2, j, Attr Set 2, j... Then, the computing power service instance j can further take the union of the first metadata sets Attr Set 1, j, Attr Set 2, j, Attr Set 2, j... corresponding to multiple computing power services to obtain a second metadata set.
[0069] For example, assuming that the first metadata set Attr Set 1, j is {30ms, 50G}, and Attr Set 2, j is {30ms, 10c}, then the second metadata set determined according to the union of Attr Set 1, j and Attr Set 2, j may be {30ms, 50G, 10c}, where "ms" represents latency, "G" represents memory, and "c" represents CPU core.
[0070] S320, aggregate the second metadata set corresponding to each of the computing power service instances to obtain a third metadata set corresponding to the second computing power status information.
[0071] In this embodiment, there may be multiple ways for the first edge device to aggregate the second metadata set corresponding to each computing service instance, such as shown in (21)-(26), that is, the first edge device may aggregate the second metadata set based on any one of the following (21)-(26).
[0072] (21) Taking the average value of the same type of elements in the second metadata set corresponding to each computing power service instance as the corresponding element in the third metadata set.
[0073] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding second metadata set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, then it can be determined that the third metadata set is {25ms, 62.5G, 10c}.
[0074] (22) Taking the weighted average of the same type of elements in the second metadata set corresponding to each computing power service instance as the corresponding element in the third metadata set.
[0075] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding second metadata set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, then the third metadata set can be determined as {a ms, bG, cc}, where a = (30*a1+20*a2+40*a3+10*a4) / (a1+a2+a3+a4), b = (50*b1+60*b2+100*b3+40*b4), c = (10*c1+12*c2+12c3+6*c4), and the size of the aforementioned weights can be set according to demand and is not limited here.
[0076] (23) The maximum value of the same type of elements in the second metadata set corresponding to each computing power service instance is used as the corresponding element in the third metadata set.
[0077] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding second metadata set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, then it can be determined that the third metadata set is {40ms, 100G, 12c}.
[0078] (24) The minimum value of the same type of elements in the second metadata set corresponding to each computing power service instance is used as the corresponding element in the third metadata set.
[0079] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding second metadata set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, then it can be determined that the third metadata set is {10ms, 40G, 6c}.
[0080] (25) The median of the same type of elements in the second metadata set corresponding to each computing power service instance is used as the corresponding element in the third metadata set.
[0081] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding second metadata set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, then it can be determined that the third metadata set is {25ms, 55G, 15c}.
[0082] (26) The second metadata set corresponding to a specific computing power service instance in each of the computing power service instances is used as the third metadata set.
[0083] Exemplarily, assuming that the first edge device corresponds to four computing service instances, such as: Instance1, Instance2, Instance3, and Instance4, and each corresponding second metadata set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, and Instance2 is a specific computing service instance, then it can be determined that the third metadata set is {20ms, 60G, 12c}.
[0084] It can be understood that the specific computing service instance mentioned in (26) can be determined based on demand, such as computing resource stability, etc., and no restrictions are made here.
[0085] It is worth noting that after the first edge device determines the second computing power status information based on the aforementioned implementation method 1 and / or implementation method 2, it can publish and notify the second computing power status information, such as the second metric value or the third metadata set, to each of the second edge devices in the computing power network. Optionally, when the first edge device publishes or notifies the second computing power status information, the scalable Border Gateway Protocol (BGP) and Interior Gateway Protocol (IGP) protocols are used for notification.
[0086] Similarly, after determining the first computing power status information, each second edge device in the computing power network can also publish and notify the second computing power status information to the computing power network.
[0087] Then, in this case, if the first edge device receives the first computing power status information sent by each second edge device, a global routing information table can be determined based on each of the first computing power status information and the locally determined second computing power status information.
[0088] For example, assuming that the computing power status information is Metric (i.e., the second Metric value), and for the computing power service represented by Service ID 1, the second Metric value determined by the first edge device PE1 is 17.5, and the second Metric values published by the second edge devices PE2, PE3, and PE4 are 15, 25, and 30, respectively. Then, the global routing information table determined by the first edge device can be as shown in Table 1.
[0089] Table 1
[0090] Service ID Next Hop Metric Service ID 1 PE1 17.5 Service ID 1 PE2 15 Service ID 1 PE3 25 Service ID 1 PE4 30
[0091] Table 2
[0092] Service ID Next Hop Meta information collection Service ID 1 PE1 {30ms, 50G, 10c} Service ID 1 PE2 {30ms, 50G, 15c} Service ID 1 PE3 {40ms, 10G, 10c} Service ID 1 PE4 {10ms, 80G, 8c}
[0093] For another example, assuming that the computing power status information is a meta-information set (i.e., a third meta-information set), and for the computing power service represented by Service ID 1, the third meta-information set determined by the first edge device PE1 is {25ms, 55G, 15c}, and the third meta-information sets published by the second edge devices PE2, PE3, and PE4 are {30ms, 50G, 15c}, {40ms, 10G, 10c}, and {10ms, 80G, 8c}, respectively. Then, the global routing information table determined by the first edge device can be as shown in Table 2.
[0094] It is worth noting that, based on the foregoing content, the second computing power status information method provided in the foregoing implementation method 1 and implementation method 2 is determined based on the granularity of a resource pool, and the resource pool includes resources corresponding to at least one computing power service instance.
[0095] In addition, in the process of determining the aforementioned global routing table, each edge device can generate a local routing information table according to the computing power status information corresponding to each computing power service instance. For example, assuming that the computing power status information is Metric (i.e., the first Metric value), and for the computing power service represented by Service ID 1, the first edge device corresponds to four computing power service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding first Metric value is 15, 30, 10, 20, then the local routing information table can be as shown in Table 3.
[0096] Table 3
[0097] Service ID Next Hop Metric Service ID 1 Instance 1 15 Service ID 1 Instance 2 30 Service ID 1 Example 3 10 Service ID 1 Example 4 20
[0098] Table 4
[0099] Service ID Next Hop Meta information collection Service ID 1 Instance 1 {30ms, 50G, 10c} Service ID 1 Instance 2 {20ms, 60G, 12c} Service ID 1 Example 3 {40ms, 100G, 12c} Service ID 1 Example 4 {10ms, 40G, 6c}
[0100] For another example, assuming that the computing power status information is a meta-information set (i.e., the second meta-information set), and for the computing power service represented by Service ID 1, the first edge device PE1 corresponds to four computing power service instances, such as: Instance1, Instance2, Instance3, Instance4, and each corresponding second meta-information set is {30ms, 50G, 10c}, {20ms, 60G, 12c}, {40ms, 100G, 12c}, {10ms, 40G, 6c}, then the local routing information table can be as shown in Table 4.
[0101] In this embodiment, the aforementioned aggregation method of computing power status information is adopted to maintain the granularity of computing power service instances, so that the computing power status information has semantics comparable to the local detailed service instance information, thereby ensuring the reliability of the routing information table determined based on the computing power status information and the basic correctness of the computing power routing control plane entries when making decisions, avoiding the problem that the aggregation value loses the semantics of the granularity of a single service instance due to the application of the accumulation method for aggregation in the related technology, resulting in the occurrence of computing power routing decision errors.
[0102] In this case, the generation of the global forwarding information table is further described below by the determination method of the computing power status information provided in implementation method 1. It is assumed that based on the collection, aggregation and notification of the computing power status information described above, each edge device in the computing power network has collected information about the local computing power service instance and collected computing power status information at the aggregated resource pool granularity. Then, it can generate table entries at the global level and the local level on the forwarding plane, such as the global forwarding information table and the local forwarding information table.
[0103] Here, we take the first edge device and aggregate the computing power status information based on the Metric value as an example. Figure 4 As shown, assuming that the first edge device (such as PE4) has collected information about each local computing service instance (such as Instance4,1, Instance4,2, Instance4,3, Instance4,4) and received the first computing status information sent by other edge devices (such as PE1, PE2, PE3), then the first edge device PE4 can determine the local routing information table as shown in Table 5 and the global routing information table as shown in Table 6.
[0104] Table 5
[0105] Service ID Next Hop Metric Service ID 1 Instance 4, 1 15 Service ID 1 Instanc4,2 10 Service ID 1 Instanc4,3 20 Service ID 1 Instance 4,4 25
[0106] Table 6
[0107] Service ID Next Hop Metric Service ID 1 PE1 18 Service ID 1 PE2 25 Service ID 1 PE3 35 Service ID 1 PE4 10
[0108] There may be multiple ways to determine the local forwarding information table based on the local routing information table, and to determine the global forwarding information table based on the global routing information table. In this embodiment, the entry with the smallest Metric value is selected as the best forwarding entry in a preferential manner to generate a local forwarding information table as shown in Table 7, and a global forwarding information table as shown in Table 8.
[0109] Table 7
[0110] Service ID Next Hop Metric Service ID 1 Instance 4, 2 Interface 1
[0111] Table 8
[0112] Service ID Next Hop Metric Service ID 1 PE4 policy
[0113] It can be understood that in the above-mentioned process of generating the global forwarding information table and the local forwarding information table, the metric value is used as an example for description (the specific generation process can also be referred to Figure 4 In addition, considering that the process of generating the global forwarding information table and the local forwarding information table based on the meta information set is similar to the process of generating the global forwarding information table and the local forwarding information table based on the metric value, to avoid repetition, this application will not repeat them here.
[0114] In one implementation, in order to further effectively support the aforementioned hierarchical computing power routing forwarding process, the present application is configured with corresponding message features (i.e., the aforementioned computing power SID) to match the aforementioned hierarchical table entries (such as the aforementioned global forwarding information table, local forwarding information table), thereby realizing the query of next-hop routing information.
[0115] However, it should be noted that, corresponding to the aforementioned forwarding information table including a global forwarding information table and a local forwarding information table, the multiple computing power SIDs may also include a global computing power SID (Computing Global, END.CG) and a local computing power SID (Computing Local), and the global computing power SID is associated with the global forwarding information table, and the local computing power SID is associated with the local forwarding information table.
[0116] Then, in this case, the semantics of the local computing power SID (which can be recorded as END.CL) can be: for the received business message to be forwarded, if the computing power SID that can be carried in the business message is the local computing power SID, then the service identifier encapsulated in the DOH, HBH or SRH position of the business message can be parsed first, and then the local forwarding information table associated with the local computing power SID can be queried using the service identifier as an index, and finally the next hop forwarding of the business message can be performed according to the queried computing power route.
[0117] Similarly, the semantics of the global computing power SID (denoted as END.CG) can be: if the computing power SID that can be carried in the business message is the global computing power SID, then the service identifier encapsulated in the DOH, HBH or SRH position of the business message can be parsed first, and then the global forwarding information table associated with the global computing power SID can be queried using the service identifier as an index, and finally the next hop forwarding of the business message can be performed according to the queried computing power route.
[0118] It is worth noting that in the computing power network, the global computing power SID and the local computing power SID can be stored on each edge device respectively, and associated with the global forwarding information table and the local forwarding information table respectively. In this way, by separating the computing power resource information perceived at different levels, and then forming table items at different levels, and explicitly specifying different table items to be queried at different edge devices through the computing power SID, the micro-loop problem in hierarchical computing power routing can be effectively solved.
[0119] Of course, in order to realize the forwarding of business messages, after determining the computing power SID, each edge device can also publish or announce the computing power SID in the computing power network through the extended IGP or BGP, so that in the case of hierarchical computing power routing, the business message can carry the computing power SID, and the edge device that receives the business message can complete the hierarchical table entry query and hierarchical forwarding in the computing power routing process according to the corresponding SID semantics.
[0120] Further, based on the design of the aforementioned hierarchical table items and SID, in the process of implementing routing forwarding based on the aforementioned S110-S140, if the first edge device senses that the forwarding path corresponding to the computing power routing information of the next hop is abnormal (such as interruption, etc.), then the target forwarding information table can be refreshed, and then the refreshed target forwarding information table is queried according to the service identifier to obtain the refreshed computing power routing information of the next hop, the target forwarding information table is associated with the first computing power SID, and the refreshed computing power routing information includes the third computing power SID and the second output interface information; the first computing power SID in the target message is replaced with the third computing power SID, and the replaced target message is forwarded according to the second output interface information, so as to achieve the correctness of routing forwarding. It can be understood that after refreshing the target forwarding information table, the first edge device can announce the refreshed computing power status information to ensure the correctness of subsequent message forwarding and avoid forwarding loops.
[0121] In summary, the forwarding solution of the aforementioned computing power routing proposed in the embodiments of the present application mainly involves the following points:
[0122] (31) An aggregation method that integrates fine-grained detailed computing power status information into coarse-grained computing power status information suitable for hierarchical routing decisions is proposed. This method includes both the aggregation of computing power status metadata sets and the aggregation of metric values that represent computing power service instances. This method can solve the loop problem caused by inappropriate aggregation methods in hierarchical computing power perception and routing solutions.
[0123] (32) Different from the unified RIB table and FIB table of the traditional IP network, the present application proposes a hierarchical table design based on the perception level, specifically including the global RIB table, the global FIB table and the local RIB table, the local FIB table.
[0124] (33) A hierarchical computing power routing message forwarding method is proposed by associating hierarchical table entries with computing power SID.
[0125] Among them, for the aforementioned (32)-(33), the present application distinguishes the information perceived at different levels through a hierarchical table item design, and then associates different table items with different computing power SIDs. Finally, by displaying the specified SID, it can solve the micro-loop problem caused by convergence order and time in sudden and interruption situations.
[0126] That is, the forwarding scheme of computing power routing provided by this application can further supplement and improve the hierarchical computing power perception, notification and routing solutions. Among them, hierarchical computing power perception and notification reduce the number of control plane table entries in the network, greatly reduce the frequency of control plane calculation and refreshing FIB table to the forwarding plane, and adapt to the application scenarios of computing power networks and the growth of the number of service instances and the development trend of heterogeneity; at the same time, through the design of computing power status information aggregation method, the semantic design of computing power SID and the hierarchical table design, the loop and micro-loop problems under multi-point decision-making of hierarchical routing are solved.
[0127] Based on this, it can be understood that the forwarding solution of the computing power routing provided in this application can be applied to but not limited to IP-based transmission network (IP Radio Access Network, IPRAN) / encrypted virtual network (Secret Private Network, SPN), metropolitan area network / backbone, etc.
[0128] Based on the forwarding method of computing power routing provided in the aforementioned embodiment, for ease of understanding, the implementation process of the present application is further illustrated below in combination with different examples.
[0129] Example 1
[0130] Assume that edge devices PE1, PE2, and PE3 aggregate the metric values corresponding to multiple computing service instances by taking the median of the metric values corresponding to all computing service instances that provide the service, and then publish and notify the network of the unique metric value corresponding to a Service ID. Then, the aggregation and publication process of its computing status information can be as follows: Figure 5 shown.
[0131] Understandably, Figure 5Taking the aggregation process of computing power status information on PE1 shown in as an example, for the computing power service instances Instance1, Instance2, Instance3, and Instance4 corresponding to PE1, the ability of Instance1 to provide the computing power service represented by ServiceID 1 (i.e., the first Metric value) is 15, and the ability to provide the computing power service represented by Service ID 2 (i.e., the first Metric value) is 20.
[0132] The ability of Instance2 to provide the computing service represented by Service ID 1 (i.e., the first Metric value) is 30, and the ability to provide the computing service represented by Service ID 2 (i.e., the first Metric value) is 15.
[0133] The capability of Instance3 to provide the computing service represented by Service ID 1 (i.e., the first Metric value) is 10, and the capability of Instance3 to provide the computing service represented by Service ID 2 (i.e., the first Metric value) is 25.
[0134] The capability of Instance4 to provide the computing service represented by Service ID 1 (i.e., the first Metric value) is 20, and the capability of Instance4 to provide the computing service represented by Service ID 2 (i.e., the first Metric value) is 30.
[0135] Based on this, the ability of PE1 to provide the computing service represented by Service ID 1 (i.e., the second Metric value) is 17.5, and the ability to provide the computing service represented by Service ID 2 (i.e., the second Metric value) is 22.5. Figure 5 As shown in<Service ID1 PE1 Metric 17.5> ,<Service ID2 PE1 Metric 22.5> .
[0136] The process for PE2, PE3, and PE4 to determine their ability to provide the computing service represented by Service ID 1 and their ability to provide the computing service represented by Service ID 1 is similar to that of PE1 and will not be repeated here.
[0137] Then, PE4 acts as the source PE, and PE1, PE2, and PE3 can publish and announce the computing power status information they determine (i.e., the ability to provide the computing power service represented by Service ID 1 and the ability to provide the computing power service represented by Service ID 2) in the computing power network. Then, PE4 can generate hierarchical table items according to the received computing power status information corresponding to PE1, PE2, and PE3 and its own computing power status information, such as the local routing table, the global routing information table, the local forwarding information table, and the global forwarding information table. The generation process of the hierarchical table items will not be repeated here.
[0138] It is worth noting that when aggregating computing power status information, the differentiated evaluation method for each type of computing power service can be degenerated into a unified or service-based evaluation method based on actual conditions. At this time, the Metric values corresponding to different Service IDs are the same or a group of Service IDs corresponds to one Metric, etc., and there is no restriction here.
[0139] Example 2
[0140] Assume that edge devices PE1, PE2, and PE3 aggregate the second metadata sets corresponding to multiple computing service instances as the average value of the same type of elements, and then publish and notify the unique metadata set corresponding to a Service ID to the computing network. Then, the aggregation and publishing process of the computing status information of each edge device can be as follows: Figure 6 shown.
[0141] Understandably, Figure 6 Take the aggregation process of computing power status information on PE1 as an example, for computing power service instances Instance1, Instance2, Instance3, and Instance4 corresponding to PE1. Among them, the ability of Instance1 to provide computing power service represented by Service ID 1 (i.e., the first meta-information set) is {30ms, 50G}, and the ability to provide computing power service represented by Service ID 2 is {30ms, 10c}, then the union of the two first meta-information sets is taken to obtain the second meta-information set {30ms, 50G, 10c}.
[0142] The ability of Instance2 to provide the computing service represented by Service ID 1 (i.e., the first meta-information set) is {20ms, 60G}, and the ability to provide the computing service represented by Service ID 2 is {20ms, 12c}. Then, the union of the two first meta-information sets is taken to obtain the second meta-information set {20ms, 60G, 12c}.
[0143] Instance 3's ability to provide the computing service represented by Service ID 1 (i.e., the first meta-information set) is {40ms, 100G}, and its ability to provide the computing service represented by Service ID 2 is {40ms, 12c}. Then, the union of the two first meta-information sets is taken to obtain the second meta-information set {40ms, 100G, 12c}.
[0144] Instance 4 can provide the computing service represented by Service ID 1 (i.e., the first metadata set) as {10ms, 40G}, and can provide the computing service represented by Service ID 2 as {10ms, 6c}. Then, the union of the two first metadata sets is taken to obtain the second metadata set {10ms, 40G, 60c}.
[0145] Based on this, if the average value of the same type of elements is taken to aggregate the second metadata set corresponding to each computing service instance, then the PE1 can provide the computing service represented by Service ID 1 and the computing service represented by Service ID 2 (i.e., the third metadata set (such as Figure 6 The Cohesive Metadata Set 1) shown in is {25ms, 63G, 10c}.
[0146] The process for PE2, PE3, and PE4 to determine their ability to provide the computing power service represented by Service ID 1 and the computing power service represented by Service ID 2 is similar to that of PE1 and will not be repeated here.
[0147] Then, PE4 acts as the source PE. When PE1, PE2, and PE3 publish and announce the computing power status information they have determined in the computing power network, PE4 can generate hierarchical table items based on the received computing power status information corresponding to PE1, PE2, and PE3 and in combination with its own computing power status information, such as the local routing table, the global routing information table, the local forwarding information table, and the global forwarding information table. The generation process of the hierarchical table items will not be repeated here.
[0148] Example 3
[0149] like Figure 7 As shown, it is assumed that each edge device PE can be configured with a global computing power SID and a local computing power SID and a corresponding global forwarding information table and a local forwarding information table, and the computing power SID is flooded and announced in the entire network by extending the IGP.
[0150] Then in this case, if Figure 7As shown, the hierarchical computing power routing forwarding process provided by this application is as follows.
[0151] (a) The client sends a service message, and the Destination Address field of the service message is filled with the global computing power SID of the connected edge device PE1, such as Figure 7 END.CG(PE 1) in.
[0152] (a) When PE 1 receives a service message, it can parse the Service ID (which can be placed in the DOH, HBH position, etc.) carried in the message header according to the global computing power SID in the Destination Address field, namely END.CG (PE 1), and then query the global forwarding information table associated with the global computing power SID according to Service ID 1. If the next hop is END.CL (PE 4) according to Service ID 1, replace END.CG (PE 1) in the Destination Address field with END.CL (PE 4) and use the corresponding outbound interface information. In the case of Traffic Engineering (TE), the outbound interface information is Figure 7 The Policy 1 shown in the figure is the outer message header of the original message encapsulation, including SRH, source address and destination address (the first SID in the segment list (Segment List) of the Policy is taken), etc.
[0153] (a) PE1 continues to forward the service message. On the way, the service message is forwarded along the explicit path according to the Segment List in Policy 1 until it reaches PE 4.
[0154] (a) After receiving the service message, PE4 can decapsulate the outer message header of the service message to expose the inner message, and parse the Service ID (which can be placed in the DOH, HBH position, etc.) carried in the message header according to the local computing power SID in the Destination Address field, namely END.CL (PE 4), and then query the associated local forwarding information table according to Service ID 1. If the next hop is Instance 4, 2 according to Service ID 1, then the computing power SID in the Destination Address field can be replaced according to the queried routing information, and the service message can continue to be forwarded according to the corresponding outbound interface information to finally reach Instance 4, 2.
[0155] It can be understood that the implementation process of this example 3 can refer to the relevant description in the aforementioned method embodiment, which will not be repeated here. Of course, the implementation process of this example 3 is only an example. In the actual forwarding process, it may have more or fewer steps than the aforementioned ones, and there is no limitation here.
[0156] Example 4
[0157] like Figure 8a As shown, taking the minimum value of the corresponding Metric values of all service instances providing computing power services as the aggregation method, PE 1 to PE 4 respectively generate their own global and local control plane table entries, namely the global routing information table and the local routing information table. At this time, Instance 4,4 located at PE 4 has the smallest Metric value, so it is selected at PE 4 as the instance that locally provides the computing power service represented by Service ID 1 and is sent down as the local forwarding information table entry of the forwarding plane; similarly, at PE 1, PE 4 connected to Instance 4,4 is selected as the forwarding next hop of the instance that provides the computing power service represented by Service ID 1 and is sent down as the global forwarding information table entry of the forwarding plane.
[0158] Based on this, if the computing power service user accesses from PE1, PE1 will follow the global computing power SID semantics and forwarding rules to forward the service message to PE 4. Among them, if Instance 4,4 has an exception and failure at this time, causing Instance 4,4 to be unavailable, then PE 4 can perceive that Instance 4,4 is unreachable, and then refresh its global and local control plane table entries. For example, for the local routing information table, at this time, Instance 4,1 is sent down as a new forwarding plane local forwarding information table entry because its metric value is smaller than all other entries, so as to realize the refresh of the local forwarding information table.
[0159] Next, PE 4 queries the new local forwarding information table according to the local computing power SID semantics and forwarding rules in the received service message, and forwards the message to Instance 4,1.
[0160] It is worth noting that please refer to Figure 8b, for the scenario of computing power routing based on unified FIB table and unified FIB table in the related technology, if PE4 senses that Instance 4 is unreachable and refreshes the control plane table entry and forwarding plane (i.e. computing power resource status information), the refreshed computing power resource status information is notified to the remote PE 1. However, since it takes time for PE 4 to notify the remote PE 1 of the new computing power resource status information, it may cause PE1 to be selected as the next hop routing information again before the table entry of PE 1 is refreshed, thereby forming a loop between PE 1 and PE 4. As for the loop problem in the related technology, the present application adopts the hierarchical routing based on the association of hierarchical computing power SID and hierarchical table entry to implement the forwarding path without loops, specifically: as mentioned above Figure 8a As shown, since the message arriving at PE4 carries the computing power SID associated with the local forwarding information table at PE4, PE4 searches the local forwarding information table according to the semantics of the hit computing power SID and forwards the message to Instance 4, 1, instead of routing the message to PE1 again as shown in the related art.
[0161] At the same time, when PE 4 notifies the remote PE 1 of the new computing resource status information, PE 1 will refresh the corresponding table entries and forward the newly accessed services according to the refreshed new table entries to ensure the smooth forwarding of the newly accessed services.
[0162] Fig. 9 A schematic diagram of the structure of a forwarding device 900 for computing power routing provided in an embodiment of the present application is shown, and the device 900 includes: a receiving module 910, which is used to receive a target message to be forwarded, wherein the target message carries a first computing power segment identifier SID and a service identifier of a requested specific service; a query module 920, which is used to determine a target forwarding information table associated with the first computing power SID in multiple forwarding information tables, and query the target forwarding information table according to the service identifier to obtain the computing power routing information of the next hop, wherein the computing power routing information includes a second computing power SID and a first output interface information; a forwarding module 930, which is used to replace the first computing power SID in the destination address field in the target message with the second computing power SID, and forward the replaced target message according to the first output interface information; wherein the first edge device stores multiple computing power SIDs, different computing power SIDs are associated with different forwarding information tables, and different forwarding information tables are used for message forwarding at different network layers in the computing power network, and the first computing power SID belongs to the multiple different computing power SIDs.
[0163] Optionally, the multiple forwarding information tables include a global forwarding information table and a local forwarding information table; the global forwarding information table is used to indicate the message forwarding routing information of the target message between the edge devices in the computing power network; the local forwarding information table is used to indicate the message forwarding routing information of the target message between the computing power service instances corresponding to the first edge device.
[0164] Optionally, the global forwarding information table is determined based on a global routing information table, which stores device information of each edge device in the computing power network and the ability of each edge device to provide the specific service; the local forwarding information table is determined based on a local routing information table, which stores service instance information of each local computing power service instance and the ability of each computing power service instance to provide the specific service.
[0165] Optionally, the process of determining the global routing information table includes: receiving first computing power status information sent by at least one second edge device; determining the global routing information table based on the second computing power status information and at least one of the first computing power status information, wherein the second computing power status information is obtained by aggregating the local computing power status information perceived by the first edge device.
[0166] Optionally, the first computing power status information and the second computing power status information are determined based on a resource pool granularity, and the resource pool includes resources corresponding to at least one computing power service instance.
[0167] Optionally, the perceived local computing power status information is aggregated to obtain the second computing power status information, including: respectively determining a set of computing network resource status meta-information corresponding to each of the computing power service instances; determining a first metric value corresponding to each of the computing power service instances based on the set of computing network resource status meta-information corresponding to each of the computing power service instances, the first metric value being used to characterize the ability of the computing power service instance to provide a specific service; aggregating the first metric value corresponding to each of the computing power service instances to obtain a second metric value corresponding to the second computing power status information, the second metric value being used to characterize the ability of the resource pool at the first edge device to provide the specific service.
[0168] Optionally, the perceived local computing power status information is aggregated to obtain the second computing power status information, including: for each computing power service instance, respectively determining a first metadata set of computing network resource status metadata that the computing power service instance can provide for each computing power service, and determining the union of the first metadata sets corresponding to the computing power service instance to obtain a second metadata set; aggregating the second metadata sets corresponding to each of the computing power service instances to obtain a third metadata set corresponding to the second computing power status information.
[0169] Optionally, the receiving module 910 receives a target message to be forwarded, including: determining that the target message to be forwarded is received; parsing a specified field in the message header of the target message to obtain a service identifier of the specific service; wherein the specified field is a destination option extended message header DOH field, a hop-by-hop option extended message header HBH field, or a segment routing extended message header SRH field.
[0170] Optionally, the multiple computing power SIDs include a global computing power SID and a local computing power SID, the global computing power SID is associated with the global forwarding information table, and the local computing power SID is associated with the local forwarding information table.
[0171] Optionally, the device 900 also includes a module for at least one of the following: notifying each third edge device of the second computing power status information, wherein the second computing power status information includes the second metric value or the third metadata set; notifying each third edge device of the second computing power SID.
[0172] Optionally, the second computing power SID and / or the second computing power status information is announced based on an extended Border Gateway Protocol BGP and an Interior Gateway Protocol IGP.
[0173] Optionally, the query module 920 queries the target forwarding information table according to the service identifier, obtains the computing power routing information of the next hop, and then refreshes the target forwarding information table when it is perceived that the forwarding path corresponding to the computing power routing information of the next hop is abnormal; queries the refreshed target forwarding information table according to the service identifier to obtain the refreshed computing power routing information of the next hop, the target forwarding information table is associated with the first computing power SID, and the refreshed computing power routing information includes a third computing power SID and a second output interface information; and replaces the first computing power SID in the target message with the third computing power SID through the forwarding module, and forwards the replaced target message according to the second output interface information.
[0174] The device 900 provided in the embodiment of the present application can execute the various methods described in the foregoing method embodiments, and realize the functions and beneficial effects of the various methods described in the foregoing method embodiments, which will not be repeated here.
[0175] Fig. 9 A schematic diagram of the hardware structure of an electronic device that implements the embodiment of the present application is shown. Referring to the figure, at the hardware level, the electronic device includes a processor, and optionally, an internal bus, a network interface, and a memory. Among them, the memory may include a memory, such as a high-speed random access memory (Random-Access Memory, RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk storage, etc. Of course, the electronic device may also include hardware required for other services.
[0176] The processor, the network interface and the memory may be interconnected through an internal bus, which may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bidirectional arrow is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0177] The memory is used to store the program. Specifically, the program may include a program code, and the program code includes a computer operation instruction. The memory may include a memory and a non-volatile memory, and provides instructions and data to the processor.
[0178] The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it, forming a device for locating the specified user at the logical level. The processor executes the program stored in the memory and is specifically used to execute: Figure 1-Figure 3 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.
[0179] The above application Figure 1-Figure 3The method disclosed in the illustrated embodiment can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0180] The electronic device can also execute the methods described in the foregoing method embodiments, and realize the functions and beneficial effects of the methods described in the foregoing method embodiments, which will not be repeated here.
[0181] Of course, in addition to software implementation methods, the electronic device of the present application does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0182] The embodiment of the present application also provides a computer-readable storage medium, wherein the computer-readable medium stores one or more programs, and when the one or more programs are executed by an electronic device including multiple application programs, the electronic device executes Figure 1-Figure 3 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.
[0183] The computer-readable storage medium includes a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0184] Furthermore, an embodiment of the present application also provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, and when the program instructions are executed by a computer, the following process is implemented: Figure 1-Figure 3 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.
[0185] In short, the above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
[0186] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0187] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0188] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0189] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
Claims
1. A forwarding method for computing power routing, characterized in that: Applied to a first edge device, the method includes: Receive a target message to be forwarded, wherein the target message carries a first computing segment identifier SID and a service identifier of a requested specific service; Determine a target forwarding information table associated with the first computing power SID from multiple forwarding information tables; Query the target forwarding information table according to the service identifier to obtain the computing power routing information of the next hop, where the computing power routing information includes the second computing power SID and the first outbound interface information; Replacing the first computing power SID in the destination address field of the target message with the second computing power SID, and forwarding the replaced target message according to the first outbound interface information; Among them, the first edge device stores multiple computing power SIDs, different computing power SIDs are associated with different forwarding information tables, different forwarding information tables are used for message forwarding at different network layers in the computing power network, and the first computing power SID belongs to the multiple different computing power SIDs.
2. The method according to claim 1, characterized in that The multiple forwarding information tables include a global forwarding information table and a local forwarding information table; The global forwarding information table is used to indicate the message forwarding routing information of the target message between the edge devices in the computing power network; The local forwarding information table is used to indicate the message forwarding routing information of the target message between the computing power service instances corresponding to the first edge device.
3. The method according to claim 1, characterized in that The global forwarding information table is determined according to the global routing information table, wherein the global routing information table stores the device information of each edge device in the computing power network and the capability of each edge device to provide the specific service; The local forwarding information table is determined according to the local routing information table, and the local routing information table stores service instance information of each local computing power service instance and the capability of each computing power service instance to provide the specific service.
4. The method according to claim 3, characterized in that The determination process of the global routing information table includes: Receiving first computing power status information sent by at least one second edge device; The global routing information table is determined according to second computing power status information and at least one of the first computing power status information, where the second computing power status information is obtained by aggregating the local computing power status information perceived by the first edge device.
5. The method according to claim 4, characterized in that The first computing power status information and the second computing power status information are determined based on a resource pool as a granularity, and the resource pool includes resources corresponding to at least one computing power service instance.
6. The method according to claim 4, characterized in that Aggregating the perceived local computing power state information to obtain the second computing power state information includes: Determine the computing network resource status metadata set corresponding to each computing service instance; Determine a first metric value corresponding to each computing service instance according to a computing network resource state metadata set corresponding to each computing service instance, wherein the first metric value is used to characterize the ability of the computing service instance to provide a specific service; The first metric value corresponding to each computing power service instance is aggregated to obtain a second metric value corresponding to the second computing power status information, where the second metric value is used to characterize the ability of the resource pool at the first edge device to provide the specific service.
7. The method according to claim 3, characterized in that Aggregating the perceived local computing power state information to obtain the second computing power state information includes: For each computing service instance, respectively determine a first metadata set of computing network resource status metadata that the computing service instance can provide for each computing service, and determine a union of the first metadata sets corresponding to the computing service instance to obtain a second metadata set; The second metadata set corresponding to each of the computing power service instances is aggregated to obtain a third metadata set corresponding to the second computing power status information.
8. The method according to any one of claims 1 to 7, characterized in that The receiving a target message to be forwarded includes: Determining that the target message to be forwarded is received; Parsing a specified field in a message header of the target message to obtain a service identifier of the specific service; The designated field is a destination option extended message header DOH field, a hop-by-hop option extended message header HBH field, or a segment routing extended message header SRH field.
9. The method according to any one of claims 2 to 7, characterized in that: The multiple computing power SIDs include a global computing power SID and a local computing power SID. The global computing power SID is associated with the global forwarding information table, and the local computing power SID is associated with the local forwarding information table.
10. The method according to any one of claims 4 to 7, characterized in that: The method further comprises at least one of the following: Notify each third edge device of the second computing power status information, wherein the second computing power status information includes the second metric value or the third metadata set; Notify each third edge device of the second computing power SID.
11. The method according to claim 10, characterized in that The second computing power SID and / or the second computing power status information is announced based on an extended Border Gateway Protocol BGP and an Interior Gateway Protocol IGP protocol.
12. The method according to any one of claims 1 to 11, characterized in that After querying the target forwarding information table according to the service identifier to obtain the computing power routing information of the next hop, the method further includes: When it is detected that the forwarding path corresponding to the computing power routing information of the next hop is abnormal, refreshing the target forwarding information table; According to the service identifier, query the refreshed target forwarding information table to obtain the refreshed next-hop computing power routing information, wherein the target forwarding information table is associated with the first computing power SID, and the refreshed computing power routing information includes the third computing power SID and the second outbound interface information; The first computing power SID in the target message is replaced with the third computing power SID, and the replaced target message is forwarded according to the second outbound interface information.
13. An electronic device comprising: processor; as well as A memory arranged to store computer executable instructions which, when executed, cause the processor to perform the steps of the method of any one of claims 1 to 12.
14. A computer-readable medium storing one or more programs, which, when executed by an electronic device including a plurality of application programs, causes the electronic device to execute the steps of the method according to any one of claims 1 to 12.
