Service packet transmission method, electronic device, storage medium, and program product

By carrying damped delay in the service message and using the tail node or head node to calculate and update the damped delay, the problem of delay jitter in the service flow during network transmission is solved, achieving the effect of zero delay jitter and meeting strict delay requirements.

WO2026081590A1PCT designated stage Publication Date: 2026-04-23ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
ZTE CORP
Filing Date
2025-07-22
Publication Date
2026-04-23

AI Technical Summary

Technical Problem

In existing technologies, the message sequence of service flows suffers from latency jitter during network transmission, especially in cross-domain scenarios where jitter accumulation is severe, failing to meet the requirements of service flows with stricter latency jitter requirements.

Method used

By carrying damping delay in the service message and using the tail node or head node to calculate and update the damping delay, the deviation between the actual arrival time of the message and the ideal inbound time slot is eliminated, ensuring that the end-to-end delay experienced by all messages along the TQF path is equal, thus achieving zero-delay jitter.

Benefits of technology

It effectively eliminates message latency jitter, especially in cross-domain scenarios, avoiding the accumulation of jitter and meeting the transmission requirements of business flows with stricter latency jitter requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025109821_23042026_PF_FP_ABST
    Figure CN2025109821_23042026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of communications, and discloses a service packet transmission method, an electronic device, a storage medium, and a program product. The service packet transmission method comprises: in response to receiving a target service packet, a first node acquiring a damping delay carried in the target service packet and an outgoing time slot corresponding to the target service packet, wherein the first node is a tail node of a time slot queuing and forwarding (TQF) path of a target service flow corresponding to the target service packet, and the damping delay is the difference between a maximum arrival deviation and an actual arrival deviation of the target service packet at a head node of the TQF path; on the basis of the outgoing time slot corresponding to the target service packet and an actual departure time at which the target service packet departs from a TQF queue of the first node, acquiring a departure deviation of the target service packet at the first node; and on the basis of the departure deviation, updating the damping delay, such that a target node transmits the target service packet after a delay equal to the updated damping delay.
Need to check novelty before this filing date? Find Prior Art

Description

Methods for transmitting business messages, electronic devices, storage media, and program products

[0001] Cross-referencing

[0002] This application claims priority to Chinese Patent Application No. 202411436043.4, filed on October 15, 2024, entitled "Method for Transmitting Business Messages, Electronic Device, Storage Medium and Program Product", the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of communication technology, and in particular to a method for transmitting service messages, an electronic device, a storage medium, and a program product. Background Technology

[0004] Slot-based queuing and forwarding mechanisms require that the sequence of packets arriving at the network ingress node exhibits a stable periodicity. After flow regulation, the position of this packet sequence within the orchestration cycle of the network ingress node's traffic receiving interface (i.e., the ideal inbound timeslot) is predictable. However, in reality, the packet sequence of a service flow can only follow a rough periodicity. There will be a deviation between the actual inbound timeslot and the ideal inbound timeslot, and different packets may receive different deviation values, resulting in latency jitter. Furthermore, as the service flow is forwarded along the entire transmission path, there may also be an inherent latency jitter of approximately two timeslot length.

[0005] Therefore, how to eliminate the aforementioned latency jitter to meet the more stringent latency jitter requirements of business flows is a technical problem that needs to be solved in the technology. Summary of the Invention

[0006] This application provides a method for transmitting service messages, an electronic device, a storage medium, and a program product.

[0007] In a first aspect, a method for transmitting a service message is provided, comprising: in response to receiving a target service message, a first node acquiring a damping delay carried in the target service message and an outgoing timeslot corresponding to the target service message, wherein the first node is the tail node of a timeslot queuing and forwarding TQF path for a target service flow corresponding to the target service message, and the damping delay is the difference between the maximum arrival deviation and the actual arrival deviation of the target service message at the head node of the TQF path; acquiring a departure deviation of the target service message at the first node based on the outgoing timeslot corresponding to the target service message and the actual departure time of the target service message leaving the TQF queue of the first node; and updating the damping delay based on the departure deviation, so that the target node transmits the target service message after the damping delay is delayed and updated.

[0008] Secondly, a method for transmitting a service message is provided, comprising: in response to receiving a target service message, a second node obtaining a target time slot cross-entry matching the target service message from a forwarding table entry of a TQF path, wherein the target time slot cross-entry is a time slot cross-entry in the forwarding table entry that has an ideal incoming time slot closest to the actual arrival time of the target service message, and the second node is the head node of the TQF path; calculating the arrival deviation of the target service message based on the start time of the ideal incoming time slot and the actual arrival time; calculating the difference between a preset maximum arrival deviation and the arrival deviation to obtain a damped delay; and transmitting the target service message carrying the damped delay according to the TQF path and the target time slot cross-entry.

[0009] Thirdly, an electronic device is provided, the electronic device including a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions being executed by the processor to implement the steps of the method described in the first aspect above, or to implement the steps of the method described in the second aspect above.

[0010] Fourthly, a readable storage medium is provided, on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method described in the first aspect above, or implement the steps of the method described in the second aspect above.

[0011] Fifthly, a computer program product is provided, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions that, when executed by a computer, cause the computer to perform the steps of the method described in the first aspect above, or the steps of the method described in the second aspect above. Attached Figure Description

[0012] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0013] Figure 1 illustrates a schematic diagram of the arrival deviation between the actual arrival time of a message and the matching ideal inbound time slot in a related technology;

[0014] Figure 2 shows a schematic diagram of an orchestration of a deterministic business flow;

[0015] Figure 3 shows a flowchart of a service message transmission method provided in an exemplary embodiment of this application;

[0016] Figure 4 illustrates a flowchart of a service message transmission method provided in another exemplary embodiment of this application;

[0017] Figure 5 shows a flowchart of a service message transmission method provided in another exemplary embodiment of this application;

[0018] Figure 6 illustrates a schematic diagram of the processing of the head node and tail node in an exemplary embodiment of this application;

[0019] Figure 7 shows a flowchart illustrating a method for transmitting service messages in an exemplary embodiment of this application;

[0020] Figure 8 shows a structural block diagram of an electronic device provided in an exemplary embodiment of this application;

[0021] Figure 9 shows a structural block diagram of an electronic device provided in another exemplary embodiment of this application. Detailed Implementation

[0022] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0023] Related technologies describe the architecture of deterministic networks and define the Quality of Service (QoS) objectives for deterministic forwarding: minimum and maximum latency from source to destination, bounded latency jitter, allowable packet loss rate, and an upper bound on out-of-order packet delivery. To achieve these objectives, deterministic networks employ resource reservation, explicit routing, and service protection. Generally, a deterministic path is a strictly explicit path calculated by a centralized controller, reserving resources at nodes along the path to meet the Service Level Agreement (SLA) requirements of deterministic services.

[0024] In addition, a timeslot queuing and forwarding (TQF) mechanism is proposed in related technologies. This mechanism encapsulates timeslot resources and makes them available and reserved for services. In this mechanism, a traffic engineering (TE) path based on the TQF mechanism is established for the service flow in the TQF domain. This path can be simply referred to as a TQF path. At each hop of the TQF path, corresponding outbound timeslot resources are reserved for the service flow to form an outbound timeslot stack. Then, a forwarding service based on timeslot interleaving is provided for the service flow. Generally, a service flow that periodically generates a message sequence will contain multiple messages in each cycle. Therefore, in the control plane, the sub-bursts of the service flow are first calculated and determined. Then, for each sub-burst, after flow conditioning at the head node, it is determined in which time slot of the head node's receiving interface's orchestration cycle it should arrive in (this is also called the ideal inbound time slot of the receiving interface). Finally, based on the ideal inbound time slot of the receiving interface, outbound time slots are reserved at each hop of the path to form an outbound time slot stack. After the time slot resources for each sub-burst are successfully reserved, a corresponding flow state is generally created at the head node to guide subsequent message forwarding. This state includes the corresponding path information, ideal inbound time slots, and outbound time slot stacks. For example, a service flow may involve m sub-bursts. The flow state maintained by the head node for this service flow will contain m time slot cross-entries. An example of the contents of a flow state is as follows:

[0025] • Stream feature matching information;

[0026] • TQF_path;

[0027] • Time slot crossover entry 1: Ideal incoming time slot i_1, outgoing time slot stack 1;

[0028] • Time slot crossover entry 2: Ideal incoming time slot i_2, outgoing time slot stack 2;

[0029] · ......

[0030] • Time slot crossover entry m: ideal incoming time slot i_m, outgoing time slot stack m.

[0031] Subsequently, in the forwarding plane, the head node of the TQF path needs to match the time slot cross-entry with the closest ideal inbound time slot based on the actual arrival time of the packet. This arrival time refers to the moment when the packet enters the TQF forwarding logic after all the pre-processing steps have been completed. The pre-processing steps include possible traffic conditioning or possible tail forwarding logic of the upstream domain, such as damping. Then, it uses the corresponding outbound time slot stack in the time slot cross-entry to perform forwarding based on time slot cross-slot. Figure 1 illustrates an arrival deviation between the actual arrival time of a packet and the matched ideal inbound time slot. As shown in Figure 1, the source node src of the service flow sends traffic to the head node H of the TQF path. On the receiving interface UNI of node H, there is an arrival deviation between the actual arrival time of the packet and the matched ideal inbound time slot. For example, a packet with an actual arrival time of A1 has a deviation of E1 (i.e., i.begin-A1) from the ideal inbound timeslot i, which is a negative value; similarly, a packet with an actual arrival time of A2 has a deviation of E2 (i.e., i.begin-A2) from the ideal inbound timeslot i, which is a positive value. It is evident that different packets will face different arrival deviations, but they all require a uniform reservation of outbound timeslot z on the network-to-network interface (NNI) based on the ideal inbound timeslot i. This results in different packets from the same flow having different dwell times on node H, leading to latency jitter.

[0032] In addition to the delay jitter caused by arrival deviations, the actual sending time of different messages in the same flow may also be different in the outgoing time slot z, which also leads to delay jitter.

[0033] To address the aforementioned latency jitter, this application provides a method for transmitting service packets to eliminate at least one of the aforementioned latency jitter, thereby meeting the needs of service flows with stricter latency jitter requirements, especially in cross-domain scenarios to avoid the cumulative effect of latency jitter from different forwarding mechanisms.

[0034] For ease of understanding, some terms used in the embodiments of this application are explained below.

[0035] Service Burst Interval: The traffic specification for deterministic service flows typically follows a cycle of bursts within a certain interval (i.e., the service burst interval). For example, if a service flow generates 1000 bits of traffic every 1 ms, then its corresponding service burst interval is 1 ms.

[0036] Orchestration Period: An orchestration period adopted based on the needs of all deterministic services. It allocates time slot resources to services within the orchestration period, specifying which time slots and how many bits are used within each slot. The length of the orchestration period is the least common multiple of the burst intervals of all services and is an integer multiple of the burst intervals. Multiple orchestration period instances of different lengths can be configured across the network, and nodes communicate with each other based on the same orchestration period instance.

[0037] Timeslot: An orchestration cycle contains many timeslots of equal length. For example, an orchestration cycle of 1ms length may contain 100 timeslots, each with a length of 10us. For orchestration cycles of the same length, different nodes can configure different timeslot lengths and contain different numbers of timeslots for that orchestration cycle instance.

[0038] Incoming Timeslot: For the head node of a TQF path, the arrival time of a message in the current timeslot of the receiving interface is the incoming timeslot to which the message belongs; for an intermediate node of a TQF path, the outgoing timeslot assigned by the upstream node when sending a message is the incoming timeslot of the message.

[0039] Outgoing Timeslot: For any node in the TQF path, when it continues to send messages to downstream nodes, it selects to send messages in a specified timeslot according to resource reservation or certain rules. This timeslot is called the outgoing timeslot.

[0040] Generally, deterministic traffic specifications follow a pattern of generating bursts within periodic Service Burst Intervals (SBIs). For example, if a traffic flow generates 1000 bits of traffic every 1 ms, its corresponding burst interval is 1 ms. The TQF domain is configured to use orchestration periods (OPs) of a specific length, which include a certain number of time slots. The OP is typically the least common multiple of the SBIs of all traffic flows. The bursts generated within an SBI can be calculated to correspond to sub-bursts within an OP. Figure 2 shows the bursts of traffic flows 1, 2, and 3 corresponding to sub-bursts within an OP. In this process, the SBI of flow 1 is the same length as that of the OP, and it periodically generates a small burst within the SBI (the size of which does not exceed the number of bits that a single time slot can hold), corresponding to sub-burst-1 within the OP; the SBI of flow 2 is the same length as that of the OP, and it periodically generates two small bursts within the SBI, corresponding to sub-burst-1 and sub-burst-2 within the OP; the SBI of flow 3 is 1 / 3 the length of the OP, and it periodically generates a small burst within the SBI, corresponding to sub-burst-1, sub-burst-2, and sub-burst-3 within the OP.

[0041] Figure 3 illustrates a flowchart of a service message transmission method provided in an exemplary embodiment of this application. This method can be executed by the tail node of the TQF path of the target service flow. As shown in Figure 3, the method mainly includes the following steps.

[0042] S310, in response to receiving a target service message, the first node obtains the damping delay carried in the target service message and the outgoing time slot corresponding to the target service message.

[0043] In this embodiment of the application, the first node is the tail node of the TQF path of the target service flow corresponding to the target service message, and the damping delay is the difference between the maximum arrival deviation and the actual arrival deviation of the target service message at the head node of the TQF path.

[0044] In other words, in this embodiment of the application, when the head node of the TQF path of the target service flow forwards the target service packet, it can calculate the difference between the maximum arrival deviation and the actual arrival deviation of the target service packet at the head node as the damping delay, carry the difference in the target service packet, and after the target service packet reaches the tail node, the tail node obtains the damping delay from it.

[0045] In this embodiment of the application, the maximum arrival deviation can be determined by a preset method. For the same target service flow, the maximum arrival deviation can be a fixed value.

[0046] In some embodiments, the maximum arrival deviation (denoted as max_arrival_deviation) of the target traffic flow at the TQF path header node can be determined based on the Orchestration Period Length (OPL) used by the TQF path and the number of sub-bursts (denoted as m) distributed in the orchestration period (OP). For example, max_arrival_deviation = OPL / m. Of course, other methods or strategies can be used to obtain a smaller value, such as 0. For example, the maximum arrival deviation can also be determined through strategies such as traffic sampling, which is not limited in the specific embodiments of this application.

[0047] In this embodiment, the controller can reserve outbound time slots at each hop of the TQF path based on the ideal inbound time slots corresponding to each sub-burst of the target service flow. The controller can also create TQF path forwarding table entries for the target service flow at the head node of the TQF path, which include the specific path (i.e., which nodes or links it passes through), the Orchestration Period Length (OPL), the maximum arrival deviation (max_arrival_deviation), and the ideal inbound and outbound time slot stacks corresponding to each sub-burst. When forwarding the target service packet, the head node can encapsulate the outbound time slots of the target service packet in the target service packet.

[0048] S312, based on the outgoing timeslot corresponding to the target service message and the actual departure time of the target service message from the TQF queue of the first node, obtain the departure deviation of the target service message at the first node.

[0049] Since the TQF mechanism supports the fact that the actual departure time may not be within the outbound time slot, the actual departure time of a target service packet leaving the TQF queue of the first node may not be within the outbound time slot of that target service packet, which may result in a departure deviation. Furthermore, the departure deviation may differ for different service packets, thus potentially causing delay jitter. Therefore, in this embodiment, the tail node considers this deviation when calculating the damped delay.

[0050] In some embodiments, the departure deviation of the target service packet at the first node can be obtained based on the following steps: Step 1, obtain the start time of the outgoing time slot and the actual departure time of the target service packet leaving the TQF queue of the first node; Step 2, calculate the difference between the start time and the actual departure time to obtain the departure deviation.

[0051] The departure deviation calculated above may be positive or negative. That is to say, the actual departure time may be before or after the start time of the outgoing time slot.

[0052] In the above embodiments, the departure deviation is calculated based on the start time of the outgoing timeslot, ensuring that the difference in departure deviation among all packets of the target service flow is not too large, thereby reducing the waiting time for subsequent target service packets. Of course, this is not a limitation; in practical applications, the departure deviation can also be calculated based on the end time of the outgoing timeslot or any time within the outgoing timeslot. Specific implementation details are not limited in this application.

[0053] S314, based on the aforementioned departure deviation, update the damping delay carried in the target service message so that the target node transmits the target service message after the damping delay is updated.

[0054] In this embodiment, the tail node updates the damped delay carried in the service packet based on the departure deviation, so that the updated damped delay takes into account the departure deviation. The target node can wait for the time corresponding to the updated damped delay before forwarding the target service packet, thereby ensuring that the end-to-end delay experienced by all service packets of the target service flow along the TQF path is equal, achieving zero-latency jitter.

[0055] In some embodiments, S314 may include the following step: updating the damping delay using the sum of the damping delay carried in the target service message, the aforementioned departure offset, and the length of the outgoing timeslot. That is, the damping delay carried in the target service message is added to the aforementioned departure offset and the length of the outgoing timeslot, and the sum of these three is used as the new damping delay. This ensures that all service messages in the target service flow experience the same end-to-end delay along the TQF path.

[0056] In some embodiments, the target node can be a first node. That is, the first node transmits the target service packet after the damping delay has been updated. Therefore, in these embodiments, after updating the damping delay carried in the target service packet, the method may further include: the first node adding the target service packet to a buffer or queue according to the updated damping delay, waiting in the buffer or queue for the updated damping delay, and then sending the target service packet to the outgoing interface. In these embodiments, an additional buffer or queue can be established on the first node for the target service flow, so that the target service flow waits in the buffer or queue for the time required by the damping delay before sending it to the outgoing interface, ensuring that all service packets of the target service flow experience the same end-to-end delay along the TQF path.

[0057] In some embodiments, to avoid head-end blocking, the first node adding the target service packet to the buffer or queue according to the updated damping delay may include: the first node adding the target service packet to the buffer or queue, wherein, in the buffer or queue, the damping delay corresponding to the service packet preceding the target service packet is less than the damping delay corresponding to the target service packet, and the damping delay corresponding to the service packet following the target service packet is greater than the damping delay corresponding to the target service packet. That is, packets waiting in the buffer or queue can be sorted according to their damping delay from smallest to largest; the closer to the head of the queue, the smaller the damping delay, thereby avoiding head-end blocking.

[0058] In some embodiments, the target node can also be a downstream node of the first node. For example, if the downstream node of the first node supports damping, the first node may not send the packet to the outgoing interface based on the damping delay, but instead encapsulate the damping delay in the packet and send it to the downstream node, which then applies a delay to the packet based on the damping delay to achieve the required time. Therefore, in these embodiments, after updating the damping delay carried in the target service packet based on the aforementioned departure deviation, the method may further include: the first node carrying the updated damping delay after the target service packet and transmitting it to the downstream node through the outgoing interface, so that the downstream node delays the transmission of the target service packet based on the damping delay carried in the target service packet.

[0059] Through the technical solutions provided in the embodiments of this application, the tail node of the TQF path can wait for the message based on the damped delay, so that the end-to-end delay experienced by all messages along the TQF path is equal, achieving zero-latency jitter, and in particular avoiding the accumulation of jitter from multiple domains when crossing domains.

[0060] Figure 4 illustrates a flowchart of a service message transmission method provided by another exemplary embodiment of this application. This method can be executed by the head node of the TQF path of the target service flow. As shown in Figure 4, the method mainly includes the following steps.

[0061] S410, in response to receiving the target service message, the second node obtains the target time slot cross entry that matches the target service message from the forwarding table entries of the TQF path.

[0062] Among them, the target time slot cross-entry is the time slot cross-entry in the forwarding table that has the ideal inbound time slot closest to the actual arrival time of the target service message, and the second node is the head node of the TQF path.

[0063] In this embodiment, the controller can calculate the TQF path for the target service flow. This TQF path may be the complete transmission path of the target service flow or a segment of the complete transmission path. In this embodiment, the TQF path can be any form of traffic engineering path, such as Resource Reservation Protocol-Traffic Engineer (RSVP-TE), Label Switched Path (LSP), Segment Routing (SR) tunnel, or SR (Segment Routing) policy.

[0064] Additionally, the controller can reserve outbound time slots for each sub-burst of the target service flow at each hop of the TQF path based on the ideal inbound time slot corresponding to the sub-burst, ensuring that the actual transmission delay generated by the TQF path matches the transmission delay budget. The controller can create TQF path forwarding table entries for the target service flow at the head node of the TQF path, including the specific path (i.e., which nodes or links are passed through), the orchestration period length, the maximum arrival deviation (max_arrival_deviation), and the ideal inbound and outbound time slot stacks corresponding to each sub-burst.

[0065] When the second node receives the target service packet of the target service flow from the receiving interface, it matches the above TQF path forwarding table entry, and then matches the time slot cross-entry with the closest ideal inbound time slot in the table entry according to the actual arrival time of the packet.

[0066] S412, calculate the arrival deviation of the target service message based on the start time of the ideal incoming time slot and the actual arrival time.

[0067] Optionally, in S412, the difference between the start time of the ideal incoming timeslot and the actual arrival time can be calculated to obtain the arrival deviation of the target service message.

[0068] S414, calculate the difference between the preset maximum arrival deviation and the arrival deviation to obtain the damping delay.

[0069] The preset maximum arrival deviation can be the maximum arrival deviation in the TQF path forwarding table entry created by the controller at the second node.

[0070] The maximum arrival deviation can be determined based on the orchestration cycle length (OPL) used by the TQF path and the number of sub-bursts (denoted as m) distributed in the orchestration cycle (OP) of the target traffic flow. This can be calculated by setting the maximum arrival deviation (denoted as max_arrival_deviation) of the target traffic flow at the head node of the TQF path. For example, max_arrival_deviation = OPL / m, but other methods or strategies may yield a smaller value, such as 0.

[0071] For example, when a target service flow crosses multiple TQF domains, the maximum arrival deviation (max_arrival_deviation) in the flow state table entry maintained on the entry node of the ingress domain can be set to non-zero, while the maximum arrival deviation (max_arrival_deviation) in the TQF path table entry maintained on the entry node of the transit domain can be set to zero.

[0072] S416, transmit target service messages carrying damped delays according to TQF path and target time slot cross-entry.

[0073] In this embodiment, the second node carries the damping delay in the target service message, and then sends the target service message along the TQF path and the target time slot cross entry.

[0074] Optionally, a damping delay can be included in the packet header encapsulating the target service flow. This packet header can be any L2 or L3 packet header, such as the Ethernet header, IPv4 header, IPv6 header, Multiprotocol Label Switching (MPLS) header, etc.

[0075] Through the above technical solutions provided in the embodiments of this application, the head node carries a damped delay in the target service message. The damped delay is the difference between the maximum arrival deviation and the arrival deviation of the target service message at the second node. This allows the tail node to eliminate the delay jitter caused by the arrival deviation between the actual arrival time of the message and the matched ideal inbound time slot when waiting for the message based on the damped delay.

[0076] Figure 5 shows a flowchart of a service message transmission method provided in another exemplary embodiment of this application. As shown in Figure 5, the service message transmission method mainly includes the following steps.

[0077] S510, the controller calculates the TQF path for the target service flow.

[0078] The TQF path may be the complete transmission path of the target service flow, or it may be a segment of the complete transmission path.

[0079] Optionally, the controller can determine the maximum arrival deviation (denoted as max_arrival_deviation) of the target traffic flow at the TQF path header node based on the orchestration cycle length (OPL) used by the TQF path and the number of sub-bursts (denoted as m) distributed in the orchestration cycle (OP) of the target traffic flow. For example, max_arrival_deviation = OPL / m. Of course, other methods or strategies can be used to obtain a smaller value, such as 0, or the maximum arrival deviation can be determined through strategies such as traffic sampling.

[0080] The controller can then determine the path delay budget (path_delay_budget) for the TQF path. Optionally, it can be obtained by subtracting the upper bound of the traffic conditioning delay at the network ingress node and the delay budget of any other path segments that may exist in the complete end-to-end path of the target service flow, based on the delay requirements of the target service flow's end-to-end complete path.

[0081] Optionally, the TQF path delay budget (path_delay_budget) can consist of two parts: the maximum arrival deviation (max_arrival_deviation) and the transmission delay budget (transmission_delay_budget), i.e.:

[0082] path_delay_budget=max_arrival_deviation+transmission_delay_budget.

[0083] In this embodiment, the controller can reserve outgoing time slots for each sub-burst at each hop of the TQF path based on the ideal incoming time slot corresponding to each sub-burst, so that the actual transmission delay generated by the TQF path is consistent with the above-mentioned transmission delay budget.

[0084] S512, the controller creates a TQF path forwarding table entry for the target service flow at the head node of the TQF path.

[0085] The TQF path forwarding table entry may include the specific path (i.e., which nodes or links it passes through), the orchestration period length, the maximum arrival deviation (max_arrival_deviation), and the ideal inbound and outbound time slot stacks corresponding to each sub-burst.

[0086] In the embodiments of this application, the TQF path can be any form of traffic engineering path, such as RSVP-TE LSP, SR tunnel, SR policy, etc.

[0087] In this embodiment, setting the maximum arrival deviation (max_arrival_deviation) to 0 is a meaningful setting. For example, when the target service flow crosses multiple TQF domains, the maximum arrival deviation (max_arrival_deviation) contained in the flow state table entry maintained on the ingress node of the ingress domain can be set to non-zero, while the maximum arrival deviation (max_arrival_deviation) contained in the TQF path table entry maintained on the ingress node of the transit domain can be set to 0.

[0088] S514, the head node of the TQF path sends the target service flow.

[0089] Optionally, S503 may include the following steps.

[0090] Step 1: When the head node of the TQF path receives the target service flow from the receiving interface, it matches the above TQF path forwarding table entry, and then matches the time slot cross-entry with the closest ideal inbound time slot in the table entry according to the actual arrival time of the service message.

[0091] Step 2: The head node calculates the arrival deviation, which is equal to the difference between the start time of the ideal inbound timeslot and the actual arrival time of the service message.

[0092] Step 3: The head node calculates the damping delay, which is equal to the difference between the maximum arrival deviation (max_arrival_deviation) and the arrival deviation.

[0093] Step 4: The head node carries the damping delay in the header of the packet encapsulating the target service flow, and then sends the service packet along the TQF path and the corresponding time slot interleaving entry.

[0094] The packet header can be any L2 or L3 packet header, such as Ethernet Header, IPv4 Header, IPv6 Header, MPLS Header, etc.

[0095] Figure 6 illustrates the calculation of damping delay for a TQF path header node based on a message received at the incoming port. The arrival deviation (E) is obtained by subtracting the actual arrival time (arrival_time) from the start time of the ideal incoming time slot i (i.begin). Note that the arrival deviation (E) can be positive, negative, or 0. The maximum arrival deviation (max_arrival_deviation) is a time interval determined before the ideal incoming time slot. The damping delay is equal to the difference between the maximum arrival deviation (max_arrival_deviation) and the arrival deviation (E).

[0096] S516, the tail node of the TQF path receives the target service flow.

[0097] In this embodiment of the application, S505 may include the following steps.

[0098] Step 1: After receiving the service message, the tail node of the TQF path obtains the damping delay and the outgoing timeslot sent to the outgoing interface from the service message.

[0099] Step 2: Calculate the departure deviation, which is equal to the difference between the start time of the outgoing time slot and the actual departure time.

[0100] The actual departure time refers to the moment when the service message leaves the TQF queue of the tail node. The TQF mechanism supports that the actual departure time is not necessarily in the outgoing time slot.

[0101] Step 3: Update the damping delay. The updated damping delay is equal to the sum of the damping delay obtained from the service message, the departure deviation, and the length of the outbound time slot.

[0102] For example, Figure 6 illustrates a TQF path tail node updating the damping delay as it continues sending received service packets to the outgoing port. The departure deviation (E) is obtained by subtracting the actual departure time (departure_time) from the start time (z.begin) of the outgoing timeslot z. Note that this value can be positive, negative, or 0. The damping delay is updated to the sum of the damping delay obtained from the service packet, the departure deviation (E), and the length of the outgoing timeslot z.

[0103] Step 4: The tail node of the TQF path sends a message to the outgoing interface based on the damping delay.

[0104] Optionally, the tail node can create additional buffers or queues for the service flow, allowing the service flow to wait in the buffer or queue for the time required for damping delay before sending to the outgoing interface.

[0105] To avoid queue head blocking, optionally, messages waiting in the buffer or queue can be sorted in ascending order of their damping delay, with the closer to the queue head, the smaller the damping delay.

[0106] Optionally, if the downstream device of the tail node supports the damping function, the tail node may not send the message to the outgoing interface according to the damping delay. Instead, it may encapsulate the damping delay in the message and send it to the downstream device, which will then implement a delay for the message according to the damping delay to achieve the required time.

[0107] Figure 7 illustrates a flowchart of a service message transmission method in an exemplary embodiment of this application. As shown in Figure 7, on the network ingress node PE1, a deterministic forwarding service is provided for the target service flow accessed from the source client CE1, with the destination client being CE2. The deterministic forwarding path adopts a TQF path, with the head node being PE1 and the tail node being PE2. The traffic specification (TSpec) of the target service flow has a periodic characteristic. Assuming its Service Burst Interval (SBI) is 10ms, it will periodically send four messages p1, p2, p3, and p4 every 10ms (for simplicity, these are assumed to be four messages of equal length, each 1000 bits).

[0108] Assume that the orchestration period of the TQF mechanism configured on each link in the network is 10ms, containing 100 time slots, and each time slot is 100us long. Then, the four packets contained in each SBI of the target service flow correspond to the four sub-bursts in the orchestration period, denoted as sub-burst-1, sub-burst-2, sub-burst-3, and sub-burst-4.

[0109] The controller determines the ideal incoming time slots for these sub-bursts as time slot #24, time slot #49, time slot #74, and time slot #99, determines the maximum arrival deviation to be 500µs, and installs the following flow status table entries on PE1:

[0110] match<source CE1, destination CE2>;

[0111] Set orchestration cycle length: 10ms;

[0112] Maximum arrival deviation: 500µs;

[0113] TQF path: PE1-P1-P2-PE2;

[0114] Time slot crossover entry 1: Ideal incoming time slot #24, outgoing time slot stack <#25,#26,#27,#28>;

[0115] Time slot crossover entry 2: Ideal incoming time slot #49, outgoing time slot stack <#50,#51,#52,#53>;

[0116] Time slot crossover entry 3: Ideal incoming time slot #74, outgoing time slot stack <#75,#76,#77,#78>;

[0117] Time slot crossover entry 4: Ideal incoming time slot #99, outgoing time slot stack <#0,#1,#2,#3>.

[0118] The maximum transmission delay generated by all time slot interleaving entries is the same, denoted as d. According to the TQF mechanism, the maximum transmission delay occurs when the message arrives at the beginning of the ideal inbound time slot of the head node and is sent at the end of the outbound time slot of the tail node.

[0119] Assume that the actual arrival times of four packets p1, p2, p3, and p4 generated by the target service flow during a certain service burst interval are 100us, 30us, -20us, and -50us respectively, compared to the actual arrival times of the matching ideal inbound time slots. Then, on PE1, the damping delays calculated for these four packets are 500-100=400us, 500-30=470us, 500-(-20)=520us, and 500-(-50)=550us respectively, and are carried in the packets and sent along the TQF path.

[0120] Assuming that when these four messages arrive at the tail node and continue to be sent to the outgoing interface, the deviations between the actual time they leave the TQF queue and the start time of the outgoing timeslot are -10us, -20us, -20us, and -40us respectively, their transmission delays are 100+d-90=d+10us, 30+d-80=d-50us, -20+d-70=d-90us, and -50+d-60=d-110us respectively. Their damping delays are then updated to 400+(-10)+100=490us, 470+(-20)+100=550us, 520+(-30)+100=590us, and 550+(-40)+100=610us respectively. This will ensure that the end-to-end delay experienced by each message (i.e., transmission delay + damping delay) is d + 500us, achieving zero-latency jitter.

[0121] Figure 8 shows a structural block diagram of an electronic device 800 according to an exemplary embodiment of this application. The electronic device 800 includes a processor 801 and a memory 802. The memory 802 stores a program or instructions that can run on the processor 801. When the program or instructions are executed by the processor 801, they implement the various steps of the above-described service message transmission method embodiment and achieve the same technical effect. To avoid repetition, further details are omitted here.

[0122] Figure 9 shows a structural block diagram of an electronic device according to an exemplary embodiment of this application. This electronic device can be implemented as the source device in the above-described scheme of this application. The electronic device 900 includes a Central Processing Unit (CPU) 901, a system memory 904 including Random Access Memory (RAM) 902 and Read-Only Memory (ROM) 903, and a system bus 905 connecting the system memory 904 and the CPU 901. The electronic device 900 also includes a mass storage device 906 for storing an operating system 909, application programs 910, and other program modules 911.

[0123] Without loss of generality, the computer-readable medium may include computer storage media and communication media. Computer storage media include volatile and non-volatile, removable and non-removable media implemented using any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid-state storage technologies, CD-ROM, digital versatile disc (DVD) or other optical storage, magnetic tape cassettes, magnetic tape, disk storage, or other magnetic storage devices. Of course, those skilled in the art will recognize that the computer storage media are not limited to the above-mentioned types. The system memory 904 and mass storage device 906 described above can be collectively referred to as memory.

[0124] According to various embodiments of this disclosure, the electronic device 900 can also be connected to a remote computer on a network, such as the Internet. That is, the electronic device 900 can be connected to a network 908 via a network interface unit 907 connected to the system bus 905, or it can use the network interface unit 907 to connect to other types of networks or remote computer systems (not shown).

[0125] The memory further includes at least one instruction, at least one program, code set, or instruction set, which are stored in the memory. The central processing unit 901 executes the at least one instruction, at least one program, code set, or instruction set to implement all or part of the steps in the service message transmission method shown in the above embodiments.

[0126] Those skilled in the art will understand that the structure shown in FIG9 does not constitute a limitation on the electronic device 900, and may include more or fewer components than shown, or combine certain components, or employ different component arrangements.

[0127] In one exemplary embodiment, a readable storage medium is also provided, on which a program or instruction is stored. When executed by a processor, the program or instruction implements the steps of the service message transmission method described in the above embodiments. For example, the readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.

[0128] In one exemplary embodiment, a computer program product is also provided, which includes a computer program stored on a non-transitory computer-readable storage medium. The computer program includes program instructions that, when executed by a computer, cause the computer to perform all or part of the steps of the service message transmission method shown in any of the above embodiments.

[0129] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the claims.

[0130] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.

Claims

1. A method for transmitting a service message, comprising: In response to receiving a target service message, the first node obtains the damping delay carried in the target service message and the outbound time slot corresponding to the target service message. The first node is the tail node of the time slot queuing and forwarding TQF path of the target service flow corresponding to the target service message. The damping delay is the difference between the maximum arrival deviation and the actual arrival deviation of the target service message at the head node of the TQF path. Based on the outbound timeslot corresponding to the target service message and the actual departure time of the target service message from the TQF queue of the first node, the departure deviation of the target service message at the first node is obtained; Based on the departure deviation, the damping delay is updated so that the target node transmits the target service message after the damping delay is updated.

2. The method according to claim 1, wherein, The target node includes the first node; After updating the damping delay based on the departure deviation, the method further includes: The first node adds the target service packet to a buffer or queue according to the updated damping delay, waits for the updated damping delay in the buffer or queue, and then sends the target service packet to the outgoing interface.

3. The method according to claim 2, wherein, The first node adds the target service packet to the buffer or queue according to the updated damping delay, including: The first node adds the target service packet to the buffer or queue, wherein, in the buffer or queue, the damping delay corresponding to the service packet arranged before the target service packet is less than the damping delay corresponding to the target service packet, and the damping delay corresponding to the service packet arranged after the target service packet is greater than the damping delay corresponding to the target service packet.

4. The method according to claim 1, wherein, The target node includes downstream nodes of the first node; After updating the damping delay based on the departure deviation, the method further includes: The first node carries the updated damping delay after the target service message and transmits it to the downstream node through the outgoing interface, so that the downstream node delays the transmission of the target service message based on the damping delay carried in the target service message.

5. The method according to any one of claims 1 to 4, wherein, The step of obtaining the departure deviation of the target service packet at the first node based on the outbound timeslot corresponding to the target service packet and the actual departure time of the target service packet leaving the TQF queue of the first node includes: Obtain the start time of the outgoing time slot and the actual departure time of the target service packet from the TQF queue of the first node; The departure deviation is obtained by calculating the difference between the start time and the actual departure time.

6. The method according to any one of claims 1 to 4, wherein, Based on the departure deviation, the damping delay is updated, including: The damping delay is updated using the sum of the damping delay carried in the target service message, the departure deviation, and the length of the outgoing timeslot.

7. A method for transmitting a service message, comprising: In response to receiving a target service message, the second node obtains a target time slot cross-entry that matches the target service message from the forwarding table entries of the TQF path. The target time slot cross-entry is a time slot cross-entry in the forwarding table entries that has the ideal inbound time slot closest to the actual arrival time of the target service message. The second node is the head node of the TQF path. Based on the start time of the ideal incoming time slot and the actual arrival time, the arrival deviation of the target service packet is calculated; The damping delay is obtained by calculating the difference between the preset maximum arrival deviation and the arrival deviation. The target service message carrying the damping delay is transmitted according to the TQF path and the target time slot cross-entry.

8. The method according to claim 7, wherein, The calculation of the arrival deviation of the target service packet based on the start time of the ideal incoming time slot and the actual arrival time includes: The arrival deviation of the target service message is obtained by calculating the difference between the start time of the ideal incoming time slot and the actual arrival time.

9. The method according to claim 7 or 8, wherein, Before the second node retrieves the target time slot cross-entry matching the target service packet from the TQF path forwarding table entry in response to receiving the target service packet, the method further includes: Obtain the forwarding table entry of the TQF path, wherein the forwarding table entry includes: the TQF path, the orchestration period length, the maximum arrival deviation, and the ideal inbound and outbound time slot stacks corresponding to each service burst interval.

10. An electronic device comprising a processor and a memory, the memory storing a program or instructions executable on the processor, the program or instructions, when executed by the processor, implementing the steps of the method for transmitting service messages as described in any one of claims 1 to 9.

11. A readable storage medium storing a program or instructions that, when executed by a processor, implement the steps of the method for transmitting a service message as described in any one of claims 1 to 9.

12. A computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions that, when executed by a computer, cause the computer to perform the steps of the method for transmitting a service message as described in any one of claims 1 to 9.