Message processing method and system, electronic equipment and computer storage medium

By performing message sharding processing in a deterministic network based on the bandwidth requirements of the service message flow and the scheduling cycle of the edge node, the delay and jitter problems caused by super long messages in the network are solved, and stable message transmission is achieved.

CN119172329APending Publication Date: 2024-12-20ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310740975.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-20
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In deterministic networks, because the entire network cycle mapping relationship is not controlled, the bandwidth over-allocation problems caused by ultra-long packets, resulting in uncontrollable delay and jitter.

Method used

By obtaining the message characteristics of the service message flow in the controller, including the service bandwidth requirements and the maximum message length, the maximum allowable message length is determined based on the scheduling cycle of the edge node, and the maximum allowable message length is less than the maximum message In the case of text length, the service message flow is subject to bandwidth reservation deduction processing, and the sharding command is sent to the edge node. The edge node slices the service message flow according to the sharding command and puts the sharding message in. Processed in multiple periodic queues.

Benefits of technology

It avoids periodic queue overflow of edge nodes, reduces uncontrollable delay and jitter phenomena, and improves network stability and controllability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172329A_ABST
    Figure CN119172329A_ABST
Patent Text Reader

Abstract

The invention discloses a message processing method and system, electronic equipment and a computer storage medium, and the message processing method comprises the steps: obtaining a message feature of a service message flow, the message feature comprising a service bandwidth demand and a maximum message length; determining the maximum allowable message sending length according to the service bandwidth requirement and the scheduling period of the edge node; and under the condition that the maximum allowable message sending length is smaller than the maximum message length, bandwidth reservation deduction processing is carried out on the service message flow, a fragmentation instruction is sent to the edge node, the edge node carries out fragmentation processing on the service message flow according to the fragmentation instruction, and the fragmentation processing is carried out on the service message flow according to the fragmentation instruction. And according to the plurality of period queues, processing the fragmented messages after fragmentation processing. According to the method and the device, the occurrence of uncontrollable time delay and jitter phenomena caused by periodic queue overflow of nodes in a deterministic network can be avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a message processing method, system, electronic equipment and computer storage medium. Background Art

[0002] In the deterministic periodic scheduling of a deterministic network, the service carrying capacity of each period is fixed. However, since the periodic mapping relationship of the entire network is uncontrolled, there will be bandwidth over-allocation problems caused by over-long messages. Figure 1 As shown in the figure, the service flows sent from nodes A and E converge at node C and just fall into the same scheduling cycle queue 3 of node C. However, the 3 scheduling cycle queues of node C are not enough to carry these two messages, which will cause uncontrollable delay and jitter. To avoid this defect, the whole packet scheduling method is currently adopted. However, when encountering low-bandwidth and long messages, this method occupies a large amount of bandwidth in an instant. Because it is a message, it cannot be adjusted to different queues, resulting in exceeding its scheduling capacity, resulting in uncontrollable delay and jitter. Summary of the invention

[0003] The main purpose of the present invention is to provide a message processing method, system, electronic device and computer storage medium, aiming to solve the technical problem of how to avoid the overflow of the periodic queue of nodes in a deterministic network, which leads to the occurrence of uncontrollable delay and jitter.

[0004] To achieve the above object, the present application provides a message processing method, which is applied to a controller connected to an edge node in a deterministic network, comprising:

[0005] Acquire message characteristics of the service message flow, wherein the message characteristics include service bandwidth requirements and maximum message length;

[0006] Determine the maximum allowed length of the sent message according to the service bandwidth requirement and the scheduling period of the edge node;

[0007] When the maximum allowed sent message length is less than the maximum message length, bandwidth reservation deduction processing is performed on the service message flow, and a fragmentation instruction is sent to the edge node, wherein the edge node fragments the service message flow according to the fragmentation instruction, and processes the fragmented messages after fragmentation according to multiple periodic queues.

[0008] In addition, to achieve the above-mentioned purpose, the present application provides a message processing method, which is applied to an edge node connected to a controller in a deterministic network, including:

[0009] Slice the service message flow according to the received fragmentation instruction to obtain fragmented messages, wherein the fragmentation instruction is an instruction sent by the controller when the maximum allowed message length is less than the maximum message length of the service message flow, and the maximum allowed message length is a message length determined according to the service bandwidth requirement of the service message flow;

[0010] The fragment messages are encapsulated, and according to the fragment order of the fragment processing, the encapsulated fragment messages are sequentially put into the periodic queue of the edge node for processing.

[0011] In addition, to achieve the above-mentioned purpose, the present application provides a message processing system, including a controller and an edge node connected to each other in a deterministic network,

[0012] The controller is configured to obtain message features of a service message flow, wherein the message features include a service bandwidth requirement and a maximum message length; determine a maximum allowed message length to be sent according to the service bandwidth requirement and a scheduling period of the edge node; and perform bandwidth reservation deduction processing on the service message flow when the maximum allowed message length to be sent is less than the maximum message length, and send a fragmentation instruction to the edge node;

[0013] The edge node is configured to perform fragment processing on the service message flow according to the received fragmentation instruction to obtain fragmented messages; encapsulate the fragmented messages, and according to the fragmentation order of the fragmentation processing, sequentially put the encapsulated fragmented messages into multiple cycle queues of the edge node for processing.

[0014] In addition, to achieve the above-mentioned purpose, the present application also provides an electronic device, which includes: a memory, a processor, and a message processing program stored in the above-mentioned memory and executable on the above-mentioned processor, and when the above-mentioned message processing program is executed by the above-mentioned processor, the steps of the message processing method as described above are implemented.

[0015] In addition, to achieve the above-mentioned purpose, the present application also provides a computer storage medium, on which a message processing program is stored, and when the message processing program is executed by a processor, the steps of the message processing method as described above are implemented.

[0016] The embodiment of the present application determines the maximum allowed length of a sent message in a controller according to the service bandwidth demand of the service message flow and the scheduling cycle of the edge node, and performs bandwidth reservation deduction processing when the maximum allowed length of a sent message is less than the maximum message length of the service message flow, and sends a fragmentation instruction to the edge node, so that the edge node fragments the service message flow according to the fragmentation instruction, thereby achieving the goal of not needing to perform full network cycle orchestration, only needing to perform bandwidth reservation deduction processing in the controller, and performing fragmentation processing in the edge node, so that multiple cycle queues can respectively process the fragmented messages after fragmentation processing, so as to avoid the edge node receiving the service data flow. The instantaneous message is too long, causing the node's cycle queue to overflow, resulting in uncontrollable delay and jitter. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 Schematic diagram of node periodic queue conflicts in a deterministic network;

[0018] Figure 2 Schematic diagram of node periodic queue scheduling in a deterministic network;

[0019] Figure 3 It is a schematic diagram of the networking of each node in a deterministic network;

[0020] Figure 4 This is a flow chart of the first embodiment of the message processing method of the present application;

[0021] Figure 5 This is a flow chart of the fragmentation processing of the business message process in the message processing method of this application;

[0022] Figure 6 This is a flow chart of the second embodiment of the message processing method of the present application;

[0023] Figure 7 This is a flow chart of the third embodiment of the message processing method of the present application;

[0024] Figure 8 This is a schematic diagram of the device structure of the hardware operating environment involved in the message processing method of this application.

[0025] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings in conjunction with the embodiments. DETAILED DESCRIPTION

[0026] It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.

[0027] Deterministic network technology is one of the supporting technologies for future 6G communications. Currently, standardization-related work is being carried out in multiple standard organizations. In packet data communication scenarios, in order to ensure low-latency and low-jitter service requirements, different methods are adopted in different scenarios. Among them, in wide area networks and local area networks, a scheduling method based on time periods is used. Optionally, the time period has only one fixed time size, or when there are multiple time periods, different time scheduling periods are required to meet the power of 2, for example: 1T, 2T, 4T, 8T, where T represents a time size, for example, T=10us can be set, where us is microseconds. Corresponding to each time period, there is a series of queues to support it, for example, such as Figure 2 As shown, the scheduling period corresponding to port queues Q1, Q2 to Q8 is 1T. The scheduling period corresponding to port queues Q9, Q10 to Q12 is 2T. The scheduling period corresponding to port queues Q13-Q14 is 4T. Among them, the queue length of each category is different. According to the port rate R = 10Gbps, T = 10us, the queue length of Q1-Q8 is QL = 100000bit, the queue length of Q9-Q12 is QL = 200000bit, and the queue length of Q13-Q14 is QL = 400000bit.

[0028] In the forwarding process of a deterministic network, for example, Figure 3As shown in the figure, there is a control unit (such as an external controller), five nodes PE1, PE2, PE3, PE4 and PE5. There are service flows flow1, flow2, flow3, flow_n. And P1 and interface 1 set on P1. When calculating the path, the path is arranged according to parameters such as bandwidth. Assume that the port rate R from node P1 to node PE4 is R = 10Gbps, and there are 100 service flows close to 100M passing through. If it is assumed that the service flow is an 8K video stream, a 1500-byte message is sent every 125us, which is 8000*1500*8=96000000bps, close to 100M. The calculation of the service flow bandwidth here is based on the second-level time window. If it is put at the 10us level, the instantaneous service flow is very large. If the expected service flow flow1 is 100Mbps as shown by the dotted line, it is continuously sent at 100Mbps. However, in fact, the service sends a large (1500 bytes) message every 125us. If the interface from PE1 to P1 is a 10Gbps interface, its actual sending rate is 10Gbps, which lasts for about 1.2us. Most of the time, there are no data packets for this service. Even if the speed is limited on the inbound interface of PE1, due to the full packet sending and receiving characteristics of Ethernet, the internal PE1 still waits for the complete message to be received before sending it from the outbound interface. At this time, it is still reflected as an instantaneous high-burst service flow on the outbound interface. This feature brings a queue overflow problem under the periodic scheduling mechanism. For interface 1 of P1, queue Q with a scheduling period of T = 10us can accommodate 100,000 bits in the same period, which is equivalent to 12,500 bytes. That is to say, if 9 services similar to Flow1 come at the same time (12,500 / 1500 is approximately equal to 8.3), the queue will overflow, while it is expected to support nearly 100 service flows. Therefore, it is particularly important to avoid the overflow of periodic queues of nodes in deterministic networks, which leads to uncontrollable delays and jitters.

[0029] In this embodiment, a method is provided to perform fixed-length fragmentation on the message in the edge device according to the number of queues corresponding to the scheduling period and the bandwidth requirements, and the bandwidth can be expanded to avoid the overflow of the periodic queue of the ZTE aggregation node. The controller can obtain the scheduling period and number of queues of each node, the superimposed interface rate, the service bandwidth requirements, and the maximum length of the message, comprehensively judge the services and fragment lengths that need to be processed by fixed-length fragmentation, the bandwidth requirements that need to be additionally expanded, select the path, and issue the fragmentation operation.

[0030] Reference Figure 4 The present application provides a message processing method, which is applied to a controller connected to an edge node in a deterministic network. In a first embodiment of the message processing method, the message processing method includes:

[0031] Step S10, obtaining message characteristics of the service message flow, wherein the message characteristics include service bandwidth requirements and maximum message length;

[0032] In this embodiment, a controller connected to the edge node in the deterministic network is first started, wherein the controller may be set in a device or a server.

[0033] Optionally, the controller can collect the topology and information of each node, such as the node scheduling period, the number of queues corresponding to the node scheduling period, and the port rate. Among them, the information of each node may include the node information of the edge node. The edge node can be an edge access node of the service message flow, or a boundary node of the deterministic forwarding domain. A device can be set in each node (such as an edge node) for generating or forwarding a service message flow.

[0034] Optionally, when the controller receives a service establishment or access request sent by other nodes, it is necessary to obtain the established service flow or the message characteristics of the accessed service flow according to the service establishment or access request, such as the service flow matching characteristics, service bandwidth requirements and maximum message length. Among them, the message characteristics of the service message flow can be set as the service flow matching characteristics, service bandwidth requirements and maximum message length. The service bandwidth requirement can be the service bandwidth required for the service message flow when it flows into the node. The maximum message length can be the maximum message length within the message lengths corresponding to each message in the service message flow. The message length can be expressed in bytes.

[0035] Step S20, determining the maximum allowed message length to be sent according to the service bandwidth requirement and the scheduling period of the edge node;

[0036] Optionally, after obtaining the service bandwidth demand of the service message flow, the controller also needs to determine the scheduling period of the edge node, so as to determine the maximum allowed message length according to the scheduling period of the edge node. The edge node can be a boundary node in a deterministic network, or a node through which the service message flow passes accurately. The maximum allowed message length can be the maximum message length of a message sent by the edge node in a single scheduling period.

[0037] Optionally, Max_Flow_allow_len = BW_Q*T / 8, rounded up. Note that the unit of T here must match and convert with the bandwidth unit, and dividing by 8 is the conversion between bytes and bits. And T is the scheduling period of the edge node. BW_Q is the service bandwidth requirement. Max_Flow_allow_len is the maximum allowed length of the message to be sent.

[0038] Step S30, when the maximum allowed message length is less than the maximum message length, bandwidth reservation deduction processing is performed on the business message flow, and a fragmentation instruction is sent to the edge node, wherein the edge node fragments the business message flow according to the fragmentation instruction, and processes the fragmented messages after fragmentation according to multiple periodic queues.

[0039] Optionally, when it is detected that the maximum allowed message length is less than the maximum message length, it can be determined that the maximum message length that the edge node can allow to be sent is less than the maximum message length of the service message flow at a certain moment. At this time, if the service message flow continues to be sent to the edge node, it will cause the edge node periodic queue overflow phenomenon. Therefore, in this embodiment, in order to avoid the occurrence of this phenomenon, the service message flow can be subjected to bandwidth reservation deduction processing, that is, the bandwidth required for the service message flow is reserved in the edge node, so that the service message flow can be processed according to the reserved bandwidth after entering the edge node. At the same time, the controller will also issue a fragmentation instruction to the edge node, so that the edge node can directly fragment the service message flow after receiving the fragmentation instruction, and then separately process the fragmented messages after the fragmentation processing according to multiple periodic queues in the edge node, so as to avoid the phenomenon of periodic queue overflow.

[0040] For example, Figure 5As shown, after the device and controller are started, the controller collects information of each node, including the scheduling period, the number of queues corresponding to the scheduling period, and the port rate. The controller receives a service establishment or access request, obtains the service flow matching characteristics (i.e., the matching characteristics of the service message flow), the port requirement BW_Q, and the maximum message length Max_Pkt_Len. The controller obtains the service edge access node (it can also be the boundary node of the deterministic forwarding domain, that is, the edge node), and calculates the maximum allowable transmission length (i.e., the maximum allowable transmission message length) Max_Flow_allow_len=BW_Q*T / 8 according to the node scheduling period T (i.e., the scheduling period of the edge node) and the service bandwidth requirement BW_Q, and rounds up. Note that the unit of T here must be matched and converted with the bandwidth unit, and dividing by 8 is the conversion between bytes and bits. To determine whether to perform fragmentation processing, the basis for the determination is whether Max_Flow_allow_len>=Max_Pkt_Len is established (i.e., to determine whether the maximum allowable transmission length is greater than or equal to the maximum message length). If it is established, it means that no additional fragmentation processing is required, and bandwidth can be directly reserved in the controller, and the edge device is notified to forward normally, and no fragmentation instruction is required. If it is not established, further determine whether bandwidth expansion is required. The judgment basis is whether Max_Flow_allow_len>=(Max_Pkt_Len / Q_num) is established (that is, we want to divide the message into pieces with the same number of queues and put them into each queue. The number of pieces can only be divided into no more than the number of queues Q_num. If the size of the fragmentation according to this fragmentation method is still longer than the maximum allowed length of the message to be sent, bandwidth expansion is required). If it is not established, bandwidth expansion is required, and the controller expands the service bandwidth demand. The expanded bandwidth demand Expand_BW is calculated according to the following formula: Expand_BW=BW_Q*((Max_Pkt_Len / Q_num) / Max_Flow_allow_len).

[0041] The controller reserves bandwidth for the service and deducts the available bandwidth according to Expand_BW. At the same time, it issues a fragmentation instruction to the edge node, and the fragmentation length is Max_Pkt_Len / Q_num, rounded up. The controller reserves bandwidth for the service and deducts the available bandwidth according to BW_Q. At the same time, it issues a fragmentation instruction to the edge node, and the fragmentation length is Max_Flow_allow_len. The edge node matches the relevant service flow, and performs fragmentation processing according to the fragmentation length issued by the controller, and encapsulates the fragmented message to a certain extent (for subsequent reorganization), and then puts it into the queue being scheduled and the subsequent queue according to the order of the fragmentation. The specific message encapsulation is not limited here. It should be noted that the service message is not always sent according to the maximum length. For messages less than the maximum packet length, another layer of judgment can be added. According to the following relationship between the actual length of the message Pkt_Len and Max_Flow_allow_len, the number of slices Seg_Num = Pkt_Len / Max_Flow_allow_len is rounded up. Then the message is divided into Seg_Num segments to avoid encapsulating the message according to the Max_Flow_allow_len length, which will cause the remaining message to be too small and need to be filled, wasting bandwidth. If more additional encapsulation is added, the controller will reserve and deduct bandwidth accordingly, which will not be described here. If there is a landing edge node, the fragmented message is reassembled and restored according to the encapsulation and outbound interface characteristics, and the reassembled message is forwarded.

[0042] In this embodiment, the maximum allowed send message length is determined in the controller according to the service bandwidth demand of the service message flow and the scheduling cycle of the edge node, and when the maximum allowed send message length is less than the maximum message length of the service message flow, bandwidth reservation deduction processing is performed, and a fragmentation instruction is sent to the edge node, so that the edge node fragments the service message flow according to the fragmentation instruction, thereby achieving the need for full network cycle orchestration, only bandwidth reservation deduction processing needs to be performed in the controller, and fragmentation processing needs to be performed in the edge node, so that multiple cycle queues can respectively process the fragmented messages after fragmentation processing, so as to avoid the edge node receiving the service data flow. The instantaneous message is too long, resulting in the overflow of the node's cycle queue, resulting in uncontrollable delay and jitter.

[0043] Further, based on the above-mentioned first embodiment of the present application, a second embodiment of the message processing method of the present application is proposed. In this embodiment, referring to Figure 6 The above step S30, performing bandwidth reservation deduction processing on the service message flow and sending a fragmentation instruction to the edge node, includes:

[0044] Step a, determining a first ratio between the maximum message length and the number of queues corresponding to the scheduling period;

[0045] In this embodiment, before performing bandwidth reservation deduction processing on the service message flow, it is necessary to first determine whether it is necessary to perform bandwidth expansion processing on the required bandwidth to avoid the business demand bandwidth being too small, resulting in a small reserved bandwidth and a periodic queue overflow. Optionally, the maximum message length and the number of queues corresponding to the scheduling period can be determined first, so as to determine the message length that each scheduling period queue needs to process when the edge node receives the maximum message length at a certain instant. That is, directly calculate the first ratio between the maximum message length and the number of queues corresponding to the scheduling period, and use this first ratio as the message length that each scheduling period queue needs to process. For example, if the maximum message length is Max_Pkt_Len, and the number of queues corresponding to the scheduling period is Q_num; then the message length is Max_Pkt_Len / Q_num.

[0046] Step b: when the first ratio is less than or equal to the maximum allowed send message length, perform bandwidth reservation deduction processing on the service message flow according to the service bandwidth demand, and send the maximum allowed send message length and fragmentation instruction to the edge node.

[0047] Optionally, the first ratio is compared with the maximum allowed length of the sent message, and when the first ratio is less than or equal to the maximum allowed length of the sent message, it can be determined that the length of the message that needs to be processed by each scheduling period queue is less than or equal to the maximum allowed length of the sent message that the edge node can allow. At this time, there is no need to perform bandwidth expansion processing, and the bandwidth reservation deduction processing is directly performed on the service message flow according to the service bandwidth demand, that is, the edge node reserves the bandwidth corresponding to the service bandwidth demand. Then the maximum allowed length of the sent message and the fragmentation instruction are sent to the edge node together. The edge node can perform fragmentation processing after receiving the fragmentation instruction and the maximum allowed length of the sent message to avoid the overflow of the periodic queue.

[0048] For example, as shown in Table 1, if the service message flow is Flow1, and the matching characteristics of the service message flow, the service bandwidth requirement, the maximum message length, the edge access node (i.e., the edge node), the scheduling cycle (i.e., the scheduling cycle of the edge node), and the number of queues corresponding to the cycle (i.e., the number of queues corresponding to the scheduling cycle) are provided. And according to Table 1, it can be determined whether the service message flow needs to be fragmented, if necessary, the fragment length, whether the bandwidth needs to be expanded, and the expanded bandwidth obtained after the bandwidth is expanded.

[0049]

[0050] Table 1

[0051] Optionally, after the device and controller are started, the controller collects topology and information of each node, such as the periodic scheduling length (i.e., the scheduling period in Table 1), the number of queues corresponding to the scheduling period, and the port rate. When the controller receives a request to establish or access the service message flow Flow1, it obtains matching features, service bandwidth requirements, and maximum message length, as described in Table 1 above. The controller also obtains the edge node, PE1, and determines the scheduling period and the number of queues corresponding to the period according to the service characteristics. The maximum allowed message length to be sent is calculated according to the scheduling period and the service bandwidth requirement. For example, the maximum allowed message length to be sent is 250 bytes. Determine whether fragmentation is required. If the maximum allowed message length to be sent is 250 bytes, which is less than the maximum message length of 512 bytes, fragmentation is required, and then determine whether bandwidth expansion is required. Optionally, if the maximum allowed message length to be sent is 250. The first ratio between the maximum message length and the number of queues corresponding to the scheduling period is 512 / 8=64. Since 250 is greater than 64, it can be determined that bandwidth expansion is not required, as shown in Table 2 below.

[0052]

[0053] Table 2

[0054] Optionally, the controller reserves bandwidth and deducts available bandwidth according to the service bandwidth requirements. At the same time, it sends fragmentation instructions to the edge nodes, and the maximum allowed fragmentation length is 250. Optionally, when the edge node matches the service message flow Flow1, it performs fragmentation processing according to the fragmentation length sent by the controller, and encapsulates the fragmented messages obtained after fragmentation, and then puts them into the scheduled periodic queue or subsequent periodic queue in the order of fragmentation. Among them, the original message corresponding to the maximum message length is rounded up according to Seg_Num = Pkt_Len / Max_Flow_allow_len, and Seg_Num = 512 / 250 is obtained. After rounding up, Seg_Num = 3, the length of the message after slicing is seg_pkt_len = 512 / 3 = 170 bytes, and it is fragmented according to 170 bytes. Among them, Seg_Num is the number of slices. After the three fragmented messages are placed in the corresponding periodic queue in order, such as Figure 4 As shown, it includes periodic queues Q1, Q2, Q3, Q4, Q5, Q6, Q7, and Q8. If the periodic queue being scheduled is Q4 and there is free space, the first fragment message is put in, and then the second fragment message is put in Q5, and the third fragment message is put in Q6. The position of the message in the queue is uncertain, depending on the existing messages inside. Optionally, if there is a node PE4 that is a deterministic domain boundary, the fragment message is reassembled and restored in the node PE4, and the restored message is sent out.

[0055] In this embodiment, by determining a first ratio between the maximum message length of the service message flow and the number of queues corresponding to the scheduling period, and when the first ratio is less than or equal to the maximum allowed message length to be sent, the service message flow is subjected to bandwidth reservation deduction processing according to the service bandwidth demand, and the maximum allowed message length to be sent and the fragmentation instruction are sent to the edge node so that the edge node can fragment the service message flow to avoid the occurrence of periodic queue overflow.

[0056] Further, after determining a first ratio between the maximum message length and the number of queues corresponding to the scheduling period, the method further includes:

[0057] Step c, when the first ratio is greater than the maximum allowed message length, expanding the service bandwidth demand to obtain an expanded bandwidth demand;

[0058] In this embodiment, when the first ratio is greater than the maximum allowed length of the sent message, it can be determined that the length of the message that each scheduling period queue needs to process is greater than the maximum allowed length of the sent message. If the service bandwidth demand is not expanded, the period queue may overflow. Therefore, in this embodiment, the service bandwidth demand can be expanded to obtain the corresponding expanded bandwidth demand.

[0059] For example, if Max_Flow_allow_len>=(Max_Pkt_Len / Q_num), it is determined that the service bandwidth demand needs to be expanded. That is, the messages in the service message flow are divided into slices with the same number of queues (wherein the size of the slices divided can be the first ratio obtained by the above calculation), and placed in each queue, and the slices divided can only be no larger than the number of slices in the queue Q_num. However, if the slices divided are larger than the maximum allowed length of the message to be sent, expansion processing is required. Optionally, the controller performs a service bandwidth demand expansion operation to obtain an expanded bandwidth demand, if the expanded bandwidth demand is Expand_BW. The method for determining the expanded bandwidth demand can be determined in the following manner. That is:

[0060] Expand_BW=BW_Q*((Max_Pkt_Len / Q_num) / Max_Flow_allow_len).

[0061] Among them, the maximum message length is Max_Pkt_Len, the number of queues corresponding to the scheduling period is Q_num, Max_Flow_allow_len is the maximum allowed message length, and BW_Q is the service bandwidth requirement.

[0062] Step d: performing bandwidth reservation deduction processing on the service message flow according to the expanded bandwidth demand, rounding up the first ratio to obtain a target fragmentation length, and sending the target fragmentation length and fragmentation instruction to the edge node.

[0063] Optionally, after determining the expanded bandwidth demand, the controller can directly perform bandwidth reservation deduction processing according to the expanded bandwidth demand, that is, reserve the bandwidth occupied by the edge node corresponding to the expanded bandwidth demand. Then determine the target slice length, send the target slice length and the slice instruction to the edge node together, and the edge node can perform slice processing after receiving the slice instruction and the target slice length to avoid the phenomenon of periodic queue overflow. Optionally, when determining the target slice length, the calculated first ratio can be directly rounded up to obtain the target slice length. For example, if the calculated first ratio is 1699.4 bytes, the target slice length can be directly determined to be 1700 bytes.

[0064] For example, as shown in Table 3, if the service message flow is Flow2, and the matching characteristics of the service message flow, the service bandwidth requirement, the maximum message length, the edge access node (i.e., the edge node), the scheduling cycle (i.e., the scheduling cycle of the edge node), and the number of queues corresponding to the cycle (i.e., the number of queues corresponding to the scheduling cycle) are provided. And according to Table 2, it can be determined whether the service message flow needs to be fragmented, if necessary, the fragment length, whether the bandwidth needs to be expanded, and the expanded bandwidth obtained after the bandwidth is expanded.

[0065]

[0066] Table 3

[0067] Optionally, after the device and controller are started, the controller collects topology and information of each node, such as the periodic scheduling length (i.e., the scheduling period in Table 3), the number of queues corresponding to the scheduling period, and the port rate. When the controller receives a request to establish or access the service message flow Flow2, it obtains matching features, service bandwidth requirements, and maximum message length, as described in Table 3 above. The controller also obtains the edge node, PE1, and determines the scheduling period and the number of queues corresponding to the period according to the service characteristics. The maximum allowed message length to be sent is calculated according to the scheduling period and the service bandwidth requirements. For example, the maximum allowed message length to be sent is 250 bytes. If the maximum allowed message length to be sent is 250 bytes and is less than the maximum message length of 1500 bytes, it is determined that fragmentation processing is required. Then it is determined whether bandwidth expansion is required. Optionally, if the maximum allowed message length to be sent is 250. The first ratio between the maximum message length and the number of queues corresponding to the scheduling period is 1500 / 4=375. Since 250 is less than 375, it can be determined that bandwidth expansion is required, and the following Table 4 is obtained.

[0068]

[0069] Table 4

[0070] Optionally, the controller reserves bandwidth and deducts available bandwidth according to the service bandwidth requirements, and at the same time, sends a fragmentation instruction to the edge node, and the fragmentation length = 1500 / 4 = 375 bytes. Optionally, when the edge node matches the service message flow Flow2, it performs fragmentation processing according to the fragmentation length sent by the controller, and encapsulates the fragmented message obtained after fragmentation, and then puts it into the scheduled periodic queue or subsequent periodic queue according to the order of fragmentation. Among them, the original message corresponding to 1500 bytes is fragmented according to 375 bytes. Optionally, if there is a node PE4 as a deterministic domain boundary, the fragmented message is reassembled and restored in the node PE4, and the restored message is sent out.

[0071] In this embodiment, when a first ratio between the maximum message length of the service message flow and the number of queues corresponding to the scheduling period is greater than the maximum allowed message length, the service bandwidth demand is expanded to obtain an expanded bandwidth demand, and then the bandwidth reservation deduction processing is performed on the service message flow according to the expanded bandwidth demand, and the target fragmentation length and fragmentation instruction determined according to the first ratio are sent to the edge node, so that the edge node fragments the service message flow to avoid the overflow of the periodic queue.

[0072] Reference Figure 7 The present application provides a message processing method, which is applied to an edge node connected to a controller in a deterministic network. In a third embodiment of the message processing method, the message processing method includes:

[0073] Step S100, fragmenting the service message flow according to the received fragmentation instruction to obtain fragmented messages, wherein the fragmentation instruction is an instruction sent by the controller when the maximum allowed message length is less than the maximum message length of the service message flow, and the maximum allowed message length is a message length determined according to the service bandwidth requirement of the service message flow;

[0074] In this embodiment, the controller and the edge node may be the controller and the edge node in the first or second embodiment described above.

[0075] Optionally, the controller can obtain the service bandwidth demand and maximum message length of the service message flow, and use them as the message characteristics of the service message flow. Then, the maximum allowed message length to be sent is determined according to the service bandwidth demand and the scheduling period of the edge node. And when the maximum allowed message length to be sent is less than the maximum message length, bandwidth reservation deduction processing is performed, and the fragmentation instruction is sent to the edge node. Optionally, bandwidth reservation deduction processing is performed and the fragmentation instruction is sent to the edge node, including: determining a first ratio between the maximum message length and the number of queues corresponding to the scheduling period, and when the first ratio is less than or equal to the maximum allowed message length to be sent, bandwidth reservation deduction processing is performed on the service message flow according to the service bandwidth demand, and the maximum allowed message length to be sent and the fragmentation instruction are sent to the edge node. Optionally, when the first ratio is greater than the maximum allowed message length to be sent, the service bandwidth demand is expanded to obtain the expanded bandwidth demand, and the service message flow is subjected to bandwidth reservation deduction processing according to the expanded bandwidth demand, and the first ratio is rounded up to obtain the target fragmentation length.

[0076] Optionally, after the edge node matches the corresponding service message flow and receives the fragmentation instruction sent by the controller, it can directly fragment the messages in the service message flow according to the fragmentation instruction to obtain fragmented messages.

[0077] Step S200, encapsulate the fragmented messages, and according to the fragmentation order of fragmentation processing, sequentially put the encapsulated fragmented messages into multiple periodic queues of the edge node for processing.

[0078] Optionally, after the edge node fragments the service message flow to obtain each fragment message, it can encapsulate the fragment message, and put the encapsulated fragment messages into multiple periodic queues in the edge node in sequence according to the fragmentation order for processing, such as the periodic queue being scheduled and the subsequent periodic queue. The fragmentation order of the fragmentation processing can be determined according to the position of each fragment message in the service message flow.

[0079] In this embodiment, by fragmenting the service message flow in the edge node according to the received fragmentation instruction, fragmented messages are obtained, the fragmented messages are encapsulated, and each encapsulated fragmented message is placed in sequence into multiple cycle queues for processing in the fragmentation order, thereby realizing fragmentation processing in the edge node, allowing multiple cycle queues to process the fragmented fragmented messages respectively, and avoiding the edge node from receiving the service data flow. The instantaneous message is too long, causing the node's cycle queue to overflow, resulting in uncontrollable delay and jitter.

[0080] Further, in one embodiment, the service message flow is fragmented according to the received fragmentation instruction to obtain fragmented messages, including:

[0081] Step e: determining the received fragmentation instruction and target fragmentation length, and based on the fragmentation instruction, fragmenting the service message flow according to the target fragmentation length to obtain fragmented messages.

[0082] In this embodiment, after receiving the fragmentation instruction and target fragmentation length sent by the controller, the edge node can directly fragment the service message flow according to the fragmentation instruction, and the message corresponding to the maximum message length can be fragmented according to the target fragmentation length to obtain fragmented messages.

[0083] In this embodiment, the service message flow is fragmented according to the target fragment length according to the fragmentation instruction to obtain fragmented messages, thereby ensuring the validity of the obtained fragmented messages.

[0084] Further, the service message flow is fragmented according to the received fragmentation instruction to obtain fragmented messages, which also includes:

[0085] Step f, determining the received fragmentation instruction and the maximum allowed length of the message to be sent, and based on the fragmentation instruction, fragmenting the service message flow according to the maximum allowed length of the message to be sent to obtain fragmented messages.

[0086] In this embodiment, after receiving the fragmentation instruction and the maximum allowed message length sent by the controller, the edge node can directly fragment the service message flow according to the fragmentation instruction, and the message corresponding to the maximum message length can be fragmented according to the maximum allowed message length to obtain a fragmented message.

[0087] In this embodiment, the service message flow is fragmented according to the maximum allowed message length to obtain fragmented messages according to the fragmentation instruction, thereby ensuring the validity of the obtained fragmented messages.

[0088] Further, the service message flow is fragmented according to the maximum allowed message length to obtain fragmented messages, including:

[0089] Step g, determining an actual message length corresponding to the service message flow, and rounding up a second ratio between the actual message length and the maximum allowed message length to obtain a number of slices;

[0090] Step h: fragment the service message flow according to the number of slices to obtain fragmented messages.

[0091] In this embodiment, when the service message flow is sliced, the actual message length corresponding to each message in the service message flow, such as the maximum message length, etc., can also be determined. Then, the second ratio between the actual message length of the edge node and the maximum allowed message length is rounded up to obtain the number of slices. For example, Seg_Num = Pkt_Len / Max_Flow_allow_len is rounded up. Among them, the actual message length can be the length, bytes, corresponding to each message in the service message flow.

[0092] In this embodiment, the number of slices is determined according to the actual message length corresponding to the service message flow, and then fragmentation processing is performed according to the number of slices to obtain fragmented messages, thereby ensuring the validity of the obtained fragmented messages.

[0093] In addition, the present application also provides an electronic device, which includes a memory, a processor, and a message processing program stored in the memory and executable on the processor, and the message processing program implements the steps of the message processing method as described above when executed by the processor.

[0094] Furthermore, in one embodiment, Figure 8 FIG. 1 is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. Figure 8As shown, at the hardware level, the electronic device includes a processor, and optionally also includes an internal bus, a network interface, and a memory. Among them, the memory may include a memory, such as a high-speed random access memory (Random-Access Memory, RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk storage, etc. Of course, the electronic device may also include hardware required for other services. The processor, network interface and memory can be interconnected through an internal bus, and the internal bus can be an ISA (Industry Standa rd Architecture, Industrial Standard Architecture) bus, a PCI (Peripheral Component Interconnect, Peripheral Component Interconnect Standard) bus or an EISA (Extended Industry Standard Architecture, Extended Industry Standard Architecture) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bidirectional arrow is used in the figure, but it does not mean that there is only one bus or one type of bus. The memory is used to store programs. Specifically, the program may include program code, and the program code includes computer operation instructions. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it, forming a shared resource access control device at the logical level. The processor executes the program stored in the memory and is specifically used to execute the steps of the above-mentioned message processing method.

[0095] The specific implementation of the electronic device of the present application is basically the same as the embodiments of the message processing method described above, and will not be repeated here.

[0096] In addition, to achieve the above-mentioned purpose, the present application also provides a computer storage medium, including a computer-readable storage medium, on which a message processing program is stored, and when the message processing program is executed by a processor, the steps of the message processing method as described above are implemented.

[0097] The specific implementation of the computer-readable storage medium of the present application is basically the same as the embodiments of the above-mentioned message processing method, and will not be repeated here.

[0098] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In hardware implementations, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some physical components or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or temporary medium). As known to those skilled in the art, the term computer-readable storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, it is well known to those of ordinary skill in the art that communication media typically contain computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.

[0099] The above are only preferred embodiments of the present invention, and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A message processing method, characterized in that: Controllers used in deterministic networks connected to edge nodes include: Acquire message characteristics of the service message flow, wherein the message characteristics include service bandwidth requirements and maximum message length; Determine the maximum allowed length of the sent message according to the service bandwidth requirement and the scheduling period of the edge node; When the maximum allowed sent message length is less than the maximum message length, bandwidth reservation deduction processing is performed on the service message flow, and a fragmentation instruction is sent to the edge node, wherein the edge node fragments the service message flow according to the fragmentation instruction, and processes the fragmented messages after fragmentation according to multiple periodic queues.

2. The message processing method according to claim 1, characterized in that: The performing bandwidth reservation deduction processing on the service message flow and sending a fragmentation instruction to the edge node includes: Determine a first ratio between the maximum message length and the number of queues corresponding to the scheduling period; When the first ratio is less than or equal to the maximum allowed send message length, bandwidth reservation deduction processing is performed on the service message flow according to the service bandwidth demand, and the maximum allowed send message length and fragmentation instruction are sent to the edge node.

3. The message processing method according to claim 2, characterized in that: After determining the first ratio between the maximum message length and the number of queues corresponding to the scheduling period, the method further comprises: When the first ratio is greater than the maximum allowed length of the message to be sent, the service bandwidth requirement is expanded to obtain an expanded bandwidth requirement; The service message flow is subjected to bandwidth reservation deduction processing according to the expanded bandwidth demand, and the first ratio is rounded up to obtain a target fragmentation length, and the target fragmentation length and fragmentation instruction are sent to the edge node.

4. A message processing method, characterized in that: Applicable to edge nodes connected to controllers in deterministic networks, including: Slice the service message flow according to the received fragmentation instruction to obtain fragmented messages, wherein the fragmentation instruction is an instruction sent by the controller when the maximum allowed message length is less than the maximum message length of the service message flow, and the maximum allowed message length is a message length determined according to the service bandwidth requirement of the service message flow; The fragment messages are encapsulated, and according to the fragment order of fragment processing, the encapsulated fragment messages are sequentially put into multiple periodic queues of the edge node for processing.

5. The message processing method according to claim 4, characterized in that: The process of fragmenting the service message flow according to the received fragmentation instruction to obtain fragmented messages includes: Determine the received fragmentation instruction and target fragmentation length, and fragment the service message flow according to the target fragmentation length based on the fragmentation instruction to obtain fragmented messages.

6. The message processing method according to claim 4, characterized in that: The method of performing fragmentation processing on the service message flow according to the received fragmentation instruction to obtain fragmented messages also includes: Determine the received fragmentation instruction and the maximum allowed length of the sent message, and according to the fragmentation instruction, fragment the service message flow according to the maximum allowed length of the sent message to obtain fragmented messages.

7. The message processing method according to claim 6, characterized in that: The process of fragmenting the service message flow according to the maximum allowed message length to obtain fragmented messages includes: Determine an actual message length corresponding to the service message flow, and round up a second ratio between the actual message length and the maximum allowed message length to obtain a number of slices; The service message flow is fragmented according to the number of slices to obtain fragmented messages.

8. A message processing system, characterized in that: It includes controllers and edge nodes connected to each other in a deterministic network. The controller is configured to obtain message features of a service message flow, wherein the message features include a service bandwidth requirement and a maximum message length; determine a maximum allowed message length to be sent according to the service bandwidth requirement and a scheduling period of the edge node; and perform bandwidth reservation deduction processing on the service message flow when the maximum allowed message length to be sent is less than the maximum message length, and send a fragmentation instruction to the edge node; The edge node is configured to perform fragment processing on the service message flow according to the received fragmentation instruction to obtain fragmented messages; encapsulate the fragmented messages, and according to the fragmentation order of the fragmentation processing, sequentially put the encapsulated fragmented messages into multiple cycle queues of the edge node for processing.

9. An electronic device, characterized in that: The electronic device comprises: a memory, a processor, and a message processing program stored in the memory and executable on the processor, wherein the message processing program implements the steps of the message processing method according to any one of claims 1 to 7 when executed by the processor.

10. A computer storage medium, characterized in that: The computer storage medium stores a message processing program, and when the message processing program is executed by the processor, the steps of the message processing method according to any one of claims 1 to 7 are implemented.