Time slot control method, electronic device and storage medium

By configuring the periodic template parameters of forwarding nodes in a deterministic network of heterogeneous rate links through the control node, the problem of time slot planning and orchestration scheduling of heterogeneous rate links is solved, and time slot planning and orchestration scheduling of ports with different rates are realized, ensuring deterministic periodic forwarding of packets.

WO2025246315A1PCT designated stage Publication Date: 2025-12-04ZTE CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/141800
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-28
Filing Date
2024-12-24
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

Existing technologies lack effective time slot planning and orchestration schemes, making them unsuitable for deterministic networks with heterogeneous rate links, thus hindering the implementation of time slot planning and orchestration for ports with different rates.

Method used

By acquiring network topology information through control nodes and configuring periodic template parameters according to the port rates of multiple forwarding nodes, the first time slot parameters of multiple forwarding nodes are the same, while the second time slot parameters are different, thereby realizing time slot planning and orchestration scheduling for heterogeneous rate links.

Benefits of technology

It realizes time slot planning and orchestration scheduling of ports with different rates in a deterministic network with heterogeneous rate links, ensuring deterministic periodic forwarding of packets.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024141800_04122025_PF_FP_ABST
    Figure CN2024141800_04122025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a time slot control method, an electronic device and a storage medium. The method comprises: a control node acquiring network topology information, the network topology information comprising port rates of a plurality of forwarding nodes, wherein the port rates of the plurality of forwarding nodes are different; on the basis of the port rates of the plurality of forwarding nodes, configuring cycle template parameters of the plurality of forwarding nodes to obtain a cycle template parameter configuration result, wherein the cycle template parameters comprise the number of time slots and a time slot length, and the configuration result is that first time slot parameters of the plurality of forwarding nodes are the same, while second time slot parameters are different, the first time slot parameters being one of the number of time slots and the time slot length, and the second time slot parameters being the other of the number of time slots and the time slot length; and sending configured cycle template parameters to the plurality of forwarding nodes.
Need to check novelty before this filing date? Find Prior Art

Description

Time slot control methods, electronic devices and storage media

[0001] Cross-referencing

[0002] This application claims priority to Chinese Patent Application No. 202410668803.8, filed on May 28, 2024, entitled "Time Slot Control Method, Electronic Device and Storage Medium", the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of network communication technology, and in particular to a time slot control method, electronic device and storage medium. Background Technology

[0004] Within the Internet Engineering Task Force (IETF) Deterministic Network (DetNet) working group, large-scale deterministic networking technologies based on frequency synchronization and time-slot mapping scheduling (such as Enterprise Development Network Systems, EDN) remain a hot topic and mainstream solution in the industry. In time-slot mapping scheduling schemes, time-slot planning and orchestration scheduling are required for different ports in the network to achieve deterministic periodic scheduling and forwarding.

[0005] In related technologies, time slot planning and orchestration are mostly considered for deterministic networks with links of the same rate. However, in real-world network deployments, heterogeneous rate links exist on end-to-end paths. For deterministic networks with heterogeneous rate links, time slot planning and orchestration for different ports are still required, but currently, there is a lack of an effective technical solution to achieve this. Summary of the Invention

[0006] This application provides a time slot control method, an electronic device, and a storage medium.

[0007] A first aspect provides a time slot control method applied to a control node in a deterministic network. The method includes: acquiring network topology information, the network topology information including port rates of multiple forwarding nodes in the deterministic network, the port rates of the multiple forwarding nodes being different; configuring periodic template parameters of the multiple forwarding nodes according to the port rates of the multiple forwarding nodes to obtain a periodic template parameter configuration result, the periodic template parameters including the number of time slots and the time slot length, the configuration result of the periodic template parameters being such that the first time slot parameter of the multiple forwarding nodes is the same, and the second time slot parameter is different, the first time slot parameter being one of the number of time slots and the time slot length, and the second time slot parameter being the other of the number of time slots and the time slot length; and sending the configured periodic template parameters to the multiple forwarding nodes.

[0008] In a second aspect, an electronic device is provided, comprising: a processor; and a memory for storing processor-executable instructions; wherein the processor is configured to execute the instructions to implement the method as described in the first aspect.

[0009] Thirdly, a computer-readable storage medium is provided, wherein when instructions in the storage medium are executed by a processor of an electronic device, the electronic device is enabled to perform the method described in the first aspect. Attached Figure Description

[0010] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0011] Figure 1 is a schematic diagram of the physical cycle template of the node port in the related technology;

[0012] Figure 2 is a schematic diagram of a deterministic network for heterogeneous rate links in related technologies;

[0013] Figure 3 is a flowchart illustrating a time slot control method according to an embodiment of this application;

[0014] Figure 4 is a schematic diagram of a one-to-one mapping relationship of time slots between ports of different rates under the condition that the number of time slots is the same but the length of time slots is different, according to an embodiment of this application.

[0015] Figure 5 is a schematic diagram of the one-to-many and many-to-one mapping relationship of time slots between different rate ports under the condition that the time slot length is the same but the number of time slots is different, according to an embodiment of this application.

[0016] Figure 6 is a schematic diagram of the many-to-many mapping relationship of time slots between ports of different rates under the condition that the time slot length is the same but the number of time slots is different, according to an embodiment of this application;

[0017] Figure 7 is a schematic diagram of determining the second mapping relationship of time slots between ports of different rates under the condition that the time slot length is the same but the number of time slots is different, according to an embodiment of this application;

[0018] Figure 8 is a schematic diagram of the time slot mapping relationship sent from the control node to the forwarding node according to an embodiment of this application;

[0019] Figure 9 is a schematic diagram of a deterministic network of heterogeneous rate links according to an embodiment of this application;

[0020] Figure 10 is a schematic diagram of determining the many-to-one mapping relationship between time slots of different rate ports according to an embodiment of this application;

[0021] Figure 11 is a schematic diagram of determining a one-to-many mapping relationship between time slots of different rate ports according to an embodiment of this application;

[0022] Figure 12 is a schematic diagram of determining the many-to-many mapping relationship between time slots of different rate ports according to an embodiment of this application;

[0023] Figure 13 is a schematic diagram of the structure of an electronic device according to an embodiment of this application;

[0024] Figure 14 is a schematic diagram of the structure of a time slot control device according to an embodiment of this application. Detailed Implementation

[0025] In the IETF DetNet working group, various queue scheduling techniques have been proposed. Currently, large-scale deterministic network technologies based on frequency synchronization and time slot mapping scheduling (such as EDN) are still the industry hotspots and mainstream solutions, and their basic performance has been verified in multiple prototypes and tests.

[0026] In the time slot mapping scheduling scheme, ports support physical cycle templates (also represented as physical cycle templates or cycle templates). Each physical cycle template can be described by {time slot length, number of time slots}, as shown in Figure 1. In Figure 1, the node's port supports physical cycle templates. In this physical cycle template, the number of time slots is K, and the corresponding time slot numbers are 0, 1, ..., K-1. The length of each time slot is T, in µs. In practical applications, the cycle template parameters, namely the time slot length and the number of time slots, are configurable. Furthermore, given a known port rate, the maximum number of bits that each time slot can carry can also be determined. This maximum number of bits is equal to the time slot length × the port rate. For example, if the port rate is 10Gbps, and the cycle template is configured with a time slot length of 10µs and a number of time slots of 8, then the maximum number of bits that each time slot can carry is 100,000 bits (i.e., 10µs * 10Gbps), and each time slot represents a bandwidth share of 1.25Gbps (i.e., 10Gbps / 8 time slots).

[0027] In schemes such as Large-scale Deterministic Network (LDN) and Cycle Specified Queuing and Forwarding (CSQF) developed by the IETF working group, a one-to-one mapping relationship is established between the periodic template timeslots at the upstream node's exit and the periodic template timeslots at the downstream node's exit. When a downstream node forwards a packet sent by an upstream node, it replaces the packet's timeslot label based on the timeslot mapping relationship and then puts the packet into the corresponding timeslot queue, thereby achieving deterministic periodic scheduling and forwarding.

[0028] Current time slot mapping scheduling schemes and standards primarily focus on time slot planning and orchestration for deterministic networks with links of the same rate. However, in real-world network deployments, heterogeneous rate links on end-to-end paths are common. Therefore, this scenario needs to be considered when planning and orchestrating time slots. Taking Figure 2 as an example, the access network, aggregation network, and backbone network devices (AEs) in Figure 2 have different port capabilities and corresponding port rates, involving 10Gbps, 25Gbps, 50Gbps, and 100Gbps (i.e., 10G, 25G, 50G, and 100G as shown in Figure 2). Different port rates need to be considered when designing deterministic end-to-end solutions. The draft from the Draft-IETF-Detnet-Scaling-Requirements-05 working group lists various scalability requirements that need to be considered in the practical application of deterministic network technologies, among which supporting heterogeneous link networking is a crucial requirement. However, among related technologies, there is still a lack of an effective technical solution to realize time slot planning and orchestration scheduling for ports with different rates.

[0029] This application provides a time slot control method, electronic device, and storage medium. For deterministic networks with heterogeneous rate links, when planning time slots for multiple forwarding nodes with different port rates in the network, the control node in the network can configure the periodic template parameters (including time slot length and number of time slots) of multiple forwarding nodes according to the port rates of the multiple forwarding nodes, and send the configuration results to the multiple forwarding nodes. The configuration results show that the first time slot parameter of the multiple forwarding nodes is the same, while the second time slot parameter is different. The first time slot parameter is one of the number of time slots and the time slot length, and the second time slot parameter is the other of the number of time slots and the time slot length. Thus, since the periodic template parameters of multiple forwarding nodes can be configured in such a way that one time slot parameter is the same and the other is different, the purpose of time slot planning for ports with different rates can be achieved.

[0030] Furthermore, the time slot planning strategy of this application embodiment can also provide a basis for the orchestration and scheduling of time slots between ports of different rates, thereby enabling the orchestration and scheduling of time slots and obtaining the time slot mapping relationship between ports of different rates. Based on this time slot mapping relationship, deterministic periodic scheduling and forwarding can be achieved.

[0031] To enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in this application will be clearly and completely described below with reference to the accompanying drawings of one or more embodiments. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort should fall within the protection scope of this application.

[0032] The terms "first," "second," etc., used in this application and the claims are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that this application can be implemented in orders other than those illustrated or described herein. Furthermore, in this application and the claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.

[0033] The technical solutions provided by the various embodiments of this application are described in detail below with reference to the accompanying drawings.

[0034] Figure 3 is a schematic flowchart of a time slot control method according to an embodiment of this application. The time slot control method shown in Figure 3 can be applied to control nodes in a deterministic network; that is, the time slot control method shown in Figure 3 can be executed by software or hardware installed in the control node. The control node can also be represented as a control device, control plane, or control plane device, etc. The time slot control method shown in Figure 3 includes the following steps.

[0035] Step S302: Obtain network topology information, which includes the port rates of multiple forwarding nodes in a deterministic network, and the port rates of the multiple forwarding nodes are different.

[0036] Network topology information (also referred to as basic network topology information) is the basis for control nodes to perform periodic template parameter network-wide planning. Therefore, before configuring the periodic template parameters of multiple forwarding nodes in a deterministic network, the control node needs to obtain the network topology information of the deterministic network. The specific implementation method for the control node to obtain network topology information can be found in relevant technical documents and will not be detailed here.

[0037] The network topology information may include at least the port rates of multiple forwarding nodes in a deterministic network. In one embodiment, it may also include node information, link information, etc., in the deterministic network. The port rates of these multiple forwarding nodes are different. It should be noted that in a deterministic network, there may be multiple port rates, but they are not arbitrary. The IEEE 802.3 standard defines a finite number of port rate specifications, such as interface rate standards above 10Gbps, including 10G, 25G, 40G, 50G, 100G, 200G, 400G, and 800G. In this embodiment, the different port rates of the multiple forwarding nodes can mean that each forwarding node has a different port rate, or that at least one forwarding node has a different port rate than the other forwarding nodes; no specific limitation is made here.

[0038] Step S304: Configure the periodic template parameters of multiple forwarding nodes according to the port rates of multiple forwarding nodes to obtain the periodic template parameter configuration result. The periodic template parameters include the number of time slots and the time slot length. The configuration result of the periodic template parameters is that the first time slot parameter of multiple forwarding nodes is the same, and the second time slot parameter is different. The first time slot parameter is one of the number of time slots and the time slot length, and the second time slot parameter is the other of the number of time slots and the time slot length.

[0039] When the control node obtains the port rates of multiple forwarding nodes, it can configure the periodic template parameters of these nodes—namely, the number of time slots and the time slot length—based on these port rates. The configuration result is that the first time slot parameter is the same for all forwarding nodes, but the second time slot parameter is different. Here, the first time slot parameter is one of the number of time slots and the time slot length, and the second time slot parameter is the other of the number of time slots and the time slot length. In other words, the control node can configure the periodic template parameters of multiple forwarding nodes with the same first time slot parameter and different second time slot parameters. The corresponding configuration results are either the same number of time slots but different time slot lengths, or the same time slot length but different number of time slots.

[0040] In some implementations, when configuring the periodic template parameters of multiple forwarding nodes, in order to ensure that the number of bits that the periodic template of each forwarding node can carry (equal to the number of time slots * time slot length * port rate) is the same, the configuration results of the periodic template parameters of multiple forwarding nodes are such that the first time slot parameter is the same and the second time slot parameter is different. Specifically, the first time slot parameter of forwarding nodes with different port rates is the same and the second time slot parameter is different. For forwarding nodes with the same port rate (if any), the first time slot parameter and the second time slot parameter can be the same. This ensures that the periodic template of each forwarding node can carry the same number of bits.

[0041] When configuring the periodic template parameters of multiple forwarding nodes based on their port rates, there are multiple configuration methods. As long as the final configuration result is that the first time slot parameters of the multiple forwarding nodes are the same and the second time slot parameters are different, the specific configuration method is not limited here.

[0042] In some implementations, configuring the periodic template parameters of multiple forwarding nodes based on their port rates may include the following steps: obtaining a specified value corresponding to a first timeslot parameter and a basic parameter value corresponding to a second timeslot parameter; determining the parameter value of the second timeslot parameter for each forwarding node based on the port rates of the multiple forwarding nodes and the basic parameter values ​​corresponding to the second timeslot parameter; and configuring the periodic template parameters of the multiple forwarding nodes based on the specified value corresponding to the first timeslot parameter and the parameter values ​​of the second timeslot parameter.

[0043] The specified value corresponding to the first time slot parameter and the basic parameter value corresponding to the second time slot parameter can be set by the control node, or it can be determined according to business requirements; no specific limitation is made here. The basic parameter value corresponding to the second time slot parameter can be the smallest unit of the second time slot parameter. The parameter value of the second time slot parameter determined based on this basic parameter value and the port rates of multiple forwarding nodes can be an integer multiple of this basic parameter value.

[0044] In some implementations, determining the parameter value of the second timeslot parameter of each forwarding node based on the base parameter values ​​corresponding to the port rates and second timeslot parameters of multiple forwarding nodes may include the following steps: determining a first port rate based on the port rates of multiple forwarding nodes; for any target forwarding node among the multiple forwarding nodes, determining the parameter value of the second timeslot parameter of the target forwarding node by multiplying the target ratio by the base parameter value, wherein the target ratio is the ratio of the first port rate to the port rate of the target forwarding node.

[0045] The first port rate can be the least common multiple of the port rates of multiple forwarding nodes. In one embodiment, it can also be an integer multiple of the least common multiple; no specific limitation is made here. For example, taking the port rates of the multiple forwarding nodes shown in Figure 2 as 10G, 25G, 50G, and 100G, the first port rate can be 100G (the least common multiple of 10G, 25G, 50G, and 100G) or 200G (twice the least common multiple of 100G). The embodiments of this application are illustrated using the least common multiple as an example.

[0046] After obtaining the first port rate, when determining the parameter values ​​of the second timeslot parameters for each forwarding node, for any target forwarding node among multiple forwarding nodes, the target ratio of the first port rate to the port rate of that target forwarding node can be determined first. Then, the product of this target ratio and the basic parameter value corresponding to the second timeslot parameter is determined as the parameter value of the second timeslot parameter of that target forwarding node. Specifically, the following formula can be used: Parameter value of the second timeslot parameter of the target forwarding node = First port rate / Port rate of the target forwarding node * Basic parameter value corresponding to the second timeslot parameter.

[0047] For example, taking the five forwarding nodes shown in Figure 2 as an example, assuming that the first port rate is 100G, the second timeslot parameter is the timeslot length, and the basic parameter value corresponding to the second timeslot parameter is 5us, then the parameter value of the second timeslot parameter of forwarding node A is 10us, the parameter value of the second timeslot parameter of B is 5us, the parameter value of the second timeslot parameter of C is 20us, the parameter value of the second timeslot parameter of D is 10us, and the parameter value of the second timeslot parameter of E is 5us.

[0048] For example, taking the five forwarding nodes shown in Figure 2 as an example, assuming the first port rate is 100G, the second timeslot parameter is the number of timeslots, and the basic parameter value corresponding to the second timeslot parameter is 4, then the parameter value of the second timeslot parameter of forwarding node A is 8, the parameter value of the second timeslot parameter of B is 4, the parameter value of the second timeslot parameter of C is 16, the parameter value of the second timeslot parameter of D is 8, and the parameter value of the second timeslot parameter of E is 4.

[0049] After determining the value of the second timeslot parameter, the periodic template parameter of each forwarding node can be configured by combining it with the specified value corresponding to the first timeslot parameter obtained earlier. Specifically, this configuration can use the specified value corresponding to the first timeslot parameter as the parameter value of the first timeslot parameter for each forwarding node, and use the determined value of the second timeslot parameter for each forwarding node as the parameter value of the second timeslot parameter for each forwarding node. This results in configurations where the first timeslot parameter is the same, but the second timeslot parameter is different.

[0050] It should be noted that in practical applications, due to the latency jitter problem when forwarding packets, in order to ensure deterministic forwarding of packets, when configuring the time slot length and number of time slots for multiple forwarding nodes, for each forwarding node, it is necessary to ensure that the product of the configured time slot length and the number of time slots can tolerate the processing latency jitter of the forwarding node. That is, the product of the configured time slot length and the number of time slots needs to be greater than or equal to the maximum latency jitter of the forwarding node. In the case where the configuration result is the same number of time slots but different time slot lengths (corresponding to the case where the first time slot parameter is the number of time slots and the second time slot parameter is the time slot length), since the number of time slots is a specified value, the time slot length is determined based on the port rate of the forwarding node, the first port rate, and the basic time slot parameter of the time slot length (which can be expressed as the basic time slot length). When the port rate is constant, the time slot length is related to the first port rate and the basic time slot length. Therefore, in order to ensure that the product of the time slot length and the number of time slots is greater than or equal to the maximum delay jitter of the forwarding node, it is necessary to select an appropriate number of time slots, the first port rate, and / or the basic time slot length. Taking the five nodes shown in Figure 2 as an example, assuming the maximum processing latency of a node is 30µs, if the number of time slots is 8 and the first port rate is 100G, then the basic time slot length needs to be greater than or equal to 3.75µs. Alternatively, if the basic time slot length is 5µs and the first port rate is 100G, then the number of time slots needs to be greater than or equal to 6. Or, if the number of time slots is 4 and the basic time slot length is 5µs, then the first port rate needs to be greater than or equal to 150G. When the configuration result is the same time slot length but different number of time slots (corresponding to the case where the first time slot parameter is the time slot length and the second time slot parameter is the number of time slots), since the time slot length is a specified value, the number of time slots is determined based on the port rate of the forwarding node, the first port rate, and the basic time slot parameter (which can be expressed as the basic number of time slots). When the port rate is constant, the number of time slots is related to the first port rate and the basic number of time slots. Therefore, in order to ensure that the product of the configured time slot length and the number of time slots is greater than the maximum delay jitter of the forwarding node, it is necessary to select an appropriate time slot length, first port rate, and / or basic number of time slots. Taking the five nodes shown in Figure 2 as an example, assuming the maximum processing latency of a node is 30µs, if the time slot length is 5µs and the first port rate is 100G, then the number of basic time slots needs to be greater than or equal to 6. Alternatively, if the number of basic time slots is 4 and the first port rate is 100G, then the time slot length needs to be greater than or equal to 3.75µs. Or, if the number of basic time slots is 4 and the time slot length is 5µs, then the first port rate needs to be greater than or equal to 150G.

[0051] The above details how to configure the number and length of time slots for multiple forwarding nodes based on their port rates. In one embodiment, when the port rates in a deterministic network are multiples of each other, the configuration result can be that the time slot lengths of the multiple forwarding nodes are the same, but the number of time slots is different. That is, the periodic template parameters of the multiple forwarding nodes can be configured using the same time slot length but different timeslot numbers. When the port rates in a deterministic network are not multiples of each other, the configuration result can be that the number of time slots of the multiple forwarding nodes are the same, but the time slot lengths are different. That is, the periodic template parameters of the multiple forwarding nodes can be configured using the same number of time slots but different timeslot lengths. Of course, in practical applications, the specific method used to configure the periodic template parameters of the multiple forwarding nodes can be determined according to actual business needs, and no specific limitation is made here.

[0052] Step S306: Send the configured periodic template parameters to multiple forwarding nodes.

[0053] After the control node has configured the periodic template parameters (number of time slots and time slot length) for multiple forwarding nodes, it can send the configured periodic template parameters to the multiple forwarding nodes. After receiving the periodic template parameters, the multiple forwarding nodes can divide the time slot length and number of time slots in the periodic template based on the parameters. For specific implementation methods, please refer to the specific implementation in related technologies, which will not be described in detail here.

[0054] Thus, for deterministic networks with heterogeneous rate links, since the control nodes in the network can configure the periodic template parameters of multiple forwarding nodes in a way that one time slot parameter is the same and the other time slot parameter is different, the purpose of time slot planning for ports of different rates can be achieved.

[0055] Based on the time slot planning strategy of this application embodiment, it can also provide a basis for the orchestration and scheduling of time slots between ports of different rates, thereby realizing the orchestration and scheduling of time slots. The following will describe the time slot orchestration and scheduling method.

[0056] When the first time slot parameter is the number of time slots and the second time slot parameter is the time slot length, the configuration result is that multiple forwarding nodes have the same number of time slots but different time slot lengths. In this case, when orchestrating and scheduling time slots among multiple forwarding nodes, the time slot orchestration and scheduling method in related technologies can be adopted, that is, to establish a one-to-one mapping relationship between time slots of different forwarding nodes.

[0057] Please refer to Figure 4. In Figure 4, the port rates of forwarding nodes A, B, and C are 100G, 200G, and 100G, respectively. After configuring the periodic template parameters of the three forwarding nodes, each forwarding node has 8 time slots (time slot numbers from 0 to 7). The time slot length of forwarding nodes A and C is 10µs, and the time slot length of forwarding node B is 5µs (the three forwarding nodes have the same number of time slots, but different time slot lengths). Therefore, when orchestrating and scheduling the time slots among the three forwarding nodes, there is a one-to-one mapping relationship between the time slots of forwarding nodes A and B, and also a one-to-one mapping relationship between the time slots of forwarding nodes B and C. For example, as shown in Figure 4, time slot 4 of forwarding node A corresponds to time slot 1 of forwarding node B, and time slot 2 of forwarding node B corresponds to time slot 5 of forwarding node C.

[0058] After establishing a one-to-one mapping relationship between time slots among multiple forwarding nodes, the control node can send this mapping relationship to the multiple forwarding nodes. When forwarding packets, the multiple forwarding nodes can forward packets based on this mapping relationship, thereby achieving deterministic packet forwarding. The specific implementation method of forwarding nodes forwarding packets based on the mapping relationship can be found in related technologies, and will not be described in detail here.

[0059] When the first time slot parameter is the time slot length and the second time slot parameter is the number of time slots, the configuration result is that multiple forwarding nodes have the same time slot length but different numbers of time slots. In this case, when orchestrating and scheduling time slots among multiple forwarding nodes, the time slots between different forwarding nodes will no longer be a one-to-one mapping relationship, but may be a one-to-many, many-to-one, or many-to-many mapping relationship. For example, when the port rates are multiples of each other, the time slot mapping relationship between low-rate ports and high-rate ports may be many-to-one, and the time slot mapping relationship from high-rate ports to low-rate ports may be one-to-many, as shown in Figure 5, where time slots 10 and 11 of forwarding node A correspond to time slot 1 of forwarding node B (many-to-one), and time slot 2 of forwarding node B corresponds to time slots 4 and 5 of forwarding node C (one-to-many). When the port rates are not multiples of each other, the time slot mapping relationship between ports of different rates may be many-to-many, as shown in Figure 6, where time slots 5 to 9 of forwarding node A correspond to time slots 1 and 2 of forwarding node B (many-to-many). Thus, for the control node, when orchestrating and scheduling time slots among multiple forwarding nodes, it is necessary to determine the one-to-many, many-to-one, or many-to-many mapping relationship between time slots of different rate ports.

[0060] When the configuration results show that multiple forwarding nodes have the same time slot length but different number of time slots, the time slots of upstream nodes and / or downstream nodes can be considered together when performing time slot orchestration and scheduling on multiple forwarding nodes. In this way, the one-to-many, many-to-one, or many-to-many mapping relationship between time slots can be converted into a one-to-one mapping relationship, thereby obtaining the mapping relationship between time slots and realizing the orchestration and scheduling of time slots.

[0061] Taking a first forwarding node and a second forwarding node among multiple forwarding nodes as an example, in some implementations, determining the time slot mapping relationship between forwarding nodes may include the following steps: receiving a first mapping relationship sent by the second forwarding node, the first mapping relationship being the basic mapping relationship between the first time slot of the first forwarding node and the second time slot of the second forwarding node; determining a second mapping relationship based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node, the second mapping relationship being used to instruct the second forwarding node to forward packets; and sending the second mapping relationship to the second forwarding node.

[0062] The first forwarding node and the second forwarding node are any two adjacent forwarding nodes with different port rates in a deterministic network. The first forwarding node is the upstream node of the second forwarding node, and the second forwarding node is the downstream node of the first forwarding node. The configuration result of the periodic template parameters for the first and second forwarding nodes is that the time slot lengths of the first and second forwarding nodes are the same, but the number of time slots is different.

[0063] When determining the second mapping relationship between the time slots of the first forwarding node and the second forwarding node, the control node first needs to receive the first mapping relationship sent by the second forwarding node. The first mapping relationship is the basic mapping relationship between the first time slot of the first forwarding node and the second time slot of the second forwarding node. The number of first and second time slots can both be 1. The first mapping relationship can be determined by the second forwarding node and reported to the control node. For specific implementation details, please refer to the relevant technical documentation. These details will not be elaborated here.

[0064] After receiving the first mapping relationship, the control node can determine the second mapping relationship based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node. The second mapping relationship is a one-to-many, many-to-one, or many-to-many mapping relationship between time slots.

[0065] In some implementations, determining the second mapping relationship based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node may include the following steps: dividing the multiple time slots of the first and second forwarding nodes into N groups of time slots, where N is a positive integer; determining the first time slot group to which the first time slot belongs from the N groups of time slots of the first forwarding node, and determining the second time slot group to which the second time slot belongs from the N groups of time slots of the second forwarding node; and determining the second mapping relationship based on the first time slot group and the second time slot group.

[0066] Here, the multiple time slots of the first and second forwarding nodes are each divided into N groups of time slots to facilitate the conversion of one-to-many, many-to-one, or many-to-many mapping relationships between time slots into one-to-one mapping relationships. Furthermore, when dividing the time slots into N groups, the multiple time slots can be divided equally or unevenly. This embodiment uses an equal division as an example, meaning that each group of time slots in the first forwarding node includes the same number of time slots, and each group of time slots in the second forwarding node includes the same number of time slots.

[0067] In the N groups of time slots, N is a positive integer, and its specific size can be determined according to the actual time slot allocation. It should be noted that, considering that in practical applications, a port has at least one transmit queue, one receive queue, and one redundant queue (spare queue), therefore, in one embodiment, N can be an integer greater than or equal to 3.

[0068] When dividing multiple time slots of the first and second forwarding nodes into N groups of time slots, in some implementations, the specific number of groups can be determined based on the relationship between the number of time slots of the first and second forwarding nodes. There are at least three possible relationships between the number of time slots of the first and second forwarding nodes, and the time slot division will be explained for each of these three scenarios below.

[0069] The first scenario: The number of time slots of the second forwarding node is an integer multiple of the number of time slots of the first forwarding node.

[0070] In the first case, the number of groups N can be the number of time slots of the first forwarding node. Specifically, for the first forwarding node, each of the N groups consists of one time slot. For the second forwarding node, each of the N groups consists of M time slots, where M is the ratio of the number of time slots of the second forwarding node to N (i.e., the number of time slots of the first forwarding node).

[0071] For example, if the first forwarding node has 4 time slots and the second forwarding node has 16 time slots, then the time slots of both the first and second forwarding nodes can be divided into 4 groups of time slots. For the first forwarding node, time slot 0 can be considered as one group, time slot 1 as another, time slot 3 as yet another, and time slot 4 as yet another, with each group containing one time slot. For the second forwarding node, time slots 0 to 3 can be considered as one group, time slots 4 to 7 as another, time slots 8 to 11 as another, and time slots 12 to 15 as yet another, with each group containing four time slots.

[0072] The second scenario: The number of time slots of the first forwarding node is an integer multiple of the number of time slots of the second forwarding node.

[0073] In the second case, the number of groups N can be the number of time slots of the second forwarding node. Specifically, for the second forwarding node, each of the N groups consists of one time slot. For the first forwarding node, each of the N groups consists of Q time slots, where Q is the ratio of the number of time slots of the first forwarding node to N (i.e., the number of time slots of the second forwarding node).

[0074] For example, if the first forwarding node has 16 time slots and the second forwarding node has 8 time slots, then the time slots of both nodes can be divided into 8 groups. For the first forwarding node, time slots 0 and 1 can be grouped together, time slots 2 and 3 together, ..., time slots 14 and 15 together, with each group consisting of 2 time slots. For the second forwarding node, time slots 0, 1, ..., 7 can be grouped together, with each group consisting of 1 time slot.

[0075] The third scenario: The number of time slots in the first forwarding node is not an integer multiple of the number of time slots in the second forwarding node.

[0076] In the third case, the number of groups N can be the common divisor of the number of time slots in the first forwarding node and the number of time slots in the second forwarding node, such as the greatest common divisor. Specifically, for the first forwarding node, each of the N groups includes W time slots, where W is the ratio of the number of time slots in the first forwarding node to N. For the second forwarding node, each of the N groups includes P time slots, where P is the ratio of the number of time slots in the second forwarding node to N.

[0077] For example, if the first forwarding node has 8 time slots and the second forwarding node has 20 time slots, then when allocating time slots, they can be divided into 4 groups (4 is the greatest common divisor of 8 and 20). That is, for the first forwarding node, time slots 0 and 1 can be grouped together, time slots 2 and 3 together, ..., time slots 6 and 7 together, with each group containing 2 time slots. For the second forwarding node, time slots 0 to 4 can be grouped together, time slots 5 to 9 together, ..., time slots 15 to 19 together, with each group containing 5 time slots.

[0078] After the control node divides the multiple time slots of the first and second forwarding nodes into N groups of time slots each based on the method described above, it can determine the first time slot group to which the first time slot of the first forwarding node belongs and the second time slot group to which the second time slot of the second forwarding node belongs. Taking the determination of the first time slot group as an example, specifically, the first time slot group to which the first time slot belongs can be determined based on the time slot number of the first time slot and the time slot number of each group of time slots in the N groups of time slots of the first forwarding node. For example, if the first forwarding node includes 16 time slots, when dividing the time slots, time slots 0 to 3 are divided into one group, time slots 4 and 7 are divided into another group, time slots 8 to 11 are divided into another group, and time slots 12 to 15 are divided into another group, for a total of 4 groups of time slots. Assuming that the number of the first time slot is 7, then the first time slot group to which the first time slot belongs is the second group of time slots (corresponding to time slot numbers 4 to 7). Based on the same method, the second time slot group to which the second time slot belongs can be obtained.

[0079] After obtaining the first and second time slot groups, the control node can determine a second mapping relationship based on these groups. This second mapping relationship can be a one-to-many mapping between time slots (i.e., a mapping between a time slot and a time slot group), a many-to-one mapping (i.e., a mapping between a time slot group and a time slot), or a many-to-many mapping (i.e., a mapping between time slot groups). For example, if the number of time slots in the second forwarding node is an integer multiple of the number of time slots in the first forwarding node, the second mapping relationship is a one-to-many mapping. If the number of time slots in the first forwarding node is an integer multiple of the number of time slots in the second forwarding node, the second mapping relationship is a many-to-one mapping. If the number of time slots in the first and second forwarding nodes is not an integer multiple of each other, the second mapping relationship is a many-to-many mapping.

[0080] In some implementations, when determining the second mapping relationship based on the first time slot group and the second time slot group, the following steps may be included: if the second time slot group is an available time slot group and the remaining bit quantity of the second time slot group meets the packet forwarding requirements, a second mapping relationship between the first time slot group and the second time slot group is established.

[0081] Specifically, after determining the first and second time slot groups, for the second time slot group, it can be determined whether the second time slot group is available and whether the remaining bits in the second time slot group meet the message forwarding requirements. When determining whether the second time slot group is available, it can be checked whether there are one or more time slots in the second time slot group that are currently sending messages. If not, the second time slot group is available; if so, it is unavailable (the same time slot group cannot simultaneously perform message receiving and sending operations) and should be avoided. The remaining bits in the second time slot group can be determined by the control node. This remaining bit quantity is the sum of the remaining bits in all time slots within the second time slot group. Knowing the number of bits required for message forwarding, the control node can determine whether the remaining bits in the second time slot group meet the message forwarding requirements.

[0082] After the control node determines whether the second time slot group is an available time slot group and whether the remaining bit quantity of the second time slot group meets the packet forwarding requirements, if the determination result is that the second time slot group is an available time slot group and the remaining bit quantity of the second time slot group meets the packet forwarding requirements, then a mapping relationship between the first time slot group and the second time slot group can be established. This mapping relationship is the second mapping relationship.

[0083] In some implementations, determining the second mapping relationship based on the first and second time slot groups may include the following steps: if the second time slot group is an unavailable time slot group or the remaining bit quantity of the second time slot group does not meet the packet forwarding requirements, determine a third time slot group from the N time slot groups of the second forwarding node, wherein the third time slot group is available and the remaining bit quantity meets the packet forwarding requirements; and establish a second mapping relationship between the first and third time slot groups.

[0084] Specifically, after determining the first time slot group and the second time slot group, for the second time slot group, it can be determined whether the second time slot group is an available time slot group and whether the remaining bit quantity of the second time slot group meets the packet forwarding requirements. For the specific implementation method, please refer to the above-mentioned content on determining whether the second time slot group is an available time slot group and whether the remaining bit quantity of the second time slot group meets the packet forwarding requirements, which will not be repeated here.

[0085] If the judgment result is that the second time slot group is not an available time slot group or the remaining bit quantity of the second time slot group does not meet the packet forwarding requirements, then it is necessary to determine the available third time slot group with the remaining bit quantity that meets the packet forwarding requirements from the N time slot groups of the second forwarding node, and establish a mapping relationship between the first time slot group and the third time slot group. This mapping relationship is the second mapping relationship.

[0086] When determining the third time slot group from the N time slot groups of the second forwarding node, we can first determine which time slot groups other than the second time slot group are available. Then, for the available time slot groups, we further determine whether the remaining bit quantity meets the packet forwarding requirements. Finally, we select one time slot group from those that meet the packet forwarding requirements as the third time slot group. Alternatively, we can sequentially check the availability and remaining bit quantity of other time slot groups (excluding the second time slot group) until we find a time slot group that is available and has sufficient remaining bit quantity to meet the packet forwarding requirements, and then designate that time slot group as the third time slot group. The specific implementation method for determining the third time slot group from the N time slot groups of the second forwarding node is not limited here.

[0087] To better understand the process of determining the second mapping relationship, please refer to Figure 7.

[0088] In Figure 7, forwarding node A has a port rate of 100G, 4 time slots, and a time slot length of 10µs. Forwarding node B has a port rate of 25G, 16 time slots, and a time slot length of 10µs. The first mapping relationship sent by forwarding node B to the control node is 0->6. Therefore, when determining the second mapping relationship, the control node may include the following steps:

[0089] Step 1: Divide the number of time slots for forwarding nodes A and B into multiple groups of time slots.

[0090] Since the number of time slots of forwarding node B is 4 times that of forwarding node A, it falls under the first case mentioned above. Therefore, the number of time slots of both forwarding nodes A and B can be divided into 4 groups of time slots, with each time slot of forwarding node A forming one group and every four time slots of forwarding node B forming one group.

[0091] Step 2: Determine the time slot groups to which time slot 0 and time slot 6 belong in the first time slot mapping relationship.

[0092] Based on the time slot allocation results in step 1, it can be determined that time slot 0 of forwarding node A belongs to the first group of time slots of forwarding node A (corresponding to time slot number 0), and time slot 6 of forwarding node B belongs to the second group of time slots of forwarding node B (corresponding to time slot numbers 4 to 7).

[0093] Step 3: Determine whether there is a time slot in the second set of time slots of forwarding node B that is currently sending a message and whether the remaining bit quantity meets the message forwarding requirements.

[0094] If there is no time slot in the second set of time slots of forwarding node B that is currently sending a message and the remaining number of bits is sufficient to meet the message forwarding requirements, then a mapping relationship is established between the first set of time slots of forwarding node A and the second set of time slots of forwarding node B. At this time, the second mapping relationship is 0->{4~7}.

[0095] In one embodiment, if there is a time slot in the second set of time slots of forwarding node B that is currently sending a message or the remaining number of bits does not meet the message forwarding requirements, then step 4 is executed.

[0096] Step 4: Determine whether there is a time slot in the third group of time slots (corresponding to time slot numbers 8-11) of forwarding node B that is currently sending a message and whether the remaining bit quantity meets the message forwarding requirements. If there is no time slot in the third group of time slots of forwarding node B that is currently sending a message and the remaining bit quantity meets the message forwarding requirements, then establish a mapping relationship between the first group of time slots of forwarding node A and the third group of time slots of forwarding node B. At this time, the second mapping relationship is 0->{8-11}. In one embodiment, if there is a time slot in the third group of time slots of forwarding node B that is currently sending a message or the remaining bit quantity does not meet the message forwarding requirements, then continue to determine the fourth group of time slots (corresponding to time slot numbers 12-15) and the first group of time slots (corresponding to time slot numbers 0-3) of forwarding node B until a suitable time slot group is found and a second mapping relationship is established between the time slot group and the first group of time slots of forwarding node A.

[0097] After determining the second mapping relationship based on the above method, the control node can send the second mapping relationship to the second forwarding node. Upon receiving the second mapping relationship, the second forwarding node can forward packets based on it. In some implementations, when the control node sends the second mapping relationship to the second forwarding node, it can do so through a first interface. The first interface can be a Network Configuration Protocol (Netconf) interface, a YANG interface, a Simple Network Management Protocol (SNMP) management port, a BGPCEP distribution interface, or a command line (CLI) interface provided by the second forwarding node.

[0098] As shown in Figure 8, when the control node sends the second mapping relationship to the second forwarding node, it can do so through the Netconf interface, YANG interface, SNMP management port, BGPCEP distribution interface, or CLI interface. The second mapping relationship can be a one-to-many mapping relationship between time slots (corresponding to the port rate of the first forwarding node being an integer multiple of the port rate of the second forwarding node), or a many-to-one mapping relationship (corresponding to the port rate of the second forwarding node being an integer multiple of the port rate of the first forwarding node), or a many-to-many mapping relationship (corresponding to the port rate of the second forwarding node not being an integer multiple of the port rate of the first forwarding node).

[0099] The technical solution provided in this application, for deterministic networks with heterogeneous rate links, allows for time slot planning for multiple forwarding nodes with different port rates. The control node configures the periodic template parameters (including time slot length and number of time slots) of the multiple forwarding nodes based on their port rates and sends the configuration results to the nodes. The configuration results show that the first time slot parameter is the same for all forwarding nodes, while the second time slot parameter is different. The first time slot parameter is either the number of time slots or the time slot length, and the second time slot parameter is the other. Because the periodic template parameters of the multiple forwarding nodes can be configured with one time slot parameter being the same and the other different, the purpose of time slot planning for ports with different rates can be achieved.

[0100] Furthermore, the time slot planning strategy of this application embodiment can also provide a basis for the orchestration and scheduling of time slots between ports of different rates, thereby enabling the orchestration and scheduling of time slots and obtaining the time slot mapping relationship between ports of different rates. Based on this time slot mapping relationship, deterministic periodic scheduling and forwarding can be achieved.

[0101] To facilitate understanding of how the technical solutions provided in this application plan and schedule time slots for ports of different rates, the following will use two more specific implementation methods as examples.

[0102] Example 1: This example illustrates a method for planning and configuring the network-wide periodic template parameters when multiple forwarding nodes have the same number of time slots but different time slot lengths. Assuming the maximum processing latency fluctuation range of a node is 30µs, and the network contains heterogeneous rate ports of 10G, 25G, 40G, and 100G, the method for planning and configuring the periodic template parameters is as follows.

[0103] The number of time slots K is the same for all ports, but the time slot lengths are different. First, calculate the least common multiple of 10, 25, 40, and 100, which is 200. Then the time slot lengths for each port are as follows:

[0104] T10 = 200 / 10 * basic time slot length = 20 * basic time slot length; T25 = 200 / 25 * basic time slot length = 8 * basic time slot length; T40 = 200 / 40 * basic time slot length = 5 * basic time slot length; T100 = 200 / 100 * basic time slot length = 2 * basic time slot length.

[0105] The physical cycle length of each port must be able to tolerate the maximum processing latency fluctuation of the node. Taking a 100G port with K=8 time slots as an example, this means that T100 = time slot length * number of time slots = 2 * basic time slot length * 8 (time slot length) must be greater than or equal to 30us. Based on this constraint, the minimum basic time slot length can be determined to be 2us, which can be configured as follows: T10 = 40us, T25 = 16us, T40 = 10us, T100 = 4us.

[0106] The above configuration parameters represent the minimum tolerable node processing latency. For example, for K=8, the basic timeslot length can be selected as 4µs. In this case, T10=80µs, T25=32µs, T40=20µs, and T100=8µs can be configured, resulting in stronger packet processing capabilities. Furthermore, the above configuration method is not unique. For example, if K=16 is configured, the available configuration parameters are T10=20µs, T25=8µs, T40=5µs, and T100=2µs.

[0107] This embodiment is merely an illustrative example of the basic parameter selection methods and constraints when configuring periodic template parameters, and does not constitute a limitation of this application.

[0108] After planning and configuring the periodic template parameters of each forwarding node, since the number of time slots is the same between ports of different rates, the time slot mapping relationship is one-to-one. The time slot orchestration method and the distribution of time slot mapping relationship can be found in the specific implementation in the relevant technologies, and will not be described in detail here.

[0109] Example 2: This example illustrates a method for planning and configuring the network-wide periodic template parameters when multiple forwarding nodes have the same time slot length but different numbers of time slots. It also demonstrates the time slot orchestration process based on the planned periodic template parameters, covering scenarios such as small-to-large speeds (in integer multiples), large-to-small speeds (in integer multiples), and no integer multiple relationship between upstream and downstream port speeds. The example also illustrates the interface and method for parameter distribution. Assuming a maximum node processing latency of 30µs, and using the network topology shown in Figure 9 as an example (port speeds include 40G, 50G, and 100G), the method for planning and configuring the periodic template parameters is as follows.

[0110] The time slot length T of the periodic template is the same for each port, but the number of time slots is different for each port. First, calculate the least common multiple of 40, 50, and 100, which is 200. Then, the number of time slots for each port is planned as follows: N40 = 200 / 40 * number of basic time slots = 5 * number of basic time slots; N50 = 200 / 50 * number of basic time slots = 4 * number of basic time slots; N100 = 200 / 100 * number of basic time slots = 2 * number of basic time slots.

[0111] Because node processing latency fluctuations need to be tolerated, taking a 100G port with a timeslot length of T = 10µs as an example, to ensure that 2 * base timeslot number * timeslot length = 2 * base timeslot number * 10 ≥ 30µs, the minimum base timeslot number is 2. Therefore, N40 = 10, N50 = 8, and N100 = 4 can be configured. This parameter planning is not the only solution; for example, the timeslot length can be modified, which will change the number of timeslots. Higher values ​​such as N40 = 20, N50 = 16, and N100 = 8 can also be set.

[0112] When considering many-to-one, one-to-many, and many-to-many relationships, time slots are merged. For the time slot cyclic scheduling mechanism, the number of time slots / merged time slots must be greater than or equal to 3. The time slot orchestration process is illustrated below using N40=20, N50=16, N100=8, and T=10us as an example.

[0113] For the output from node A to node B, the speed increases from small to large and is an integer multiple of each other, so the time slot mapping relationship is many-to-one. Considering the two (100 / 50) time slots at upstream node A as merged time slots, and assuming the basic A->B time slot mapping relationship reported by the forwarding node is 0->2, the control node converts it to a merged time slot form, i.e., {0,1}->2. When the control node performs orchestration, it needs to determine if the bit resources of time slot 2 at node B are sufficient. Assuming that time slot 2 has 0 remaining bits, the resources are insufficient. Then, it continues to determine if time slot 3 at node B is sufficient. Assuming that time slot 3 has 1,000,000 remaining bits, the resources are sufficient, thus forming the time slot mapping relationship {0,1}->3, as shown in Figure 10.

[0114] For the B node exit to the D node exit, the rates decrease from large to small and are integer multiples of each other, so the time slot mapping relationship is one-to-many. Each two (100 / 50) time slots at the downstream D exit are considered as merged time slots. Assuming the basic B->D time slot mapping relationship reported by the forwarding node is 0->6, the control node converts it to a merged time slot form, i.e., 0->{6,7}. When the control node performs orchestration, it needs to determine if the resources for the merged time slots {6,7} at the D exit are sufficient. If not (assuming the remaining bits in time slots 6 and 7 are both 0), it continues to determine if the resources for the merged time slots {8,9} at the D exit are sufficient. If sufficient, the time slot mapping relationship 0->{8,9} is formed, as shown in Figure 11.

[0115] For the route from node C's exit to node B's exit, 40G is mapped to 100G, with the rates not being integer multiples. After conversion, every 5 time slots at node C's exit are used as merged time slots, and every 2 time slots at node B's exit are used as merged time slots, forming a 5-to-2 mapping relationship. Considering every 2 (100 / 50) time slots at downstream node B's exit as merged time slots, and assuming the C->D basic time slot mapping reported by the forwarding node is 0->3, the control node converts this to a merged time slot form, i.e., {0,1,2,3,4}->{2,3}. When the control node performs orchestration, it needs to determine if the resources for merged time slots {2,3} at node B's exit are sufficient. If not, it continues to determine if the resources for merged time slots {4,5}, {6,7}, etc., at node B's exit are sufficient. The process is similar to the one-to-many case and will not be elaborated here. Here, we assume that the merged time slot resources {2,3} at node B's exit are sufficient, resulting in the mapping relationship {0,1,2,3,4}->{2,3}, as shown in Figure 12.

[0116] After calculating the time slot mapping relationship, the control node needs to send it through the southbound interface. It also needs to send basic information about the peer nodes. For example, when sending information using the NETCONF interface, the upstream node may have one or more time slots, represented by a leaf-list. The downstream node may also have one or more time slots, represented by a leaf-list.

[0117] This application proposes a deterministic control plane scheme for heterogeneous rate link networks. For scenarios where different link rates coexist in the network, it plans the network-wide periodic template parameters and proposes corresponding planning strategies. Then, based on the configuration of the physical periodic template, it proposes a time slot mapping and orchestration method for heterogeneous rate ports, calculates the time slot mapping relationship, and distributes the orchestration results to the forwarding plane devices. Through the control plane scheme described in this application, unified management and control of heterogeneous rate network resources can be achieved, providing a basis for time slot scheduling of forwarding plane devices.

[0118] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

[0119] The foregoing has described specific embodiments of this application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired results. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0120] Figure 13 is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Referring to Figure 13, at the hardware level, the electronic device includes a processor, and in one embodiment, it also includes an internal bus, a network interface, and a memory. The memory may include RAM, such as high-speed random-access memory (RAM), or it may include non-volatile memory, such as at least one disk storage device. Of course, the electronic device may also include other hardware required for other services.

[0121] The processor, network interface, and memory can be interconnected via an internal bus, which can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. This bus can be categorized as an address bus, data bus, control bus, etc. For ease of illustration, only a single bidirectional arrow is used in Figure 13, but this does not imply that there is only one bus or one type of bus.

[0122] Memory is used to store programs. Specifically, programs may include program code, which includes computer operation instructions. Memory may include main memory and non-volatile memory, and provides instructions and data to the processor.

[0123] The processor reads the corresponding computer program from non-volatile memory into memory and then runs it, forming a time slot control device at the logical level. The processor executes the program stored in memory and specifically performs the following operations: acquiring network topology information, which includes the port rates of multiple forwarding nodes in the deterministic network, wherein the port rates of the multiple forwarding nodes are different; configuring the periodic template parameters of the multiple forwarding nodes according to their port rates, obtaining a periodic template parameter configuration result, wherein the periodic template parameters include the number of time slots and the time slot length, and the configuration result of the periodic template parameters is that the first time slot parameter of the multiple forwarding nodes is the same, while the second time slot parameter is different, wherein the first time slot parameter is one of the number of time slots and the time slot length, and the second time slot parameter is the other of the number of time slots and the time slot length; and sending the configured periodic template parameters to the multiple forwarding nodes.

[0124] The method executed by the time slot control device disclosed in the embodiment shown in Figure 13 of this application can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The 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 gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.

[0125] The electronic device can also perform the method of FIG3 and realize the function of the time slot control device in the embodiment shown in FIG3, which will not be described again here.

[0126] Of course, in addition to software implementation, the electronic device of this application does not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. In other words, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0127] This application also proposes a computer-readable storage medium storing one or more programs, the programs including instructions that, when executed by a portable electronic device including multiple applications, enable the portable electronic device to perform the method of the embodiment shown in FIG3, specifically for performing the following operations: acquiring network topology information, the network topology information including port rates of multiple forwarding nodes in the deterministic network, the port rates of the multiple forwarding nodes being different; configuring periodic template parameters of the multiple forwarding nodes according to the port rates of the multiple forwarding nodes to obtain a periodic template parameter configuration result, the periodic template parameters including the number of time slots and the time slot length, the configuration result of the periodic template parameters being such that the first time slot parameter of the multiple forwarding nodes is the same and the second time slot parameter is different, the first time slot parameter being one of the number of time slots and the time slot length, and the second time slot parameter being the other of the number of time slots and the time slot length; and sending the configured periodic template parameters to the multiple forwarding nodes.

[0128] Figure 14 is a schematic diagram of the structure of a time slot control device 140 according to an embodiment of this application. Referring to Figure 14, in one software implementation, the time slot control device 140 may include: an acquisition module 141, a configuration module 142, and a transmission module 143, wherein: the acquisition module 141 acquires network topology information, the network topology information including the port rates of multiple forwarding nodes in the deterministic network, the port rates of the multiple forwarding nodes being different; the configuration module 142 configures the periodic template parameters of the multiple forwarding nodes according to the port rates of the multiple forwarding nodes, obtaining a periodic template parameter configuration result, the periodic template parameters including the number of time slots and the time slot length, the configuration result of the periodic template parameters being that the first time slot parameter of the multiple forwarding nodes is the same, and the second time slot parameter is different, the first time slot parameter being one of the number of time slots and the time slot length, and the second time slot parameter being the other of the number of time slots and the time slot length; the transmission module 143 sends the configured periodic template parameters to the multiple forwarding nodes.

[0129] In some implementations, the configuration module 142 configures the periodic template parameters of the plurality of forwarding nodes according to the port rates of the plurality of forwarding nodes, including: obtaining a specified value corresponding to the first timeslot parameter and a basic parameter value corresponding to the second timeslot parameter; determining the parameter value of the second timeslot parameter of each of the plurality of forwarding nodes according to the port rates of the plurality of forwarding nodes and the basic parameter value; and configuring the periodic template parameters of the plurality of forwarding nodes according to the specified value and the parameter value of the second timeslot parameter.

[0130] In some implementations, the configuration module 142 determines the parameter value of the second timeslot parameter of each of the plurality of forwarding nodes based on the port rates of the plurality of forwarding nodes and the basic parameter value, including: determining a first port rate based on the port rates of the plurality of forwarding nodes, wherein the first port rate includes the least common multiple of the port rates of the plurality of forwarding nodes; and for any target forwarding node among the plurality of forwarding nodes, determining the parameter value of the second timeslot parameter of the target forwarding node by multiplying the target ratio by the basic parameter value, wherein the target ratio is the ratio of the first port rate to the port rate of the target forwarding node.

[0131] In some implementations, the product of the timeslot length and the number of timeslots of each forwarding node is greater than or equal to the maximum delay jitter of the forwarding node.

[0132] In some embodiments, the apparatus further includes an orchestration and scheduling module. When the first time slot parameter is the time slot length and the second time slot parameter is the number of time slots, the orchestration and scheduling module is configured to: receive a first mapping relationship sent by a second forwarding node, the first mapping relationship being a basic mapping relationship between a first time slot of a first forwarding node and a second time slot of the second forwarding node, the first forwarding node being an upstream node adjacent to the second forwarding node; determine a second mapping relationship based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node, the second mapping relationship being used to instruct the second forwarding node to forward packets; and send the second mapping relationship to the second forwarding node.

[0133] In some implementations, the orchestration and scheduling module determines a second mapping relationship based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node, including: dividing the multiple time slots of the first forwarding node and the second forwarding node into N groups of time slots, where N is a positive integer; determining the first time slot group to which the first time slot belongs from the N groups of time slots of the first forwarding node, and determining the second time slot group to which the second time slot belongs from the N groups of time slots of the second forwarding node; and determining the second mapping relationship based on the first time slot group and the second time slot group.

[0134] In some implementations, the orchestration and scheduling module determines the second mapping relationship based on the first time slot group and the second time slot group, including: establishing the second mapping relationship between the first time slot group and the second time slot group when the second time slot group is an available time slot group and the remaining bit quantity of the second time slot group meets the packet forwarding requirements.

[0135] In some implementations, the orchestration and scheduling module determines the second mapping relationship based on the first time slot group and the second time slot group, including: when the second time slot group is an unavailable time slot group or the remaining bit quantity of the second time slot group does not meet the packet forwarding requirements, determining a third time slot group from the N time slot groups of the second forwarding node, wherein the third time slot group is an available time slot group and the remaining bit quantity meets the packet forwarding requirements; and establishing the second mapping relationship between the first time slot group and the third time slot group.

[0136] In some implementations, when the number of time slots of the second forwarding node is an integer multiple of the number of time slots of the first forwarding node, N is the number of time slots of the first forwarding node, each group of time slots of the first forwarding node includes 1 time slot, and each group of time slots of the second forwarding node includes M time slots, where M is the ratio of the number of time slots of the second forwarding node to N.

[0137] In some implementations, when the number of time slots of the first forwarding node is an integer multiple of the number of time slots of the second forwarding node, N is the number of time slots of the second forwarding node, each group of time slots of the second forwarding node includes 1 time slot, and each group of time slots of the first forwarding node includes Q time slots, where Q is the ratio of the number of time slots of the first forwarding node to N.

[0138] In some implementations, when the number of time slots of the first forwarding node and the number of time slots of the second forwarding node are not integer multiples of each other, N is the common divisor of the number of time slots of the first forwarding node and the number of time slots of the second forwarding node, each group of time slots of the first forwarding node includes W time slots, each group of time slots of the second forwarding node includes P time slots, W is the ratio of the number of time slots of the first forwarding node to N, and P is the ratio of the number of time slots of the second forwarding node to N.

[0139] In some implementations, the orchestration and scheduling module sends the second mapping relationship to the second forwarding node by sending the second mapping relationship to the second forwarding node through a first interface, wherein the first interface includes a Netconf interface, a YANG interface, an SNMP management port, a BGPCEP distribution interface, or a command-line CLI interface provided by the second forwarding node.

[0140] The time slot control device 140 provided in this application can also execute the method of FIG3 and realize the function of the time slot control device 140 in the embodiment shown in FIG3, which will not be described again here.

[0141] In summary, the above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.

[0142] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.

[0143] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, 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 technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0144] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0145] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

Claims

1. A time-slot control method, applied to control nodes in a deterministic network, comprising: Obtain network topology information, which includes the port rates of multiple forwarding nodes in the deterministic network, wherein the port rates of the multiple forwarding nodes are different; Based on the port rates of the multiple forwarding nodes, the periodic template parameters of the multiple forwarding nodes are configured to obtain the periodic template parameter configuration result. The periodic template parameters include the number of time slots and the time slot length. The periodic template parameter configuration result is that the first time slot parameters of the multiple forwarding nodes are the same, and the second time slot parameters are different. The first time slot parameter is one of the number of time slots and the time slot length, and the second time slot parameter is the other of the number of time slots and the time slot length. The configured periodic template parameters are sent to the multiple forwarding nodes.

2. The method as described in claim 1, wherein configuring the periodic template parameters of the plurality of forwarding nodes according to the port rates of the plurality of forwarding nodes includes: Obtain the specified value corresponding to the first time slot parameter and the basic parameter value corresponding to the second time slot parameter; Based on the port rates of the multiple forwarding nodes and the basic parameter values, determine the parameter values ​​of the second timeslot parameters of each of the forwarding nodes; The periodic template parameters of the plurality of forwarding nodes are configured according to the specified value and the parameter value of the second time slot parameter.

3. The method as described in claim 2, wherein determining the parameter value of the second timeslot parameter of each of the plurality of forwarding nodes based on the port rates of the plurality of forwarding nodes and the basic parameter values ​​includes: A first port rate is determined based on the port rates of the plurality of forwarding nodes, wherein the first port rate includes the least common multiple of the port rates of the plurality of forwarding nodes; For any target forwarding node among the plurality of forwarding nodes, the product of the target ratio and the basic parameter value is determined as the parameter value of the second time slot parameter of the target forwarding node, wherein the target ratio is the ratio of the first port rate to the port rate of the target forwarding node.

4. The method according to any one of claims 1 to 3, wherein the product of the time slot length and the number of time slots of each forwarding node is greater than or equal to the maximum delay jitter of the forwarding node.

5. The method of claim 1, wherein when the first time slot parameter is the time slot length and the second time slot parameter is the number of time slots, the method further comprises: Receive the first mapping relationship sent by the second forwarding node. The first mapping relationship is the basic mapping relationship between the first time slot of the first forwarding node and the second time slot of the second forwarding node. The first forwarding node is an upstream node adjacent to the second forwarding node. Based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node, a second mapping relationship is determined, which is used to instruct the second forwarding node to forward packets. The second mapping relationship is sent to the second forwarding node.

6. The method as described in claim 5, wherein determining the second mapping relationship based on the first mapping relationship, the number of time slots of the first forwarding node, and the number of time slots of the second forwarding node includes: The multiple time slots of the first forwarding node and the second forwarding node are each divided into N groups of time slots, where N is a positive integer; Determine the first time slot group to which the first time slot belongs from the N time slot groups of the first forwarding node, and determine the second time slot group to which the second time slot belongs from the N time slot groups of the second forwarding node; The second mapping relationship is determined based on the first time slot group and the second time slot group.

7. The method of claim 6, wherein determining the second mapping relationship based on the first time slot group and the second time slot group comprises: When the second time slot group is an available time slot group and the remaining bit quantity of the second time slot group meets the packet forwarding requirements, the second mapping relationship between the first time slot group and the second time slot group is established.

8. The method of claim 6, wherein determining the second mapping relationship based on the first time slot group and the second time slot group comprises: If the second time slot group is an unavailable time slot group or the remaining bit quantity of the second time slot group does not meet the packet forwarding requirements, a third time slot group is determined from the N time slot groups of the second forwarding node. The third time slot group is an available time slot group with a remaining bit quantity that meets the packet forwarding requirements. Establish the second mapping relationship between the first time slot group and the third time slot group.

9. The method according to any one of claims 6 to 8, wherein when the number of time slots of the second forwarding node is an integer multiple of the number of time slots of the first forwarding node, N is the number of time slots of the first forwarding node, each group of time slots of the first forwarding node includes 1 time slot, each group of time slots of the second forwarding node includes M time slots, and M is the ratio of the number of time slots of the second forwarding node to N.

10. The method according to any one of claims 6 to 8, wherein when the number of time slots of the first forwarding node is an integer multiple of the number of time slots of the second forwarding node, N is the number of time slots of the second forwarding node, each group of time slots of the second forwarding node includes 1 time slot, and each group of time slots of the first forwarding node includes Q time slots, where Q is the ratio of the number of time slots of the first forwarding node to N.

11. The method according to any one of claims 6 to 8, wherein when the number of time slots of the first forwarding node and the number of time slots of the second forwarding node are not integer multiples of each other, N is the common divisor of the number of time slots of the first forwarding node and the number of time slots of the second forwarding node, each group of time slots of the first forwarding node includes W time slots, each group of time slots of the second forwarding node includes P time slots, W is the ratio of the number of time slots of the first forwarding node to N, and P is the ratio of the number of time slots of the second forwarding node to N.

12. The method of claim 5, wherein sending the second mapping relationship to the second forwarding node comprises: The second mapping relationship is sent to the second forwarding node through the first interface, which includes the Netconf interface, YANG interface, SNMP management port, BGPCEP distribution interface, or command line CLI interface provided by the second forwarding node.

13. An electronic device, comprising: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the method as described in any one of claims 1 to 12.

14. A computer-readable storage medium, wherein instructions in the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the method as claimed in any one of claims 1 to 12.

Citation Information

Patent Citations

  • Data transmission method, apparatus, device and system, and readable storage medium

    CN114844592A

  • Message transmission method and device

    CN115589384A

  • Service rate adjusting method and communication device

    CN116782307A

  • Segmented routing-oriented time slot cyclic multi-queue scheduling method

    CN117834555A

  • Packet forwarding method and apparatus

    WO2024036476A1