Route selection method, storage medium, electronic apparatus, and computer program product

The controller determines the time slot cross-forward entry for each sub-burst of the target service flow and sends an announcement message to the entry node of the time slot queuing and forwarding domain to construct forwarding table entries. This solves the problem of time slot cross-forwarding in cross-domain scenarios and achieves efficient routing selection.

WO2026081591A1PCT 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 cross-domain scenarios, it is not recommended for intermediate domains to maintain flow state, which leads to routing issues that cannot support time-slot cross-forwarding paths.

Method used

A routing method is provided, which determines the time slot cross-entry for each sub-burst of the target service flow through the controller and sends an announcement message to the entry node of the time slot queuing and forwarding domain to construct forwarding table entries, including ideal inbound time slots and outbound time slot stacks, to realize time slot cross-forwarding in cross-domain scenarios.

Benefits of technology

It achieves efficient time-slot cross-forwarding in cross-domain scenarios, solves the problem of intermediate domains not maintaining flow state, and achieves the effect of time-slot cross-forwarding in cross-domain scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025109909_23042026_PF_FP_ABST
    Figure CN2025109909_23042026_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the embodiments of the present disclosure are a route selection method, a storage medium, an electronic apparatus, and a computer program product. The method comprises: a controller determining a timeslot cross entry of each sub-burst of a target service flow, and sending a first announcement message to an ingress node of a timeslot queuing and forwarding domain, such that the ingress node constructs a first forwarding entry on the basis of the first announcement message. The first announcement message comprises timeslot cross entries, wherein each timeslot cross entry comprises an ideal inbound timeslot and an outbound timeslot stack, the ideal inbound timeslot is an ideal inbound timeslot of each sub-burst at the ingress node of the timeslot queuing and forwarding domain, and the outbound timeslot stack comprises an outbound timeslot of each node of a traffic engineering path corresponding to each sub-burst.
Need to check novelty before this filing date? Find Prior Art

Description

Routing methods, storage media, electronic devices and computer program products

[0001] Cross-reference to related applications

[0002] This application is based on and claims priority to Chinese patent application CN202411440243.7, filed on October 15, 2024, entitled “Route Selection Method, Storage Medium, Electronic Device and Computer Program Product”, the entire contents of which are incorporated herein by reference. Technical Field

[0003] This disclosure relates to the field of communications, and more specifically, to a routing method, a storage medium, an electronic device, and a computer program product. Background Technology

[0004] In packet forwarding based on time-slot cross-slots, for a service flow that periodically generates packet sequences, the network ingress node needs to map multiple packets to traffic engineering paths with different outgoing time-slot stacks for transmission. This typically requires selection based on the actual arrival time of the packets, and the network ingress node needs to maintain flow state, including flow feature matching information and multiple outgoing time-slot stacks. However, in cross-domain scenarios, if the intermediate domain supports time-slot cross-slot forwarding paths, it is generally not recommended to maintain flow state at the ingress node of the intermediate domain; a solution is needed to support such scenarios. Summary of the Invention

[0005] This disclosure provides a routing method, a storage medium, an electronic device, and a computer program product.

[0006] According to one embodiment of this disclosure, a routing method is provided, comprising: a controller determining a timeslot cross-entry for each sub-burst of a target service flow, wherein each timeslot cross-entry includes an ideal inbound timeslot and an outbound timeslot stack, the ideal inbound timeslot being the ideal inbound timeslot of each sub-burst at the ingress node of the timeslot queuing and forwarding domain, the outbound timeslot stack including the outbound timeslot of each node of the traffic engineering path corresponding to each sub-burst, the traffic engineering path being a timeslot queuing and forwarding traffic engineering path; the controller sending a first announcement message to the ingress node of the timeslot queuing and forwarding domain, so that the ingress node constructs a first forwarding table entry based on the first announcement message, wherein the first announcement message includes the timeslot cross-entry.

[0007] According to yet another embodiment of this disclosure, a computer-readable storage medium is also provided, wherein a computer program is stored therein, wherein the computer program is configured to perform the steps in any of the above method embodiments when executed.

[0008] According to yet another embodiment of this disclosure, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.

[0009] According to yet another embodiment of this disclosure, a computer program product is also provided, including a computer program that, when executed by a processor, implements the steps in any of the above method embodiments. Attached Figure Description

[0010] Figure 1 is a hardware structure block diagram of a computer device on which the routing method of this disclosure is operated according to an embodiment;

[0011] Figure 2 is a flowchart of a routing method according to an embodiment of the present disclosure;

[0012] Figure 3 is an example diagram showing the correspondence between the target service flow burst volume and the sub-bursts within the OP in an embodiment of this disclosure;

[0013] Figure 4 is a schematic diagram illustrating the principle of an end-to-end forwarding path according to an embodiment of this disclosure;

[0014] Figure 5 is a schematic diagram illustrating the principle of a Timeslot Resource TLV according to an embodiment of this disclosure;

[0015] Figure 6 is a schematic diagram illustrating the principle of a Timeslot Resource Sub-TLV according to an embodiment of this disclosure;

[0016] Figure 7 is an example diagram of an end-to-end deterministic forwarding path according to an embodiment of the present disclosure. Detailed Implementation

[0017] The embodiments of this disclosure will be described in detail below with reference to the accompanying drawings and examples.

[0018] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of the embodiments of this disclosure are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.

[0019] In related technologies, the IETF standard RFC 8655 describes the architecture of deterministic networks and defines 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.

[0020] The IETF's individual draft, draft-peng-detnet-packet-timeslot-mechanism-09, describes a timeslot-based queuing and forwarding (TQF) mechanism that encapsulates timeslot resources and makes them available and reserved for services. This public technology describes establishing a traffic engineering path (TE path) based on the TQF mechanism for service flows within the TQF domain, and reserving corresponding outbound timeslot resources for the service flow at each hop of the TQF path to form an outbound timeslot stack. Then, it provides timeslot-based forwarding services for the service flow. Generally, a service flow that periodically generates a message sequence contains multiple messages in each period. 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 period 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, and the flow state maintained by the head node for this service flow will contain m time slot cross-entries.

[0021] Stream feature matching information:

[0022] TQF_path;

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

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

[0025] ......

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

[0027] In the forwarding plane, the head node (i.e., the ingress node) of the TQF path needs to match the time-slot cross-slot entry with the closest ideal inbound time slot based on the actual arrival time of the packet after traffic adjustment, and then use the corresponding outbound time slot stack in the time-slot cross-slot entry for time-slot cross-slot forwarding. However, in cross-domain scenarios, if the intermediate domain supports time-slot cross-slot forwarding paths, it is generally not recommended for the ingress node of the intermediate domain to be aware of the service flow, and therefore, the flow state is not maintained. To support time-slot cross-slot forwarding capabilities in such cross-domain scenarios, this disclosure provides a routing method, which is a timeslot-based routing selection (TBRS) method.

[0028] The following describes some of the terminology used in the embodiments of this disclosure.

[0029] Service Burst Interval (SBI): The traffic specification for deterministic service flows generally 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.

[0030] 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.

[0031] Timeslot: An orchestration cycle contains many timeslots of equal length. For example, an orchestration cycle of 1ms length contains 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.

[0032] Incoming Timeslot: For the head node of a TQF path, after a service flow packet arrives at its receiving interface and undergoes flow regulation, the current timeslot of the receiving interface at this moment is the incoming timeslot to which the packet belongs; for an intermediate node of a TQF path, the outgoing timeslot assigned by the upstream node when sending a packet is the incoming timeslot of the packet.

[0033] 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.

[0034] The method embodiments provided in this disclosure can be executed in a mobile terminal, computer device, or similar computing device. Taking running on a computer device as an example, FIG1 is a hardware structure block diagram of a computer device in which the routing method of this disclosure is run. As shown in FIG1, the computer device 100 may include one or more (only one is shown in FIG1) processors 101 (processor 101 may include, but is not limited to, processing devices such as microprocessors MCUs or programmable logic devices FPGAs) and a memory 102 for storing data. The computer device may also include transmission devices for communication functions and input / output devices. It will be understood by those skilled in the art that the structure shown in FIG1 is only illustrative and does not limit the structure of the computer device. For example, the computer device may also include more or fewer components than shown in FIG1, or have a different configuration than shown in FIG1.

[0035] The memory 102 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the routing method in this embodiment. The processor 101 executes various functional applications and data processing by running the computer program stored in the memory 102, thus implementing the above-described method. The memory 102 may include high-speed random access memory and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 102 may further include memory remotely located relative to the processor 101, and these remote memories can be connected to computer devices via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0036] Transmission devices are used to receive or send data over a network. Specific examples of such networks may include wireless networks provided by a computer equipment's communications provider. In one example, the transmission device includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device may be a Radio Frequency (RF) module used for wireless communication with the Internet.

[0037] This disclosure provides a routing method. Figure 2 is a flowchart of the routing method according to an embodiment of this disclosure. As shown in Figure 2, the process includes the following steps:

[0038] In step S202, the controller determines the timeslot cross-entry for each sub-burst of the target service flow. Each timeslot cross-entry includes an ideal inbound timeslot and an outbound timeslot stack. The ideal inbound timeslot is the ideal inbound timeslot of the entry node of each sub-burst in the timeslot queuing and forwarding domain (TQF domain). The outbound timeslot stack includes the outbound timeslot of each node of the traffic engineering path corresponding to each sub-burst. The traffic engineering path is the timeslot queuing and forwarding traffic engineering path (TQF path).

[0039] In an exemplary embodiment, the controller determines the time slot cross-entry for each sub-burst of the target traffic flow, including: the controller determining the ideal inbound time slot of the ingress node of each sub-burst in the time slot queuing and forwarding domain; based on the ideal inbound time slot of each sub-burst, the controller determines the outbound time slot of the traffic engineering path corresponding to each sub-burst, and constructs an outbound time slot stack to determine the time slot cross-entry.

[0040] In this embodiment of the disclosure, before the controller determines the slot cross-entry for each sub-burst of the target service flow and sends the first notification message to the entry node of the slot queuing and forwarding domain, it needs to first determine the sub-bursts contained in the target service flow and determine the ideal inbound and outbound slot stacks of the sub-bursts.

[0041] In an exemplary embodiment, the controller determines the ideal inbound timeslot for each subburst at the entry node of the timeslot queuing and forwarding domain, including: the controller determining the delay budget of the upstream domain of each timeslot queuing and forwarding domain, wherein the sum of the delay budgets is less than or equal to the transmission delay of the corresponding subburst; the controller determines the ideal inbound timeslot based on the entry time of the first domain in the upstream domain and the delay budget.

[0042] In this embodiment, the steps for determining the ideal inbound time slot for each sub-burst are as follows: (1) For each sub-burst, determine the time after flow adjustment of its inbound node H1 in the first domain (domain 1) of the upstream domain, denoted as t1. (2) Allocate a delay budget for each upstream domain such that the sum of the delay budgets of all upstream domains does not exceed the cross-domain end-to-end transmission delay required by the sub-burst. (3) Add all the delay budgets of domain 1 to domain i-1 to t1 to obtain t2, which is the inbound node H1 of the sub-burst arrival time slot queuing and forwarding domain (domain i). i The time at which H is determined based on t2. i The ideal incoming time slot for the receiving interface, i.e., in H i The time slot to which the receiving interface belongs at time t2.

[0043] In step S204, the controller sends a first announcement message to the entry node of the slot queuing and forwarding domain, so that the entry node constructs a first forwarding table entry based on the first announcement message, wherein the first announcement message includes a slot cross-entry.

[0044] In one exemplary embodiment, the first notification message further includes: a traffic engineering path; and the orchestration cycle length of the traffic engineering path.

[0045] In this embodiment of the disclosure, the first notification message includes "slot resource" information, specifically including: TQF path, Orchestration Period Length (OPL), one or more slot cross-entries, and each slot cross-entry further includes an ideal inbound slot and an outbound slot stack.

[0046] In an exemplary embodiment, the controller sends a first notification message to the entry node of the time slot queuing and forwarding domain, including: the controller sends the first notification message to the entry node of the time slot queuing and forwarding domain through the Path Computation Element Communication Protocol (PECP), the first notification message being carried in the time slot resource TLV of the path attribute object.

[0047] In an exemplary embodiment, the controller sends a first announcement message to the ingress node of the time slot queuing and forwarding domain, including: the controller sends the first announcement message to the ingress node of the time slot queuing and forwarding domain via the Border Gateway Protocol (BGP), the first announcement message being carried in the time slot resource sub-TLV of the segment list TLV.

[0048] In one exemplary embodiment, the method further includes: the controller configuring a second forwarding table entry for the ingress node of the first domain in the upstream domain of the time slot queuing and forwarding domain, wherein the second forwarding table entry is a forwarding table entry indicating the end-to-end path of the target service flow.

[0049] In one exemplary embodiment, the first forwarding entry and / or the second forwarding entry contain path identification information for the traffic engineering path.

[0050] In this embodiment of the disclosure, the ingress node constructs a first forwarding table entry based on the first announcement message. In one embodiment, the ingress node can assign a Multiprotocol Label Switching (MPLS) label to the TQF path, or a Segment Routing for MPLS Segment Identifier (SR-MPLSSID) applied to the MPLS data plane, or a Segment Routing for IPv6 Segment Identifier (SRv6 SID) applied to the IPv6 data plane, etc. That is, these types of forwarding identifiers can be mapped to the corresponding TQF path (at this time, these labels or segment identifiers SIDs can also be called Binding Labels or Binding SIDs).

[0051] In this embodiment of the disclosure, the steps of the routing method described above in the control plane can be performed by the controller, but are not limited to being performed solely by the controller.

[0052] In one exemplary embodiment, the method further includes: the ingress node of the time slot queuing and forwarding domain receives a packet from the upstream domain, matches a first forwarding table entry based on the path identifier information of the traffic engineering path carried in the packet, matches the corresponding ideal inbound time slot in the first forwarding table entry based on the actual arrival time of the packet, determines the corresponding time slot cross-entry, and forwards the packet according to the outbound time slot stack in the time slot cross-entry.

[0053] In this embodiment, after the control plane completes path calculation and time slot resource reservation, the forwarding plane encapsulates and forwards the packets. When a packet is forwarded to the TQF domain, the first forwarding entry of the corresponding TQF path is matched according to the Binding Label / SID in the packet. Then, a time slot interleaving entry is selected from the TQF path forwarding entry based on the packet's arrival time. The selection method is as follows: the ideal inbound time slot of the selected entry is closest to the packet's arrival time, and the end of the ideal inbound time slot is not earlier than the packet's arrival time. Based on the TQF path forwarding entry and the time slot interleaving entry selected in the TQF path forwarding entry, the specific path (i.e., which nodes or links are passed through), orchestration period length (OPL), outbound time slot stack, and other information are obtained. Then, this information is encapsulated in the packet, and the forwarding of the packet within the TQF domain is guided based on this information.

[0054] The above steps provide a routing method that determines the time slot cross-forwarding entries for each sub-burst of the target service flow through a controller and sends a first announcement message to the ingress node of the time slot queuing and forwarding domain, enabling the ingress node to construct a first forwarding table entry based on the first announcement message. The first announcement message includes time slot cross-forwarding entries, each including an ideal inbound time slot and an outbound time slot stack. The ideal inbound time slot is the ideal inbound time slot of each sub-burst at the ingress node of the time slot queuing and forwarding domain. The outbound time slot stack includes the outbound time slots of each node in the traffic engineering path corresponding to each sub-burst, and the traffic engineering path is the time slot queuing and forwarding traffic engineering path. This embodiment achieves an efficient routing scheme, solving the problem in related technologies that cannot support time slot cross-forwarding in cross-domain scenarios, and achieving the effect of routing selection with time slot cross-forwarding in cross-domain scenarios.

[0055] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the embodiments of this disclosure, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the embodiments of this disclosure.

[0056] This embodiment also provides a routing device for implementing the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that performs a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0057] The routing device provided in this embodiment can be located in a controller and includes a first determining module and a sending module. The first determining module is configured to determine the time slot cross-entry for each sub-burst of the target service flow. Each time slot cross-entry includes an ideal inbound time slot and an outbound time slot stack. The ideal inbound time slot is the ideal inbound time slot of the entry node of each sub-burst in the time slot queuing and forwarding domain. The outbound time slot stack includes the outbound time slot of each node of the traffic engineering path corresponding to each sub-burst. The traffic engineering path is the time slot queuing and forwarding traffic engineering path. The sending module is configured to send a first announcement message to the entry node of the time slot queuing and forwarding domain, so that the entry node constructs a first forwarding table entry based on the first announcement message. The first announcement message includes the time slot cross-entry.

[0058] In this embodiment of the disclosure, the routing device may further include different modules, and the naming and functional division of the modules may be selected in different ways according to the actual situation, without specific limitations.

[0059] It should be noted that the above modules can be implemented by software or hardware. For the latter, they can be implemented in the following ways, but are not limited to: all the above modules are located in the same processor; or, the above modules are located in different processors in any combination.

[0060] This disclosure also provides a computer-readable storage medium storing a computer program configured to perform the steps in any of the above method embodiments when executed.

[0061] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0062] This disclosure also provides an electronic device including a memory and a processor, the memory storing a computer program and the processor being configured to run the computer program to perform the steps in any of the above method embodiments.

[0063] In one exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.

[0064] This disclosure also provides a computer program product, including a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.

[0065] In one exemplary embodiment, the computer program product described above includes a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method described in the embodiments of this disclosure.

[0066] Specific examples in this embodiment can be found in the examples described in the above embodiments and exemplary implementations, and will not be repeated here.

[0067] Obviously, those skilled in the art should understand that the modules or steps of the embodiments of this disclosure described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the embodiments of this disclosure are not limited to any particular combination of hardware and software.

[0068] To enable those skilled in the art to better understand the technical solutions of the embodiments of this disclosure, the following description is provided in conjunction with different embodiments.

[0069] Example 1

[0070] The control plane performs path calculations and time slot resource reservations, which can be performed by the controller. However, in actual implementation, it is not limited to being performed by the controller.

[0071] In this embodiment of the disclosure, before the controller determines the slot cross-entry for each sub-burst of the target service flow and sends the first notification message to the entry node of the slot queuing and forwarding domain, it needs to first determine the sub-bursts contained in the target service flow and determine the ideal inbound and outbound slot stacks of the sub-bursts.

[0072] In this embodiment, the Traffic Specification (TSpec) of the target service flow will generate a certain burst amount within a periodic Service Burst Interval (SBI). For example, if a service flow generates 1000 bits of traffic every 1 ms, then its corresponding service burst interval is 1 ms. The TQF domain will be configured to use an orchestration period (OP) of a specific length, which includes a certain number of time slots. The OP is generally the least common multiple of the SBIs of all service flows. It is easy to calculate that the burst amount generated within the SBI corresponds to the sub-burst within the OP. Figure 3 is an example diagram of the correspondence between the burst amount of the target service flow and the sub-burst within the OP in this embodiment. As shown in Figure 3, the burst amounts of the target service flows flow 1, flow 2, and flow 3 correspond to the sub-bursts within the OP. In flow 1, the SBI is the same length as the OP. 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 the OP. 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. It periodically generates a small burst within the SBI, corresponding to sub-burst-1, sub-burst-2, and sub-burst-3 within the OP.

[0073] After determining the sub-bursts contained in the target service flow, the ideal inbound timeslot for the receive interface of the ingress node in the TQF domain is determined for each sub-burst. Figure 4 is a schematic diagram of the end-to-end forwarding path according to an embodiment of this disclosure. As shown in Figure 4, the end-to-end forwarding path spans multiple domains, including a domain 1, domain 2, ..., domain n. Without loss of generality, it is assumed that domain i is a TQF domain, where 1 ≤ i ≤ n. The ingress node of domain i is H. i The exit node is E i In this embodiment of the disclosure, although the figure shows that the boundary nodes between two adjacent domains are not shared, in reality a boundary node can belong to two domains simultaneously.

[0074] In this embodiment of the disclosure, the controller performs the following steps to determine the ideal inbound timeslot for the receive interface of the ingress node in the TQF domain for each sub-burst:

[0075] (1) For each sub-burst, determine the time after the flow adjustment at the entry node H1 of domain 1, and denot it as t1.

[0076] (2) Allocate a delay budget for each domain such that the sum of the delay budgets for all domains does not exceed the cross-domain end-to-end transmission delay required by the sub-burst (i.e., from H1 to E). n (transmission delay).

[0077] (3) Add the delay budget of all domains from domain 1 to domain i-1 to t1 to get t2, which is the entry node H of the sub-burst reaching domain i. i The time at which H is determined based on t2. i The ideal incoming time slot for the receiving interface, i.e., in H i The time slot to which the receiving interface belongs at time t2.

[0078] In this embodiment of the disclosure, ideally, H1 and H are required to be i Time synchronization is achieved between them, but this is not mandatory. In the embodiments of this disclosure, it is assumed that the error between the clock sources of each domain is small, thanks to the abundance of time synchronization technologies available today (such as satellite time synchronization).

[0079] Then, outbound time slots are allocated for each sub-burst. A TQF path belonging to the TQF domain (domain i) is calculated for the target service flow, and for each sub-burst of the target service flow, based on that sub-burst, a time slot is allocated in H... i The ideal inbound timeslot of the receiving interface is used to allocate outbound timeslots for the sub-burst at each hop of the TQF path, forming an outbound timeslot stack such that the transmission delay of each sub-burst along the TQF path is equal to the delay budget allocated to domain i. In this embodiment, the number of elements in the outbound timeslot stack must be consistent with the number of hops in the TQF path. In this embodiment, multiple target service flows may share the same TQF path.

[0080] At this point, the controller has completed the step of determining the time slot cross-entry for each sub-burst of the target service flow. Afterward, the controller forwards the calculated TQF path to the head node (i.e., the ingress node) H of the path. iThe system sends a first announcement message, which includes: the TQF path, the Orchestration Period Length (OPL), and one or more slot cross-entries. Each slot cross-entry further includes the ideal inbound and outbound slot stacks. Header node H i Upon receiving the TQF path notification, create a TQF path forwarding table entry, which is the first forwarding table entry.

[0081] In this embodiment of the disclosure, the head node H i Forwarding identifiers of well-known types, such as MPLS Labels, SR-MPLSSIDs, or SRv6 SIDs, can be assigned to TQF paths. That is, these well-known types of forwarding identifiers can be mapped to the corresponding TQF paths (at this time, these Labels or SIDs can also be called Binding Labels or Binding SIDs).

[0082] In this embodiment of the disclosure, the TQF path can be any form of traffic engineering path, such as Resource Reservation Protocol-Traffic Engineering Label Switched Path (RSVP-TE LSP), Segment Routing (SR) tunnel, SR policy, etc.

[0083] In this embodiment of the disclosure, the controller may use protocols such as Network Configuration Protocol (Netconf), PCEP, and BGP to communicate with the entry node H of the TQF domain. i The above TQF path will be announced.

[0084] The following describes a specific extension method for the PCEP and BGP protocols:

[0085] (1) Extend the PCEP protocol to enable communication between the controller and the TQF domain entry node H. i The TQF path is announced using PCEP.

[0086] In the controller to the head node H iThe notification messages (such as Path Cost Report (PCRep), Path Cost Update (PCUpd), and Path Cost Initialization (PCInit) messages) add "time slot resource" information to each forwarding path. Similarly, the messages notified by the head node to the controller (such as Path Cost Request (PCReq) and Path Cost Report (PCRep) messages) also add "time slot resource" information to each forwarding path. In this embodiment, the aforementioned "time slot resource" information includes: TQF path, Orchestration Period Length (OPL), and one or more time slot interleaving entries. Each time slot interleaving entry further includes an ideal inbound time slot and an outbound time slot stack.

[0087] In related technologies, each path in the message advertised by the controller to the head node is represented by a separate Explicit Route Object (ERO), and each path in the message advertised by the head node to the controller is represented by a separate Reported Route Object (RRO). Since the semantics of EROs or RROs primarily represent the node or link information contained in the path, inserting "timeslot resource" information into the EROs or RROs is inappropriate. In related technologies, draft-ietf-pce-multipath-11 defines a Path Attributes Object. In the advertised message, each ERO (or RRO) can be immediately followed by a Path Attributes Object, which provides additional path attribute information for the ERO (or RRO). In this embodiment, a Timeslot Resource TLV, as shown in Figure 5, is added to the Path Attributes Object to provide timeslot resource information for the paths contained in the corresponding ERO or RRO.

[0088] Figure 5 is a schematic diagram of the Timeslot Resource TLV according to an embodiment of this disclosure. As shown in Figure 5, the fields of the TLV are explained as follows:

[0089] Type: Occupies 2 bytes, and its value is to be assigned by the Internet Assigned Numbers Authority (IANA) to indicate that this TLV is a Timeslot Resource TLV.

[0090] Length: Occupies 2 bytes and represents the length of this TLV content (excluding the Type and Length fields themselves), in bytes.

[0091] OPL: Occupies 4 bytes and indicates the orchestration cycle length used by the TQF path, in microseconds (µs).

[0092] Slot-XC-length: Occupies 2 bytes and represents the length of each slot interleaving entry, in bytes. Each slot occupies 2 bytes. For example, if a slot interleaving entry contains one ideal inbound slot and n outbound slots, then the length of the slot interleaving entry is 2*(n+1).

[0093] Incoming Slot-id: Occupies 2 bytes and represents the ideal incoming slot number. 1st Incoming Slot-id represents the ideal incoming slot of the first slot interleaving entry, and mth Incoming Slot-id represents the ideal incoming slot of the mth slot interleaving entry.

[0094] Outgoing Slot-id: Occupies 2 bytes and indicates the outgoing slot number. Each ideal incoming slot is followed by an outgoing slot stack consisting of n outgoing slots. 1st Outgoing Slot-id indicates the first outgoing slot in the stack, and nth Outgoing Slot-id indicates the nth outgoing slot in the stack.

[0095] (2) Extend the BGP protocol to advertise the TQF path between the controller and the TQF domain ingress node Hi using BGP.

[0096] Add time slot resource information to each forwarding path in the message (such as BGP Update message) announced by the controller to the head node, and add time slot resource information to each forwarding path in the message (such as BGP-LS update message) announced by the head node to the controller.

[0097] In related technologies, draft-ietf-idr-sr-policy-safi-06 defines a scheme for advertising SR policies from the controller to the head node via BGP. In the advertising message, each path is represented using a separate Segment List Sub-TLV. In this embodiment, a Timeslot Resource Sub-TLV, as shown in Figure 6, is added to the Segment List Sub-TLV to provide time slot resource attributes for the corresponding paths. Figure 6 is a schematic diagram of the Timeslot Resource Sub-TLV of this embodiment. As shown in Figure 6, the interpretation of each field is similar to that in Figure 5 (except for the different lengths of the Type and Length fields and the different values ​​of Type), and the rest will not be described again.

[0098] In related technologies, draft-ietf-idr-bgp-ls-sr-policy-05 defines a scheme for announcing SR policies from the head node to the controller via BGP-LS. In the announcement message, each path is represented by a separate SR Segment List TLV. In this embodiment, a Timeslot Resource Sub-TLV as shown in Figure 5 is added to the SR Segment List TLV to provide time slot resource attributes for the corresponding path. The interpretation of each field is the same as before (except for the different value of Type), and the rest will not be repeated.

[0099] After the controller sends the first notification message to the ingress node (head node H1), the controller installs a second forwarding table entry on the head node H1 of the end-to-end path for the service flow. This entry contains forwarding information for each domain, and in one embodiment, it contains the Binding Label (or Binding SID) corresponding to the TQF path of the TQF domain.

[0100] In this embodiment of the disclosure, for traffic engineering paths (TE paths) of non-TQF domains, a Binding Label (or Binding SID) may be additionally assigned, and the TE path corresponding to the domain and the associated parameters for ensuring deterministic QoS may be included in the corresponding Binding Label (or Binding SID) entry.

[0101] In this embodiment of the disclosure, if a corresponding Binding Label is additionally allocated for each domain's deterministic forwarding path, the following forwarding table entries are installed on the head node H1 for the service flow:

[0102] match <flow-characteristics>

[0103] set<binding-label-1,binding-label-2,......,binding-label-n>

[0104] Here, `flow-characteristics` represents the characteristics of the service flow (such as source / destination addresses, etc.), and `binding-label-1`, `binding-label-2`, ..., `binding-label-n` are additionally assigned corresponding Binding Labels for the deterministic forwarding paths of domains 1, 2, ..., n. Of course, in the second forwarding table entry mentioned above, the TE path for some domains may use the original explicit route representation instead of Binding Labels.

[0105] After the control plane completes path calculation and time slot resource reservation, the forwarding plane encapsulates and forwards the packets.

[0106] In this embodiment of the disclosure, when a packet of a service flow arrives at the head node H1 of the end-to-end path and is matched with the corresponding second forwarding table entry, the packet is encapsulated with forwarding information corresponding to each domain at once according to the forwarding information provided by the second forwarding table entry.

[0107] In one embodiment, the above-mentioned tag stack is encapsulated for the message.<binding-label-1,binding-label-2,......,binding-label-n> And forward messages according to the label stack.

[0108] In this embodiment, the transmission behavior in non-TQF domains is not described in detail, but it is necessary to ensure that the actual transmission delay of each domain is consistent with the allocated delay budget. The following focuses only on the slot-based routing (TBRS) forwarding behavior in the TQF domain.

[0109] In this embodiment, when a packet is forwarded to the TQF domain, the first forwarding entry of the corresponding TQF path is matched according to the Binding Label / SID in the packet. Then, a timeslot interleaving entry is selected from the TQF path forwarding entry based on the packet's arrival time. The selection method is as follows: the ideal inbound timeslot of the selected entry is closest to the packet's arrival time, and the end of the ideal inbound timeslot is not earlier than the packet's arrival time. Based on the TQF path forwarding entry and the timeslot interleaving entry selected in the TQF path forwarding entry, information such as the specific path (i.e., which nodes or links are passed through), orchestration period length (OPL), and outbound timeslot stack is obtained. This information is then encapsulated in the packet, and the forwarding of the packet within the TQF domain is guided based on this information.

[0110] Example 2

[0111] Figure 7 is an example diagram of an end-to-end deterministic forwarding path according to an embodiment of the present disclosure. As shown in Figure 7, from the head node PE1 to the tail node PE2, the path passes through two domains that use different forwarding mechanisms: the EDF domain which uses the Earliest Deadline First (EDF) forwarding mechanism and the TQF domain which uses the TQF forwarding mechanism.

[0112] In this embodiment, the end-to-end transmission latency requirement of the carried service flow is assumed to be 5ms. Based on the topology of the two domains, the controller determines that the latency budget allocated to the EDF domain is 2ms and the latency budget allocated to the TQF domain is 3ms.

[0113] In this embodiment, the traffic specification TSpec of the service flow is assumed to be a periodic transmission of a 1000-bit packet every 500µs. PE1, as the access device for the service flow, is responsible for adjusting the traffic to meet the service flow's TSpec. Assuming the first packet of the service flow arrives at PE1 at time t0, then ideally, subsequent packets will be admitted into the network at times t0+1*500µs, t0+2*500µs, t0+3*500µs, and so on.

[0114] In this embodiment, an EDF path is calculated for the service flow within the EDF domain, and associated parameters are determined to ensure a 2ms transmission delay.

[0115] In this embodiment, the PE1 node can additionally allocate binding SID 1000 for the aforementioned EDF path and the associated parameters used to guarantee a 2ms transmission delay.

[0116] In this embodiment, the orchestration period used in the TQF domain is 1ms, containing 10 time slots, each with a length of 100us. This means that within one orchestration period, the service flow will have two packets (corresponding to sub-burst-1 and sub-burst-2 respectively) arriving in the TQF domain, provided that the EDF domain strictly guarantees that each packet experiences the same 2ms transmission delay. The ideal inbound time slot (assumed to be time slot #0) of the receiving interface of sub-burst-1 at the BR node (i.e., the entry node of the TQF domain) can be calculated based on t0+2ms. The ideal inbound time slot (assumed to be time slot #5) of the receiving interface of sub-burst-2 at the BR node can be calculated based on t0+1*500us+2ms. The TQF path is calculated, and an outbound time slot is allocated for each sub-burst along each hop of the path, ensuring that the transmission delay (including link propagation delay) of each sub-burst along the TQF path is 3ms. The final TQF path forwarding table entry is as follows:

[0117] TQF path from-BR-to-PE2

[0118] path<A,B,C,D>

[0119] OPL = 1ms

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

[0121] Time slot crossover entry 2: Ideal incoming time slot #5, outgoing time slot stack <#6,#7,#8,#9>;

[0122] In this embodiment, the BR node can additionally allocate binding SID 2000 for the aforementioned TQF path.

[0123] In this embodiment, the PE1 node can establish and install the following forwarding table entries for the service flow:

[0124] match<source,destination>

[0125] set<binding SID 1000,binding SID 2000>

[0126] In this embodiment, when a service flow packet arrives at the PE1 node, it will match the aforementioned forwarding table entry and be encapsulated.<binding SID 1000,binding SID 2000> Then, based on the binding SID 1000, the corresponding EDF path and associated parameters used to ensure transmission latency are mapped. The message will further encapsulate the information corresponding to the EDF path and associated parameters. Before this, the binding SID 1000 will be popped. Then it is sent into the EDF domain.

[0127] In this embodiment, when a packet is forwarded to the TQF domain, it is mapped to the aforementioned TQF path forwarding table entry according to binding SID 2000. Then, a slot crossover entry is selected from the TQF path forwarding table entry based on the packet's arrival time, satisfying the following conditions: the ideal inbound slot of the selected entry is closest to the packet's arrival time, and the end of the ideal inbound slot is not earlier than the packet's arrival time. The packet will further encapsulate specific path information.<A,B,C,D> The outgoing time slot stack is interleaved with the selected time slot entry, and binding SID 2000 is popped beforehand. Then it is sent into the TQF domain.

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

Claims

1. A routing method, comprising: The controller determines the timeslot cross-entry for each sub-burst of the target service flow, wherein each timeslot cross-entry includes an ideal inbound timeslot and an outbound timeslot stack, the ideal inbound timeslot being the ideal inbound timeslot of each sub-burst at the entry node of the timeslot queuing and forwarding domain, and the outbound timeslot stack including the outbound timeslot of each node of the traffic engineering path corresponding to each sub-burst, the traffic engineering path being the timeslot queuing and forwarding traffic engineering path; The controller sends a first notification message to the entry node of the time slot queuing and forwarding domain, so that the entry node constructs a first forwarding table entry based on the first notification message, wherein the first notification message includes the time slot cross-entry.

2. The method according to claim 1, wherein, The first notification message also includes: The flow engineering path; the orchestration cycle length of the flow engineering path.

3. The method according to claim 1, wherein, The controller determines the time slot cross-entry for each sub-burst of the target service flow, including: The controller determines the ideal inbound time slot for each of the sub-bursts in the time slot queuing and forwarding domain of the inbound node; Based on the ideal inbound timeslot of each sub-burst, the controller determines the outbound timeslot of the traffic engineering path corresponding to each sub-burst, and constructs the outbound timeslot stack to determine the timeslot crossover entries.

4. The method according to claim 3, wherein, The controller determines the ideal inbound time slot for each of the sub-bursts in the time slot queuing and forwarding domain of the inbound node, including: The controller determines the delay budget of the upstream domain of each slot queuing and forwarding domain, wherein the sum of the delay budgets is less than or equal to the transmission delay of the corresponding sub-burst; The controller determines the ideal inbound time slot based on the entry time of the first domain in the upstream domain and the delay budget.

5. The method according to claim 1, wherein, The controller sends a first notification message to the entry node of the time slot queuing and forwarding domain, including: The controller sends the first notification message to the entry node of the time slot queuing and forwarding domain through the path calculation unit communication protocol. The first notification message is carried in the time slot resource TLV of the path attribute object.

6. The method according to claim 1, wherein, The controller sends a first notification message to the entry node of the time slot queuing and forwarding domain, including: The controller sends the first notification message to the ingress node of the slot queuing and forwarding domain via the border gateway protocol. The first notification message is carried in the slot resource Sub-TLV of the segment list TLV.

7. The method according to claim 1, wherein, Also includes: The controller configures a second forwarding table entry for the entry node of the first domain in the upstream domain of the time slot queuing and forwarding domain, wherein the second forwarding table entry is a forwarding table entry that indicates the end-to-end path of the target service flow.

8. The method according to claim 7, wherein, The first forwarding entry and / or the second forwarding entry contain path identification information of the traffic engineering path.

9. The method according to claim 7, wherein, Also includes: The ingress node of the time slot queuing and forwarding domain receives a packet from the upstream domain, matches the first forwarding table entry with the path identifier information of the traffic engineering path carried in the packet, matches the corresponding ideal inbound time slot in the first forwarding table entry with the actual arrival time of the packet, determines the corresponding time slot cross-entry, and forwards the packet according to the outbound time slot stack in the time slot cross-entry.

10. A computer-readable storage medium storing a computer program, wherein, When the computer program is executed by a processor, it implements the steps of the method described in any one of claims 1 to 9.

11. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, performs the steps of the method according to any one of claims 1 to 9.

12. A computer program product comprising a computer program that, when executed by a processor, implements the steps of the method described in any one of claims 1 to 9.