Deterministic flow transmission method and device and network node

By deploying input interface units to identify and sort messages of deterministic flow in network nodes, the problem of out-of-order messages in deterministic networks is solved, and the sequence and network security of the same deterministic flow messages are realized.

CN119923827AActive Publication Date: 2025-05-02NEW H3C TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202380010501.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-05
Publication Date
2025-05-02
Estimated Expiration
2043-09-05

AI Technical Summary

Technical Problem

In the deterministic network domain, due to flexible programming requirements, the forwarding unit of the network device may cause the packets of the same deterministic stream to be out of order and cannot guarantee the order.

Method used

An input interface unit is deployed in a network node, which is used to identify the target deterministic flow matching the message and perform legality detection based on the target deterministic flow and message. The metadata is carried in the message through the input interface unit, including the sequence number, to ensure that the message is sorted before routing forwarding processing.

Benefits of technology

By sorting packets in advance before the original module of the network processor, ensure that the packets of the same deterministic stream remain in sequence and avoiding network attacks caused by out-of-order.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119923827A_ABST
    Figure CN119923827A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a deterministic flow transmission method, a deterministic flow transmission device and a network node. According to the embodiment of the invention, after the target deterministic flow matched with the message is identified, legality detection is carried out based on the target deterministic flow and the message; and the messages belonging to the target deterministic flow are sorted through the newly deployed input interface unit before the messages are processed by the original message routing and forwarding component of the NP when the legality detection is determined to be passed, so that the message sequence of the same deterministic flow is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Deterministic stream transmission method, device and network node

[0001] The present application relates to network communication technology, and in particular to a deterministic stream transmission method, device and network node.

[0002] In a deterministic network domain, in order to ensure the flexibility of forwarding, the forwarding units in the network processors (NPs) in network devices such as routers are required to be flexibly programmable, such as using the multi-core CPU program in the network device or the microcode of the NP to implement the flexible programming function. Figure 1 shows the structure of the forwarding unit in the NP. The forwarding unit here is implemented by software, and the rest can be implemented by hardware. The forwarding unit and the remaining hardware here are collectively referred to as the message routing and forwarding components.

[0003] In a specific implementation, the forwarding units can be executed concurrently. In this way, after the messages of the same deterministic flow are processed by the forwarding units concurrently and corresponding operations such as routing forwarding processing or service processing are performed, the messages may be out of order, and the order of the messages belonging to the same deterministic flow cannot be guaranteed.

[0004]

[0005] Embodiments of the present application provide a deterministic stream transmission method, device, and network node to ensure the sequence of messages belonging to the same deterministic stream.

[0006] The embodiment of the present application provides a deterministic stream transmission method, which is applied to a network node in a deterministic network, wherein the network node includes a network processor NP; the NP is newly deployed with an input interface unit or the network node is newly deployed with an input interface unit connected to the NP; the method includes:

[0007] Receive messages;

[0008] Identifying, through the input interface unit, a target deterministic flow matched by the message, and performing a legitimacy check based on the target deterministic flow and the message;

[0009] If the legitimacy check is passed, metadata matching the message is determined through the input interface unit and according to the target deterministic flow, the metadata at least including: a sequence number assigned to the message based on the target deterministic flow, the sequence number being used to indicate the order in which the messages belonging to the target deterministic flow are received by the node, and the metadata is carried in the message through the input interface unit and transmitted to the original message routing and forwarding component deployed in the NP for routing and forwarding processing;

[0010] If the validity check fails, the message is discarded, or the attribute of the data flow to which the message belongs is modified and the message is transmitted based on the modified attribute, wherein the modified attribute is used to instruct the message to switch from the target deterministic flow to which it belongs to to a best-effort flow.

[0011] An input interface unit, which is applied to a network node, comprises: a data packet parsing module and a control logic module;

[0012] The data packet parsing module is used to parse out parameters for identifying deterministic flows from the message and pass them to the control logic module;

[0013] The control logic module is used to identify the target deterministic flow matched by the message based on the parameter, and perform legitimacy detection based on the target deterministic flow and the message;

[0014] If the legitimacy check is passed, metadata matching the message is determined according to the target deterministic flow, where the metadata at least includes: a sequence number assigned to the message based on the target deterministic flow, where the sequence number is used to indicate the order in which the messages belonging to the target deterministic flow are received by the node, and the metadata is carried in the message and transmitted to the original message routing and forwarding component deployed in the NP for routing and forwarding processing;

[0015] If the validity check fails, the message is discarded, or the attribute of the data flow to which the message belongs is modified and the message is transmitted based on the modified attribute, wherein the modified attribute is used to instruct the message to switch from the target deterministic flow to which it belongs to to a best-effort flow.

[0016] An electronic device, comprising:

[0017] A processor and a machine-readable storage medium storing machine-executable instructions that can be executed by the processor;

[0018] The processor is used to execute machine executable instructions to implement the steps in the above method.

[0019] It can be seen from the above technical solution that in the embodiment of the present application, after identifying the target deterministic flow that matches the message, a legitimacy check is performed based on the target deterministic flow and the message, and when it is determined that the legitimacy check has passed, the message belonging to the target deterministic flow is sorted in advance through the newly deployed input interface unit before the original message routing and forwarding component of the NP processes the message, so as to ensure the sequence of messages in the same deterministic flow.

[0020] Furthermore, when the present embodiment performs a legitimacy check based on the target deterministic flow and the message and finds that the legitimacy check fails, the message is discarded or the attributes of the data flow to which the message belongs are modified to forward the message originally belonging to the above-mentioned target deterministic flow in a best-effort flow forwarding manner, thereby ultimately avoiding attacks on network nodes by deterministic flows.

[0021] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0022] FIG1 is a schematic diagram of the structure of NP in a network node;

[0023] FIG2 is a network structure diagram of a network node provided in an embodiment of the present application;

[0024] FIG3 is another network structure diagram of network nodes provided in an embodiment of the present application;

[0025] FIG4 is a flow chart of a method provided in an embodiment of the present application;

[0026] FIG5 is a diagram of an improved structure of a network node provided in an embodiment of the present application;

[0027] FIG6 is an abstract diagram of an improved structure of a network node provided in an embodiment of the present application;

[0028] FIG7 is a schematic diagram of a message processing mechanism within a network node provided in an embodiment of the present application;

[0029] FIG8 is another schematic diagram of a message processing mechanism within a network node provided in an embodiment of the present application;

[0030] FIG. 9 is a structural diagram of an electronic device provided in an embodiment of the present application.

[0031] Here, exemplary embodiments will be described in detail, and examples thereof are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Instead, they are only examples of devices and methods consistent with some aspects of the present application.

[0032] The terms used in this application are for the purpose of describing specific embodiments only and are not intended to limit this application. The singular forms "a", "said" and "the" used in this application are also intended to include plural forms, unless the context clearly indicates other meanings.

[0033] In order to ensure the order of messages belonging to the same deterministic flow, the embodiments of the present application will improve the network nodes used to copy messages, specifically: an input interface unit for docking with NP is newly deployed at the network node, or an input interface unit is newly deployed at NP. Figure 2 shows an example of the structure of a network node deployed with an input interface unit for docking with NP. Figure 3 shows an example of the structure of a newly deployed input interface unit on the basis of the existing NP. In this embodiment, the input interface unit processes the message received by the network node before the original module in the NP (collectively referred to as the message routing and forwarding component), as shown in the process shown in Figure 4. The network nodes here are, for example, the ingress node (Ingress PE) where the message enters the deterministic network, the P node, and the network node specified by the controller, etc., which are not specifically limited in this embodiment.

[0034] Based on the above description, the method provided in the embodiment of the present application is described below:

[0035] See Figure 4, which is a flow chart of a method provided by an embodiment of the present application. The flow chart is applied to the improved network node described above. As shown in Figure 4, the method may include the following steps:

[0036] Step 401, receiving a message.

[0037] Step 402, identifying the target deterministic flow matched by the message through the input interface unit, and performing a legitimacy check based on the target deterministic flow and the message. If the legitimacy check passes, execute step 403, otherwise, execute step 404.

[0038] In this embodiment, the input interface unit can accurately identify which deterministic flow the message belongs to (ie, the target deterministic flow matched by the message). As for how to accurately identify the target deterministic flow matched by the message, an example will be given below and will not be repeated here.

[0039] In this embodiment, the reason for performing the legitimacy check is mainly because the processing of the deterministic flow is better than the best-effort flow. Once the access device of the deterministic flow is abnormal, it may impact the above network nodes. To avoid such impact, after the input interface unit identifies the target deterministic flow matched by the message, the legitimacy check will be further performed based on the target deterministic flow and the message.

[0040] As an embodiment, the above-mentioned legitimacy detection based on the target deterministic flow and the message can be implemented in many ways. For example, at least one of the following detections is included: message length detection (specifically, it can be: detecting whether the length of the message meets the set length required by the target deterministic flow, if yes, it is determined that the message passes the legitimacy detection, if no, it is determined that the message fails the legitimacy detection), based on each received message belonging to the above-mentioned target deterministic flow, Meter performance detection of the target deterministic flow (specifically, it can be detecting whether the message receiving speed within a period of time meets the set speed, if yes, it is determined that the message passes the legitimacy detection, if no, it is determined that the message fails the legitimacy detection), etc., which are not specifically limited in this embodiment.

[0041] Step 403: Determine metadata matching the above message through the input interface unit and based on the target deterministic flow, the metadata at least includes: a sequence number assigned to the above message based on the target deterministic flow, the sequence number is used to indicate the order in which the node receives the messages belonging to the above target deterministic flow, and carry the metadata in the message through the input interface unit and pass it to the original message routing and forwarding component that has been deployed in the NP for routing and forwarding processing.

[0042] In this embodiment, the node records the total number of messages belonging to each deterministic flow that the node has received through a register. Based on this, the sequence number may be the sum of the total number of messages belonging to the target deterministic flow that the node has received recorded in the register and a set value such as 1. This will be described below with examples, which will not be repeated here.

[0043] Once the metadata including at least the above-mentioned message sequence number is determined, the input interface unit will carry the metadata in the message and pass it to the original message routing and forwarding component deployed in the NP for routing and forwarding processing. This is equivalent to determining the sequence number of the message before the original message routing and forwarding component deployed in the NP processes the message, thereby ensuring the order of the messages belonging to the same deterministic flow.

[0044] Step 404: discard the message, or modify the attribute of the data flow to which the message belongs and transmit the message based on the modified attribute, wherein the modified attribute is used to indicate that the message is switched from the target deterministic flow to which it belongs to to a best-effort flow.

[0045] This step 404 is performed on the premise that the legitimacy check of step 402 has not been passed. Once the legitimacy check of step 402 has not been passed, it means that the message belonging to the above-mentioned target deterministic flow at this time may attack the above-mentioned network node due to the characteristics of the deterministic flow itself (such as the characteristics that the deterministic flow takes precedence over the best-effort flow, etc.). To avoid the above-mentioned attack, this step 404 will discard the message, or modify the attributes of the data flow to which the message belongs and transmit the above-mentioned message based on the modified attributes. Here, the modified attributes are used to indicate that the message is switched from the target deterministic flow to which it belongs to to the best-effort flow. In this way, through step 404, the message originally belonging to the above-mentioned target deterministic flow can be forwarded in the forwarding mode of the best-effort flow to avoid the attack of the deterministic flow on the above-mentioned network node.

[0046] As an embodiment, modifying the attributes of the data flow to which the message belongs may be: modifying the service-level agreement (SLA) category of the message, for example, when the message belongs to a target deterministic flow, the SLA category of the message is S1, and when the message belongs to a best-effort flow, the SLA category of the message is S2, and S2 is less than S1, thereby ultimately switching the message from the target deterministic flow to which it belongs to to a best-effort flow.

[0047] At this point, the process shown in FIG. 4 is completed.

[0048] Through the process shown in Figure 4, after identifying the target deterministic flow that the message matches, a legitimacy check can be performed based on the target deterministic flow and the message, and when it is determined that the legitimacy check has passed, the message belonging to the target deterministic flow can be sorted in advance through the newly deployed input interface unit before the original message routing and forwarding component of the NP processes the message, so as to ensure the order of the messages in the same deterministic flow.

[0049] Furthermore, when the present embodiment performs a legitimacy check based on the target deterministic flow and the message and finds that the legitimacy check fails, the message is discarded or the attributes of the data flow to which the message belongs are modified to forward the message originally belonging to the above-mentioned target deterministic flow in a best-effort flow forwarding manner, thereby ultimately avoiding attacks on network nodes by deterministic flows.

[0050] Based on the process shown in FIG4, FIG5 shows the corresponding structure diagram in an abstract manner. As shown in FIG5, after the message enters the input interface unit of the network node, the input interface unit performs the processing of steps 402 to 404 as above on the message, and the message and the metadata matched by the input interface unit are transmitted to one of the message routing and forwarding components of the NP in the network node, such as a pipeline scheduling unit. The pipeline scheduling unit schedules the message according to the metadata (such as the message with the highest SLA value in the metadata is preferentially scheduled) to one of the message routing and forwarding components of the NP, such as the input pipeline unit, and the input pipeline unit performs message encapsulation (such as adding tunnel information) and other processing on the message. The input pipeline unit transmits the processed message to another message routing and forwarding component, such as a switching unit, and the switching unit performs data packet replication of the message. Based on the processing of the input interface unit described above, here, the message from the output of the input interface unit to the input of the switching unit realizes the message sorting function. After the switching unit replicates the data packet, it is switched to the output pipeline processing unit where each output interface is located for further processing. Here, the output pipeline processing unit is mainly responsible for quality of service (QoS) scheduling and internal transmission channel selection, and is handed over to the output interface unit through different transmission channels, so that the output interface unit can schedule the messages belonging to the deterministic flow or perform synthetic scheduling of the messages belonging to the deterministic flow and the messages belonging to the best-effort flow.

[0051] It should be noted that this embodiment focuses on the ordering of messages, and other operations are similar to existing operations. Therefore, for ease of understanding, the structural diagram shown in Figure 5 can be simplified to the structural diagram shown in Figure 6. As shown in Figure 6, after the input interface unit accurately identifies the target deterministic flow matched by the message, a legitimacy check is performed based on the message, and when the legitimacy check is passed, the input interface unit determines the metadata that matches the message based on the target deterministic flow. After that, the input interface unit passes the metadata along with the message to the pipeline scheduling unit, and the pipeline scheduling unit schedules the message according to the metadata (for example, the message with the highest SLA value in the metadata is prioritized); after the metadata and the message are scheduled by the pipeline scheduling unit to enter the corresponding pipeline, the corresponding input pipeline unit encapsulates the message according to the protocol regulations. After that, it can be processed according to the existing process.

[0052] It should be noted that the input interface unit involved in Figures 4 to 6 needs to identify the target deterministic flow matched by the message and perform legitimacy detection based on the message, which requires the input interface unit to have sufficient resources to parse the message and provide strong programmability. In addition, since the input interface unit also needs to further determine the metadata that matches the message based on the target deterministic flow (this can be achieved through ACL), this requires the input interface unit to provide ACL capabilities of sufficient scale.

[0053] Optionally, as an embodiment, in this embodiment, in a scenario where the network node deploys an input interface unit that connects to the NP in the network node, the input interface unit at this time can be implemented through an FPGA or a programmable switching chip; and under the premise that the input interface unit is deployed in the NP in the network node, the input interface unit at this time can be integrated into the NP. Taking the implementation of the NP through ASIC as an example, the input interface unit at this time can be integrated into the ASIC.

[0054] For ease of understanding, Figure 7 illustrates an example of how the input interface unit, taking FPGA as an example, cooperates with NP to implement the networking structure of message transmission under the premise that the network node deploys the input interface unit for connecting to NP. Figure 8 illustrates an example of how the NP integrated input interface unit implements the networking structure of message transmission.

[0055] In FIG. 7 and FIG. 8 , the structure of the input interface unit is similar, and may include: a data packet parsing module (Parser) and a control logic module (ControlLogic).

[0056] Among them, Parser is used to parse the header vector (Header Vector) from the message and pass it to ControlLogic. Header Vector includes parameters for identifying deterministic flows, such as: 1) the message quintuple and DSCP applicable to IPv4 messages and IPv6 messages; 2) the flow label (Flow Label) applicable to IPv4 messages; 3) the forwarding label (Forwarding Label) and service label (Service Label) applicable to MPLS messages or PREOF implemented using MPLS.

[0057] It should be noted that, in this embodiment, the bit width of each field of the Header Vector complies with the protocol regulations, such as the source IP address of IPv4 occupies 32 bits, the source IP address of IPv6 occupies 128 bits, etc. At the same time, the Header Vector also includes a vector field valid indication bit (ValidFlag) for indicating whether each vector field in the Header Vector is valid. When the corresponding bit of the ValidFlag is a set value, such as 1, it indicates that each vector field in the Header Vector is valid.

[0058] ControlLogic is used to use the Header Vector to identify the target deterministic flow that the message matches in the configured deterministic flow table.

[0059] As an embodiment, the deterministic flow table here is implemented by an ACL table (ACL Table), which mainly includes the correspondence between the flow feature keyword and the deterministic flow identifier. Here, the flow feature keyword may include at least one parameter carried by the above-mentioned Header Vector. Based on this, this embodiment uses at least one parameter carried by the above-mentioned Header Vector as a keyword to find the corresponding deterministic flow identifier in the ACL table, and finally realizes the identification of the target deterministic flow matched by the message.

[0060] In this embodiment, the deterministic flow table may also be implemented by an ACL table, which may further include:

[0061] Local Flow ID (LocalFlowID), used to map the hardware resources of NP and subsequent processing stages;

[0062] SLA;

[0063] Global flow / aggregated flow ID (GlobalFlowID / AggregatedFlowID);

[0064] Based on this, this embodiment can obtain the above-mentioned deterministic flow information in all ACL tables that have been obtained as deterministic flow information tables according to the target deterministic flow.

[0065] In this embodiment, LocalFlowID can be associated with a corresponding register information table also called an input flow table (Input Flow Table). The Input Flow Table is generally indexed by LocalFlowID and maintains at least the following parameters: 1) Flow sequence number register address, the corresponding flow sequence number register is used to accumulate the number of messages belonging to the above-mentioned target deterministic flow received by this node, so as to assign corresponding sequence numbers to the messages; 2) Meter register address: the corresponding meter register is used to measure the message traffic through the token bucket mechanism; 3) Statistical information register address: the corresponding statistical register is used to count messages, such as the number of received messages, the number of bytes, the number of lost packets, and the packet loss statistics; 4) Legal length check threshold: for example, the legal length check is performed with the maximum receiving unit length as the upper limit; 5) Traffic over-limit threshold, in bps; 6) Burst length threshold; 7) Related policies, such as the policy adopted for packets of illegal length, such as discarding and counting, modifying the attributes of the data flow to which the message belongs, and the modified attributes are used to indicate that the message is switched from the target deterministic flow to which it belongs to a best-effort flow (which can be achieved by lowering the message SLA level, for example).

[0066] Based on the Input Flow Table, in this embodiment, ControlLogic can perform at least one of the following legitimacy checks based on the message: for example, based on the Meter register address, obtain the corresponding Meter register, measure the message traffic through the token bucket mechanism to obtain the measurement result, and perform Meter performance detection based on the measurement result; based on the legitimacy length check threshold value and the traffic excess threshold value, perform legitimacy length check and traffic excess check on the message respectively; when the length of the message changes compared to the length of other messages belonging to the target deterministic flow, perform a burst length check on the length of the message based on the burst length threshold value, etc.

[0067] When it is found that the legitimacy check fails, the message is processed based on the above-mentioned relevant strategies, such as discarding the above message, or modifying the attributes of the data flow to which the above message belongs and transmitting the above message based on the modified attributes. The modified attributes are used to indicate that the message is switched from the target deterministic flow to which it belongs to to a best-effort flow.

[0068] When it is found that the legitimacy check has passed, ControlLogic is further used to determine the metadata that matches the message based on the target deterministic flow. For example, ControlLogic searches for the flow sequence number register address in the register information table based on the local flow ID; obtains the flow sequence number register corresponding to the flow sequence number register address to assign the corresponding sequence number to the above message received by this node, and determines the metadata that matches the above message based on the sequence number. Here, determining the metadata that matches the message based on the sequence number may include: using the above sequence number, the above SLA, etc. as metadata that matches the above message.

[0069] In Figure 7, after determining the metadata, ControlLogic will send the metadata and the message together to the Input Class Unit in the NP, so that the Input Class Unit knows the SLA in the metadata and maps it to the corresponding SLA queue in the Processor Management Unit. It should be noted that the Input Class Unit in the NP only has a simple message recognition function, such as parsing the message from a fixed offset position, identifying fixed IPv4 / IPv6 format messages, and prioritizing according to a certain field value, etc., but the message parsing ability is very weak. It cannot recognize the metadata of the message, nor can it distinguish the SLA of the message in the metadata. This requires the input interface unit to adapt to the Input Class Unit so that the Input Class Unit can recognize the SLA of the message.

[0070] In Figure 8, since the input interface unit is integrated into the NP, the input interface unit and the pipeline scheduling unit (Processor Management Unit) in the NP omit the above-mentioned Input Class Unit, and the ControlLogic in the input interface unit will directly cooperate with the pipeline scheduling unit (Processor Management Unit) in the NP, completely freed from the SLA classification processing, greatly simplifying the processing complexity and improving the processing capacity. In the processing link, it can prioritize the scheduling of messages with high SLA levels to avoid high-priority and high-real-time flows being annihilated by low-priority or low-real-time flow data.

[0071] As an embodiment, the embodiment of the present application also provides a hardware structure of a network node. See Figure 9, which is a structural diagram of an electronic device provided in an embodiment of the present application. As shown in Figure 9, the hardware structure may include: a processor and a machine-readable storage medium, the machine-readable storage medium storing machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the method disclosed in the above example of the present application.

[0072] Based on the same application concept as the above method, an embodiment of the present application also provides a machine-readable storage medium, on which a number of computer instructions are stored. When the computer instructions are executed by a processor, the method disclosed in the above example of the present application can be implemented.

[0073] Exemplarily, the above-mentioned machine-readable storage medium can be any electronic, magnetic, optical or other physical storage device that can contain or store information, such as executable instructions, data, etc. For example, the machine-readable storage medium can be: RAM (Radom Access Memory), volatile memory, non-volatile memory, flash memory, storage drive (such as hard disk drive), solid state drive, any type of storage disk (such as optical disk, DVD, etc.), or similar storage medium, or a combination thereof.

[0074] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, which may be in the form of a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email transceiver, a game console, a tablet computer, a wearable device or a combination of any of these devices.

[0075] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0076] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the embodiments of the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0077] The present application is described with reference to the flowchart and / or block diagram of the method, device (system) and computer program product according to the embodiment of the present application. It should be understood that each flow process and / or box in the flow chart and / or block diagram and the combination of the flow chart and / or box in the flow chart and / or block diagram can be realized by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processing machine or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for realizing the function specified in one flow chart or multiple flows and / or one box or multiple boxes of the block diagram.

[0078] Moreover, these computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0079] These computer program instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0080] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

A deterministic stream transmission method, characterized in that: The method is applied to a network node in a deterministic network, the network node comprising a network processor NP; the NP is newly deployed with an input interface unit or the network node is newly deployed with an input interface unit connected to the NP; the method comprises: receiving a message; identifying a target deterministic flow matched by the message through the input interface unit, and performing a legitimacy check based on the target deterministic flow and the message; if the legitimacy check is passed, determining metadata matching the message through the input interface unit and based on the target deterministic flow, the metadata at least comprising: a sequence number assigned to the message based on the target deterministic flow, the sequence number being used to indicate the order in which the node receives messages belonging to the target deterministic flow, carrying the metadata in the message through the input interface unit and transmitting it to an existing message routing and forwarding component that has been deployed in the NP for routing and forwarding processing; if the legitimacy check is not passed, discarding the message, or modifying the attributes of the data flow to which the message belongs and transmitting the message based on the modified attributes, the modified attributes being used to indicate that the message is switched from the target deterministic flow to which it belongs to to a best-effort flow. The method according to claim 1, characterized in that The NP is implemented by ASIC, and the newly deployed input interface unit of the NP is integrated into the ASIC; or, on the premise that the network node has deployed an input interface unit connected to the NP, the input interface unit is implemented by FPGA. The method according to claim 1, characterized in that The identifying the target deterministic flow matched by the message through the input interface unit includes: parsing a header vector Header Vector from the message through the input interface unit; the Header Vector includes parameters for identifying the deterministic flow; based on the parameters, identifying the target deterministic flow matched by the message in a configured deterministic flow table. The method according to claim 3, characterized in that The parameter included in the Header Vector for identifying the deterministic flow is at least one of the following parameters: a message quintuple and DSCP applicable to IPv4 messages and IPv6 messages; Flow Label for IPv4 packets; Forwarding Label and Service Label applicable to MPLS packets or PREOF implemented using MPLS. The method according to claim 1, characterized in that The legitimacy detection based on the target deterministic flow and the message includes: performing at least one of the following detections based on the target deterministic flow and the message: detecting whether the message length of the message meets the set length required by the target deterministic flow; and performing a meter performance detection on the target deterministic flow based on each received message belonging to the target deterministic flow. The method according to claim 1, characterized in that The target deterministic flow has corresponding deterministic flow information, and the deterministic flow information at least includes: local flow ID, service level category SLA, global flow / aggregate flow ID; the metadata matching the message based on the target deterministic flow is determined including: searching the flow sequence number register address in the register information table based on the local flow ID; the flow sequence number register corresponding to the flow sequence number register address is controlled to assign a corresponding sequence number to the message belonging to the target deterministic flow received by this node; the flow sequence number register corresponding to the flow sequence number register address is obtained to assign a corresponding sequence number to the message, and the metadata matching the message is determined based on the sequence number. An input interface unit, characterized in that: The input interface unit is applied to a network node, and includes: a data packet parsing module and a control logic module; the data packet parsing module is used to parse parameters for identifying a deterministic flow from a message and pass them to the control logic module; the control logic module is used to identify a target deterministic flow matched by the message based on the parameters, and perform a legitimacy check based on the target deterministic flow and the message; if the legitimacy check is passed, metadata matching the message is determined according to the target deterministic flow, and the metadata at least includes: a sequence number assigned to the message based on the target deterministic flow, the sequence number is used to indicate the order in which the node receives the messages belonging to the target deterministic flow, and the metadata is carried in the message and passed to the original message routing and forwarding component deployed in the NP for routing and forwarding processing; if the legitimacy check is not passed, the message is discarded, or the attribute of the data flow to which the message belongs is modified and the message is transmitted based on the modified attribute, and the modified attribute is used to indicate that the message is switched from the target deterministic flow to which it belongs to to a best-effort flow. The input interface unit according to claim 7, characterized in that: If the input interface unit is connected to the existing NP of the network node, the control logic module passes the metadata together with the data packet to the input classification unit in the NP; the input interface unit is adapted to the input classification unit to assist the input classification unit in identifying the SLA of the message carried by the metadata, and the input classification unit passes the message to the SLA queue in the pipeline scheduling unit in the NP based on the identified SLA; if the input interface unit is integrated into the NP, the control logic module passes the metadata together with the data packet to the SLA queue in the pipeline scheduling unit in the NP. The input interface unit according to claim 7, characterized in that: The NP is implemented by an ASIC, and a newly deployed input interface unit of the NP is integrated into the ASIC; or, on the premise that the input interface unit is connected to the NP, the input interface unit is implemented by an FPGA. The input interface unit according to claim 7, characterized in that: The parameter used to identify the deterministic flow is a parameter carried by the header vector in the message; based on the parameter, the control logic module identifies the target deterministic flow matched by the message in the configured deterministic flow table. The input interface unit according to claim 7, characterized in that: The parameter used to identify the deterministic flow is at least one of the following parameters: a message quintuple and DSCP applicable to IPv4 messages and IPv6 messages; Flow Label for IPv4 packets; Forwarding Label and Service Label applicable to MPLS packets or PREOF implemented using MPLS. The input interface unit according to claim 7, characterized in that: The control logic module performs legitimacy detection based on the target deterministic flow and the message, including: performing at least one of the following detections based on the target deterministic flow and the message: detecting whether the message length of the message meets the set length required by the target deterministic flow; and performing a meter performance detection on the target deterministic flow based on each received message belonging to the target deterministic flow. The input interface unit according to claim 7, characterized in that: The target deterministic flow has corresponding deterministic flow information, and the deterministic flow information at least includes: local flow ID, service level category SLA, global flow / aggregate flow ID; the control logic module determines the metadata matching the message based on the target deterministic flow, including: searching the flow sequence number register address in the register information table based on the local flow ID; the flow sequence number register corresponding to the flow sequence number register address is controlled to assign a corresponding sequence number to the message belonging to the target deterministic flow received by this node; the flow sequence number register corresponding to the flow sequence number register address is obtained to assign a corresponding sequence number to the message, and the metadata matching the message is determined based on the sequence number. An electronic device, characterized in that: The electronic device comprises: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the steps in any method according to claims 1 to 6.

Citation Information

Patent Citations

  • Message order-preserving processing method, order-preserving coprocessor and network equipment

    CN102204183A

  • Information transmission method and device, computer storage medium and terminal

    CN109787919A

  • Index measurement method and device, electronic equipment and storage medium

    CN116545885A

  • Message transmission method and network equipment

    CN116686272A

  • System and method for re-sequencing data packets on a per-flow basis

    US20040143593A1