A data transmission method, device and equipment based on cyclic queue cluster forwarding

By extending the circular queue forwarding mechanism into an odd-even queue cluster and utilizing a time slot label queue mapping table and a cross-domain deterministic scheduling algorithm, the problem of cross-domain deterministic transmission in large-scale networks is solved, achieving long-distance and low-latency transmission of data packets.

CN115733808BActive Publication Date: 2025-10-24BEIJING JIAOTONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211424742.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-14
Publication Date
2025-10-24
Estimated Expiration
2042-11-14

AI Technical Summary

Technical Problem

In existing technologies, the circular queue forwarding mechanism can only achieve deterministic transmission in small-scale networks and cannot achieve data transmission over long link distances between nodes. As a result, in large-scale networks, it is impossible to guarantee that data packets will arrive at the receiving node from the sending node within the sending time slot.

Method used

By extending the circular queue forwarding mechanism into an even/odd queue cluster, and utilizing a pre-planned time slot label queue mapping table and a cross-domain deterministic scheduling algorithm, data packets are buffered and sent in the even/odd queue cluster, ensuring that data packets are transmitted in order of queue priority.

Benefits of technology

It solves the problem of deterministic cross-domain transmission in large-scale networks, reduces the complexity of data transmission scheduling, and enables long-distance transmission of data packets, ensuring determinism and low latency in data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115733808B_ABST
    Figure CN115733808B_ABST
Patent Text Reader

Abstract

The application provides a data transmission method, device and equipment based on cyclic queue cluster forwarding, which comprises the following steps: when a switch detects a to-be-transmitted data packet, the to-be-transmitted data packet is parsed to obtain a parsing result; a time slot label queue mapping table planned in advance is acquired, mapping matching is performed, a forwarding queue and a forwarding time slot of the to-be-transmitted data packet are determined, and the to-be-transmitted data packet is mapped and queued; the to-be-transmitted data packet is cached in a corresponding odd queue cluster or even queue cluster through a cyclic queue cluster mechanism; and the cached to-be-transmitted data packet is transmitted based on the queue priority order in the queue cluster. Through the data transmission method, device and equipment based on cyclic queue cluster forwarding provided by the application, the to-be-transmitted data packet is cached in the odd queue cluster and the even queue cluster, and is transmitted according to the priority order of the queue, thereby solving the problem of cross-domain deterministic transmission in a large-scale network and reducing the complexity of data deterministic scheduling.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of network equipment, in particular to a data transmission method, device and equipment based on cyclic queue cluster forwarding. BACKGROUND

[0002] With the development of new generation information communication technologies such as Internet of Things and 5G communication, the transformation and upgrading of traditional industries have also accelerated. In intelligent manufacturing, real-time control, edge computing and digital twin application scenarios have very strict requirements for low latency, low jitter and high reliability transmission. Time Sensitive Network (TSN) takes traditional Ethernet as the network foundation, and provides deterministic data transmission capability through clock synchronization, data scheduling, network configuration and other mechanisms. Time Sensitive Network uses Precise Time Protocol (PTP) for time synchronization, and combines shaping mechanism, frame preemption and other technologies to realize deterministic transmission of traffic.

[0003] In the prior art, the Cyclic Queuing and Forwarding (CQF) mechanism controls the time when the Time-Triggered Flow (TT flow) enters the cache queue through the time gate control in the Per Stream Filtering and Policing (PSFP) mechanism, and controls the time when the TT flow leaves the queue by using the output gate control mechanism (Gate Control List, GCL) in the TAS (Time Aware Shaper) mechanism. However, this method can only realize deterministic transmission in a small-scale network, and cannot realize data transmission between nodes with long link distance. SUMMARY

[0004] Therefore, the technical problem to be solved by the present application is to overcome the defect that the prior art can only realize deterministic transmission in a small-scale network and cannot realize data transmission between nodes with long link distance, so as to provide a data transmission method, device and equipment based on cyclic queue cluster forwarding.

[0005] According to a first aspect, the present application provides a data transmission method based on cyclic queue cluster forwarding, comprising:

[0006] When the switch detects a to-be-transmitted data packet, the to-be-transmitted data packet is parsed to obtain a parsing result, and the parsing result includes a time slot label of the to-be-transmitted data packet;

[0007] obtain a pre-planned time slot tag queue mapping table, and perform mapping matching on the time slot tag based on the time slot tag and the time slot tag queue mapping table to determine a forwarding queue and a forwarding time slot of the to-be-transmitted data packet, and perform mapping enqueuing on the to-be-transmitted data packet;

[0008] based on the forwarding time slot and the mapping enqueuing result, cache the to-be-transmitted data packet into a corresponding odd queue cluster or even queue cluster through a circular queue cluster mechanism;

[0009] based on a queue priority order in the queue cluster, transmit the cached to-be-transmitted data packet.

[0010] In an embodiment, before obtaining the pre-planned time slot tag queue mapping table, the method further comprises:

[0011] determine the time slot tag queue mapping table by using a circular queue cluster forwarding cross-domain deterministic scheduling algorithm.

[0012] In an embodiment, the method further comprises:

[0013] set a gating period and a time slot of the circular queue forwarding mechanism and the circular queue cluster forwarding mechanism, and establish a cross-domain network time slot and period mathematical model;

[0014] design a constraint condition of the circular queue cluster forwarding mechanism, and design a circular queue cluster cross-domain deterministic scheduling algorithm according to the constraint condition.

[0015] In an embodiment, the caching the to-be-transmitted data packet into a corresponding odd queue cluster or even queue cluster through a circular queue cluster mechanism comprises:

[0016] parse a field of the to-be-transmitted data packet, and determine whether the to-be-transmitted data packet is a time-triggered flow;

[0017] according to the determination result, determine a cache queue corresponding to the to-be-transmitted data packet.

[0018] In an embodiment, the method further comprises:

[0019] perform cross-domain transmission on the to-be-transmitted data packet from the circular queue forwarding mechanism in the access network to the circular queue cluster forwarding mechanism in the core network;

[0020] in the core network, perform long-distance transmission on the to-be-transmitted data packet through the circular queue cluster forwarding mechanism;

[0021] perform cross-domain transmission on the to-be-transmitted data packet from the circular queue cluster forwarding mechanism in the core network to the circular queue forwarding mechanism in the access network.

[0022] In an embodiment, the forwarding time slot size of the cyclic queue forwarding mechanism is consistent with the forwarding time slot size of the cyclic queue cluster forwarding mechanism.

[0023] According to a second aspect, the present application provides a data transmission device based on cyclic queue cluster forwarding, comprising:

[0024] An input analysis module is configured to analyze a to-be-transmitted data packet when the switch detects the to-be-transmitted data packet, and obtain an analysis result, wherein the analysis result comprises a time slot label of the to-be-transmitted data packet;

[0025] A mapping matching module is configured to obtain a pre-planned time slot label queue mapping table, and perform mapping matching on the time slot label based on the time slot label and the time slot label queue mapping table, to determine a forwarding queue and a forwarding time slot of the to-be-transmitted data packet, and perform mapping and queuing of the to-be-transmitted data packet;

[0026] A queue caching module is configured to cache the to-be-transmitted data packet in the time triggered flow into a corresponding odd queue cluster or even queue cluster based on the forwarding time slot and the mapping and queuing result through a cyclic queue cluster mechanism;

[0027] An output forwarding module is configured to send the cached to-be-transmitted data packet based on a queue priority order in the queue cluster.

[0028] According to a third aspect, the present application provides a computer device, comprising a memory and a processor, which are communicatively connected with each other, and the memory stores computer instructions, and the processor executes the computer instructions to perform the data transmission method based on cyclic queue cluster forwarding according to any one of the first aspect and the optional embodiments thereof.

[0029] According to a fourth aspect, the present application provides a computer readable storage medium, which stores computer instructions for causing the computer to execute the data transmission method based on cyclic queue cluster forwarding according to any one of the first aspect and the optional embodiments thereof.

[0030] The technical scheme of the present application has the following advantages:

[0031] The embodiment of the present application provides a data transmission method based on cyclic queue cluster forwarding, which maps and queues the to-be-transmitted data packet according to the analysis result of the to-be-transmitted data packet, expands each queue into a group of queue clusters on the basis of the original two odd-even priority queues of the cyclic queue forwarding mechanism in the time sensitive network, caches the to-be-transmitted data packet through the odd queue cluster and the even queue cluster, and sends the to-be-transmitted data packet according to the priority order of the queues in the queue cluster, thereby solving the problem of cross-domain deterministic transmission in a large-scale network and reducing the complexity of data transmission scheduling. BRIEF DESCRIPTION OF THE DRAWINGS

[0032] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the specific embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0033] Figure 1 This is a schematic diagram of the CQF shaping mechanism proposed in an embodiment of the present invention;

[0034] Figure 2 This is a schematic diagram of the CSQF shaping mechanism proposed in an embodiment of the present invention;

[0035] Figure 3 Schematic diagram of CSQF time slot forwarding proposed in an embodiment of the present invention;

[0036] Figure 4 This is a schematic diagram of the DIP shaping mechanism proposed in an embodiment of the present invention;

[0037] Figure 5 This is an example diagram of cross-domain transmission of the CQF and DIP mechanisms proposed in an embodiment of the present invention;

[0038] Figure 6 This is a flow chart of a data transmission method based on circular queue cluster forwarding proposed in an embodiment of the present invention;

[0039] Figure 7 This is a structural diagram of the cross-domain deterministic traffic shaping mechanism CQCF proposed in an embodiment of the present invention;

[0040] Figure 8 2 is a schematic diagram of cross-domain transmission from CQF to CQCF during time slot Cycle 1 proposed in an embodiment of the present invention;

[0041] Figure 9 2 is a schematic diagram of cross-domain transmission from CQF to CQCF during time slot Cycle 2 proposed in an embodiment of the present invention;

[0042] Figure 10 2 is a schematic diagram of cross-domain transmission from CQF to CQCF during time slot Cycle 3 proposed in an embodiment of the present invention;

[0043] Figure 11 Schematic diagram of cross-domain transmission from CQF to CQCF during time slot Cycle 4 proposed in an embodiment of the present invention;

[0044] Figure 12 Schematic diagram of cross-domain transmission between CQCFs during time slots Cycle 1 and Cycle 2 proposed in an embodiment of the present invention;

[0045] Figure 13 is a cross-domain transmission schematic diagram of CQCF between Cycle3 and Cycle4 time slots proposed by an embodiment of the present application;

[0046] Figure 14 is a cross-domain transmission schematic diagram of CQCF to CQF in Cycle1 time slot proposed by an embodiment of the present application;

[0047] Figure 15 is an example diagram of data forwarding time slot combining CQF and CQCF mechanisms proposed by an embodiment of the present application;

[0048] Figure 16 is a structural block diagram of a data transmission method and device based on cyclic queue cluster forwarding proposed by an embodiment of the present application;

[0049] Figure 17 is a hardware structure schematic diagram of a computer device proposed by an embodiment of the present application. DETAILED DESCRIPTION

[0050] The technical solutions of the present application will be described clearly and completely below with reference to the drawings. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the protection scope of the present application.

[0051] At present, in intelligent manufacturing, real-time control, edge computing and digital twin application scenarios have very strict requirements for low latency, low jitter and high reliability transmission. However, the traditional Best Effort Ethernet cannot meet the increasingly strict network requirements. Time-sensitive network processes L2 layer data. For the problem of deterministic transmission of traffic in large-scale network, routing and forwarding technology for L3 layer needs to be added, so IETF establishes deterministic network DetNet working group. However, when large-scale deterministic network transmission is carried out, the problems of difficult cross-domain transmission mode, complex traffic planning and scheduling, etc. make deterministic network DetNet unable to fully utilize network resources and reduce TT flow scheduling rate.

[0052] In the prior art I, as Figure 1As shown, in the T1 time slot, the PSFP will control the time-sensitive TT flow to be stored in the priority queue 7, and the sending gate of the queue in the GCL is closed, so the TT flow will be buffered in the priority queue 7, and for the priority queue 6, the PSFP gate makes the queue unable to buffer network traffic, and the sending gate of the queue in the GCL is open, and the network traffic in the queue 6 will be sent; in the T2 time slot, the priority queue 7 and the priority queue 6 change state, the priority queue 7 will not allow reception, but allow sending, and the priority queue 6 will allow reception, but not occur; at T3, the states of queues 7 and 6 change to the states in time slot T1. The CQF mechanism has at least two odd and even queues, and uses the ping-pong queue forwarding mode for sending and receiving, so that the time delay of each flow can be specific, and the time delay size is only related to the size of the scheduled transmission time slot and the network hop number.

[0053] However, the prior art one can realize deterministic transmission of small-scale networks. But in large-scale networks, the link distance between each node in the core network is too long, so that the data packet in the CQF mechanism cannot reach the receiving node from the sending node within the sending time slot, so the deterministic transmission cannot be guaranteed, and therefore CQF is not suitable for deterministic transmission in large-scale networks.

[0054] In prior art two, a cross-domain traffic shaping mechanism (Cyclic Specified Queuing and Forwarding, CSQF) is proposed on the basis of CQF. CSQF adds additional queues to the CQF odd and even priority queues to store and forward network traffic. As shown in Figure 2 As shown, after the data packet enters the switch, it is parsed, corresponding to the switching equipment in CQF, traffic priority filtering and PSFP, and then according to the time slot planned in advance, the data packet enters the corresponding priority queue for transmission.

[0055] CSQF is a deterministic transmission mechanism proposed by IETF in DetNet, which adds a source routing-based deterministic routing and forwarding. CSQF plans all nodes on the way of data packet forwarding and the corresponding forwarding time slots in advance, and marks them on the packet header. When the data packet is forwarded, the node reads the time slot label corresponding to the node in the data packet header, and selects the queue according to the time slot for queuing, so as to complete the deterministic transmission of the flow. As shown in Figure 3 As shown, the data packet has determined the forwarding path and the time slot of the corresponding nodes on the path before transmission, and can be transmitted deterministically according to the result of the pre-planned forwarding.

[0056] However, the prior art two provides a new idea for large-scale network deterministic transmission by introducing multiple queues. The existence of cache queues makes the traffic shaping mechanism no longer need network time synchronization, thereby reducing the difficulty of implementing deterministic transmission. But data packets need to be forwarded according to the time slot label in SPL (Specified Cycle List). Since CSQF uses source routing, that is, the data packet header displays the data packet forwarding node and time slot, the path and time slot information in SPL cannot be changed during traffic transmission. Once there is a sudden situation such as traffic congestion or node downtime in the network, the node cannot normally forward data packets, thereby failing to complete deterministic transmission.

[0057] In the prior art three, a deterministic network technology DIP is proposed, which can realize large-scale network deterministic transmission. DIP also uses multiple queues, defaulting to three queues, and performs traffic forwarding through segment routing (SR). Segment routing SR marks the data packet sending time slot as SID. When the data packet enters the queue, DIP will map the SID to the sending time slot in the next hop node of the data packet through the cycle mapping table. When the data packet reaches the next hop node, it will enter the corresponding forwarding queue according to the current SID. That is, DIP needs to enter the queue through cycle mapping, and constantly change the time slot label for forwarding, and finally complete deterministic transmission. As shown in Figure 4 According to the time slot of the data packet entering the queue, DIP will cache the data packet to the sending queue of time slot x+2. DIP node will extract the time slot label of the data packet, and through the cycle mapping table, the data packet will be delivered to the queue of time slot x+2, and forwarded at time slot x+2.

[0058] However, the method of segment routing adopted by the prior art three realizes data plane routing programmable. When forwarding data packets, only the source and destination nodes of a certain segment of the transmission path need to be determined, without determining the explicit path, thereby ensuring the reliability of deterministic transmission. However, the process of DIP in cross-domain transmission with traditional TSN mechanism is very complex, as shown in Figure 5 Due to the time synchronization, additional compensation is needed for the time difference between different gate cycles when cross-domain transmission, that is, Figure 5hco in the DIP. Since the transmission time slot Cycle of the DIP is different from that of the CQF, the traffic needs to be calculated according to different Cycle when transmitted across domains, which increases the difficulty of scheduling. In addition, due to the difference in time slots and traffic shaping methods, the traffic needs to be re-planned when entering different domains. That is, after the first domain is scheduled, the second domain of the path needs to be scheduled according to the result of the first domain, and after the second domain is scheduled, the subsequent domain can be scheduled. Such a time slot scheduling scheme obviously reduces the resource utilization and increases the execution time of the algorithm.

[0059] In order to realize traffic transmission, an embodiment of the present application provides a data transmission method based on cyclic queue cluster forwarding, as shown in the figure. Figure 6 The method comprises the following steps S101 to S104.

[0060] Step S101: When the switch detects a to-be-transmitted data packet, the to-be-transmitted data packet is parsed to obtain a parsing result, and the parsing result comprises a time slot label of the to-be-transmitted data packet.

[0061] In the embodiment of the present application, after the to-be-transmitted data packet enters the switching node, the switch can detect the to-be-transmitted data packet, parse the data packet through the built-in parsing module of the switch, and extract the traffic information of the to-be-transmitted data packet message header. The parsing result comprises traffic priority, data packet size, etc. For the to-be-transmitted data packet in the time triggered flow, the parsing result further comprises a time slot label for forwarding the data packet.

[0062] Step S102: Obtain a pre-planned time slot label queue mapping table, and perform mapping matching on the time slot label based on the time slot label and the time slot label queue mapping table to determine the forwarding queue and the forwarding time slot of the to-be-transmitted data packet, and perform mapping and queuing of the to-be-transmitted data packet.

[0063] In the embodiment of the present application, the forwarding queue of the to-be-transmitted data packet is determined according to the time slot label in the parsing result through the pre-planned time slot label queue mapping table inside the switch, wherein the time slot label queue mapping table stores the correspondence between the time slot label and the queue; the time slot label of the to-be-transmitted data packet is updated through the pre-planned queue sending time slot mapping table inside the switch. The data packet is mapped in time slot and queue through the mapping module, wherein the mapping module comprises a priority mapping table, a time slot mapping table and a queue mapping table.

[0064] Step S103: Based on the forwarding time slot and the mapping and queuing result, the to-be-transmitted data packet is cached into the corresponding odd queue cluster or even queue cluster through the cyclic queue cluster mechanism.

[0065] In this embodiment of the present invention, a circular queue clustering mechanism expands the odd and even queues into odd and even queue clusters, using the same time slot size as the circular queue mechanism. Each queue cluster has the same number of queues, which must be greater than or equal to two. Based on the forwarding time slot and the cache queues mapped to the packets to be transmitted, packets to be transmitted are cached in the corresponding clusters to complete the enqueue operation, thereby ensuring the upper and lower bounds of the traffic transmission experiment and achieving deterministic traffic transmission.

[0066] Step S104: sending the buffered data packets to be transmitted based on the queue priority order in the queue cluster.

[0067] In the embodiment of the present invention, due to the circular queue cluster mechanism, each queue cluster contains multiple queues, such as Figure 7 As shown, during the initial time slot change, the system does not switch directly from one queue cluster to another. Instead, it switches from the current queue to the next queue within the queue cluster according to the queue priority order. Therefore, the queue priority order within the queue cluster is determined, and packets to be transmitted are sent in this order, achieving deterministic traffic transmission.

[0068] It should be noted that when the odd-queue cluster sends data packets to be transmitted, the even-queue cluster can only receive data packets to be transmitted, and vice versa.

[0069] The circular queue cluster mechanism achieves long-distance transmission of data packets by extending the end-to-end forwarding time of data packets. At the same time, it uses the same time slots as the circular queue forwarding mechanism, solving the problem of difficult joint planning due to the inability to match time slots of different mechanisms.

[0070] Through the above embodiment, by mapping the data packets to be transmitted into a queue according to the analysis results of the data packets to be transmitted, each queue is expanded into a group of queue clusters on the basis of the original two odd-even priority queues of the circular queue forwarding mechanism in the time-sensitive network, and the data packets to be transmitted are cached by the odd queue cluster and the even queue cluster, and are sent according to the priority order of the queues in the queue cluster, thereby solving the problem of cross-domain deterministic transmission in large-scale networks and reducing the complexity of data transmission scheduling.

[0071] Specifically, in one embodiment, the data transmission method based on circular queue cluster forwarding provided by the embodiment of the present invention further includes the following steps:

[0072] Step S201: using a round-robin queue cluster forwarding cross-domain deterministic scheduling algorithm to determine a time slot label queue mapping table.

[0073] In the embodiment of the present application, in the process of network traffic transmission across domains, in order to avoid a large amount of traffic entering the switch at the same time, resulting in packet loss, the network traffic needs to be time-slot offset processed, and a cross-domain deterministic scheduling algorithm based on a greedy algorithm is used, compared with scheduling algorithms with inconsistent time-slot sizes, the scheduling feasibility is improved, and the network bandwidth resource utilization rate is saved.

[0074] The scheduling algorithm generates the sending time slot and the queue relationship of the data packet, and the switch controller generates a time slot tag queue mapping table and a queue sending time slot mapping table according to the algorithm result.

[0075] Specifically, in an embodiment, the data transmission method based on the cyclic queue cluster forwarding provided by the embodiment of the present application further includes the following steps:

[0076] Step S2011: setting the gating period and time slot of the cyclic queue forwarding mechanism and the cyclic queue cluster forwarding mechanism, and establishing a cross-domain network time slot and period mathematical model.

[0077] Step S2012: designing the constraint condition of the cyclic queue cluster forwarding mechanism, and designing a cyclic queue cluster cross-domain deterministic scheduling algorithm according to the constraint condition.

[0078] In the embodiment of the present application, the gating period and time slot of the cyclic queue forwarding mechanism and the cyclic queue cluster forwarding mechanism are set to be consistent, the CQF mechanism constraint condition is expanded, and the CQCF mechanism constraint is designed. A mathematical model is established according to the constraint condition, an optimization problem is established through the mathematical model, a heuristic algorithm is used to solve the optimal scheduling result, and TT flow planning scheduling is realized.

[0079] First, a large-scale network cross-domain transmission time slot and period mathematical model is established. In the access network, the traffic is divided into two categories: intra-domain traffic and cross-domain traffic. Therefore, the gating period of the cyclic queue forwarding mechanism carried in the access network is the least common multiple of the intra-domain traffic and the cross-domain traffic period. In the core network, only cross-domain traffic exists, so the gating period of the CQCF carried in the core network is the least common multiple of all cross-domain traffic periods. Since the traffic in the access network includes the traffic in the core network, according to the least common multiple calculation definition, the gating period of the CQCF mechanism is a factor of the gating period of the CQF mechanism. The gating period of the CQCF is defined as the size of the gating period of the CQF. Since a single gating period contains the forwarding of all TT flows, repeating the gating period of the CQCF by an integer multiple will not affect the planning and scheduling of network traffic.

[0080] In the time sensitive network, time division multiplexing (TDM) is used to divide the traffic transmission time into time segments, and the value of the transmission time slot is in a range. The minimum time slot needs to meet the traffic transmission from the upstream node to the downstream node, and the maximum time slot is the greatest common divisor of all traffic. Therefore, the maximum time slot of the CQF is the greatest common divisor of the domain traffic and the cross-domain traffic period, and the maximum time slot of the CQCF is the greatest common divisor of the cross-domain traffic period. Since the traffic in the access network includes the core network traffic, the maximum time slot of the CQCF is a multiple of the maximum time slot of the CQF. It is defined that the time slot of the CQCF is divided into a plurality of CQF time slots, and the CQF time slot is selected as the minimum unit standard.

[0081] In summary, based on the CQF mechanism, the gating period of the CQCF is expanded to n times of the original gating period, and the time slot is reduced to 1 / m of the original time slot, and n and m are positive integers. At the same time, the number of queues in the CQCF queue cluster needs to be set to m. The gating period and time slot of the CQF mechanism and the CQCF mechanism are unified, and the final result is that the gating period and time slot of the entire network are consistent, which reduces the difficulty of planning and scheduling.

[0082] Among them, the forwarding time slot of the cyclic queue forwarding mechanism is consistent with the forwarding time slot of the cyclic queue cluster forwarding mechanism.

[0083] It should be noted that in general, the value of m of CQCF is 2, that is, the CQCF time slot is twice the CQF time slot, and there are two priority queues in each queue cluster of CQCF.

[0084] Based on the CQCF mechanism, the time slots of the access network and the core network are consistent, aiming to make the TSN mechanism and the DetNet mechanism carry the same size time slot, facilitate the time slot planning of cross-domain deterministic transmission, reduce the complexity of TT flow planning and scheduling, and avoid the planning difficulties caused by inconsistent time slots.

[0085] Then a CQCF cross-domain deterministic transmission constraint mathematical model is established. In a large-scale deterministic network, the controller needs to know the network topology information and time sensitive traffic TT flow information in advance, wherein the network traffic information is shown in Table 1.

[0086] Table 1

[0087] Attribute Name Content Description flow num flow number src source IP address dst destination IP address period flow period length flow length starttime start sending time deadline maximum end-to-end delay prior flow priority offset flow offset path flow planning path

[0088] According to the information of the time sensitive traffic, the network can be scheduled according to the constraint mathematical model.

[0089] (1) Time slot constraint: Time slot is the minimum transmission unit of CQF and CQCF. In CQF, the data packet needs to complete the forwarding process from the upstream node to the downstream node within a time slot, so the time slot size needs to contain all the time delays of the maximum transmission unit, i.e. the sending delay, the propagation delay, the processing delay, the queuing delay, and the time delay compensation caused by time synchronization. Therefore, the minimum time slot size is as follows:

[0090] MinCycle = Maxlength / Bandwidth + link_delay + Sync (1)

[0091] Where link_delay is the sum of the propagation delay, the processing delay, the queuing delay, and the sending delay of the test data packet; Sync is the time delay required for synchronization; Maxlength / Bandwidth is the sending delay of the maximum length data packet in the traffic.

[0092] The maximum time slot is the greatest common divisor of the periods of all traffic. That is, the maximum time slot is:

[0093] MaxCycle = GCD(F.period) (2)

[0094] In summary, the value range of the time slot Cycle is:

[0095] MinCycle ≤ Cycle ≤ MaxCycle (3)

[0096] Cycle ∈ U = CD(F.period) (4)

[0097] At the same time, in order to facilitate scheduling, the time slot Cycle needs to be a common divisor of F.period.

[0098] (2) Gating cycle constraint: Gating cycle is the cycle in time-sensitive network, and the minimum gating cycle should be the least common multiple of all traffic periods, i.e. the definition of the minimum gating cycle is as follows.

[0099] MinGCL = LCM(F.period) (5)

[0100] In order to facilitate scheduling planning, in CQCF, GCL needs to be a multiple of 4, so in CQCF:

[0101] MinGCL = LCM(F.period, 4) (6)

[0102] The relationship between the gating cycle and the time slot can be obtained as follows:

[0103] GCL = 4n*Cycle, n ∈ N + (7)

[0104] (3) Bias constraint: The starting node is added with an offset to solve the problem of conflicts when multiple data packets enter a switch at the same time, which causes the switch to be unable to send time-sensitive traffic at the same time and causes scheduling failure. When traffic enters a new domain, it needs to be offset. For the same domain, since the nodes are known, the time when the traffic enters the queue will be taken into consideration when planning and scheduling, and conflicts will be avoided at the beginning of transmission. Therefore, within a domain, only the first node needs to be offset to complete conflict-free transmission within the domain. The offset will delay the transmission time slot of the traffic by one or more cycles. Each time the offset is applied, f.offset will increase by 1. The offset number range is as follows.

[0105] 0≤f.offset≤f.period / Cycle-1 (8)

[0106] Where f.period is the sending period of each flow, and Cycle is the time slot size.

[0107] (4) Delay constraint: The entire network is divided into the core network and the access network, which are equipped with the CQCF mechanism and the CQF mechanism respectively. Therefore, it is necessary to calculate the end-to-end delay of each domain and make a judgment. The formula is as follows:

[0108]

[0109] CQF_delay represents the end-to-end delay of the access network, and CQCF_delay represents the end-to-end delay of the core network. Adding up the delays of all networks gives the total end-to-end delay e2e_delay. Compare e2e_delay with the maximum allowable end-to-end delay f.deadline for the traffic. Only when e2e_delay is less than or equal to f.deadline can low-latency transmission of the traffic be guaranteed.

[0110] (5) Queue constraint: Define O(i,j,m,n,t) as time slot t, where the jth packet Pij of flow fi is located at switch S m The state of port n. Where O(i,j,m,n,t) = 1 means that the packet exists on the port, and O(i,j,m,n,t) = 0 means that the packet does not exist on the port. The relationship between (i,j,m,n,t) is as follows.

[0111] In the CQF mechanism:

[0112] t=fi.offset+(j-1)*fi.period / Cycle+hop(fi,S mn ) (10)

[0113] In CQCF mechanism:

[0114] t = fi.offset + (j - 1) * fi.period / Cycle + 2 * hop(fi, S mn ) (11)

[0115] Where fi.offset represents the offset size of stream fi in the domain; fi.period is the period size of stream fi; Cycle is the transmission time slot; hop(fi, S mn ) represents the hop number of stream fi to S mn according to the planned path in the domain.

[0116] (6) Transmission constraint: when the data packet is transmitted in the CQF mechanism, the data packet needs to complete the forwarding between nodes in a time slot, and send in the next time slot, so the overall delay between any two nodes is one unit time slot.

[0117] In the CQCF mechanism, due to the variable length of the core network data link, the data packet cannot complete the transmission between nodes in one time slot. CQCF extends the data packet link transmission time by adding a queue, allowing the data packet to complete transmission in two or more time slots, and the default delay between two nodes is two unit time slots.

[0118] The transmission constraint is described as follows: the default CQF mechanism needs to add 1 to the transmission time slot of the previous hop, thereby obtaining the transmission time slot of the next hop node; the default CQCF mechanism needs to add 2 to the transmission time slot of the previous hop, thereby obtaining the transmission time slot of the next hop node.

[0119] Then, the CQCF cross-domain deterministic scheduling algorithm is designed: through the constraint condition (6), it is known that in the CQF mechanism, the same data packet P ij satisfies the rule of transmission time slot plus 1 in different switch queues, in CQCF, the same data packet P ij satisfies the rule of transmission time slot plus 2 in different switch queues. From this, the relationship between all switches and time slots t on the path of the same data packet P ij is obtained. At the same time, for the same stream fi, there is also a relationship between data packets, assuming that the transmission time slot of P ij is t ij , then the transmission time slot of P ij+1 is t ij +f.period / Cycle.

[0120] Therefore, only the first data packet P i0 of fi needs to be determined.The transmission time slot of the data packet P i0 The transmission time slot of the data packet P i0 The actual offset size of the data packet P i0 The transmission time slot of the data packet P

[0121] The cross-domain deterministic transmission pseudo code is shown in Algorithm 1, wherein the input is a set of all traffic information F and network topology information G; the output is a scheduling matrix H, which is a three-dimensional matrix, the three dimensions of which are time slot t, switch m and port n, and the element in the matrix is a data packet P ij , that is, H is a set of O(i, j, m, n, t).

[0122] The cross-domain deterministic transmission mechanism CQCF scheduling algorithm is as follows.

[0123]

[0124]

[0125] The scheduling matrix H is obtained through the time slot relationship between switches and the relationship between the traffic fi data packet.

[0126] Specifically, in an embodiment, the step S103 of buffering the data packet to be transmitted into the corresponding odd queue cluster or even queue cluster through the circular queue cluster mechanism includes the following steps.

[0127] Step S1031: The field of the data packet to be transmitted is parsed, and it is judged whether the data packet to be transmitted is a time triggered flow.

[0128] Step S1032: According to the judgment result, the buffer queue corresponding to the data packet to be transmitted is determined.

[0129] In the embodiment of the present application, the traffic in the network includes time triggered flow and other non-time triggered flow, for the time triggered flow, the forwarding is performed through the priority queue 7 to the priority queue 4; for the non-time triggered flow, the forwarding is performed through the priority queue 3 to the priority queue 0.

[0130] The time triggered stream and the non-time triggered stream are different in the field of the data packet format. In the TSN, the VLAN data frame format encapsulated by the IEEE 802.1Q is generally adopted, and a PRI field is arranged, which contains 3 bits and can define the queue into which the data packet enters, that is, the priority is determined.

[0131] The time slot label in the TT stream determines the forwarding time slot of the data packet at the node through the time slot mapping table, and then the cache queue of the data packet is mapped according to the forwarding time slot and the enqueue operation is performed. The gate list determines the on-off state of each queue according to the planned time slot. When the data packet is sent from the queue, the non-TT stream is directly forwarded, and the TT stream is changed to the current sending time slot value through the inverse analysis module.

[0132] For the time triggered stream, the data is transmitted in the order of the time triggered sequence and the queue priority from the priority queue 7 to the priority queue 4 in descending order of priority; for the non-time triggered stream, the data is transmitted in the order of the data receiving sequence.

[0133] The priority of the time triggered stream is higher than that of other flows, so the queue priority order is determined according to the judgment result, and the data packet with high priority is sent, so as to improve the data transmission efficiency.

[0134] Specifically, in an embodiment, the data transmission method based on the cyclic queue cluster forwarding provided by the embodiment of the application further includes the following steps:

[0135] Step S105: The data packet to be transmitted is transmitted across the domain from the cyclic queue forwarding mechanism in the access network to the cyclic queue cluster forwarding mechanism in the core network.

[0136] Step S106: The data packet to be transmitted is transmitted by the cyclic queue cluster forwarding mechanism in the core network.

[0137] Step S107: The data packet to be transmitted is transmitted across the domain from the cyclic queue cluster forwarding mechanism in the core network to the cyclic queue forwarding mechanism in the access network.

[0138] In the embodiment of the application, the forwarding time slot of the cyclic queue forwarding mechanism is consistent with the forwarding time slot of the cyclic queue cluster forwarding mechanism. The data packet to be transmitted is transmitted across the domain from the cyclic queue forwarding mechanism to the cyclic queue cluster forwarding mechanism, and the data packet enters the core network from the access network. Since the network time is synchronized, the starting time of each domain gate cycle is consistent. It is assumed that at the time slot Cycle1, the data packet is sent from the odd queue of the CQF mechanism and enters the CQCF mechanism in the core network.

[0139] When the CQF odd queue sends a data packet, the odd queue cluster of the CQCF mechanism sends the data packet, and the even queue cluster receives the data packet, so the data packet will enter the even queue cluster of the CQCF. At the same time, according to the time slot label of the data packet, the data packet will select the corresponding priority queue to enter the queue cache. Assume that the data packet enters queue 5 in time slot Cycle 1, as shown in Figure 8 As shown in Figure 2, the time required for the data packet to complete cross-domain transmission is 2 time slots. By setting the time slot size to meet the long-distance transmission requirements, large-scale cross-domain transmission can be achieved.

[0140] In time slot Cycle 2, the even queue of the CQF mechanism sends a data packet. At this time, the data packet will not enter queue 7 or queue 6 because the odd queue cluster is still sending data and only the even queue cluster can receive it. Assume that the data packet will enter priority queue 4, such as Figure 9 The cross-domain transmission diagrams in time slots Cycle3 and Cycle4 are shown as follows. Figure 10 and Figure 11 shown.

[0141] In the circular queue cluster forwarding mechanism, the data packets to be transmitted are transmitted over long distances in the core network. During transmission in the core network, the nodes in the core network are equipped with the CQCF mechanism to send data packets in a circular manner through the odd-even queue cluster.

[0142] During Cycle 1 and Cycle 2, the packets in the odd queue cluster of CQCF1 will enter the even queue cluster of CQCF2, such as Figure 12 As shown. The data packet enters the queue according to the time slot label. Figure 13 The packets in priority queue 7 of CQCF1 will enter queue 5 of CQCF2, and the packets in priority queue 6 of CQCF2 will enter queue 4 of CQCF2.

[0143] In Cycle 3 and Cycle 4, the data packets in the even queue cluster of CQCF1 will enter the odd queue cluster of CQCF2, such as Figure 13 As shown in the figure, packets in priority queue 5 of CQCF1 enter queue 7 of CQCF2, and packets in priority queue 4 of CQCF2 enter queue 6 of CQCF2. During transmission, the end-to-end transmission time slot size of the packets must be consistent to achieve zero packet transmission jitter.

[0144] The data packet to be transmitted is transferred from the circular queue cluster forwarding mechanism to the circular queue forwarding mechanism across domains: the data packet arrives at the access network where the destination node is located from the core network. Assume that in time slot Cycle 1, the odd queue cluster of CQCF is transmitting the data packet, as follows Figure 14As shown in Figure 1, during Cycle 1, packets enter CQF's priority queue 7 from queue 7 of the CQCF odd queue cluster. During Cycle 2, packets enter CQF's priority queue 6 from queue 6 of the CQCF queue cluster, effectively placing all data in the CQCF queue cluster into the CQF mechanism's even and odd queues. During Cycles 3 and 4, the even queue cluster sends data into the CQF mechanism's even and odd queues, completing cross-domain transmission between the CQCF and CQF mechanisms.

[0145] In the Internet, an autonomous system (AS) is a small unit that has the authority to independently determine which routing protocol to use within the system. In TSN, traffic shaping mechanisms only need to consider traffic forwarding within a single AS, so its routing protocol only uses an IGP. However, in large-scale deterministic networks, network traffic needs to flow through multiple ASs, so the network needs to consider routing and forwarding solutions for cross-AS transmission.

[0146] With the continuous innovation of the internet, traditional networks are gradually being replaced, giving rise to new network technologies such as Software Defined Networking (SDN). Software Defined Networking leverages the concept of network programmability, forwarding network traffic through flow tables distributed by controllers, and has led to the emergence of many new technologies. Segment routing, inspired by the concept of SDN networks, is a technique that divides the packet transmission path into distinct segments. The sending node inserts segment information into the packet, and intermediate nodes read the segment information carried in the packet for forwarding.

[0147] The present invention adopts segment routing for routing forwarding, and the path and transmission time slot of the traffic are displayed and carried in the SID of the data packet. When the TT flow is transmitted in the CQF domain, it will enter the queue allowed to receive in the parity queue; when it is transmitted in the CQCF domain, it will enter the queue with higher priority in the queue cluster allowed to receive in the parity queue cluster, such as Figure 15 shown.

[0148] Based on the same inventive concept, the present invention also provides a data transmission device based on circular queue cluster forwarding.

[0149] Figure 16 This is a data transmission device based on circular queue cluster forwarding proposed according to an exemplary embodiment. Figure 16 As shown, the system includes:

[0150] The input parsing module 101 is used to parse the data packet to be transmitted when the switch detects the data packet to be transmitted and obtain the parsing result, which includes the time slot label of the data packet to be transmitted. For details, please refer to the relevant description of step S101 above and will not be repeated here.

[0151] The mapping matching module 102 is configured to acquire a pre-planned time slot tag queue mapping table, and perform mapping matching on the time slot tag based on the time slot tag and the time slot tag queue mapping table, to determine a forwarding queue and a forwarding time slot of the to-be-transmitted data packet, and perform mapping enqueuing on the to-be-transmitted data packet. For details, refer to the related description of step S102, which will not be repeated here.

[0152] The queue caching module 103 is configured to cache the to-be-transmitted data packet into a corresponding odd queue cluster or even queue cluster based on the forwarding time slot and the mapping enqueuing result through a circular queue cluster mechanism. For details, refer to the related description of step S103, which will not be repeated here.

[0153] The output forwarding module 104 is configured to send the cached to-be-transmitted data packet based on the queue priority order in the queue cluster. For details, refer to the related description of step S104, which will not be repeated here.

[0154] The data transmission device based on the circular queue cluster forwarding provided in the embodiment of the present application solves the problem of cross-domain deterministic transmission in a large-scale network by mapping enqueuing the to-be-transmitted data packet according to the analysis result of the to-be-transmitted data packet, expanding each queue into a group of queue clusters on the basis of the original two odd-even priority queues of the circular queue forwarding mechanism in the time-sensitive network, caching the to-be-transmitted data packet through the odd queue cluster and the even queue cluster, and sending the to-be-transmitted data packet according to the priority order of the queues in the queue cluster, thereby reducing the complexity of data transmission scheduling.

[0155] The specific limitations and beneficial effects of the above data transmission device based on the circular queue cluster forwarding can refer to the limitations of the data transmission method based on the circular queue cluster forwarding in the above text, which will not be repeated here. The above modules can be realized by software, hardware, and combinations thereof, in whole or in part. The above modules can be embedded in or independent of the processor in the computer device in hardware form, or stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to the above modules.

[0156] Figure 17 is a hardware structure schematic diagram of a computer device according to an example embodiment. As shown in Figure 17 the device includes one or more processors 910 and a memory 920, the memory 920 including a persistent memory, a volatile memory and a hard disk, Figure 17 the processor 910 is taken as an example. The device can also include an input device 990 and an output device 940.

[0157] The processor 910, the memory 920, the input device 990, and the output device 940 can be connected through a bus or other means, Figure 17 The bus connection is taken as an example.

[0158] The processor 910 can be a central processing unit (CPU). The processor 910 can also be other general-purpose processors, 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, discrete hardware components, or a combination thereof. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor.

[0159] The memory 920, as a non-transitory computer-readable storage medium, includes a persistent memory, a volatile memory, and a hard disk, and can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as program instructions / modules corresponding to the service management method in the embodiments of the present application. The processor 910 executes various functions and data processing of the server by running the non-transitory software programs, instructions, and modules stored in the memory 920, that is, implements any one of the above-mentioned data transmission methods based on the cyclic queue cluster forwarding.

[0160] The memory 920 can include a program storage area and a data storage area. The program storage area can store an operating system and at least one application required by a function; the data storage area can store data required for use, etc. In addition, the memory 920 can include a high-speed random access memory, and can also include a non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state memory device. In some embodiments, the memory 920 can optionally include a memory remotely arranged with respect to the processor 910, and these remote memories can be connected to the data processing device through a network. Examples of the above-mentioned network include but are not limited to the Internet, an intranet, a local area network, a mobile communication network, and a combination thereof.

[0161] The input device 990 can receive input digital or character information, and generate key signal input related to user settings and function control. The output device 940 can include a display device such as a display screen.

[0162] One or more modules are stored in the memory 920, and when executed by the one or more processors 910, perform the functions as Figure 6The data transmission method based on the cyclic queue cluster forwarding is shown.

[0163] The product can execute the method provided by the embodiment of the application, has the function module and the beneficial effect corresponding to the execution method. The technical details not described in detail in the embodiment can be specifically referred to as Figure 6 The related description in the embodiment shown.

[0164] The embodiment of the application further provides a non-transient computer storage medium, the computer storage medium stores computer executable instructions, and the computer executable instructions can execute the method in any method embodiment. Wherein, the storage medium can be a magnetic disc, an optical disc, a read-only memory (ROM), a random access memory (RAM), a flash memory, a hard disk drive (HDD) or a solid-state drive (SSD), etc. The storage medium can also include a combination of the above types of memories.

[0165] Obviously, the above embodiments are only examples for clearly illustrating, and not limit the embodiments. For those skilled in the field, on the basis of the above description, other different forms of changes or variations can also be made. Here, it is not necessary and impossible to enumerate all the embodiments. The obvious changes or variations derived therefrom are still within the protection scope of the application.

Claims

1. A data transmission method based on cyclic queue cluster forwarding, characterized in that, The method comprises: When the switch detects a data packet to be transmitted, the data packet to be transmitted is parsed to obtain a parsing result, and the parsing result comprises a time slot tag of the data packet to be transmitted; A pre-planned time slot tag queue mapping table is obtained, and the time slot tag is matched based on the time slot tag and the time slot tag queue mapping table to determine a forwarding queue and a forwarding time slot of the data packet to be transmitted, and the data packet to be transmitted is mapped and queued; Based on the forwarding time slot and the mapping and queuing result, the data packet to be transmitted is cached in a corresponding odd queue cluster or even queue cluster through a circular queue cluster mechanism; Based on the queue priority order in the queue cluster, the cached data packet to be transmitted is sent; The method further comprises: The gating period and time slot of the circular queue forwarding mechanism and the circular queue cluster forwarding mechanism are set, and a cross-domain network time slot and period mathematical model is established, wherein the forwarding time slot of the circular queue forwarding mechanism and the forwarding time slot of the circular queue cluster forwarding mechanism are consistent, and when the cross-domain network time slot and period mathematical model is established, in the access network, the traffic is divided into intra-domain traffic and cross-domain traffic, and the gating period of the traffic shaping mechanism circular queue forwarding mechanism carried in the access network is the least common multiple of the intra-domain traffic and cross-domain traffic periods; The constraint condition of the circular queue cluster forwarding mechanism is designed, and a circular queue cluster cross-domain deterministic scheduling algorithm is designed according to the constraint condition.

2. The method of claim 1, wherein, Before obtaining the pre-planned time slot tag queue mapping table, the method further comprises: A circular queue cluster forwarding cross-domain deterministic scheduling algorithm is used to determine the time slot tag queue mapping table.

3. The method of claim 1, wherein, The circular queue cluster mechanism is used to cache the data packet to be transmitted in a corresponding odd queue cluster or even queue cluster, which comprises: The fields of the data packet to be transmitted are parsed, and it is judged whether the data packet to be transmitted is a time triggered flow; According to the judgment result, the cache queue corresponding to the data packet to be transmitted is determined.

4. The method of claim 1, wherein, The method further comprises: The data packet to be transmitted is transmitted from the circular queue forwarding mechanism in the access network to the circular queue cluster forwarding mechanism in the core network; In the core network, the data packet to be transmitted is transmitted through the circular queue cluster forwarding mechanism; The data packet to be transmitted is transmitted from the circular queue cluster forwarding mechanism in the core network to the circular queue forwarding mechanism in the access network.

5. The method of claim 4, wherein, The forwarding time slot size of the circular queue forwarding mechanism and the forwarding time slot size of the circular queue cluster forwarding mechanism are consistent.

6. A data transmission device based on cyclic queue cluster forwarding, characterized in that, The device comprises: An input parsing module is configured to parse a data packet to be transmitted when the switch detects the data packet to be transmitted, and obtain a parsing result, wherein the parsing result comprises a time slot tag of the data packet to be transmitted; A mapping matching module is configured to obtain a pre-planned time slot tag queue mapping table, and match the time slot tag based on the time slot tag and the time slot tag queue mapping table to determine a forwarding queue and a forwarding time slot of the data packet to be transmitted, and map and queue the data packet to be transmitted. The queue buffer module is configured to buffer the to-be-transmitted data packets into corresponding odd queue cluster or even queue cluster through the circular queue cluster mechanism based on the forwarding time slot and the mapping enqueuing result; The output forwarding module is configured to send the buffered to-be-transmitted data packets based on the queue priority order in the queue cluster. The device is further configured to: set the gating period and time slot of the circular queue forwarding mechanism and the circular queue cluster forwarding mechanism, and establish a cross-domain network time slot and period mathematical model, wherein the forwarding time slot of the circular queue forwarding mechanism and the forwarding time slot of the circular queue cluster forwarding mechanism are consistent, and when the cross-domain network time slot and period mathematical model is established, in the access network, the traffic is divided into intra-domain traffic and cross-domain traffic, and the gating period of the traffic shaping mechanism carried in the access network, i.e., the circular queue forwarding mechanism, is the least common multiple of the intra-domain traffic period and the cross-domain traffic period; design the constraint condition of the circular queue cluster forwarding mechanism, and design the circular queue cluster cross-domain deterministic scheduling algorithm according to the constraint condition.

7. A computer device, comprising: The device comprises a memory and a processor, which are communicatively connected, the memory stores computer instructions, and the processor executes the computer instructions to perform the data transmission method based on the circular queue cluster forwarding according to any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions for causing the computer to perform the data transmission method based on the circular queue cluster forwarding according to any one of claims 1-5.

Citation Information

Patent Citations

  • Traffic shaping method, device and system

    CN113904991A

  • Time slot allocation method for time-sensitive networking, and message forwarding method

    WO2022105534A1