A routing device supporting a probe mode
By introducing a probe mode into the routing device, generating probe data streams and processing business data streams differently, the problem of insufficient AI training data under high load conditions is solved. This enables high-load data probes without affecting business transmission efficiency, thereby improving network stability and the accuracy of AI training.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA UNITED NETWORK COMM GRP CO LTD
- Filing Date
- 2023-07-07
- Publication Date
- 2026-07-21
AI Technical Summary
Existing routers/switches lack real-world data training under high load conditions, resulting in insufficient accuracy of AI adaptive algorithms, which affects network operating efficiency. Furthermore, existing methods can easily impact actual service transmission when generating high-load data.
A routing device that supports probe mode is provided. By generating probe data streams in probe mode and processing business data streams and probe data streams differently, the priority of business data streams is ensured to be higher than that of probe data streams. High load conditions are simulated without affecting actual business transmission by using bundled queues and drop policies.
Without affecting the actual business transmission efficiency, it can detect the actual operating data under high load conditions, avoid the impact of probe data stream on business transmission, and improve the accuracy of AI training and network stability.
Smart Images

Figure CN116886631B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a routing device that supports a detection mode. Background Technology
[0002] Currently, routers / switches are highly complex and open in their functionality, resulting in a large number of adjustable parameter configurations to achieve optimal transmission performance for different needs and scenarios. Since the introduction of AI / adaptive / self-learning concepts into networks in recent years, routers / switches have gradually begun to utilize adaptive / self-learning algorithms for autonomous optimization to adapt to the current business scenarios in which the device operates.
[0003] In practical network use, to ensure network stability and transmission efficiency, networks are typically not allowed to operate under high load conditions. Therefore, it's difficult for networks to generate real-world data under high load conditions. Consequently, training sets for AI / adaptive / self-learning algorithms often lack sufficient or missing data on real-world high load scenarios, severely impacting the accuracy of their predictions. However, in actual network operation and maintenance, one of the most pressing concerns is predicting the impact of congestion on network efficiency under high load. Therefore, how to enable networks / devices to detect actual operational data under high load conditions without affecting actual service transmission efficiency is a pressing issue that needs to be addressed. Summary of the Invention
[0004] This application provides a routing device that supports a probe mode, enabling the network / device to detect actual operating data under high load conditions without affecting the actual service transmission efficiency.
[0005] To achieve the above objectives, this application adopts the following technical solution:
[0006] Firstly, this application provides a routing device that supports a probe mode. The routing device supports a probe mode in addition to a normal mode. The normal mode is the mode in which the routing device operates normally. The probe mode is used to generate probe data streams and to differentiate between service data streams and probe data streams. The routing device can be applied to a data transmission method, the method comprising: determining the mode in which the routing device is located; when the routing device is in the probe mode, determining the service data stream and probe data stream in the received data; the service data stream has a higher priority than the probe data stream; forwarding the service data stream to a routing device in normal mode or a routing device that does not support probe mode, and discarding the probe data stream.
[0007] In conjunction with the first aspect, in one possible implementation, when the mode is configured at the device level, the routing device being in the normal mode includes: all interfaces of the routing device being in the normal mode; the routing device being in the probe mode includes: all interfaces of the routing device being in the probe mode; when the mode is configured at the interface level, each interface of the routing device is independently in the normal mode or the probe mode; if the ingress interface is in the probe mode but the egress interface is in the normal mode, the routing device discards the probe data stream in the data stream.
[0008] In conjunction with the first aspect, in one possible implementation, the operating mode of the routing device / interface is determined to be the probe mode by means of configuration or protocol negotiation; the configuration method / the protocol negotiation method can specify triggering conditions; the condition configuration includes time period and / or resource utilization.
[0009] In conjunction with the first aspect, in one possible implementation, the probe data stream generated by the probe mode is determined based on the service data stream and a specified multiplier; the packet characteristics of the probe data stream are consistent with the packet characteristics of the service data stream.
[0010] In conjunction with the first aspect, in one possible implementation, the probe data stream generated by the probe mode is determined based on the service data stream and a specified multiplier, including: determining the service data stream flowing through the routing device's ingress interface or conforming to the filtering rules; replicating the service data stream based on the replication multiplier to determine the probe data stream; wherein, the replication function is effective when the routing device / interface is in probe mode.
[0011] In conjunction with the first aspect, in one possible implementation, after determining the probe data stream by replicating the business data stream based on the replication ratio, the method further includes: marking the probe data stream; wherein the marking method includes: setting a specific field in the probe data stream to a specific value or adding an optional extended field to the probe data stream.
[0012] In conjunction with the first aspect, in one possible implementation, after determining the probe data stream, the method further includes: modifying the destination address of the probe data stream or not modifying the destination address of the probe data stream; wherein the modified destination address of the probe data stream is a service address or a black hole address; the black hole address is used to offload the probe data stream out of the network.
[0013] In conjunction with the first aspect, in one possible implementation, the routing device is provided with a bundling queue; the bundling queue includes a first queue for carrying service data streams and a second queue for carrying tagged probe data streams; the first queue has a higher priority than the second queue; the parameter configuration of the routing device for the queues takes effect for the bundling queue; wherein the parameter configuration of the bundling queue includes a discard rule when enqueuing and a rate limiting rule when dequeuing.
[0014] In conjunction with the first aspect, in one possible implementation, when the first queue receives a business data stream, it uses the current occupancy of the first queue as a reference to determine the discard rule when enqueuing; when the second queue receives a probe data stream, it uses the sum of the current occupancy of the first queue and the current occupancy of the second queue as a reference to determine the discard rule when enqueuing; the discard rule adopts the parameter configuration of the bundled queue.
[0015] In conjunction with the first aspect, in one possible implementation, each of the probe data streams is configured with an enqueue delay; the enqueue delay is used to postpone the time when the probe data stream enters the second queue.
[0016] In this application, the names of the aforementioned routing devices do not limit the devices or functional modules themselves. In actual implementation, these devices or functional modules may appear under other names. As long as the functions of each device or functional module are similar to those in this application, they fall within the scope of the claims of this application and their equivalents.
[0017] These or other aspects of this application will become more readily apparent in the following description.
[0018] Based on the above technical solutions, the routing device provided in this application supports both normal mode and probe mode, and actively creates a network congestion state by replicating the service data stream. When the routing device is in probe mode, after receiving the service data stream and probe data stream, it can process the service data stream and probe data stream differently. That is to say, while probing the actual transmission efficiency under high load, it can avoid the probe from affecting the transmission efficiency of the actual service. Attached Figure Description
[0019] Figure 1 This application provides a schematic diagram of the structure of a data transmission system applied to a routing device;
[0020] Figure 2 A schematic diagram illustrating data transmission provided in this application;
[0021] Figure 3 A schematic diagram of a queue provided in this application;
[0022] Figure 4 A flowchart of a data transmission method applied to a routing device provided in this application;
[0023] Figure 5 A flowchart of another data transmission method provided in this application;
[0024] Figure 6 A schematic diagram illustrating a data discarding method provided in this application;
[0025] Figure 7 A flowchart of another data transmission method provided in this application;
[0026] Figure 8 A flowchart of another data transmission method provided in this application;
[0027] Figure 9 A flowchart of another data transmission method provided in this application;
[0028] Figure 10 A flowchart of another data transmission method provided in this application. Detailed Implementation
[0029] The routing device supporting detection mode provided in the embodiments of this application will be described in detail below with reference to the accompanying drawings.
[0030] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.
[0031] The terms "first" and "second," etc., used in the specification and drawings of this application are used to distinguish different objects or to distinguish different treatments of the same object, rather than to describe a specific order of objects.
[0032] Furthermore, the terms "comprising" and "having," and any variations thereof, used in the description of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may optionally include other steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus.
[0033] It should be noted that in the embodiments of this application, the words "exemplary" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design scheme described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the words "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0034] As we all know, routers / switches are core components of networks, primarily processing data streams at the packet level through a store-and-forward model. Modern routers / switches are highly complex and open, resulting in a large number of adjustable parameter configurations to address diverse needs. Especially with the advanced state of network technology and increasingly refined requirements, many services seek optimal parameter combinations to achieve the best transmission performance based on their specific business models. Since the introduction of AI / adaptive / self-learning concepts into networks in recent years, routers / switches have gradually begun to utilize adaptive / self-learning algorithms for autonomous optimization to adapt to their current business scenarios.
[0035] Currently, AI algorithms require data for training. However, networks between routers and switches typically have multiple protection mechanisms to prevent them from entering overloaded or other abnormal operating states. This is especially true for premium networks supporting large customers or high-quality leased lines, which often maintain very low utilization rates to ensure optimal transmission performance. Consequently, current AI algorithms can only access operational data under normal working conditions. This means that the parameter combinations trained by AI are not well-suited to the high-load scenarios they have never encountered before. In other words, AI training algorithms often lack high-load data, while many parameters are designed to handle such extreme scenarios and provide safeguards against extreme high-load conditions. However, current AI training results, which fail to reference extreme data, deviate from the original design intent of the parameters and lack numerical adaptation.
[0036] In related technologies, one way to generate high-load data is to artificially mix historical extreme data from external sources to form a training set. However, the drawback of this method is that the historical extreme data is not generated by the network / device itself, which may lead to parameter mismatch issues. Another method requires configuring high-load data that is missing under extreme conditions in the network / device, but this can easily affect the actual business operations of the network / device during data transmission. Therefore, how to avoid affecting the actual business operations of the network / device during data transmission is a problem that urgently needs to be solved.
[0037] First, this application provides a routing device that supports a probe mode. The routing device supports a probe mode in addition to a normal mode. The normal mode is the mode in which the routing device operates normally. The probe mode is used to generate probe data streams and to differentiate between service data streams and probe data streams. The routing device can be applied to a data transmission method, the method comprising: determining the mode in which the routing device is located; when the routing device is in the probe mode, determining the service data stream and probe data stream in the received data; the service data stream has a higher priority than the probe data stream; forwarding the service data stream to a routing device in normal mode or a routing device that does not support probe mode, and discarding the probe data stream.
[0038] In one possible implementation, the routing device provided in this application embodiment generates a probe data stream in probe mode. In subsequent processing, the probe data stream will be established without affecting the actual service flow, that is, the congestion impact will be controlled within the probe data stream.
[0039] Optionally, when configuring modes at the device level, the routing device being in normal mode includes: all interfaces of the routing device being in normal mode; the routing device being in probe mode includes: all interfaces of the routing device being in probe mode; when configuring modes at the interface level, each interface of the routing device is independently in normal mode or probe mode; if the ingress interface is in probe mode but the egress interface is in normal mode, the routing device discards the probe data stream in the data stream.
[0040] In one possible implementation, when configuring modes at the device level, the operating mode of the routing device can be configured directly, and then the interface can be used to enter that operating mode, such as... Figure 1 As shown, the service provider device 101 and the first routing device 102 can be configured at the device level or at the interface level. When configuring the mode at the interface level, the working mode of the interface can be configured directly. The second routing device 103 can also be configured at the interface level. The output interface of the second routing device 103 is in normal mode, and the input interface is in probe mode.
[0041] Optionally, the operating mode of the routing device / interface can be determined by configuration or protocol negotiation. The configuration / protocol negotiation method can specify the triggering conditions. The condition configuration includes time period and / or resource utilization.
[0042] One possible implementation is to configure the conditions as 1 AM to 4 AM or utilization below 10%, meaning that the routing device / interface enters probe mode between 1 AM and 4 AM or when the device routing rate is below 10%. Alternatively, it could involve protocol negotiation between two adjacent routing devices / interfaces.
[0043] Optionally, the probe data stream generated by the probe mode is determined based on the business data stream and a specified multiplier; the packet characteristics of the probe data stream are consistent with the packet characteristics of the business data stream.
[0044] Optionally, the probe data stream generated by the probe mode is determined based on the service data stream and a specified multiplier, including: determining the service data stream flowing through the routing device's ingress interface or conforming to the filtering rules; and replicating the service data stream based on the replication multiplier to determine the probe data stream; wherein, the replication function is effective when the routing device / interface is in probe mode.
[0045] In one possible implementation, such as Figure 1 As shown, after entering the detection mode, the service source device 101 begins to replicate the service data stream. First, it replicates the service data stream at a 1:1 ratio for 5 minutes; then it replicates the service data stream at a 1:2 ratio for 5 minutes; then it replicates the service data stream at a 1:4 ratio for 5 minutes; then it replicates the service data stream at a 1:8 ratio for 5 minutes; then it repeats this process, replicating the service data stream at a 1:1 ratio again; this cycle continues until the service source device 101 exits the detection mode, and the traffic replication simultaneously fails.
[0046] Optionally, after determining the probe data stream based on the replication ratio of the business data stream, the method further includes: marking the probe data stream; wherein the marking method includes: setting a specific field in the probe data stream to a specific value or adding an optional extended field to the probe data stream.
[0047] In one possible implementation, such as Figure 1 As shown, after the service source device 101 determines the probe data stream, it marks it to facilitate the subsequent routing device to distinguish between the probe data stream and the service data stream.
[0048] Optionally, after determining the probe data stream, the method further includes: modifying the destination address of the probe data stream or not modifying the destination address of the probe data stream; wherein, the modified destination address of the probe data stream is a service address or a black hole address; the black hole address is used to offload the probe data stream out of the network.
[0049] In one possible implementation, such as Figure 1As shown, the service source device 101 can mark the probe data stream while also modifying the destination address of the probe data stream, making it easier for the second routing device 103 to offload the probe data stream out of the network. It is understandable that the service source device 101 may also choose not to modify the destination address of the probe data stream, and the second routing device 103 can identify the probe data stream through marking.
[0050] Optionally, the routing device is configured with a bundling queue; the bundling queue includes a first queue for carrying service data streams and a second queue for carrying tagged probe data streams; the first queue has a higher priority than the second queue; this further ensures that the probe data stream does not affect the service data stream; the parameter configuration of the routing device for the queues takes effect for the bundling queue; the parameter configuration of the bundling queue includes the discard rule when enqueuing and the rate limiting rule when dequeuing.
[0051] Optionally, when the first queue receives a business data stream, the current occupancy of the first queue is used as a reference to determine the discard rule when enqueuing; when the second queue receives a probe data stream, the sum of the current occupancy of the first queue and the current occupancy of the second queue is used as a reference to determine the discard rule when enqueuing; the discard rule adopts the parameter configuration of the bundled queue.
[0052] Optionally, each probe data stream can be configured with an enqueue delay; the enqueue delay is used to postpone the time when the probe data stream enters the second queue.
[0053] Based on the above technical solutions, the routing device provided in this application supports both normal mode and probe mode, and actively creates a network congestion state by replicating the service data stream. When the routing device is in probe mode, after receiving the service data stream and probe data stream, it can process the service data stream and probe data stream differently. That is to say, while probing the actual transmission efficiency under high load, it can avoid the probe from affecting the transmission efficiency of the actual service.
[0054] like Figure 1 The diagram shown is a structural schematic of a data transmission system 100 applied to a routing device according to an embodiment of this application. The system includes multiple routing devices; the multiple routing devices may be: at least one service source device 101, a first routing device 102, a second routing device 103, and a user device 104.
[0055] The operating states of the above devices can be divided into normal mode and probe mode, with user equipment 104 always operating in normal mode. When at least one service source device 101, the first routing device 102, and the second routing device 103 are operating in normal mode, the first queue within each device is a QoS queue with its own independent queue parameters, including queue depth, WRED parameters (high / low threshold, drop probability), and CAR rate limiting parameters (cir / pir, etc.). This application can configure the conditions for each device to enter probe mode, which can be preset time periods and / or device utilization conditions. The device can enter probe mode when at least one service source device 101, the first routing device 102, and the second routing device 103 meets the conditions (e.g., between 1 AM and 4 AM and / or when device utilization is below 10%). It is worth noting that after each device meets the conditions to enter probe mode, the device's interface and the peer device's interface can negotiate via a protocol. When both ends of the link agree to enter probe mode, both interfaces can simultaneously switch to probe mode; that is, the interface that meets the protocol can enter probe mode. At the same time, each device can adjust the working status of its own interface, so that its input and output interfaces can enter the detection mode.
[0056] The service source device 101 replicates the service data stream to form a probe data stream. It can first replicate the service data stream at a 1:1 ratio and maintain it for 5 minutes; then replicate it at a 1:2 ratio and maintain it for 5 minutes; and so on up to a 1:8 ratio, then loop, replicating the service data stream again at a 1:1 ratio, until the service source device 101 no longer meets the conditions for probe mode and exits probe mode. It is worth noting that the traffic replication function is directly associated with the interface, performing traffic replication on all traffic flowing into that interface; alternatively, the traffic replication function can be associated with specific filtering rules (such as ACL filtering in a policy), performing traffic replication only on specific inflows that meet the filtering rules. When the traffic replication is performed at a specified ratio and then enters the second queue n times, a delay (specified or random delay) can be added to the replicated packets, causing them to enter the second queue only after a specific time. This allows for the simulation of sequential service generation, rather than only simulating simultaneous concurrent services. At least one service source device 101 sends the service data stream and probe data stream to the first routing device 102. During the replication of business data streams, probe data streams are marked with packets. Specific fields in the probe data stream can be set to specific values, or special optional extended fields can be added. Furthermore, the destination address of the probe data stream can be changed to a black hole address. This packet marking (whether modifying specific fields or adding special optional extended fields) can only be recognized by devices that support this application, thus further requiring the second routing device to actively discard probe data streams when forwarding traffic to user equipment.
[0057] The first routing device 102 is used to prioritize discarding probe data streams and / or service data streams when traffic is congested, and to forward service data streams and probe data streams to the second routing device.
[0058] After receiving the service data stream and probe data stream from the first routing device 102, the second routing device 103 can distinguish between the two data types, or actively discard the probe data stream and only forward the service data stream to the user equipment 104.
[0059] It is understandable that the interaction between the service source device 101, the first routing device 102, and the second routing device 103 mainly involves storage and forwarding, and utilizes a queue + scheduling mechanism to control the priority processing order of data packets (QoS mechanism). Figure 2 As shown, data packets in the service flow are received by the device's ingress interface, processed in the ingress direction, queued according to packet attributes, and then transferred by the switching network 201 to the designated egress interface. After a series of processing steps in the egress direction, the data packets are finally sent out through the egress interface. In this application, the congestion avoidance mechanism (drop strategy) when the device's data is enqueued and the queue scheduling algorithm when it is dequeued jointly affect the packet loss / queueing behavior of the queue.
[0060] At least one service source device 101, the first routing device 102, and the second routing device 103 all contain a logical bundling queue 301; the logical bundling queue is described in detail below, such as Figure 3 As shown, its logically bundled queue 301 includes a first queue 302 for carrying service data streams, a second queue 303 for carrying probe data streams, and a scheduler 304. When at least one service source device 101 enters probe mode, the first and second queues of the service source device 101 are bundled to form a logically bundled queue. The first queue carries service data streams, and the second queue carries probe data streams. The scheduler controls the priority of service data streams in the first queue to be higher than the priority of probe data streams in the second queue, thereby achieving the effect of prioritizing the carrying of service data streams.
[0061] The queue configuration parameters (such as queue depth, WRED, rate limit, etc.) in each device are valid only for logically bundled queue 301, serving as logically shared parameters for the first queue 302 and the second queue 303. When a device switches to probe mode, the first queue 302 remains unchanged (retrieval flag and occupancy counter remain unchanged), but its configuration parameters (queue depth, WRED parameter, CAR rate limit parameter) are removed. A new second queue 303 is configured (retrieval flag and occupancy counter), with no parameters (queue depth, WRED parameter, CAR rate limit parameter). The first queue 302 is attached to scheduler 304 with the highest priority, and the second queue 303 is attached to scheduler 304 with a lower priority than the first queue 302. A new logically bundled queue 301 is configured (retrieval flag and occupancy counter), inheriting the parameters (queue depth, WRED parameter, CAR rate limit parameter) of the original first queue 302. The logically bundled queue 301 is associated with the first queue 302, the second queue 303, and scheduler 304. Subsequently, a dynamic update relationship is established: the occupancy counter of logically bundled queue 301 is equal to the sum of the occupancy counters of the first queue / 2; the scheduler exit serves as the exit of logically bundled queue 301; at the entry point of logically bundled queue 301, detection is performed: if the probe data stream flag is detected as False, it points to the first queue 302; if the probe data stream flag is detected as True, it points to the second queue 303; in the discard rules of the first queue 301, the occupancy counter uses the counter of the first queue 302, and the discrimination threshold parameters use the parameters of logically bundled queue 301 (queue depth, WRED parameter); in the discard rules of the second queue 303, the occupancy counter uses the counter of logically bundled queue 301, and the discrimination threshold parameters use the parameters of logically bundled queue 301 (queue depth, WRED parameter).
[0062] like Figure 4 The diagram shown is a flowchart of a data transmission method provided in an embodiment of this application. This data transmission method is applied to a routing device, and the data transmission method provided in this embodiment can be applied to devices such as... Figure 1 In the data transmission system shown, the data transmission method provided in this application embodiment can be implemented through the following steps.
[0063] S401. At least one service source device sends a service flow to the first routing device. Correspondingly, the first routing device receives the service flow sent by at least one service source device.
[0064] The business flow includes business data flow and probe data flow; the probe data flow is determined by replicating multiple business data flows at a specified multiplier.
[0065] In one possible implementation, at least one service source device and a first routing device enter a probe mode, and the service source device replicates the service data stream at a specific rate to form a probe data stream. The service data stream can be understood as the actual service data stream in the device.
[0066] S402. If the sum of the unoccupied amounts in the first queue and the second queue is less than the business flow and / or the unoccupied amount in the first queue is less than the business data flow, the business flow is discarded, and a discarded business flow is generated.
[0067] The first service flow consists of the service data flow received by the first routing device and the service data flow to be sent in the first routing device; the first probe flow consists of the probe data flow received by the first routing device and the probe data flow to be sent in the first routing device.
[0068] As one possible implementation, the above S402 implementation process can be as follows: After receiving the service data stream and the probe data stream, the first routing device will enter the first queue for the service data stream and the second queue for the probe data stream. It can be determined whether the sum of the current unoccupied amounts of the first queue and the second queue can satisfy the probe data stream. If it cannot satisfy the probe data stream, the probe data stream in the service stream will be discarded. Next, it can be determined whether the current unoccupied amount of the first queue can satisfy the service data stream. If it cannot satisfy the service data stream, the service data stream in the service stream will be discarded, thereby generating the discarded service stream.
[0069] It is worth noting that the first routing device provided in this application embodiment prioritizes discarding probe data streams when the data threshold is reached, so as to ensure the normal transmission of service data streams.
[0070] S403. The first routing device sends the discarded service flow to the second routing device. Correspondingly, the second routing device receives the discarded service flow sent by the first routing device.
[0071] S404. The second routing device sends the service data stream from the discarded service flow to the user equipment. Correspondingly, the user equipment receives the service data stream from the discarded service flow sent by the second routing device.
[0072] In one possible implementation, since the user equipment does not need to receive the probe data stream in the discarded service flow, the second routing device only needs to send the service data stream in the discarded service flow to the user equipment.
[0073] Based on the above technical solution, the data transmission method provided in this application embodiment firstly receives a service stream sent by at least one service source device, wherein the probe data stream is determined by replicating multiple service data streams. By replicating the service data streams, a network congestion state is actively formed to avoid the problem of low AI training accuracy caused by different device parameter configurations. If the sum of the length of the first service stream and the length of the first probe stream is greater than a preset threshold, the data transmission device discards the service stream to ensure that the service data stream is not affected by the probe data stream and can be transmitted normally. Finally, the discarded service stream is sent to the second routing device.
[0074] In one possible implementation, combining Figure 4 ,like Figure 5 As shown in S402 above, if the sum of the unoccupied amounts of the first queue and the second queue is less than the service flow and / or the unoccupied amount of the first queue is less than the service data flow, the service flow is discarded, generating a discarded service flow. This can be specifically implemented through the following S501-S502. The queue discarding rule includes two threshold values: a first threshold value and a second threshold value; the first threshold value is greater than the second threshold value.
[0075] Specifically, if the sum of the occupancy of the first and second queues after the probe data stream enters the second queue is greater than the first threshold value of the depth of the bundled logic queue, then S501 is executed; if the sum of the occupancy of the first and second queues after the probe data stream enters the second queue is greater than the second threshold value but less than the first threshold value, then S502 is executed.
[0076] It is worth noting that in the discard rule determination, the probe data stream was not actually enqueued; this is the data discarding before enqueuing.
[0077] S501. The first routing device discards all data in the probe data stream and generates the discarded service stream.
[0078] For example, the first routing device receives a service data stream and a probe data stream from the service source device, with the service data stream having a higher carrying priority than the probe data stream. First, the first routing device determines whether the sum of the current service data stream and the service data stream to be sent, and the current probe data stream and the probe data stream to be sent, exceeds a first threshold. If it does, the current probe data stream is discarded.
[0079] S502. The first routing device discards part of the probe data stream and generates the discarded service stream.
[0080] Referring to the example in S501, if the sum of the current service data stream and the service data stream to be sent, and the current probe data stream and the probe data stream to be sent is less than the first threshold but greater than the second threshold, then a portion of the data in the current probe data stream is randomly discarded to ensure that the current service data stream and the service data stream to be sent are not affected by the probe data stream.
[0081] It is understood that the embodiments of this application employ congestion avoidance (dropping strategy), which can be achieved through tail-end dropping or Weighted Random Early Detection (WRED). Figure 6 As shown, WRED primarily discards arriving data streams randomly when queue occupancy begins to rise (but before actual congestion occurs), thus maintaining a relatively small queue size. When the queue length is less than the minimum threshold, no packets are discarded; when the queue length is between the low threshold (second threshold) and the high threshold (first threshold), WRED begins randomly discarding packets; when the queue length exceeds the high threshold (first threshold), all data stream packets are discarded. The tail-end discard threshold can be understood as the first threshold; newly arriving packets and packets awaiting transmission in the queue exceeding the first threshold are discarded.
[0082] Based on the above technical solution, this application sets a preset threshold on the first routing device to prevent the service data flow of the user device from being affected when the device is in probe mode.
[0083] After the business data stream enters the first queue, the occupancy of the first queue exceeds the queue depth.
[0084] In one possible implementation, combining Figure 4 ,like Figure 7 As shown in S402 above, when the unoccupied amount in the first queue is less than the business data flow, the business flow is discarded, generating a discarded business flow. This can be specifically implemented through S701-S702 below. The queue discarding rule includes two threshold values: a third threshold value and a fourth threshold value; the third threshold value is greater than the fourth threshold value.
[0085] Specifically, if the occupancy of the first queue is greater than the third threshold value of the depth of the bundled logical queue after the business data stream enters the first queue, then S701 is executed; if the occupancy of the first queue is greater than the fourth threshold value but less than the third threshold value after the probe data stream enters the second queue, then S702 is executed.
[0086] S701. The first routing device discards all data in the service data stream and generates a discarded service stream.
[0087] In one possible implementation, the first routing device determines whether the current received service data stream and the service data stream to be sent are greater than a third threshold value. If they are greater, the current received service data stream is discarded.
[0088] S702. The first routing device discards part of the data in the service data stream and generates a discarded service stream.
[0089] As one possible implementation, the above S702 implementation process can be as follows: if the first routing device determines that the currently received service data stream and the service data stream to be sent are less than the third threshold value but greater than the fourth threshold value, then the first routing device will randomly discard part of the data in the currently received service data stream.
[0090] It is understood that the congestion avoidance (drop strategy) adopted in this embodiment of the application is consistent with the drop strategy adopted in S501 and S502, which can be achieved by dropping at the tail of the queue or by the WRED method.
[0091] It is worth noting that, under normal circumstances, the first routing device in this application embodiment will not discard the service data stream first. In the event of congestion, the first routing device will first discard the probe data stream to reduce the probability of the service data stream being affected.
[0092] Based on the above technical solution, this application may discard business data streams in some extreme cases, but the first routing device will prioritize discarding probe data streams when the business stream reaches a preset threshold.
[0093] In one possible implementation, combining Figure 4 ,like Figure 8 As shown, before the first routing device sends the dropped service flow to the second routing device in S403 above, the first routing device also needs to update the first queue and the second queue. This can be achieved through the following S801.
[0094] S801. Based on the dropped service flow, the first routing device updates the first queue and the second queue.
[0095] The first queue is used to carry business data streams, and the second queue is used to carry probe data streams.
[0096] In one possible implementation, the first queue may contain service data streams to be sent, and the first routing device updates the first queue with service data streams from discarded service streams. The second queue may contain probe data streams to be sent, and the first routing device updates the second queue with probe data streams from discarded service streams.
[0097] Based on the above technical solution, the embodiments of this application use a first queue and a second queue to prioritize the forwarding of service data streams in probe mode, so that the network performance degradation caused by data congestion only affects the probe data stream, avoiding the impact on the performance of the actual service stream.
[0098] In one possible implementation, combining Figure 4 ,like Figure 9 As shown in S403, the first routing device sends the discarded service flow to the second routing device. This can be specifically implemented through S901-S902.
[0099] S901, The first routing device sends the discarded service data stream from the service flow to the first queue in the second routing device.
[0100] As one possible implementation, the above S901 implementation process can be as follows: Since both the service data stream and the probe data stream have data packet attributes or identifiers, the first routing device can prioritize sending the discarded service data stream to the first queue in the second routing device.
[0101] S902, The first routing device sends the probe data stream from the discarded service flow to the second queue in the second routing device.
[0102] It is understandable that each device has a first queue and a second queue. The above-mentioned S901 and S902 update the discarded service flow into the first queue and the second queue. By dividing the two different data flows into two different groups of queues, it is further ensured that the service data flow is not affected by the probe data flow.
[0103] Based on the above technical solution, the second routing device only sends the service data stream from the discarded service flow to the user equipment, thus preventing the user equipment from receiving useless data.
[0104] In one possible implementation, combining Figure 4 ,like Figure 10 As shown, before the second routing device sends the service data stream in the discarded service flow to the user equipment in S404 above, the second routing device needs to identify the data, which can be achieved through the following S1001.
[0105] S1001, the second routing device identifies the service data stream and probe data stream in the discarded service flow.
[0106] In one possible implementation, the above S1001 process can be as follows: the second routing device can identify the service data stream and probe data stream in different ways, and only send the service data stream (actual service data stream) to the user equipment.
[0107] The identification method is described in detail below. The second routing device identifies the service data stream and probe data stream in the discarded service stream based on the data type and / or destination address in the discarded service stream; the destination address of the probe data stream is the black hole address.
[0108] In one possible implementation, the service source device marks the probe data stream during the process of replicating the service data stream. Therefore, the second routing device can identify the service data stream and the probe data stream based on the mark (data type) of the probe data stream. Subsequently, only the service data stream is sent to the user equipment, while the probe data stream is retained in the second routing device.
[0109] In another possible implementation, during the process of replicating the service data stream, the service source device not only marks the replicated probe data stream, but also modifies the destination address of the probe data stream to the black hole address. Since the routing method with the black hole address is configured on the second routing device, the probe data stream with the destination address as the black hole address can be sucked into the black hole on the second routing device and unloaded from the network, ensuring that the service data stream is sent only to the user equipment in the future.
[0110] For example, a black hole route can be configured in advance on the second routing device using static routing, and the outgoing interface of the black hole IP can be Nu110.
[0111] Based on the above technical solution, when the second routing device identifies the service data stream and probe data stream in the discarded service flow, it can identify them by destination address or data type. If it identifies them by destination address, the probe data stream in the discarded service flow can be offloaded out of the network. If it identifies them by data type, the probe data stream in the discarded service flow still exists in the second routing device, but the second routing device only forwards the discarded service data stream to the first routing device.
[0112] It is worth noting that this application can be used in scenarios where the source device, the first routing device, and the second routing device do not meet the preset conditions, and where there is a periodic switching requirement between normal mode and probe mode. Because the first queue, the second queue, the logically bound queue, and the scheduler already exist in normal mode, there is no need to allocate or delete queues, schedulers, or associations when switching between normal mode and probe mode, allowing for a faster and smoother switch. That is, when the device switches to normal mode, the second queue is disabled but not deleted (the retrieval markers, counters, and associations are retained, but no longer dynamically refreshed). When the device switches to probe mode, the second queue is undisabled, and the counters, etc., re-enter a dynamically refreshable state.
[0113] In summary, the data transmission method provided in this application, under conventional networking conditions, configures the service source device 101, the first routing device 102, the second routing device 103, and the user device 104 to enable the network to operate normally. (Prior art is not described in detail here). The AI self-learning mode is configured on the first routing device 102 and the second routing device 103, and the AI self-learning queue depth is configured. The learning target SLA is {packet loss rate < 0.01%, congestion latency < 100µs, jitter < 50µs}. (The self-learning algorithm is not protected by this application; similar technologies / research can currently achieve this function). The probe modes of the service source device 101, the first routing device 102, and the second routing device 103 are then configured. When the conditions are met, each device switches to probe mode. The service source device 101 replicates the service data stream to form a probe data stream, which is then transmitted to the first routing device 102. The first routing device 102 then discards the service stream and sends the discarded service stream to the second routing device 103. Finally, the second routing device 103 sends the service data stream from the discarded service stream to the user device 104. During data transmission, the first routing device 102 and the second routing device 103 record performance data (latency, packet loss, jitter performance under different {queue depth configuration, utilization} conditions) based on their AI self-learning function. This data forms a training set for AI training, obtaining the optimal queue depth configuration parameters, and then modifying the parameters. (The self-learning algorithm is not protected by this application.)
[0114] This application embodiment can divide the data transmission device into functional modules or functional units according to the above method examples. For example, each function can be divided into a separate functional module or functional unit, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or in software functional modules or functional units. The module or unit division in this application embodiment is illustrative and only represents one logical functional division; other division methods may be used in actual implementation.
[0115] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A routing device supporting probe mode, characterized in that, The routing device supports a probe mode in addition to the normal mode; the normal mode is the mode in which the routing device is working normally. The detection mode is used to generate a detection data stream and to differentiate between the business data stream and the detection data stream; The routing device can be applied to a data transmission method, the method including: Determine the mode in which the routing device is located; When the routing device is in the probe mode, the service data stream and the probe data stream in the received data are determined; the service data stream has a higher priority than the probe data stream. Forward the service data stream to routing devices in normal mode or routing devices that do not support probe mode, and discard the probe data stream; The detection data stream generated by the detection mode is determined based on the service data stream and a specified multiplier; the packet characteristics of the detection data stream are consistent with the packet characteristics of the service data stream.
2. The device according to claim 1, characterized in that, When configuring modes at the device level, the routing device being in the normal mode includes all interfaces of the routing device being in the normal mode; the routing device being in the probe mode includes all interfaces of the routing device being in the probe mode. When the mode is configured at the interface level, each interface of the routing device is independently in the normal mode or the probe mode; if the ingress interface is in the probe mode but the egress interface is in the normal mode, the routing device discards the probe data stream in the data stream.
3. The device according to claim 2, characterized in that, The operating mode of the routing device / interface is determined by configuration or protocol negotiation to determine whether the working mode is the detection mode. The configuration method / the protocol negotiation method can specify triggering conditions; the condition configuration includes time period and / or resource utilization.
4. The device according to claim 3, characterized in that, The detection data stream generated by the detection mode is determined based on the business data stream and a specified multiplier, including: Determine the service data flow that passes through the ingress interface of the routing device or meets the filtering rules; The business data stream is replicated based on the replication ratio to determine the probe data stream; wherein, the replication function is effective when the routing device / interface is in probe mode.
5. The device according to claim 4, characterized in that, After determining the probe data stream by replicating the service data stream based on the replication ratio, the method further includes: The probe data stream is marked; wherein the marking method includes: setting a specific field in the probe data stream to a specific value or adding an optional extended field to the probe data stream.
6. The device according to claim 5, characterized in that, Following the determination of the probe data stream, the following is also included: The destination address of the probe data stream may be modified or left unchanged; wherein the modified destination address of the probe data stream is a service address or a black hole address; the black hole address is used to offload the probe data stream out of the network.
7. The device according to claim 1, characterized in that, The routing device is equipped with a bundling queue; the bundling queue includes a first queue for carrying service data streams and a second queue for carrying tagged probe data streams; the first queue has a higher priority than the second queue. The parameter configuration of the routing device for the queue takes effect for the bundled queue; wherein the parameter configuration of the bundled queue includes the discard rule when enqueuing and the rate limiting rule when dequeuing.
8. The device according to claim 6 or 7, characterized in that, When the first queue receives a business data stream, the current occupancy of the first queue is used as a reference to determine the discard rule when enqueuing; When the second queue receives the probe data stream, it uses the sum of the current occupancy of the first queue and the current occupancy of the second queue as a reference to determine the discard rule when enqueuing; The discard rule is configured using the parameters of the bundled queue.
9. The device according to claim 8, characterized in that, Each of the probe data streams is configured with an enqueue delay; the enqueue delay is used to postpone the time when the probe data stream enters the second queue.