Data transmission method, device, storage medium, and program product
By routing data to a third PE in the EVPN for forwarding, the packet loss problem caused by uneven load sharing is solved, and the packet loss rate is reduced without reducing throughput.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- ZTE CORP
- Filing Date
- 2025-10-11
- Publication Date
- 2026-05-07
AI Technical Summary
In EVPN, uneven load distribution can lead to unnecessary packet loss. Existing technologies address this issue by reducing the data transmission rate, which results in reduced throughput.
By routing some data to the third PE for forwarding when the congestion probability of the first link is higher than that of the second link, the upstream node is notified to reduce the data transmission rate, thus ensuring that there is no packet loss within the total bandwidth.
Without reducing throughput, the packet loss rate during data transmission was reduced, thus avoiding some PE congestion.
Smart Images

Figure CN2025127127_07052026_PF_FP_ABST
Abstract
Description
Data transmission methods, devices, storage media and software products
[0001] This disclosure claims priority to Chinese patent application No. 202411551928.9, filed on October 31, 2024, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This disclosure relates to the field of communication technology, and in particular to a data transmission method, device, storage medium, and program product. Background Technology
[0003] Ethernet Virtual Private Network (EVPN) is a Layer 2 virtual private network technology based on Border Gateway Protocol (BGP) and Multi-Protocol Label Switching (MPLS). EVPN aims to provide a flexible, scalable, and secure network solution to meet the data communication needs of modern enterprises. By extending the Network Layer Reachability Information (NLRI) of the Border Gateway Protocol, EVPN adds several types of BGP EVPN routes to advertise Media Access Control (MAC) addresses and Internet Protocol (IP) addresses between different sites, thereby enabling Layer 2 and Layer 3 network communication.
[0004] However, in current EVPN systems, there is unnecessary packet loss when the load is unevenly distributed. Summary of the Invention
[0005] Firstly, a data transmission method is provided, applied to a first provider edge (PE), the method comprising:
[0006] Receive the first data sent by the second PE, the first data being the data to be sent to the first customer edge (CE);
[0007] In response to the probability that the first link is congested being greater than the probability that the second link is congested, the third PE sends the second data to the third PE so that the third PE forwards the second data to the first CE; here, the first link is the link between the first PE and the first CE, the second link is the link between the third PE and the first CE, and the second data is a portion of the first data.
[0008] In a second aspect, a communication device is provided for use in a first PE, the device comprising:
[0009] The receiving unit is used to receive first data sent by the second PE, wherein the first data is data to be sent to the first CE;
[0010] The sending unit is configured to send second data to the third PE in response to the probability that the first link is congested being greater than the probability that the second link is congested, so that the third PE forwards the second data to the first CE; here, the first link is the link between the first PE and the first CE, the second link is the link between the third PE and the first CE, and the second data is a portion of the first data.
[0011] Thirdly, a network device is provided, comprising: a processor and a memory; the memory and the processor are coupled; the memory is used to store instructions executable by the processor, the memory storing the processor-executable instructions; when the processor is configured to execute the instructions, the network device implements the method provided in the first aspect above.
[0012] Fourthly, a computer-readable storage medium is provided that stores computer instructions, which, when executed on a computer, cause the computer to perform the method provided in the first aspect. In some embodiments, the computer-readable storage medium includes a non-transitory computer-readable storage medium.
[0013] Fifthly, a computer program product containing computer instructions is provided, which, when executed on a computer, causes the computer to perform the method provided in the first aspect. Attached Figure Description
[0014] To more clearly illustrate the technical solutions in this disclosure, the accompanying drawings used in some embodiments of this disclosure will be briefly described below. Obviously, the drawings described below are merely drawings of some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings.
[0015] Figure 1 is a data transmission diagram provided according to an embodiment of the present disclosure.
[0016] Figure 2 is a structural diagram of a communication system provided according to an embodiment of the present disclosure.
[0017] Figure 3 is a flowchart of a data transmission method provided according to an embodiment of the present disclosure.
[0018] Figure 4 is a flowchart of another data transmission method provided according to an embodiment of the present disclosure.
[0019] Figure 5 is a flowchart of another data transmission method provided according to an embodiment of the present disclosure.
[0020] Figure 6 is a block diagram of another communication system provided according to an embodiment of the present disclosure.
[0021] Figure 7 is a block diagram of a communication device provided according to an embodiment of the present disclosure.
[0022] Figure 8 is a block diagram of a network device provided according to an embodiment of the present disclosure. Detailed Implementation
[0023] To enable those skilled in the art to better understand the technical solutions of the embodiments of this disclosure, the technical solutions of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this disclosure, and not all embodiments. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.
[0024] Unless the context otherwise requires, throughout the specification and claims, the term "comprise" and other forms such as the third-person singular "comprises" and the present participle "comprising" are interpreted as open-ended and encompassing, meaning "including, but not limited to." In the description of the specification, terms such as "one embodiment," "some embodiments," "exemplary embodiments," "example," "specific example," or "some examples" are intended to indicate that a particular feature, structure, material, or characteristic associated with that embodiment or example is included in at least one embodiment or example of this disclosure. The illustrative representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics mentioned may be included in any suitable manner in any one or more embodiments or examples.
[0025] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this disclosure, unless otherwise stated, "a plurality of" means two or more.
[0026] In this disclosure, the terms "exemplarily" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplarily" or "for example" in this disclosure should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the use of the terms "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.
[0027] In addition, the use of “based on” implies openness and inclusivity, because processes, steps, calculations or other actions “based on” one or more of the stated conditions or values may in practice be based on additional conditions or values beyond those stated.
[0028] Figure 1 is a data transmission diagram according to an embodiment of this disclosure. Referring to Figure 1, it is assumed that the link bandwidth connecting CE1 to PE1 and PE2 is 10G each, and therefore the total bandwidth of the link aggregation group (LAG) on CE1 composed of these links is 20G. At this time, it is assumed that the total traffic sent from PE3 to CE1 is also 20G. Theoretically, the bandwidth of the link aggregation group is sufficient to handle this traffic. However, due to the coexistence of giant frame streams (also known as elephant streams) and small packet streams (also known as mouse streams) in the total traffic, and the existence of uneven load sharing, the following problem occurs: CE2 experiences a burst of traffic, causing the total bandwidth sent from CE2 to CE1 to reach 20G. Due to uneven load sharing (for example, more giant frame streams are distributed to PE2, while more small packet streams are distributed to PE1), the traffic on PE2 overflows the link bandwidth, and the link bandwidth from PE2 to CE1 may no longer be sufficient to handle the required traffic, while the link bandwidth from PE1 to CE1 still has surplus. In this situation, packet loss occurs.
[0029] Related technologies propose that, under the above circumstances, PE2 notifies the upstream node to reduce the data transmission rate, for example, PE2 notifies PE3 or CE2 to reduce the data transmission rate. However, this method will lead to a decrease in the overall throughput (e.g., below 20G to a certain extent). How to reduce the packet loss rate during data transmission while ensuring throughput is an urgent problem to be solved.
[0030] Based on this, embodiments of this disclosure provide a data transmission method, device, storage medium, and program product. After receiving the first data to be sent to the first CE, if the probability of congestion on the first link is greater than the probability of congestion on the second link (meaning the probability of congestion on the first link is high), the first PE sends a portion of the first data to the third PE. In other words, a portion of the first data is routed to the third PE and then sent to the first CE by the third PE. Thus, when the probability of congestion on the first link is high, by routing a portion of the first data to the third PE, the first data can be sent to the first CE without notifying the upstream node to reduce the data transmission rate. This avoids congestion on some PEs when the actual traffic does not exceed the total bandwidth (e.g., 20G) and reduces the packet loss rate during data transmission without lowering the throughput.
[0031] The embodiments of this disclosure will now be described in conjunction with the accompanying drawings.
[0032] The technical solutions provided in this disclosure can be applied to various mobile communication networks, such as NR mobile communication networks using 5th generation mobile networks (5G), future mobile communication networks (such as 6G wireless communication systems), or multiple communication convergence systems, etc. This disclosure does not limit these applications.
[0033] Figure 2 is a structural diagram of a communication system provided according to an embodiment of the present disclosure. Referring to Figure 2, the communication system includes multiple CEs (e.g., CE101 and CE102) and multiple PEs (e.g., PE201, PE202 and PE203).
[0034] In some embodiments, for each of a plurality of CEs, the CE is a user network edge device, a user-end router to which the service provider is connected. The CE is directly connected to the customer's local network and connected to the PE router of the service provider's network. The CE is used for at least one of the following:
[0035] Directing customer traffic to the service provider network;
[0036] Perform some basic virtual local area network (VLAN) tagging functions, such as adding and removing tags;
[0037] Provides VPN (Virtual Private Network) access functionality to ensure the secure transmission of customer data.
[0038] In some embodiments, for each of a plurality of PEs, the PE is an edge router of the service provider network, responsible for connecting different CEs and forwarding data between CEs. The PE router is an access router for the IP VPN, acting as a label edge router (LER). The PE is used for at least one of the following:
[0039] Connects the CE (Contact Equipment) and the operator's backbone network;
[0040] Perform some basic MPLS tag processing functions, such as tag addition and stripping;
[0041] Forward data between different customer networks;
[0042] Maintain VPN instances to ensure secure isolation and proper routing of customer data.
[0043] It should be understood that Figure 2 is an exemplary structural diagram, and the number of devices included in the communication system shown in Figure 2 is not limited, for example, the number of PE and CE is not limited. Furthermore, in addition to the devices shown in Figure 2, the communication system shown in Figure 2 may include other devices, and this is not limited.
[0044] Next, as shown in Figure 3, a data transmission method is provided according to an embodiment of this disclosure. The method is applied to a first PE, which may be the PE202 shown in Figure 2 above. The method may include the following steps:
[0045] S101, Receive the first data sent by the second PE.
[0046] Here, the first data is the data to be sent to the first CE.
[0047] In some embodiments, the first data is data from a first data stream of the second CE, and receiving the first data sent by the second PE may be receiving the first data sent by the second PE from the second CE.
[0048] The first CE can be understood as the destination CE, the second CE as the source CE, the second PE as the PE with a communication link to the source CE, and the first PE and the third PE as the PE with a communication link to the destination CE. Referring to the communication system shown in Figure 2 above, the first CE can be CE101, the second CE can be CE102, the second PE can be PE201, and the third PE can be PE203.
[0049] S102. In response to the probability that the first link is congested being greater than the probability that the second link is congested, the third PE sends the second data to the third PE so that the third PE forwards the second data to the first CE.
[0050] Here, the first link is the link between the first PE and the first CE, the second link is the link between the third PE and the first CE, and the second data is a portion of the first data.
[0051] In some embodiments, the second data is all the data in the first data. For example, in the case of congestion on the first link, the second data is all the data in the first data. That is, the first PE sends all the data in the first data to the third PE, and the third PE forwards the first data to the second CE.
[0052] In some embodiments, after receiving the first data, the first PE obtains the probability of congestion on the first link and the probability of congestion on the second link. If the probability of congestion on the first link is greater than the probability of congestion on the second link, it means that the proportion of the first data in the first data stream exceeds the proportion of the first data stream that the first link should bear. This may exceed the forwarding capacity of the first PE, resulting in a higher probability of congestion on the first link and packet loss. In order to avoid packet loss, in response to the probability of congestion on the first link being greater than the probability of congestion on the second link, the first PE sends the second data to the third PE, so that the third PE forwards the second data to the first CE. That is, part of the data in the first data is bypassed to the third PE, and the third PE forwards the part of the first data that exceeds the forwarding capacity of the first PE to the first CE.
[0053] In some embodiments, the proportion of the second data in the first data can be determined by the probability of congestion on the first link and the probability of congestion on the second link. For example, the proportion of the second data in the first data is positively correlated with the ratio of the probability of congestion on the first link to the probability of congestion on the second link.
[0054] In some embodiments, the probability of congestion on the first link being greater than the probability of congestion on the second link can mean that the probability of congestion on the first link being greater than the probability of congestion on the second link within a preset time period. The preset time period includes the current time and historical time prior to the current time.
[0055] In some embodiments, the first PE obtains the probability of congestion on the first link by obtaining the queue load of the first link and determining the probability of congestion based on the queue load. Here, the queue load can be the average occupancy of the forwarding queue over a recent period. The queue load of the first link is positively correlated with the probability of congestion; that is, the higher the queue load of the first link, the higher the probability of congestion. For example, the percentage of the queue load of the first link can be used as the probability of congestion.
[0056] In some embodiments, queue load includes queue length, which is the actual length occupied by the queue. For example, the queue length is the average queue length over a recent period.
[0057] In some embodiments, the first PE obtains the probability of congestion on the first link by predicting the probability of congestion on the first link based on a congestion probability prediction model. Here, the congestion probability prediction model can be an artificial intelligence (AI) model.
[0058] In some embodiments, the first PE obtains the probability of congestion on the second link by receiving prediction information from the third PE after receiving the first data sent by the second PE, that is, before sending the second data to the third PE. The prediction information includes information for determining the probability of congestion on the second link, and then determines the probability of congestion on the second link based on the prediction information. The description of how the third PE obtains the probability of congestion on the second link can be referred to the above description of the first PE obtaining the probability of congestion on the first link, and will not be repeated here.
[0059] In some embodiments, the prediction information includes the queue load of the second link, and the first PE can determine the probability of congestion on the second link based on the queue load of the second link.
[0060] In some embodiments, the prediction information includes the probability of congestion occurring on the second link.
[0061] In some embodiments, the first PE receiving prediction information sent by the third PE may be achieved by the first PE sending a request to the third PE for the probability of congestion on the second link, and then receiving the prediction information sent by the third PE. Alternatively, the first PE may receive prediction information periodically sent by the third PE. This disclosure embodiment does not limit the form in which the first PE receives the prediction information sent by the third PE.
[0062] In some embodiments, the prediction information includes a congestion factor, which is a factor related to the probability of congestion occurring on the second link. In some embodiments, the congestion factor includes at least one of the following: the queue length of the second link, the bandwidth of the second link, the queue load of the second link, and the historical congestion index of the second link.
[0063] In some embodiments, the probability of congestion on the first link is greater than the probability of congestion on the second link, which may include the following situations:
[0064] Scenario 1: In response to congestion on the first link, determine that the probability of congestion on the first link is greater than the probability of congestion on the second link.
[0065] In other words, if the first link is congested, it is assumed that the probability of the first link being congested is greater than the probability of the second link being congested, and the congestion situation of the second link is not considered.
[0066] Scenario 2: In response to the fact that the congestion parameter of the first link is greater than the congestion parameter of the second link, it is determined that the probability of the first link being congested is greater than the probability of the second link being congested.
[0067] Here, congestion parameters are used to indicate the degree of queue congestion. For example, the congestion parameters of the first link are used to indicate the degree of queue congestion of the first link, and the congestion parameters of the second link are used to indicate the degree of queue congestion of the second link.
[0068] It should be understood that the larger the congestion parameter of a link, the more data is backed up on that link, and the higher the probability of congestion on that link. Therefore, if the congestion parameter of the first link is greater than that of the second link, the probability of congestion on the first link is greater than that on the second link.
[0069] In some embodiments, congestion parameters include queue load conditions and the probability of congestion occurring.
[0070] In some embodiments, the degree of congestion can be replaced by the degree of occupancy, the degree of load, the utilization rate, etc., and the embodiments disclosed herein do not limit this.
[0071] In some embodiments, when the forwarding queues of the first link and the second link have the same queue length, scenario 2 can be used to determine that the probability of congestion on the first link is greater than the probability of congestion on the second link.
[0072] In some embodiments, step S102 may include the following implementation:
[0073] Implementation Method 1: In response to the probability that the first link is congested being greater than the probability that the second link is congested, determine whether the congestion parameter of the first link is greater than a first threshold. If the congestion parameter of the first link is greater than the first threshold, send second data to the third PE.
[0074] The description of the congestion parameters of the first link can be found in the description of the congestion parameters of the first link in the above embodiments, and will not be repeated here.
[0075] It should be understood that, given a higher probability of congestion on the first link than on the second link, determining whether the congestion parameter of the first link exceeds a first threshold is to determine if the current congestion level of the first link's queue is too high. If the congestion parameter of the first link exceeds the first threshold, it indicates that the current congestion level of the first link's queue is too high. To avoid packet loss, second data can be sent to the third PE, meaning a portion of the first data is rerouted. If the congestion parameter of the first link is less than or equal to the first threshold, it indicates that the current congestion level of the first link's queue is not too high and has not exceeded the data forwarding capacity of the first PE. The first PE can forward data using its current forwarding method without causing congestion on the first link, and can directly send the first data to the first CE.
[0076] Implementation Method 2: In response to the probability of congestion on the first link being greater than the probability of congestion on the second link, determine whether the difference between the probabilities of congestion on the first link and the second link is greater than a second threshold. If the difference is greater than the second threshold, send second data to the third PE.
[0077] Here, the second threshold is greater than 0.
[0078] In other words, if the probability of congestion on the first link is greater than the probability of congestion on the second link by a certain degree, the first PE sends the second data to the third PE. This improves the accuracy of the second data sent from the first PE to the third PE and avoids the situation where the data forwarding queue of the third PE is quickly affected by the first PE sending the second data to the third PE, causing the difference in congestion probability between the two to reverse rapidly.
[0079] In some embodiments, the second threshold can be adjusted according to the queue load of the first link. That is, the second threshold is a threshold determined based on the queue load of the first link. For example, when the queue load of the first link is low, a higher second threshold can be used, and when the queue load of the first link is high, a lower second threshold can be used. In other words, the second threshold can be inversely correlated with the queue load of the first link.
[0080] In some embodiments, the second threshold can be adjusted according to the historical congestion index of the first link. That is, the second threshold is a threshold determined based on the historical congestion index of the first link. For example, when the historical congestion index of the first link is low, a higher second threshold can be used, and when the historical congestion index of the first link is high, a lower second threshold can be used. In other words, the second threshold can be related to the historical congestion index of the first link.
[0081] It should be noted that the above embodiment, which uses the example of determining whether the probability of the first link being congested is greater than the probability of the second link being congested by checking whether the difference between the probability of the first link being congested and the probability of the second link being congested is greater than a second threshold, is merely an example. In some embodiments, the difference can also be replaced by a ratio, growth rate, etc. That is, the probability of the first link being congested is greater than the probability of the second link being congested by checking whether the ratio or growth rate of the probability of the first link being congested is greater than the probability of the second link being congested is determined by checking whether the ratio or growth rate of the probability of the first link being congested is greater than the second link being congested.
[0082] It should be understood that if the ratio or growth rate of the probability of congestion on the first link to the probability of congestion on the second link is greater than the second threshold, it means that the probability of congestion on the first link is not only greater than the probability of congestion on the second link, but also that the probability of congestion on the first link is greater than the probability of congestion on the second link to a certain extent. In this case, if some data in the first data is not rerouted, it may lead to congestion on the first link, thereby causing packet loss.
[0083] In some embodiments, when a difference is used, the second threshold may also be referred to as a preset difference, difference threshold, etc. When a ratio is used, the second threshold may also be referred to as a preset ratio, ratio threshold, etc. When a growth rate is used, the second threshold may also be referred to as a preset growth rate, growth rate threshold, etc.
[0084] In some embodiments, when the first PE sends the second data to the third PE, the first PE sends other data from the first data, excluding the second data, to the second CE.
[0085] In some embodiments, when the first PE sends second data to the third PE, it needs to know the network address of the third PE. Based on this, the first PE can send the second data to the third PE by receiving first routing information sent by the third PE. The first routing information includes the association between the identifier of the third PE and the identifier of the second link. Then, the first PE sends the second data to the third PE based on the first routing information.
[0086] In some embodiments, the prediction information is carried in the first routing information.
[0087] Based on the embodiment shown in Figure 3, after receiving the first data to be sent to the first CE, if the probability of congestion on the first link is greater than the probability of congestion on the second link (meaning the probability of congestion on the first link is high), the first PE sends a portion of the first data to the third PE. In other words, a portion of the first data is routed to the third PE and then sent to the first CE by the third PE. Thus, when the probability of congestion on the first link is high, by routing a portion of the first data to the third PE, the first data can be sent to the first CE without notifying the upstream node to reduce the data transmission rate. This avoids congestion on some PEs when the actual traffic does not exceed the total bandwidth, and reduces the packet loss rate during data transmission without lowering the throughput.
[0088] It should be understood that sending the second data from the first PE to the third PE increases the probability of congestion on the second link. To avoid congestion on the second link due to the first PE sending the second data to the third PE, as shown in Figure 4, after the first PE sends the second data to the third PE, i.e., after step S102, the method may further include the following steps:
[0089] S201, reacquire the probability of congestion on the first link and the probability of congestion on the second link.
[0090] The description of how to reacquire the probability of congestion on the first link can be found in S102 above, and will not be repeated here. Reacquiring the probability of congestion on the second link can be achieved by the first PE receiving the prediction information sent by the third PE again, and then determining the probability of congestion on the second link again based on the prediction information.
[0091] S202. Based on the probability of congestion on the first link after reacquisition and the probability of congestion on the second link, determine whether to stop sending the second data to the third PE.
[0092] In some embodiments, in response to the difference between the probability of congestion on the first reacquired link and the probability of congestion on the second link being less than a third threshold, it is determined to stop sending second data to the third PE. In response to the difference between the probability of congestion on the first reacquired link and the probability of congestion on the second link being greater than or equal to the third threshold, it is determined to continue sending second data to the third PE.
[0093] It should be understood that if the difference between the probability of congestion on the first reacquisition link and the probability of congestion on the second link is less than the third threshold, it means that the difference between the probability of congestion on the first link and the probability of congestion on the second link has decreased. In other words, after the first PE sends the second data to the third PE, the probability of congestion on the second link increases. Therefore, in order to avoid the situation where the second link becomes congested after the first PE sends the second data to the third PE, in response to the difference between the probability of congestion on the first reacquisition link and the probability of congestion on the second link being less than the second threshold, it is determined to stop sending the second data to the third PE, so as to avoid congestion on the second link and reduce the packet loss rate during data transmission.
[0094] In some embodiments, the third threshold is greater than 0.
[0095] In some embodiments, the third threshold is less than the second threshold.
[0096] In conjunction with the embodiment shown in Figure 3 above, the difference in the embodiment shown in Figure 4 can also be replaced by a ratio, growth rate, etc., and this disclosure does not limit this.
[0097] S203. If it is determined that the transmission of the second data to the third PE shall be stopped, the transmission of the second data to the third PE shall be stopped.
[0098] The embodiment shown in Figure 4 above illustrates the case where the amount of data sent from the first CE to the second CE does not exceed the forwardable data capacity of the first and second links. It should be understood that if the amount of data sent from the first CE to the second CE exceeds the total forwardable data capacity of the first and second links, i.e., exceeds the total forwardable data capacity of the first PE and the third PE, even if the first PE routes the second data to the third PE, congestion will still occur on the first and second links, resulting in packet loss. Therefore, to reduce the packet loss rate during data transmission, in some embodiments, as shown in Figure 5, after the first PE sends the second data to the third PE, i.e., after step S102, the method may further include the following steps:
[0099] S301. Determine the predicted congestion probability.
[0100] Here, the predicted congestion probability is used to characterize the probability that congestion will occur jointly on the first link and the second link.
[0101] In some embodiments, the probability of congestion on the first link and the probability of congestion on the second link are reacquired, and a predicted congestion probability is obtained based on the reacquired probability of congestion on the first link and the probability of congestion on the second link.
[0102] The probabilities of reacquiring the first link due to congestion and the second link due to congestion can be described in the above description of step S201, and will not be repeated here.
[0103] In some embodiments, stateless mathematical operations are performed on the probability of re-acquiring the first link and the probability of the second link becoming congested to obtain the predicted congestion probability. For example, the probability of re-acquiring the first link and the probability of the second link becoming congested are input into a preset formula to obtain the predicted congestion probability.
[0104] In some embodiments, the first parameter set and the second parameter set are input into the congestion probability prediction model to obtain the predicted congestion probability; here, the first parameter set is the parameter set corresponding to the probability of congestion occurring on the first link, and the second parameter set is the parameter set corresponding to the probability of congestion occurring on the second link.
[0105] S302. If the predicted congestion probability is greater than or equal to the fourth threshold, send an indication message to the second PE to indicate a reduction in the data transmission rate.
[0106] It should be understood that if congestion occurs in both the first and second links, it means that the upstream node is sending too much data. Even if the first PE redirects the second data to the third PE, packet loss will still occur. To reduce the packet loss rate during data transmission, the first PE can determine whether to send an indication message to the second PE to reduce the data transmission rate based on the predicted congestion probability.
[0107] In some embodiments, if the predicted congestion probability is greater than or equal to a fourth threshold, it is determined that an indication message will be sent to the second PE. If the predicted congestion probability is less than the fourth threshold, it is determined that no indication message will be sent to the second PE.
[0108] It should be understood that congestion on either the first or second link constitutes relative congestion, while congestion on both the first and second links constitutes absolute congestion. When the predicted congestion probability is greater than or equal to the fourth threshold, it indicates a high probability that both the first and second links are congested. To avoid packet loss due to absolute congestion, when the predicted congestion probability is greater than or equal to the fourth threshold, it is determined to send an indication message to the second PE.
[0109] It should be understood that sending the instruction information to the second PE to indicate a reduction in the data transmission rate includes sending the instruction information to the node behind the second PE to indicate a reduction in the data transmission rate. The node behind the second PE is the node that the current node needs to communicate with through the second PE.
[0110] For example, after the first PE reacquires the probability of congestion on the first link and the probability of congestion on the second link, if the probability of congestion on the second link indicates that the second link is likely to be congested in the near future, the first PE may determine to send an indication message when the queue backlog on the first link reaches 60%. Alternatively, if the probability of congestion on the second link indicates that the second link is unlikely to be congested in the near future, the first PE may determine to send an indication message when the queue backlog on the first link reaches 80%. Alternatively, if the probability of congestion on the second link indicates that the second link is currently congested, the first PE may determine to send an indication message when the queue backlog on the first link reaches 50%.
[0111] Based on the embodiment shown in Figure 5, compared to the related technologies where the first PE sends an indication message to the second PE to indicate a reduction in data transmission rate when the probability of the first link being congested is high or when the first link is congested, this embodiment proposes to determine whether to send an indication message to the second PE to indicate a reduction in data transmission rate by combining the probability of the first link being congested and the probability of the second link being congested. When the predicted congestion probability is greater than or equal to a fourth threshold, the indication message to indicate a reduction in data transmission rate is sent to the second PE. In this way, on the one hand, the accuracy of sending the indication message is improved, avoiding frequent reduction of data transmission rate by upstream nodes; on the other hand, it avoids packet loss caused by the amount of data sent by upstream nodes exceeding the total forwardable data of the first and third PEs, thus reducing the packet loss rate.
[0112] The above embodiment is illustrated by the following example: after receiving the first data sent by the second PE, the congestion probability is predicted to be less than the fourth threshold by default, that is, the probability of the first link and the second link jointly causing congestion is less than the fourth threshold. In response to the probability of the first link causing congestion being greater than the probability of the second link causing congestion, the second data is sent to the third PE, that is, a part of the first data is bypassed to the third PE.
[0113] In some embodiments, after receiving first data sent by the second PE and prediction information sent by the third PE, and determining the probability of congestion on the second link based on the prediction information, the first PE can determine the predicted congestion probability, and then determine whether to send indication information to the second PE to indicate a reduction in the transmission rate based on the predicted congestion probability. If the predicted congestion probability is greater than or equal to a fourth threshold, indicating a high probability of joint congestion on the first and second links, the first PE sends the indication information to the second PE, thus eliminating the need to perform the steps shown in step S102 above.
[0114] Alternatively, if the predicted congestion probability is less than the fourth threshold, the step of sending the second data to the third PE is executed, that is, the above step S102 is executed, so that part of the first data is bypassed to the third PE, and the third PE sends part of the first data to the first CE.
[0115] In some embodiments, if the predicted congestion probability is less than a fourth threshold, second data is sent to the third PE in response to the probability that the first link is congested being greater than or equal to the probability that the second link is congested.
[0116] For example, after receiving the first data sent by the second PE, the first PE can determine a predicted congestion probability. If the predicted congestion probability is greater than or equal to a fourth threshold, it determines to send an indication message to the second PE to notify the upstream node to reduce the data transmission rate. If the predicted congestion probability is less than the fourth threshold, it determines whether the probability of congestion on the first link is greater than the probability of congestion on the second link. If it determines that the probability of congestion on the first link is greater than the probability of congestion on the second link, in response to the probability of congestion on the first link being greater than the probability of congestion on the second link, it sends second data to the third PE to redirect a portion of the first data to the third PE.
[0117] In other words, in some embodiments, after receiving the first data and determining the probability of congestion on the second link, the first PE can first determine the predicted congestion probability. If the predicted congestion probability is greater than or equal to a fourth threshold, it means that the probability of both the first and second links being congested is high, and both the first and second links may already be congested. In this case, it is meaningless to reroute some data from the first data to the third PE, as it will still result in packet loss. Therefore, if the predicted congestion probability is greater than or equal to the fourth threshold, an indication message is sent to the second PE to notify the upstream node to reduce the data transmission rate. If the predicted congestion probability is less than the fourth threshold, it means that the probability of both the first and second links being congested is relatively low. Some data from the first data can be rerouted, and then, if it is determined that the probability of congestion on the first link is greater than the probability of congestion on the second link, the second data is sent to the third PE.
[0118] The above embodiments illustrate the application of a data transmission method provided by this disclosure to the communication system shown in Figure 2. In some embodiments, the data transmission method provided by this disclosure can also be applied to the communication system shown in Figure 6. Referring to Figure 6, which is a block diagram of another communication system provided according to an embodiment of this disclosure, the communication system includes an external traditional network, a distributed disaggregated chassis (DDC) device, and a server. Here, the external traditional network 10 includes multiple provider cores (P) and multiple edge routers (ER). The multiple Ps include P11 and P12, and the multiple ERs include ER13 and ER14. ERs are typically edge devices of a certain level of the Internet service provider (ISP) network and can connect to the ISP's core network.
[0119] DDC device 20 includes a network control manager (NCM) 21, multiple NCPs, and M NCFs. The multiple NCPs include multiple border NCPs (e.g., border NCP 22, border NCP 23) and multiple server NCPs (e.g., server NCP 24, server NCP 25, and server NCP 26). The M NCFs include NCF 27 and NCF 28. The servers include multiple servers, such as server 31, server 32, and server 33. M is a positive integer.
[0120] In some embodiments, the NCM21 is used to implement network management functions.
[0121] In some embodiments, for each of the plurality of ERs, the ER is communicatively connected to a plurality of border NCPs, for example, ER13 is connected to border NCP22 and border NCP23. For each of the plurality of border NCPs, the border NCP is connected to a plurality of NCFs. For each of the plurality of NCFs, the NCF is connected to a plurality of server NCPs.
[0122] In the communication system shown in Figure 6, the data transmission method provided in this embodiment can be applied to border NCP. Taking border NCP22 as the first PE, the third PE is border NCP23, the second PE is server NCP24, and one of the server and ER is the first CE and the other is the second CE. For example, ER13 is the first CE and server 31 is the second CE.
[0123] Referring to the communication system shown in Figure 6, after receiving the information cells (corresponding to the second data) of the data packet (corresponding to the first data) forwarded from server 31 by server NCP24, border NCP22 determines whether the probability of its own communication interface being congested is greater than or equal to the probability of border NCP23's communication interface being congested. If the probability of its own communication interface being congested is greater than or equal to the probability of border NCP23's communication interface being congested, it sends a portion of the information cells forwarded by server NCP24 to border NCP23, so that border NCP23 forwards a portion of the information cells forwarded by NCF27 to ER13. The following describes a data transmission method provided by this disclosure embodiment applied to the communication system shown in Figure 6 with a complete example, which may include the following steps:
[0124] D1. For each border NCP in the communication system shown in Figure 6, configure a unique identifier (also called a flow point) for the communication interface between each border NCP and PE. For example, configure the communication interface between border NCP22 and ER13 as flow identity 1 (FID1), and configure the communication interface between border NCP23 and ER13 as FID2. Border NCP22 and border NCP23 synchronize FID1 and FID2 among all NCFs / NCPs through Fabric signaling of the Fabric interface between NCFs and NCFs, and form the first FID table entry on each NCF / NCP node respectively.
[0125] D2. Configure a reserved FID for each NCP node. Each NCP node synchronizes its reserved FID with all NCFs / NCPs through Fabric signaling and forms a second FID entry on each NCF / NCP node.
[0126] D3, border NCP and server NCP establish BGP sessions separately using their respective reserved FIDs. The reserved FID is a unique identifier (flow point) that is not used to assign to the external interface of DDC.
[0127] D4. Map FID1 and FID2 to ESI (denoted as ESI201). Border NCP22 and border NCP23 publish RT-1 routing information to ESI201 via BGP sessions (denoted as RT1_NCP1 and RT1_NCP2, respectively). Here, RT1_NCP1 carries FID1, and RT1_NCP2 carries FID2.
[0128] After receiving RT1_NCP1 and RT1_NCP2, D5 and server NCP (e.g., server NCP24) establish a mapping relationship between ESI201 and the identifier set, which includes FID1 and FID2.
[0129] D6. Border NCP22 learns an IP prefix, denoted as IP_PE1, through the communication interface between it and PE11 outside the DDC device (e.g., PE11). Border NCP22 then publishes an RT5 route (denoted as RT5_for_PE1_OI_FID1) for IP_PE1 via a BGP session. Border NCP23 also learns an IP prefix, denoted as IP_PE1, through the communication interface between it and PE11 outside the DDC device (e.g., PE11). Border NCP23 then publishes an RT5 route (denoted as RT5_for_PE1_OI_FID2) for IP_PE1 via a BGP session. RT5_for_PE1_OI_FID1 carries the ESI201 corresponding to the communication interface between border NCP22 and PE11, and RT5_for_PE1_OI_FID2 carries the ESI201 corresponding to the communication interface between border NCP23 and PE11.
[0130] After receiving RT5_for_PE1_OI_FID1 and RT5_for_PE1_OI_FID2, D7 and server NCP (e.g., server NCP24) establish a mapping relationship between IP_PE1 and the identifier set based on the ESI201 carried.
[0131] After receiving the data stream (the first data being a portion of the data stream) from the server (e.g., server 31), server NCP (e.g., server NCP24) segments the packets in the data stream into N cells. Then, using a load-sharing approach, it determines the FID of each of the N cells within the identifier set corresponding to IP_PE1. Based on the FIDs of each of the N cells, it forwards the N cells to border NCP22 and border NCP23 via NCF27 and NCF28, with each cell including its corresponding FID.
[0132] After receiving a cell, D9 and NCF (e.g., NCF27) forward the cell to the border NCP (e.g., border NCP22) corresponding to the FID in the cell.
[0133] After receiving the cell forwarded by NCF, D10 and border NCP (e.g., border NCP22) determine whether their own communication interface is congested. If their communication interface is not congested, they reconstruct the message based on the cells in the same batch as the received cell, and then forward the message to ER13 using the FID in the cell. If the probability of their own communication interface being congested is greater than or equal to the probability of border NCP23's communication interface being congested, they send a portion of the cells forwarded by NCF27 (corresponding to the second data) to border NCP23, so that border NCP23 forwards a portion of the cells forwarded by NCF27 to ER13.
[0134] In some embodiments, when the communication interface itself is congested, the FID1 included in the cell and its preamble is modified to FID2, and the modified cell is forwarded to the communication interface corresponding to border NCP23 via FID2. Here, the preamble (which also corresponds to the second data) is a cell that is obtained by segmenting the same data packet as the cell.
[0135] After receiving the modified cell, D11 and border NCP23 send the restored message to ER13 through the communication interface between border NCP23 and ER13. It should be noted that after receiving the modified message, border NCP23 forwards the modified cell to ER13 if it determines that the communication interface between border NCP22 and ER13 is not faulty (including congestion). If it determines that the communication interface between border NCP22 and ER13 is faulty, it discards the modified cell and does not forward it to border NCP22.
[0136] The foregoing primarily describes the solutions provided in this disclosure from the perspective of interaction between various devices. It is understood that each device, such as the first PE, includes corresponding hardware structures and / or software modules to perform the aforementioned functions. Those skilled in the art should readily recognize that, based on the algorithmic steps of the examples described in conjunction with the embodiments disclosed herein, this disclosure can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this disclosure.
[0137] This disclosure embodiment can divide the first PE into functional modules according to the above method embodiment. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one functional module. The integrated module can be implemented in hardware or software. It should be noted that the module division in this disclosure embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods. The following description uses the example of dividing each functional module according to each function.
[0138] Figure 7 is a block diagram of a communication device according to an embodiment of the present disclosure. As shown in Figure 7, the communication device 40 includes a receiving unit 401 and a transmitting unit 402.
[0139] The communication device 40 can be the first PE or a chip of the first PE described above. When the communication device 40 is used to implement the function of the first PE in the above embodiments, each unit is specifically used to implement the following functions.
[0140] The receiving unit 401 is used to receive first data sent by the second PE, wherein the first data is data to be sent to the first CE;
[0141] The sending unit 402 is used to send second data to the third PE in response to the probability that the first link is congested being greater than the probability that the second link is congested, so that the third PE forwards the second data to the first CE; here, the first link is the link between the first PE and the first CE, the second link is the link between the third PE and the first CE, and the second data is a portion of the first data.
[0142] In some embodiments, the sending unit 402 is specifically configured to determine whether the congestion parameter of the first link is greater than a first threshold in response to the probability that the first link is congested being greater than the probability that the second link is congested; the congestion parameter of the first link is used to indicate the degree of queue congestion of the first link; and if the congestion parameter of the first link is greater than the first threshold, send second data to the third PE.
[0143] In some embodiments, the sending unit 402 is specifically configured to, in response to the probability of congestion on the first link being greater than the probability of congestion on the second link, determine whether the difference between the probability of congestion on the first link and the probability of congestion on the second link is greater than a second threshold; if the difference is greater than the second threshold, send second data to the third PE.
[0144] In some embodiments, the sending unit 402 is specifically configured to determine, in response to congestion on the first link, that the probability of congestion on the first link is greater than the probability of congestion on the second link.
[0145] In some embodiments, the sending unit 402 is specifically configured to determine that the probability of congestion occurring on the first link is greater than the probability of congestion occurring on the second link in response to the congestion parameter of the first link being greater than the congestion parameter of the second link. Here, the congestion parameter is used to indicate the degree of queue congestion.
[0146] In some embodiments, the sending unit 402 is further configured to reacquire the probability of congestion on the first link and the probability of congestion on the second link; based on the reacquired probability of congestion on the first link and the probability of congestion on the second link, determine whether to stop sending the second data to the third PE; and if it is determined that the second data to be sent to the third PE should be stopped, the second data to be sent to the third PE should be stopped.
[0147] In some embodiments, the sending unit 402 is specifically configured to determine to stop sending second data to the third PE in response to the difference between the probability of congestion on the first link being reacquired and the probability of congestion on the second link being less than a third threshold.
[0148] In some embodiments, the sending unit 402 is further configured to determine a predicted congestion probability, which is used to characterize the probability that the first link and the second link will jointly experience congestion; and if the predicted congestion probability is greater than or equal to a fourth threshold, to send indication information to the second PE for reducing the data transmission rate.
[0149] In some embodiments, the sending unit 402 is specifically used to reacquire the probability of congestion on the first link and the probability of congestion on the second link; and to obtain a predicted congestion probability based on the reacquired probability of congestion on the first link and the probability of congestion on the second link.
[0150] In some embodiments, the sending unit 402 is specifically used to input the first parameter set and the second parameter set into the congestion probability prediction model to obtain the predicted congestion probability; here, the first parameter set is the parameter set corresponding to the probability of congestion occurring on the first link, and the second parameter set is the parameter set corresponding to the probability of congestion occurring on the second link.
[0151] In some embodiments, the receiving unit 401 is further configured to receive prediction information sent by the third PE, the prediction information including information for determining the probability of congestion in the second link; and to determine the probability of congestion in the second link based on the prediction information.
[0152] In some embodiments, the sending unit 402 is further configured to determine a predicted congestion probability, which is used to characterize the probability that the first link and the second link will jointly experience congestion; and if the predicted congestion probability is greater than or equal to a fourth threshold, to send indication information to the second PE for reducing the data transmission rate.
[0153] In some embodiments, the sending unit 402 is further configured to send second data to the third PE if the predicted congestion probability is less than a fourth threshold.
[0154] It should be noted that the units in Figure 7 can also be called modules; for example, the transmitting unit can be called a transmitting module. Furthermore, in the embodiment shown in Figure 7, the names of the units may not be those shown in the figure; for example, the transmitting unit can also be called a communication unit, and the receiving unit can also be called a communication unit.
[0155] If the units in Figure 7 are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this disclosure, in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this disclosure. Storage media for storing computer software products include various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0156] In the case where the communication device 40 implements the functions of the integrated module in hardware, a block diagram of a network device is provided according to an embodiment of the present disclosure. As shown in FIG8, the network device 50 includes: a processor 502, a communication interface 503, and a bus 504. In some embodiments, the network device 50 may further include a memory 501.
[0157] Processor 502 may implement or execute various exemplary logic blocks, modules, and circuits described in connection with embodiments of this disclosure. Processor 502 may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute various exemplary logic blocks, modules, and circuits described in connection with embodiments of this disclosure. Processor 502 may also be a combination that implements computational functions, such as a combination of one or more microprocessors, a digital signal processor (DSP), and a microprocessor, etc.
[0158] Communication interface 503 is used to connect to other devices via a communication network. This communication network can be Ethernet, wireless access network, wireless local area network (WLAN), etc.
[0159] The memory 501 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), disk storage medium or other magnetic storage device, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto.
[0160] In one possible implementation, the memory 501 can exist independently of the processor 502. The memory 501 can be connected to the processor 502 via a bus 504 and is used to store instructions or program code. When the processor 502 calls and executes the instructions or program code stored in the memory 501, it can implement the data transmission method provided in this embodiment of the disclosure.
[0161] In another possible implementation, the memory 501 can also be integrated with the processor 502.
[0162] Bus 504 can be an extended industry standard architecture (EISA) bus, etc. Bus 504 can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used to represent it in Figure 8, but this does not mean that there is only one bus or one type of bus.
[0163] Through the above description of the implementation methods, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the base station or terminal can be divided into different functional modules to complete all or part of the functions described above.
[0164] This disclosure also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be executed by computer instructions instructing related hardware. The program can be stored in the computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The computer-readable storage medium can also be an external storage device of the first PE, such as a pluggable hard drive, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the first PE. Further, the computer-readable storage medium can include both internal storage units of the first PE and external storage devices. The computer-readable storage medium is used to store the computer program and other programs and data required by the first PE. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0165] This disclosure also provides a computer program product comprising computer instructions that, when executed on a computer, cause the computer to perform any of the data transmission methods provided in the above embodiments.
[0166] Although this disclosure has been described herein in conjunction with various embodiments, those skilled in the art will understand and implement other variations of the disclosed embodiments by reviewing the accompanying drawings, the disclosure, and the appended claims in carrying out the claimed disclosure. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce a good effect.
[0167] Although this disclosure has been described in conjunction with specific features and embodiments, it will be apparent that various modifications and combinations can be made therein without departing from the spirit and scope of this disclosure. Accordingly, this specification and drawings are merely exemplary illustrations of the disclosure as defined by the appended claims and are to be considered as covering any and all modifications, variations, combinations, or equivalents within the scope of this disclosure. It is obvious that those skilled in the art can make various alterations and modifications to this disclosure without departing from its spirit and scope. Thus, this disclosure is also intended to include any such modifications and modifications that fall within the scope of the claims of this disclosure and their equivalents.
[0168] The above are merely specific embodiments of this disclosure, but the scope of protection of this disclosure is not limited thereto. Any changes or substitutions within the technical scope disclosed in this disclosure should be included within the scope of protection of this disclosure. Therefore, the scope of protection of this disclosure should be determined by the scope of the claims.
Claims
1. A data transmission method, wherein, Applied to the first operator edge PE, the method includes: Receive first data sent by the second PE, the first data being data to be sent to the first customer edge CE; In response to the probability that the first link is congested being greater than or equal to the probability that the second link is congested, second data is sent to the third PE so that the third PE forwards the second data to the first CE; the first link is the link between the first PE and the first CE, the second link is the link between the third PE and the first CE, and the second data is a portion of the first data.
2. The method according to claim 1, wherein, The response that the probability of congestion on the first link is greater than the probability of congestion on the second link, sending second data to the third PE, includes: In response to the probability that the first link is congested being greater than the probability that the second link is congested, it is determined whether the congestion parameter of the first link is greater than a first threshold; the congestion parameter of the first link is used to indicate the degree of queue congestion of the first link. If the congestion parameter of the first link is greater than the first threshold, the second data is sent to the third PE.
3. The method according to claim 1, wherein, The response that the probability of congestion on the first link is greater than the probability of congestion on the second link, sending second data to the third PE, includes: In response to the probability that the first link is congested being greater than the probability that the second link is congested, determine whether the difference between the probability that the first link is congested and the probability that the second link is congested is greater than a second threshold. If the difference is greater than the second threshold, the second data is sent to the third PE.
4. The method according to any one of claims 1 to 3, wherein, The probability of congestion on the first link is greater than the probability of congestion on the second link, including: In response to congestion on the first link, it is determined that the probability of congestion on the first link is greater than the probability of congestion on the second link.
5. The method according to any one of claims 1 to 4, wherein, The probability of congestion on the first link is greater than the probability of congestion on the second link, including: In response to the congestion parameter of the first link being greater than that of the second link, it is determined that the probability of the first link being congested is greater than that of the second link, wherein the congestion parameter is used to indicate the degree of queue congestion.
6. The method according to any one of claims 1 to 5, wherein, After sending the second data to the third PE, the method further includes: Reacquire the probability of congestion on the first link and the probability of congestion on the second link; Based on the probability of congestion on the first link and the probability of congestion on the second link, determine whether to stop sending the second data to the third PE; If it is determined that the transmission of the second data to the third PE should be stopped, then the transmission of the second data to the third PE should be stopped.
7. The method according to claim 6, wherein, The step of determining whether to stop sending the second data to the third PE based on the probability of congestion on the first link and the probability of congestion on the second link, obtained again, includes: If the difference between the probability of congestion on the first link and the probability of congestion on the second link is less than a third threshold, it is determined to stop sending the second data to the third PE.
8. The method according to any one of claims 1 to 7, wherein, After sending the second data to the third PE, the method further includes: Determine the predicted congestion probability, which is used to characterize the probability that the first link and the second link will jointly experience congestion; If the predicted congestion probability is greater than or equal to the fourth threshold, an indication message for reducing the data transmission rate is sent to the second PE.
9. The method according to claim 8, wherein, The determination of the predicted congestion probability includes: Reacquire the probability of congestion on the first link and the probability of congestion on the second link; The predicted congestion probability is obtained based on the probability of congestion on the first link and the probability of congestion on the second link, which are obtained upon reacquisition.
10. The method according to claim 8, wherein, The determination of the predicted congestion probability includes: The first parameter set and the second parameter set are input into the congestion probability prediction model to obtain the predicted congestion probability; the first parameter set is the parameter set corresponding to the probability of the first link becoming congested, and the second parameter set is the parameter set corresponding to the probability of the second link becoming congested.
11. The method according to any one of claims 1 to 10, wherein, Before sending the second data to the third PE, the method further includes: Receive prediction information sent by the third PE, the prediction information including information for determining the probability of congestion occurring on the second link; Based on the predicted information, the probability of congestion occurring on the second link is determined.
12. The method according to claim 11, wherein, After determining the probability of congestion occurring on the second link, the method further includes: Determine the predicted congestion probability, which is used to characterize the probability that the first link and the second link will jointly experience congestion; If the predicted congestion probability is greater than or equal to the fourth threshold, an indication message for reducing the data transmission rate is sent to the second PE.
13. The method according to claim 12, wherein, The method further includes: If the predicted congestion probability is less than the fourth threshold, the second data is sent to the third PE.
14. A network device, wherein, include: Memory and processor; Memory and processor are coupled; The memory is used to store instructions that can be executed by the processor; When the processor executes the instructions, it performs the method as described in any one of claims 1 to 13.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1 to 13, wherein the computer-readable storage medium includes a non-transitory computer-readable storage medium.
16. A computer program product, wherein, The computer program product includes computer instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1 to 13.
Citation Information
Patent Citations
Routing convergence method, provider edge devices and virtual private network system
CN101753464A
Method, device and system for transmitting service data of client equipment
CN102215098A
Path switching method and device, network equipment and computer readable storage medium
CN114567593A
Message forwarding method, device, equipment, system and storage medium
CN115914087A
Congestion detection using machine learning on arbitrary end-to-end paths
US20220191142A1