A time slot planning method, device and equipment of a CSQF network and a storage medium
By setting a fixed planning period and service number for the CSQF network, determining the transmission period and path, and performing time slot planning and forwarding table establishment, the problems of uncontrollable time slot span and jitter in the existing technology are solved, and a balance between resource utilization and engineering complexity is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- INFORMATION & COMM BRANCH OF STATE GRID JIANGSU ELECTRIC POWER
- Filing Date
- 2026-03-23
- Publication Date
- 2026-06-26
AI Technical Summary
The existing CSQF network time slot planning method has problems such as increased planning time slot span and planning time, uncontrollable end-to-end latency and jitter due to frequent changes in the supercycle.
Set a fixed planning period for all nodes in the CSQF network, generate intra-domain service numbers for services, and determine the transmission period and transmission path of each service packet. Based on the planning period, service period, transmission period, and transmission path, perform time slot planning, establish a time slot mapping function and forwarding table, and ensure that each node accurately forwards service packets when they arrive.
While ensuring resource utilization, the complexity of engineering implementation was reduced, and the problems of uncontrollable time slot span and planning time, end-to-end latency and jitter caused by the time slot planning method were solved.
Smart Images

Figure CN122293288A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present invention relate to the field of deterministic network communication technology, and in particular to a time slot planning method, apparatus, device and storage medium for a CSQF network. Background Technology
[0002] With the rapid development of new power systems, distributed energy aggregation and control technologies, such as virtual power plants and group dispatching and control, are flourishing, placing stringent demands on the controllability of network forwarding latency and jitter. However, traditional packet networks struggle to provide the capacity to meet these requirements, and their "best effort" (BE) forwarding mode leads to numerous micro-bursts in the network, causing unpredictable packet delays or network congestion. To address these challenges, Cycle Specified Queueing and Forwarding (CSQF) has been introduced into power communication networks as a typical wide-area deterministic technology. CSQF primarily provides deterministic forwarding capabilities for periodic services. By allocating fixed-length transmission time slots at the output of forwarding devices and combining this with a circular queue mechanism, it achieves controllable queuing latency within forwarding nodes, thereby meeting the end-to-end latency and jitter requirements of services. To achieve determinism, CSQF needs to focus on resolving the time slot allocation issue for services.
[0003] The existing solution pre-calculates the supercycle (i.e., the least common multiple of all service cycles) for all periodic services and uses it as the planning window for network-wide time slot allocation. Within this window, the time slots for each service group are planned, and the time slot allocation strategy for each service throughout its lifecycle is continuously repeated according to the supercycle. However, this approach still has certain drawbacks when facing different scenarios. For example, when the differences in network-wide service cycles are large (especially when the service cycle values are coprime), the supercycle value will be extremely large, leading to an increase in the planned time slot span and planning time, and uncontrollable end-to-end latency and jitter. Summary of the Invention
[0004] This invention provides a time slot planning method, apparatus, device, and storage medium for CSQF networks to solve the problems of uncontrollable time slot span and planning time, end-to-end latency, and jitter caused by frequent changes in the supercycle in existing time slot planning methods.
[0005] According to one aspect of the present invention, a time slot planning method for a CSQF network is provided, the method comprising: Set a fixed planning period for queuing forwarding of all nodes in the CSQF network for a specified period; Generate intra-domain service numbers for the service, and determine the transmission period and transmission path of each service packet in the service; Based on the planning period, the service period, transmission period and transmission path of each service group, time slot planning is performed to obtain the time slot mapping function of each service group; A forwarding table is established based on the transmission period, the time slot mapping function, and the intra-domain service number; The forwarding table is sent to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network.
[0006] According to another aspect of the present invention, a time slot planning apparatus for a CSQF network is provided, the apparatus comprising: The configuration module is used to set a fixed planning period for all nodes in the CSQF network for queuing and forwarding within a specified period. The generation module is used to generate intra-domain service numbers for services and determine the transmission period and transmission path of each service group in the service. The planning module is used to perform time slot planning based on the planning period, the service period, the transmission period and the transmission path of each service group, and to obtain the time slot mapping function of each service group; A module is established to create a forwarding table based on the transmission period, the time slot mapping function, and the intra-domain service number. The forwarding module is used to send the forwarding table to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network.
[0007] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: at least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, which enables the at least one processor to perform the time slot planning method for the CSQF network according to any embodiment of the present invention.
[0008] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the time slot planning method of the CSQF network according to any embodiment of the present invention.
[0009] This invention discloses a time slot planning method, apparatus, device, and storage medium for a CSQF network. The method includes: setting a fixed planning period for all nodes in the CSQF network to queue and forward data for a specified period; generating intra-domain service numbers for services and determining the transmission period and transmission path of each service packet in the service; performing time slot planning based on the planning period, the service period, transmission period, and transmission path of each service packet to obtain a time slot mapping function for each service packet; establishing a forwarding table based on the transmission period, the time slot mapping function, and the intra-domain service number; and sending the forwarding table to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network. This method can reduce the complexity of engineering implementation while ensuring resource utilization, and solves the problems of uncontrollable end-to-end latency and jitter caused by frequent changes in the super-period in the time slot planning method of the prior art.
[0010] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0011] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0012] Figure 1 This is a schematic diagram of the forwarding principle of CSQF provided in an embodiment of the present invention; Figure 2 A schematic diagram of a CSQF slot planning method based on superperiodicity provided for existing technologies; Figure 3 This is a flowchart illustrating a time slot planning method for a CSQF network provided in Embodiment 1 of the present invention. Figure 4 A schematic diagram of a network scenario provided in an embodiment of the present invention; Figure 5 This is a schematic diagram of a node time slot mapping relationship provided in an embodiment of the present invention; Figure 6 This is a schematic diagram of a queue structure within a CSQF network node, provided as an embodiment of the present invention. Figure 7 This is a schematic diagram of the time slot planning device for a CSQF network provided in Embodiment 2 of the present invention; Figure 8This is a schematic diagram of the electronic device using the time slot planning method of the CSQF network according to an embodiment of the present invention. Detailed Implementation
[0013] To enable those skilled in the art to better understand the present invention, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention. It should be understood that the various steps described in the method embodiments of the present invention can be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present invention is not limited in this respect.
[0014] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0015] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, any variations of the terms "comprising" and "having," etc., are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0016] It should be noted that the terms "a" and "a plurality of" used in this invention are illustrative rather than restrictive. Those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0017] The names of the messages or information exchanged between the multiple devices in the embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of these messages or information.
[0018] The existing time slot allocation method leads to an increase in the planned time slot span and planning time. It also requires the orchestrator to consume additional storage capacity to record the time slot resource usage of each interface. In addition, newly arriving business requests may change the original time period, causing the format of the time slot resource record table to change frequently and significantly, which is not conducive to engineering implementation.
[0019] Figure 1 This is a schematic diagram of the forwarding principle of CSQF provided in an embodiment of the present invention, as shown below. Figure 1 As shown, a forwarding device based on the CSQF mechanism allocates a fixed-length time slot (e.g., 10μs) at its exit and establishes M circular queues. Each queue is associated with a time slot in a round-robin manner. For example, all packets in queue 1 of node A are sent in time slot X, queue 2 is mapped to time slot X+1, and so on until queue M is mapped to time slot X+M-1. At this point, queue 1 is returned to the queue and mapped to time slot X+M. Each time slot can only correspond to one sending queue, while other queues perform data receiving operations. The multi-queue mechanism can achieve delayed data transmission (delay of up to M-1 time slots). In addition, CSQF requires each forwarding node to maintain frequency synchronization and maintain the time slot mapping relationship with adjacent nodes. The time slot mapping relationship represents the time slot deviation between adjacent nodes due to physical distance, that is, it determines in which time slot of the downstream node the data sent by the upstream node in a certain time slot will arrive (e.g., data from node A in time slot 1 will cross time slots Y and Y+1 when it arrives at node B). As a queuing mechanism, CSQF is usually used in conjunction with Segment Routing (SR) technology. It writes a label containing routing and time slot information into the packet header, and the forwarding node parses the packet header and queries the forwarding table to perform forwarding.
[0020] Currently, the commonly used method is "time slot planning based on supercycles". This method establishes the supercycle based on the least common multiple of all service cycles and uses it as the planning window for time slot allocation within the domain. Within this window, the time slots for each service group are planned. An example is provided below for clarity: Figure 2 A schematic diagram of a CSQF slot planning method based on superperiodicity provided for the prior art, as shown in the figure. Figure 2As shown, assuming the cycles of the three services are 2, 4, and 8 cycles respectively (cycle is the width of a single time slot), the orchestrator only needs to plan the time slot allocation scheme of the above services within an 8-cycle span (i.e., the supercycle). The subsequent time slot occupancy will repeat continuously with an 8-cycle cycle. At the same time, the orchestrator needs to record the resource usage of 8 time slots in each node interface. However, this method has the following drawbacks: (1) When the service cycle values are highly coprime, such as when the service cycles are 13, 15, and 17 cycles respectively, the supercycle is 3315 cycles. The time slot span that the orchestrator needs to plan is very large, which increases the complexity of the orchestrator's planning and solving. At the same time, the storage capacity consumed by recording the time slot resource usage of each node interface increases; (2) Newly arrived service requests may frequently change the original supercycle, causing the format of the time slot usage record table to change frequently and significantly (i.e., adding / deleting rows or columns in the table), which is not conducive to engineering implementation.
[0021] To address the aforementioned issues, this invention proposes a novel time slot planning method for differentiated service cycles. By setting a unified fixed planning cycle for nodes within the domain and configuring personalized transmission cycles with a certain degree of redundancy for each service, and filling the idle cycles caused by redundant configurations with traditional best-effort services, this method solves a series of problems caused by the large and frequent changes in the aforementioned time slots while ensuring resource utilization.
[0022] Example 1 Figure 3 This is a flowchart illustrating a time slot planning method for a CSQF network according to Embodiment 1 of the present invention. This method is applicable to planning time slots for services that need to be sent in the network. This method can be executed by a time slot planning device for a CSQF network, wherein the device can be implemented by software and / or hardware, and is generally integrated on an electronic device. In this embodiment, the electronic device includes, but is not limited to, devices such as computers.
[0023] like Figure 3 As shown in Embodiment 1 of the present invention, a time slot planning method for a CSQF network can be applied to an orchestrator and includes the following steps: S110: Set a fixed planning period for all nodes in the CSQF network to queue and forward data for a specified period.
[0024] In this context, nodes can be any forwarding device in the CSQF network. The planning period can be a fixed, uniform time period set for all nodes within the CSQF network. The orchestrator can be the core component responsible for coordinating the configuration and planning of key parameters for service scheduling.
[0025] In this embodiment, a fixed planning period can be set for all nodes in the CSQF network. dFor example, Figure 4 This is a schematic diagram of a network scenario provided by an embodiment of the present invention, such as... Figure 4 As shown in the example, in the packet network scenario of this embodiment, the wide-area deterministic network based on CSQF plans the time slots of nodes within the domain through the local orchestrator to achieve on-demand control of latency and jitter within the domain. At the same time, it can communicate with multiple external networks (other networks can use different transmission mechanisms) to achieve cross-domain data transmission.
[0026] S120. Generate a domain service number for the service, and determine the transmission period and transmission path of each service group in the service.
[0027] The domain service number serves as a unique identifier for a service within the CSQF network, and each service comprises multiple service packets. The transmission period can be a fixed interval for transmitting services defined for each service packet, and the transmission path can be a complete transmission link defined for each service packet, specifying all nodes and links that the service packet must traverse from the ingress node to the egress node.
[0028] In this embodiment, the orchestrator can generate unique intra-domain service numbers for the services that need to be sent, and determine the transmission period and transmission path for each service packet in the service. For example, the orchestrator can select the transmission path using existing routing algorithms.
[0029] In one embodiment, determining the transmission period of each service packet in the service includes: for each service packet, when the service period of the service packet is not greater than the planning period, selecting an approximation from the approximations of the planning period that is not greater than the service period as the transmission period of the service packet; when the service period of the service packet is greater than the planning period, using the planning period as the transmission period of the service packet.
[0030] The business cycle can be the inherent data update cycle of a business group.
[0031] In this embodiment, the orchestrator generates a corresponding transmission period for each service packet. For each service packet, when the service period of the service packet is not greater than the planned period, a factor not exceeding the service period can be selected from the factors of the planned period as the transmission period of the service packet; when the service period of the service packet is greater than the planned period, the planned period can be used as the transmission period of the service packet. For example, the orchestrator can determine the transmission period based on the service period. a and planning cycle d Calculate the transmission period c :1) When a ≤ d At that time, c Values d No more than aThe divisors of, i.e. mod ( d , c )=0 and c ≤ a ( mod (This indicates taking the remainder), it is recommended to take no more than [a certain value]. a The greatest divisor; 2) When a > d When, take c = d .
[0032] S130. Based on the planning period, the service period, transmission period and transmission path of each service group, time slot planning is performed to obtain the time slot mapping function of each service group.
[0033] The time slot mapping function can be a precise correspondence rule for the departure time slots of service packets at each node along the entire path.
[0034] In this embodiment, time slot planning can be performed based on the planning period, the service period of each service group, the transmission period, and the transmission path to obtain the time slot mapping function of each service group.
[0035] In one embodiment, the step of performing time slot planning based on the planning period, the service period, transmission period, and transmission path of each service packet to obtain the time slot mapping function of each service packet includes: for each service packet, determining the path nodes of the service packet based on the transmission path of the service packet, wherein the path nodes include an ingress node, an egress node, and zero or more intermediate nodes; and determining the time slot mapping function of each service packet based on the planning period, the service period and transmission period of the service packet, and the waiting delay of the service packet at the path nodes.
[0036] In this context, "path nodes" refers to the nodes that a service packet needs to pass through during transmission. Each service packet's path nodes include at least an ingress node and an egress node, and may also include one or more intermediate nodes. "Waiting delay" refers to the time delay required for a service packet to wait for transmission after arriving at a node.
[0037] In this embodiment, for each service packet, the nodes it passes through can be determined based on the transmission path of the service packet. Furthermore, based on the planning period, the service period and transmission period of the service packet, and the waiting delay of the service packet at the nodes it passes through, the time slot mapping function for each service packet is determined. For example, it can be based on the transmission path and transmission period... c Plan the time slots for packet transmission at the ingress node, intermediate node, and egress node, and update the time slot resource quantity in the record table according to the transmission cycle. cThe resource usage of this service in each time slot is deducted. The issue of resources being deducted during idle periods but not actually used can be resolved later by filling in BE groups.
[0038] In one embodiment, determining the time slot mapping function for each service packet based on the planning period, the service period and transmission period of the service packet, and the waiting delay of the service packet at the transit node includes: when the transit node is an ingress node, determining the time slot for the service packet to arrive at the transit node based on the planning period and the service period of the service packet; determining the time slot corresponding to the service packet leaving the transit node based on the waiting delay of the service packet at the transit node and the time slot; when the transit node is an intermediate node or an egress node, determining the time slot for the service packet to arrive at the transit node based on the link propagation delay between the transit node and the previous transit node, and the time slot corresponding to the service packet leaving the previous transit node; determining the time slot corresponding to the service packet leaving the transit node based on the waiting delay of the service packet at the transit node and the time slot; and constructing the time slot mapping function for the service packet based on the time slots corresponding to the service packet arriving at and leaving all transit nodes.
[0039] Link propagation delay can be the transmission time of service packets on the physical link.
[0040] In this embodiment, when the transit node is an ingress node, there are no other nodes before the ingress node. The time slot for the service packet to arrive at the ingress node can be determined based on the planning period and the service period of the service packet. Based on the waiting delay and time slot of the service packet at the ingress node, the time slot corresponding to the service packet leaving the ingress node is determined. When the transit node is an intermediate node or an egress node, since there are other nodes ahead, it is necessary to combine the previous time slot calculation. That is, based on the link propagation delay between the transit node and the previous transit node, and the time slot corresponding to the service packet leaving the previous transit node, the time slot for the service packet to arrive at the transit node is determined. Based on the waiting delay and time slot of the service packet at the transit node, the time slot corresponding to the service packet leaving the transit node is determined. The time slot mapping function of the service packet can be constructed based on the time slots corresponding to the service packet arriving at and leaving all transit nodes.
[0041] In one embodiment, when the transit node is an ingress node, the time slot for the service packet to arrive at the ingress node is: ; in, This refers to the time slot number corresponding to the arrival of a business group at the entry node within a certain planning cycle. This refers to the group number for the business group. Business cycles grouped by business, The planning period; the packet sequence number can refer to the sequence number of the service packet within its respective data packet; The time slot corresponding to the service packet leaving the ingress node is: ; in, The waiting latency for business groups at the entry node. Indicates rounding up. c The sending period for service packets; When the transit node is an intermediate node, the time slot for the service packet to arrive at the intermediate node is: ; in, Adjacent nodes Propagation delay between links, The service group leaves the time slot corresponding to the previous transit node. When the previous transit node is the ingress node... When the previous node passed through is an intermediate node, ; hour, ; The time slot corresponding to the departure of the service packet from the intermediate node is: ; in, Grouping services at intermediate nodes Waiting delay in the middle; When the transit node is an exit node, the time slot for the service packet to arrive at the exit node is: ; The time slot corresponding to the departure of the service packet from the egress node is: ; in, ; Among them, waiting delay The selection satisfies: , For business Delay budgeting in deterministic networks.
[0042] Figure 5 This is a schematic diagram of a node time slot mapping relationship provided in an embodiment of the present invention. The time slots corresponding to the service packets at the ingress node, intermediate node, and egress node are as follows: For entry nodes, such as Figure 5 As shown in process ①, the time slot for the service packet to arrive at the ingress node is: ,in This indicates the time slot number corresponding to the arrival of the packet of this service at the entry node in a certain planning period (the time slot number is expressed in terms of...). (repeated periodically) Indicates the first Each business group (i.e., group number, and named accordingly) It is a periodic repetition, in which (Represents the least common multiple). For example... Figure 5 As shown in process ②, the time slot corresponding to the service packet leaving the ingress node is: ,in This indicates the waiting time of a packet in the ingress node (i.e., the waiting time for the transmission period allocated to the packet to arrive). This indicates rounding up to the nearest integer.
[0043] For intermediate nodes, such as Figure 5 As shown in process ③, the time slot for the group to reach the first intermediate node is: ,in This refers to the link propagation delay between the ingress node and the first intermediate node. During subsequent forwarding, the intermediate node can parse the intra-domain service number and packet sequence number from the packet header and query the forwarding table to determine the transmission time slot. For example... Figure 5 As shown in process ④, the time slot corresponding to the group leaving the node is: ,in This represents the waiting delay for packets within this node. In fact, the journey from the network ingress to the egress involves multiple hops, and subsequent nodes are processed in the same way. The time slot corresponding to their departure from the node can be represented as: ,in Indicates adjacent nodes Link transmission delay between Indicates intermediate nodes The waiting delay in the process.
[0044] For the egress node, arriving packets can be shaped according to the transmission cycle to ensure jitter requirements are met. For example... Figure 5 As shown in step ⑤, the time slot for the service packet to arrive at the egress node is: .like Figure 5 As shown in step ⑥, the time slot corresponding to the group leaving the exit node is ,in .
[0045] For intra-node waiting delay The selection needs to meet the following conditions: ,in Indicates business Delay budgeting in deterministic networks. Due to The selection of values is an optimization problem, which will not be discussed in detail in this embodiment. Subsequently, based on the time slots corresponding to the arrival and departure of service packets from all transit nodes, a time slot mapping function is constructed. For example, a mapping relationship can be established between the arrival time slot and departure time slot of each transit node, resulting in multiple time slot mapping functions, the number of which is the same as the number of transit nodes. Afterwards, the orchestrator can distribute the transmission period, time slot mapping functions, and intra-domain service numbers to the forwarding nodes along the route.
[0046] S140. Establish a forwarding table based on the transmission period, time slot mapping function, and intra-domain service number.
[0047] The forwarding table can describe the transmission slot number corresponding to the packets arriving in each cycle of the service.
[0048] In this embodiment, each node can establish a forwarding table based on the received transmission period, time slot mapping function, and intra-domain service number.
[0049] Understandably, the orchestrator can also send the transmission period, time slot mapping function, and intra-domain service number to each node, enabling each node to build a forwarding table locally.
[0050] S150. The forwarding table is sent to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network.
[0051] In this embodiment, a forwarding table can be sent to each node so that each node forwards service packets based on the forwarding table when the service packets arrive at the CSQF network. For example, when a service packet arrives at the CSQF network, the ingress node writes "internal service number + packet sequence number" in the packet header, then queries the forwarding table based on the packet sequence number to determine the transmission time slot. Subsequent nodes parse the internal service number and packet sequence number and forward the packet by looking up the table until it leaves the CSQF network.
[0052] This invention provides a time slot planning method for a CSQF network, comprising: setting a fixed planning period for all nodes in the CSQF network to queue and forward data for a specified period; generating intra-domain service numbers for services and determining the transmission period and transmission path of each service packet in the service; performing time slot planning based on the planning period, the service period, transmission period, and transmission path of each service packet to obtain a time slot mapping function for each service packet; establishing a forwarding table based on the transmission period, the time slot mapping function, and the intra-domain service number; and sending the forwarding table to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network. This method can reduce engineering implementation complexity while ensuring resource utilization, and solves the problems of uncontrollable end-to-end latency and jitter caused by frequent changes in the time slot planning method in the prior art due to the frequent changes in the super-period.
[0053] Based on the above embodiments, modified embodiments of the above embodiments are proposed. It should be noted that, in order to keep the description brief, only the differences from the above embodiments are described in the modified embodiments.
[0054] In one embodiment, the method further includes: when each node forwards the service packet based on the forwarding table, if the amount of data in the circular queue allocated to the transmission time slot where the service packet is located is less than the total capacity of the transmission time slot, then the data in the best-effort stream queue is transmitted in the spare time slot of the transmission time slot.
[0055] In this embodiment, each service packet is assigned to a circular queue of the corresponding transmission time slot. If the amount of data in the circular queue is less than the total capacity of the transmission time slot, data in the best-effort stream queue can be transmitted in the spare time slot of that transmission time slot, thereby preventing resource waste. For example, a node can monitor the amount of data in the circular queue that is currently being transmitted. If it is less than the total capacity of the time slot (each circular queue corresponds to one time slot), the transmission selection module allows the BE stream queue to transmit data until the time slot expires after its data transmission is completed, thereby solving the problem of decreased resource utilization caused by idle periods. Figure 6 This is a schematic diagram of a queue structure within a CSQF network node provided in an embodiment of the present invention, as shown below. Figure 6 As shown, the CSQF network node internally adopts the following... Figure 6The queue structure shown includes M circular queues for services with strict latency and jitter requirements, employing the CSQF mechanism to ensure deterministic forwarding; and BE stream queues for traditional best-effort services, using a first-in-first-out forwarding method. Due to the redundancy of the transmission cycle, services may not have packets to be sent in every transmission cycle (i.e., idle cycles). These idle cycles are filled with BE packets, and the transmission selection module can determine whether to send service packets from the circular queues or the BE queues.
[0056] By using this solution, the planning cycle can be greatly compressed. For example, when the business cycle is 13, 15, 17, or 19 cycles, the planning span of the existing super-cycle solution is 13 × 15 × 17 × 19 = 62,985 cycles, while the planning span of this embodiment can be reduced by several orders of magnitude, such as 32 cycles.
[0057] Example 2 Figure 7 This is a schematic diagram of a time slot planning device for a CSQF network provided in Embodiment 2 of the present invention. The device is applicable to planning transmission time slots for services that need to be transmitted in the network. The device can be implemented by software and / or hardware and is generally integrated on an electronic device.
[0058] like Figure 7 As shown, the device includes: The configuration module 210 is used to set a fixed planning period for all nodes in the CSQF network for queuing and forwarding within a specified period. The generation module 220 is used to generate intra-domain service numbers for services and determine the transmission period and transmission path of each service group in the service; The planning module 230 is used to perform time slot planning based on the planning period, the service period, the transmission period and the transmission path of each service group, and to obtain the time slot mapping function of each service group; Module 240 is used to establish a forwarding table based on the transmission period, the time slot mapping function, and the intra-domain service number. The forwarding module 250 is used to send the forwarding table to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network.
[0059] This embodiment provides a time slot planning device for a CSQF network, comprising: a setting module for setting a fixed planning period for all nodes in the CSQF network to queue and forward data at a specified period; a generation module for generating intra-domain service numbers for services and determining the transmission period and transmission path of each service packet in the service; a planning module for performing time slot planning based on the planning period, the service period of each service packet, the transmission period, and the transmission path to obtain a time slot mapping function for each service packet; an establishment module for establishing a forwarding table based on the transmission period, the time slot mapping function, and the intra-domain service number; and a forwarding module for sending the forwarding table to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network. This device can reduce engineering implementation complexity while ensuring resource utilization, and solves the problems of uncontrollable end-to-end latency and jitter caused by frequent changes in the super-period in existing time slot planning methods.
[0060] Furthermore, the generation module 220 includes: For each service group, when the service period of the service group is not greater than the planning period, a factor not exceeding the service period is selected from the factors of the planning period and used as the transmission period of the service group. When the service period of the service packet is longer than the planning period, the planning period shall be used as the transmission period of the service packet.
[0061] Furthermore, planning module 230 includes: For each service packet, the path nodes of the service packet are determined based on the transmission path of the service packet. The path nodes include an ingress node, an egress node, and zero or more intermediate nodes. Based on the planning period, the service period and transmission period of the service group, and the waiting delay of the service group at the transit node, the time slot mapping function of each service group is determined.
[0062] Furthermore, determining the time slot mapping function for each service packet based on the planning period, the service period and transmission period of the service packet, and the waiting delay of the service packet at the transit node includes: When the transit node is an entry node, the time slot for the service packet to arrive at the transit node is determined according to the planning period and the service period of the service packet. Based on the waiting delay of the service packet at the transit node and the time slot, the time slot corresponding to the departure of the service packet from the transit node is determined. When the transit node is an intermediate node or an exit node, the time slot for the service packet to arrive at the transit node is determined based on the link propagation delay between the transit node and the previous transit node, and the time slot corresponding to the service packet leaving the previous transit node. The time slot corresponding to the service packet leaving the transit node is determined based on the waiting delay of the service packet at the transit node and the time slot. Based on the time slots corresponding to all the nodes the service packet arrives at and leaves through, construct the time slot mapping function for the service packet.
[0063] Furthermore, when the transit node is an ingress node, the time slot for the service packet to arrive at the ingress node is: ; in, This refers to the time slot number corresponding to the arrival of a business group at the entry node within a certain planning cycle. This refers to the group number for the business group. Business cycles grouped by business, For the planning cycle; The time slot corresponding to the service packet leaving the ingress node is: ; in, The waiting latency for business groups at the entry node. Indicates rounding up. c The sending cycle for service packets.
[0064] Furthermore, when the transit node is an intermediate node, the time slot for the service packet to arrive at the intermediate node is: ; in, Adjacent nodes Propagation delay between links, The service group leaves the time slot corresponding to the previous transit node. When the previous transit node is the ingress node... When the previous node passed through is an intermediate node, ; The time slot corresponding to the departure of the service packet from the intermediate node is: ; in, Grouping services at intermediate nodes Waiting delay in the middle; When the transit node is an exit node, the time slot for the service packet to arrive at the exit node is: ; The time slot corresponding to the departure of the service packet from the egress node is: ; in, ; Among them, waiting delay The selection satisfies: , For business Delay budgeting in deterministic networks.
[0065] Furthermore, the device also includes: When each node forwards the service packet based on the forwarding table, if the amount of data in the circular queue allocated to the transmission time slot where the service packet is located is less than the total capacity of the transmission time slot, then the data in the best-effort stream queue is transmitted in the spare time slot of the transmission time slot.
[0066] The time slot planning device for the CSQF network described above can execute the time slot planning method for the CSQF network provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the method.
[0067] Example 3 Figure 8 A schematic diagram of an electronic device 10, which can be used to implement embodiments of the present invention, is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0068] like Figure 8 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0069] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0070] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as the time slot planning method for CSQF networks.
[0071] In some embodiments, the time slot planning method for a CSQF network may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the time slot planning method for a CSQF network described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to execute the time slot planning method for a CSQF network by any other suitable means (e.g., by means of firmware).
[0072] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0073] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0074] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0075] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0076] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0077] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0078] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0079] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A time slot planning method for a CSQF network, characterized in that, The method includes: Set a fixed planning period for queuing forwarding of all nodes in the CSQF network for a specified period; Generate intra-domain service numbers for the service, and determine the transmission period and transmission path of each service packet in the service; Based on the planning period, the service period, transmission period and transmission path of each service group, time slot planning is performed to obtain the time slot mapping function of each service group; A forwarding table is established based on the transmission period, the time slot mapping function, and the intra-domain service number; The forwarding table is sent to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network.
2. The method according to claim 1, characterized in that, Determining the transmission period of each service packet in the service includes: For each service group, when the service period of the service group is not greater than the planning period, a factor not exceeding the service period is selected from the factors of the planning period and used as the transmission period of the service group. When the service period of the service packet is longer than the planning period, the planning period shall be used as the transmission period of the service packet.
3. The method according to claim 1, characterized in that, The time slot planning based on the planning period, the service period, transmission period, and transmission path of each service group, to obtain the time slot mapping function for each service group, includes: For each service packet, the path nodes of the service packet are determined based on the transmission path of the service packet. The path nodes include an ingress node, an egress node, and zero or more intermediate nodes. Based on the planning period, the service period and transmission period of the service group, and the waiting delay of the service group at the transit node, the time slot mapping function of each service group is determined.
4. The method according to claim 3, characterized in that, The step of determining the time slot mapping function for each service packet based on the planning period, the service period and transmission period of the service packet, and the waiting delay of the service packet at the transit node includes: When the transit node is an entry node, the time slot for the service packet to arrive at the transit node is determined according to the planning period and the service period of the service packet. Based on the waiting delay of the service packet at the transit node and the time slot, the time slot corresponding to the departure of the service packet from the transit node is determined. When the transit node is an intermediate node or an exit node, the time slot for the service packet to arrive at the transit node is determined based on the link propagation delay between the transit node and the previous transit node, and the time slot corresponding to the service packet leaving the previous transit node. The time slot corresponding to the service packet leaving the transit node is determined based on the waiting delay of the service packet at the transit node and the time slot. Based on the time slots corresponding to all the nodes the service packet arrives at and leaves through, construct the time slot mapping function for the service packet.
5. The method according to claim 4, characterized in that, When the transit node is an ingress node, the time slot for the service packet to arrive at the ingress node is: ; in, This refers to the time slot number corresponding to the arrival of a business group at the entry node within a certain planning cycle. This refers to the group number for the business group. Business cycles grouped by business, For the planning cycle; The time slot corresponding to the service packet leaving the ingress node is: ; in, The waiting latency for business groups at the entry node. Indicates rounding up. c The sending cycle for service packets.
6. The method according to claim 5, characterized in that, When the transit node is an intermediate node, the time slot for the service packet to arrive at the intermediate node is: ; in, Adjacent nodes Propagation delay between links, The service group leaves the time slot corresponding to the previous transit node. When the previous transit node is the ingress node... When the previous node passed through is an intermediate node, ; The time slot corresponding to the departure of the service packet from the intermediate node is: ; in, Grouping services at intermediate nodes Waiting delay in the middle; When the transit node is an exit node, the time slot for the service packet to arrive at the exit node is: ; The time slot corresponding to the departure of the service packet from the egress node is: ; in, ; Among them, waiting delay The selection satisfies: , For business Delay budgeting in deterministic networks.
7. The method according to claim 1, characterized in that, The method further includes: When each node forwards the service packet based on the forwarding table, if the amount of data in the circular queue allocated to the transmission time slot where the service packet is located is less than the total capacity of the transmission time slot, then the data in the best-effort stream queue is transmitted in the spare time slot of the transmission time slot.
8. A time slot planning device for a CSQF network, characterized in that, The device includes: The configuration module is used to set a fixed planning period for all nodes in the CSQF network for queuing and forwarding within a specified period. The generation module is used to generate intra-domain service numbers for services and determine the transmission period and transmission path of each service group in the service. The planning module is used to perform time slot planning based on the planning period, the service period, the transmission period and the transmission path of each service group, and to obtain the time slot mapping function of each service group; A module is established to create a forwarding table based on the transmission period, the time slot mapping function, and the intra-domain service number. The forwarding module is used to send the forwarding table to each node so that each node forwards the service packet based on the forwarding table when the service packet arrives at the CSQF network.
9. An electronic device, characterized in that, The device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the time slot planning method for the CSQF network according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the time slot planning method for the CSQF network according to any one of claims 1-7.