Oscillation suppression method and apparatus, electronic device, and storage medium
Patent Information
- Application Number
- CN202310898565.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-20
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2043-07-20
AI Technical Summary
[0016]本公开实施例的震荡抑制方法,在检测到目标链路发生故障后,可以利用目标链路的惩罚风险系数计算目标链路的目标惩罚值,然后通过目标惩罚值和震荡抑制门限值的比较来判断是否震荡,若目标惩罚值大于震荡抑制门限值,则判定目标链路震荡,进而对目标链路进行震荡抑制,若目标惩罚值小于等于震荡抑制门限值,则执行链路重路由操作。一方面,当链路发生故障时,从控制器级别进一步进行震荡识别和抑制,识别出分钟级以上的震荡,减少因链路震荡引起的反复的路径重优化,可以避免引起路径反复震荡,节省计算资源,降低CPU占用率;另一方面,利用震荡风险系数作为惩罚值加权系数,使得发生震荡次数多的、震荡时间长的链路,其惩罚值高,反之,发生震荡次数少的、震荡时间短的链路,其惩罚值低,达到动态调整链路的惩罚值的目的。
Smart Images

Figure CN116781609B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of network technology and security, and more specifically, to an oscillation suppression method, an oscillation suppression device, an electronic device, and a computer-readable storage medium. Background Technology
[0002] During the operation and maintenance of the new generation cloud network operation system, when a link is frequently disconnected and restored, that is, when the link is in oscillation, the path calculation module of the controller will frequently recalculate the path and frequently switch links, consuming a lot of computing resources, which will lead to an increase in the CPU utilization of the server where the controller is located, and even the inability to reselect the link, causing data congestion.
[0003] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0004] This disclosure provides an oscillation suppression method, oscillation suppression device, electronic device, and computer-readable storage medium, which identify and suppress oscillations during link failures, reduce path re-optimization caused by link oscillations, avoid frequent link switching, save computing resources, and reduce CPU utilization.
[0005] Other features and advantages of this disclosure will become apparent from the following detailed description, or may be learned in part from practice of this disclosure.
[0006] According to one aspect of this disclosure, an oscillation suppression method is provided, the method comprising: upon receiving a link failure message of a target link, calculating a target penalty value for the target link based on an oscillation risk coefficient of the target link; if the target penalty value is greater than an oscillation suppression threshold, determining that the target link is oscillating, generating a link oscillation message for the target link, and performing oscillation suppression on the target link based on the link oscillation message; if the target penalty value is less than or equal to the oscillation suppression threshold, performing a link rerouting operation based on the link failure message of the target link.
[0007] In some embodiments of this disclosure, after receiving a link failure message for a target link, the method further includes: obtaining the failure occurrence time of the target link; detecting whether the target link fails within a preset oscillation observation period after the failure occurrence time; if the target link does not fail within the preset oscillation observation period, reducing the target penalty value to obtain a new penalty value for the target link; if the new penalty value is less than or equal to the oscillation suppression threshold value, determining that the target link has recovered from oscillation, generating a link oscillation recovery message for the target link, and releasing oscillation suppression for the target link based on the link oscillation recovery message.
[0008] In some embodiments of this disclosure, the step of calculating the target penalty value of the target link based on the oscillation risk coefficient of the target link after receiving the link failure message of the target link includes: after receiving the link failure message of the target link, obtaining the oscillation risk coefficient of the target link and the current penalty value of the target link; calculating the penalty value increment of the target link based on the oscillation risk coefficient of the target link and the current penalty value of the target link; and summing the penalty value increment of the target link with the current penalty value of the target link to obtain the target penalty value of the target link.
[0009] In some embodiments of this disclosure, the method further includes: obtaining the historical oscillation count of the target link, the average oscillation time of the target link, and a preset oscillation observation time; calculating the oscillation risk coefficient of the target link based on the historical oscillation count of the target link, the average oscillation time of the target link, and the preset oscillation observation time; wherein the oscillation risk coefficient of the target link is negatively correlated with the historical oscillation count of the target link, and the oscillation risk coefficient of the target link is negatively correlated with the average oscillation time of the target link.
[0010] In some embodiments of this disclosure, the step of suppressing oscillations on the target link based on the link oscillation message includes: obtaining the current link status of the target link based on the link oscillation message; if the current link status of the target link is in a non-oscillation suppression state, then suppressing oscillations on the target link, marking the target link as unavailable, recording the oscillation start time, and switching the services on the target link to the backup link corresponding to the target link; if the current link status of the target link is in an oscillation suppression state, then determining not to process the link oscillation message.
[0011] In some embodiments of this disclosure, the step of releasing the oscillation suppression of the target link according to the link oscillation recovery message includes: obtaining the current link status of the target link according to the link oscillation recovery message; if the current link status of the target link is in an oscillation suppression state, then releasing the oscillation suppression of the target link, marking the target link as available, recording the oscillation end time, and performing a link rerouting operation; if the current link status of the target link is in a non-oscillation suppression state, then determining not to process the link oscillation recovery message.
[0012] In some embodiments of this disclosure, the step of performing a link rerouting operation based on the link fault message of the target link if the target penalty value is less than or equal to the oscillation suppression threshold value includes: if the target penalty value is less than or equal to the oscillation suppression threshold value, obtaining the current link state of the target link based on the link fault message of the target link; if the current link state of the target link is in a non-oscillation suppression state, performing a link rerouting operation; if the current link state of the target link is in an oscillation suppression state, determining not to process the link fault message.
[0013] According to another aspect of this disclosure, an oscillation suppression device is provided, the device comprising: an oscillation identification module and an optimization routing module; wherein, the oscillation identification module is configured to, upon receiving a link failure message of a target link, calculate a target penalty value for the target link based on the oscillation risk coefficient of the target link; if the target penalty value is greater than an oscillation suppression threshold, determine that the target link is oscillating, generate a link oscillation message for the target link, and send the link oscillation message to the optimization routing module; if the target penalty value is less than or equal to the oscillation suppression threshold, send the link failure message of the target link to the optimization routing module; the optimization routing module is configured to perform oscillation suppression on the target link based on the link oscillation message; and perform a link rerouting operation based on the link failure message of the target link.
[0014] According to another aspect of this disclosure, an electronic device is provided, comprising: one or more processors; and a storage device configured to store one or more programs, which, when executed by the one or more processors, cause the one or more processors to implement the oscillation suppression method as described in the above embodiments.
[0015] According to another aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the oscillation suppression method as described in the above embodiments.
[0016] The oscillation suppression method of this disclosure, after detecting a fault in the target link, calculates a target penalty value for the target link using a penalty risk coefficient. Then, it compares the target penalty value with an oscillation suppression threshold to determine if oscillation has occurred. If the target penalty value is greater than the oscillation suppression threshold, the target link is determined to be oscillating, and oscillation suppression is performed on the target link. If the target penalty value is less than or equal to the oscillation suppression threshold, a link rerouting operation is executed. On one hand, when a link fault occurs, oscillation identification and suppression are further performed at the controller level, identifying oscillations at the minute level or longer, reducing repeated path re-optimization caused by link oscillations, avoiding repeated path oscillations, saving computing resources, and reducing CPU utilization. On the other hand, using the oscillation risk coefficient as a penalty value weighting coefficient ensures that links with more frequent and longer oscillations have higher penalty values, and vice versa, links with fewer frequent and shorter oscillations have lower penalty values, achieving the purpose of dynamically adjusting the penalty value of the link.
[0017] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0018] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.
[0019] Figure 1 An example diagram is shown for path recalculation when existing links oscillate;
[0020] Figure 2 A flowchart of the oscillation suppression method according to an embodiment of the present disclosure is shown;
[0021] Figure 3 A flowchart illustrating the process of calculating the target penalty value of the target link according to an embodiment of this disclosure is shown;
[0022] Figure 4 This diagram illustrates the process of removing oscillation suppression from the target link according to an embodiment of the present disclosure.
[0023] Figure 5 The process diagram of oscillation recognition using the oscillation recognition module is shown.
[0024] Figure 6 The diagram illustrates the process of route optimization using the route optimization module.
[0025] Figure 7 A schematic diagram of the structure of the oscillation suppression device according to an embodiment of the present disclosure is shown;
[0026] Figure 8A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown. Detailed Implementation
[0027] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided so that this disclosure will be more comprehensive and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0028] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0029] It should be noted that the ordinal numbers such as "first" and "second" mentioned in the embodiments of this disclosure are used to distinguish multiple objects, and are not used to limit the order, timing, priority or importance of multiple objects. Furthermore, the descriptions of "first" and "second" do not limit the objects to necessarily being different.
[0030] BGP-LS is a method for network topology collection, which can make topology collection simpler and more efficient. BGP stands for Border Gateway Protocol, and LS stands for Link State. In existing technologies, after detecting a link failure using BGP-LS, a message is sent to the controller, which then recalculates the route and switches links.
[0031] Figure 1 An example diagram is shown illustrating path recalculation during existing link oscillations. For example... Figure 1 As shown, the optimal path of the link is path 1: PE1-C1-C2-PE2. When the link between C1 and C2 is interrupted, a re-optimization operation is immediately triggered, and the re-optimized path is path 2: PE1-C1-C3-C2-PE2; when the link between C1 and C2 is restored, a recovery re-optimization operation is immediately triggered, and the path is restored to path 1: PE1-C1-C2-PE2.
[0032] If the link experiences oscillations, with repeated interruptions and recovery cycles, the path calculation module will repeatedly perform path re-optimization operations. The link will switch repeatedly between path 1 and path 2, resulting in poor link transmission quality and consuming a large amount of computing resources. This will lead to increased CPU utilization on the server where the controller is located, and may even cause data congestion due to the inability to reselect the link.
[0033] To address the aforementioned issues, this disclosure provides an oscillation suppression scheme. When a link failure occurs, oscillation identification and suppression are further performed at the controller level, identifying oscillations at the minute level or higher. This reduces repeated path re-optimization caused by link oscillations, avoids repeated path oscillations, saves computing resources, and reduces CPU utilization.
[0034] Figure 2 A flowchart of an embodiment of the oscillation suppression method of this disclosure is shown. Figure 2 The oscillation suppression method provided in this embodiment can be executed by a controller. In addition to the path calculation module, the controller may also include an oscillation identification module and an optimization path calculation module, which execute the oscillation suppression method of this embodiment.
[0035] like Figure 2 As shown, the oscillation suppression method specifically includes the following steps S210 to S230.
[0036] Step S210: After receiving the link failure message of the target link, calculate the target penalty value of the target link based on the oscillation risk coefficient of the target link.
[0037] After detecting a target link failure using BGP-LS, a link failure message is generated and sent to the controller. Upon receiving the message, the controller uses the oscillation detection module to calculate the target penalty value for the target link based on its oscillation risk coefficient. Specifically, the link failure message can be a link down message, indicating that the target link has been interrupted, preventing data transmission.
[0038] It should be noted that after detecting target link failure recovery based on BGP-LS, a target link failure recovery message can be generated and then sent to the controller. Upon receiving the message, the controller performs path re-optimization through the path calculation module. Specifically, the link failure recovery message can be a target link UP message, indicating that the target link failure has been resolved and data transmission is possible via the target link.
[0039] In this embodiment of the disclosure, the oscillation risk coefficient can be understood as a penalty value weighted coefficient. The higher the oscillation risk coefficient of a certain link, the greater the possibility that the link is in an oscillation state when it fails.
[0040] In some embodiments of this disclosure, the oscillation risk coefficient of the target link can be calculated as follows: obtain the historical number of oscillations of the target link, the average oscillation time of the target link, and the preset oscillation observation time; calculate the oscillation risk coefficient of the target link based on the historical number of oscillations of the target link, the average oscillation time of the target link, and the preset oscillation observation time.
[0041] Among them, the oscillation risk coefficient of the target link is negatively correlated with the historical number of oscillations of the target link, and the oscillation risk coefficient of the target link is negatively correlated with the average oscillation time of the target link.
[0042] The oscillation identification module queries the historical oscillation table for the target link based on its link identifier, including the historical oscillation count R, the start time of each oscillation, and the end time of each oscillation. It then calculates the average oscillation time of the target link using the following formula:
[0043]
[0044] Where t is the average oscillation time, t 1i Let t be the start time of the i-th oscillation. 2i Let be the start time of the i-th oscillation. After calculating the average oscillation time t, the oscillation risk coefficient P can be calculated based on the historical oscillation count R and the average oscillation time t. The oscillation risk coefficient P is negatively correlated with both the historical oscillation count R and the average oscillation time t. The specific calculation formula is as follows:
[0045]
[0046] Where T is the preset oscillation observation time, which can be set based on experience or according to needs.
[0047] Figure 3 A flowchart illustrating the process of calculating the target penalty value of the target link according to an embodiment of this disclosure is shown. Figure 3 The document illustrates the specific steps for calculating the target penalty value of the target link based on the oscillation risk coefficient of the target link after receiving a link failure message from the target link.
[0048] exist Figure 3 In the embodiments, the above Figure 2 Step S210 in the embodiment may further include the following steps.
[0049] Step S211: After receiving the link failure message of the target link, obtain the oscillation risk coefficient of the target link and the current penalty value of the target link.
[0050] After receiving a link fault message from the target link, the controller's oscillation identification module can obtain the oscillation risk coefficient P and the current penalty value Q of the target link. The current penalty value Q refers to the penalty value of the target link before receiving the link fault message.
[0051] Step S212: Calculate the penalty value increment of the target link based on the oscillation risk coefficient of the target link and the initial penalty value of the target link.
[0052] Step S213: Sum the penalty value increment of the target link with the current penalty value of the target link to obtain the target penalty value of the target link.
[0053] Specifically, calculate the penalty increment ΔQ = P * Q for the target link, and then calculate the target penalty value Q1 for the target link.
[0054] Q1=Q+△Q=Q+ P*Q Formula 3
[0055] In this embodiment of the disclosure, by maintaining a historical oscillation table, the historical number of oscillations of the target link and the start and end times of each oscillation can be viewed. The oscillation risk coefficient of the target link can be calculated in this way. Then, the oscillation risk coefficient is used as a weighting coefficient for the penalty value. Thus, the link with more oscillations and longer oscillation times has a higher penalty value, and vice versa. This achieves the purpose of dynamically adjusting the penalty value of the link.
[0056] Step S220: If the target penalty value is greater than the oscillation suppression threshold, the target link is determined to be oscillating, a link oscillation message for the target link is generated, and oscillation suppression is performed on the target link based on the link oscillation message.
[0057] In this step, the oscillation identification module compares the target penalty value with the oscillation suppression threshold. If the target penalty value is greater than the oscillation suppression threshold, the target link is determined to be oscillating, and the oscillation identification module generates a link oscillation message for that target link. Then, the oscillation identification module sends this link oscillation message to the optimization routing module, which performs oscillation suppression on the target link.
[0058] In some embodiments of this disclosure, step S220, which involves suppressing oscillations on the target link based on the link oscillation message, may further include: obtaining the current link status of the target link based on the link oscillation message; if the current link status of the target link is in a non-oscillation suppression state, then suppressing oscillations on the target link, marking the target link as unavailable, recording the oscillation start time, and switching the services on the target link to the backup link corresponding to the target link; if the current link status of the target link is in an oscillation suppression state, then determining not to process the link oscillation message.
[0059] After receiving the link oscillation message from the oscillation identification module, the optimization calculation module first obtains the current link status of the target link. If the target link is currently in a non-oscillation suppression state, oscillation suppression is performed on the target link, marking the target link as unavailable, recording the oscillation start time of the target link, and switching the services on the target link to the backup link.
[0060] Furthermore, if the target link is currently in an oscillation suppression state, the optimization path calculation module determines not to process link oscillation messages. This ensures that no received link oscillation messages are processed until the optimization path calculation module receives an oscillation recovery notification, thereby reducing the impact of link oscillations on path calculation.
[0061] Furthermore, when suppressing oscillations in the target link, the start time of the current oscillation can be recorded, and the information of the target link in the historical oscillation table can be updated. Then, the oscillation risk coefficient of the target link can be calculated using the updated historical oscillation table, so that the calculated oscillation risk coefficient is related to the actual situation of the target link. Therefore, the penalty value calculated using the oscillation risk coefficient is more accurate, and the judgment of the oscillation situation of the target link is more accurate.
[0062] Step S230: If the target penalty value is less than or equal to the oscillation suppression threshold value, then perform a link rerouting operation based on the link fault message of the target link.
[0063] The oscillation identification module compares the target penalty value with the oscillation suppression threshold value. If the target penalty value is less than or equal to the oscillation suppression threshold value, the oscillation identification module can directly send the link failure message of the target link to the optimization calculation module, and the optimization calculation module will perform the link rerouting operation.
[0064] In some embodiments of this disclosure, if the target penalty value in step S230 is less than or equal to the oscillation suppression threshold, then a link rerouting operation is performed based on the link fault message of the target link. This may further include: if the target penalty value is less than or equal to the oscillation suppression threshold, then the current link state of the target link is obtained based on the link fault message of the target link; if the current link state of the target link is in a non-oscillation suppression state, then a link rerouting operation is performed; if the current link state of the target link is in an oscillation suppression state, then it is determined that the link fault message is not processed.
[0065] After receiving the link fault message from the oscillation identification module, the optimization routing module first obtains the current link status of the target link. If the target link is currently in a non-oscillation suppression state, i.e., the target link is not experiencing oscillation, the optimization routing module can call the link re-optimization interface to perform rerouting.
[0066] Furthermore, if the target link is currently in an oscillation suppression state, the optimization routing module determines not to process link failure messages. This ensures that no link failure messages are processed before the optimization routing module receives the oscillation recovery notification, thus eliminating the need for rerouting and reducing the impact of link oscillations on path calculation.
[0067] The oscillation suppression method of this disclosure, after detecting a fault in the target link, calculates a target penalty value for the target link using a penalty risk coefficient. Then, it compares the target penalty value with an oscillation suppression threshold to determine if oscillation has occurred. If the target penalty value is greater than the oscillation suppression threshold, the target link is determined to be oscillating, and oscillation suppression is performed on the target link. If the target penalty value is less than or equal to the oscillation suppression threshold, a link rerouting operation is executed. On one hand, when a link fault occurs, oscillation identification and suppression are further performed at the controller level, identifying oscillations at the minute level or longer, reducing repeated path re-optimization caused by link oscillations, avoiding repeated path oscillations, saving computing resources, and reducing CPU utilization. On the other hand, using the oscillation risk coefficient as a penalty value weighting coefficient ensures that links with more frequent and longer oscillations have higher penalty values, and vice versa, links with fewer frequent and shorter oscillations have lower penalty values, achieving the purpose of dynamically adjusting the penalty value of the link.
[0068] The oscillation suppression method of this disclosure may further include a process of releasing the oscillation suppression of the target link. Figure 4 A process diagram illustrating the removal of oscillation suppression in the target link according to an embodiment of this disclosure is shown. Figure 4 As shown, after receiving a link failure message from the target link, the oscillation suppression method may further include the following steps.
[0069] Step S410: Obtain the time of failure of the target link.
[0070] Step S420: Detect whether the target link fails within a preset oscillation observation period after the fault occurrence time.
[0071] Step S430: If the target link does not fail within the preset oscillation observation time, the target penalty value is reduced to obtain a new penalty value for the target link.
[0072] Step S440: If the new penalty value is less than or equal to the oscillation suppression threshold, the target link is determined to have recovered from oscillation. An oscillation recovery message for the target link is generated, and the oscillation suppression for the target link is lifted based on the oscillation recovery message.
[0073] After receiving a link failure message from the target link, the oscillation detection module can obtain the time when the target link failed, i.e., the failure occurrence time. Then, it can detect whether a link failure message from the target link is received again within a preset oscillation observation period after the failure occurrence time. For example, if the failure occurrence time is t1 and the preset oscillation observation time is T, then it can detect whether a link failure message from the target link is received within the time range from t1 to t1+T.
[0074] If the oscillation identification module does not receive a link fault message for the target link within the preset oscillation observation period after the fault occurs, the target penalty value of the target link is reduced to obtain a new penalty value. Specifically, the penalty value increment for this fault can be subtracted, i.e., the new penalty value Q2 = target penalty value Q1 - penalty value increment ΔQ.
[0075] Then, the oscillation identification module compares the new penalty value with the oscillation suppression threshold value. If the new penalty value is less than or equal to the oscillation suppression threshold value, the oscillation identification module determines that the target link has recovered from oscillation, generates a link oscillation recovery message for the target link, and sends the link oscillation recovery message to the optimization calculation module. The optimization calculation module then removes the oscillation suppression from the target link.
[0076] In some embodiments of this disclosure, step S440, which involves releasing the oscillation suppression of the target link based on the link oscillation recovery message, may further include: obtaining the current link state of the target link based on the link oscillation recovery message; if the current link state of the target link is in an oscillation suppression state, then releasing the oscillation suppression of the target link, marking the target link as available, recording the oscillation end time, and performing a link rerouting operation; if the current link state of the target link is in a non-oscillation suppression state, then determining not to process the link oscillation recovery message.
[0077] Upon receiving a link oscillation recovery message, the routing optimization module first obtains the current link status of the target link. If the target link is currently in an oscillation suppression state, the module removes the oscillation suppression, marks the target link as available, records the oscillation end time, and calls the link re-optimization interface for rerouting. Conversely, if the target link is currently not in an oscillation suppression state, the module determines not to process the link oscillation recovery message.
[0078] In some embodiments of this disclosure, if the new penalty value is greater than the oscillation suppression threshold, the target link is determined to remain oscillating.
[0079] The oscillation detection module determines that the new penalty value is greater than the oscillation suppression threshold. Since the new penalty value is obtained by subtracting the target penalty value, it indicates that the target penalty value is greater than the oscillation suppression threshold. Therefore, the oscillation detection module has determined that the target link is oscillating based on the comparison between the target penalty value and the oscillation suppression threshold. Furthermore, the oscillation detection module has notified the optimization routing module to suppress oscillations on the target link.
[0080] In this embodiment of the disclosure, after receiving a link failure message of the target link, if no link failure message of the target link is received again within a preset oscillation observation time, a new penalty value can be calculated. The new penalty value is compared with the oscillation suppression threshold value. If the new penalty value is less than or equal to the oscillation suppression threshold value, the oscillation suppression of the target link is lifted. If the new penalty value is greater than the oscillation suppression threshold value, the oscillation of the target link is maintained.
[0081] Furthermore, when removing oscillation suppression from the target link, the end time of this oscillation can be recorded, and the information of the target link in the historical oscillation table can be updated. Then, the oscillation risk coefficient of the target link can be calculated using the updated historical oscillation table, making the calculated oscillation risk coefficient relevant to the actual situation of the target link. Thus, the penalty value calculated using the oscillation risk coefficient is more accurate, and the judgment of the oscillation situation of the target link is more accurate.
[0082] The following specific embodiments illustrate the oscillation suppression method provided in this disclosure. In this disclosure, an oscillation identification module and an optimization algorithm module are added to the controller, and oscillation suppression is performed through these modules. Figure 5 The diagram illustrates the process of oscillation identification using the oscillation identification module. Figure 6 The diagram illustrates the process of route optimization using the route optimization module.
[0083] like Figure 5 As shown, the process of oscillation recognition through the oscillation recognition module may specifically include the following steps.
[0084] Step S501: After receiving the link failure message of the target link, the oscillation identification module calculates the target penalty value of the target link based on the oscillation risk coefficient of the target link.
[0085] Specifically, the oscillation identification module queries the historical oscillation table to find the number of historical oscillations of the target link, as well as the start and end times of each oscillation. Then, it calculates the average oscillation time of the target link using Formula 1 above, and calculates the oscillation risk coefficient of the target link using Formula 2 above. Next, it calculates the penalty value increment based on the oscillation risk coefficient and the current penalty value of the target link, and then calculates the target penalty value of the target link using Formula 3 above.
[0086] In step S502, the oscillation identification module determines whether the target penalty value is greater than the oscillation suppression threshold value. If yes, then step S503 is executed; otherwise, step S505 is executed.
[0087] In step S503, the oscillation identification module determines that the target link is in an oscillation state.
[0088] In step S504, the oscillation identification module generates a link oscillation message for the target link and sends the link oscillation message to the optimization calculation module to notify the optimization calculation module to suppress oscillations in the target link.
[0089] Step S505: The oscillation identification module determines that there is currently no oscillation in the target link.
[0090] In step S506, the oscillation identification module sends a link failure message to the optimization routing module to notify the optimization routing module to perform rerouting.
[0091] Step S507: After receiving the link fault message of the target link, the oscillation identification module obtains the fault occurrence time of the target link. If no link fault message of the target link is received again within the preset oscillation observation time after the fault occurrence time, the target penalty value is reduced and a new penalty value of the target link is obtained.
[0092] In step S508, the oscillation identification module determines whether the new penalty value is less than or equal to the oscillation suppression threshold value. If yes, then proceed to step S509; otherwise, proceed to step S511.
[0093] Step S509: The oscillation identification module determines that the oscillation of the target link has ended.
[0094] In step S510, the oscillation identification module generates a link oscillation recovery message for the target link and sends the link oscillation recovery message to the optimization calculation module to notify the optimization calculation module to release the oscillation suppression for the target link.
[0095] Step S511: The oscillation identification module determines that the target link is in an oscillating state.
[0096] Through steps S501 to S511 above, it can be seen that the oscillation identification module can send link oscillation messages, link fault messages, and link oscillation recovery messages to the optimization calculation module. Figure 6 The process of the optimization calculation module after receiving a message from the oscillation identification module is shown.
[0097] like Figure 6 As shown, the process of optimizing the path calculation through the optimization module can specifically include the following steps.
[0098] Step S601: After receiving the message sent by the oscillation recognition module, the optimization calculation module identifies the message category.
[0099] In step S602, if the message sent by the oscillation identification module to the optimization path calculation module is a link oscillation message, the optimization path calculation module determines whether the target link is currently in an oscillation suppression state. If yes, then step S603 is executed; otherwise, step S604 is executed.
[0100] Step S603: The optimization path calculation module determines that no processing will be performed.
[0101] Step S604: The optimization routing module performs oscillation suppression on the target link, marks the target link as unavailable, records the start time of this oscillation on the target link, and switches the services on the target link to the backup path.
[0102] In step S605, if the message sent by the oscillation identification module to the optimization path calculation module is a link oscillation recovery message, the optimization path calculation module determines whether the target link is currently in an oscillation suppression state. If yes, then step S606 is executed; otherwise, step S607 is executed.
[0103] Step S606: The optimization routing module removes oscillation suppression from the target link, marks the target link as available, records the end time of this oscillation of the target link, and performs a rerouting operation.
[0104] Step S607: The optimization path calculation module determines that no processing will be performed.
[0105] In step S608, if the message sent by the oscillation identification module to the optimization routing module is a link fault message, the optimization routing module determines whether the target link is currently in an oscillation suppression state. If yes, then proceed to step S609; otherwise, proceed to step S610.
[0106] Step S609: The optimization path calculation module determines that no processing will be performed.
[0107] Step S610: The optimization routing module performs a rerouting operation based on the link status.
[0108] The oscillation suppression method of this disclosure further identifies and suppresses oscillations at the controller level when a link failure occurs. It identifies oscillations at the minute level or above, reducing repeated path re-optimization caused by link oscillations. This avoids repeated path oscillations, saves computing resources, and reduces CPU utilization. Furthermore, it uses an oscillation risk coefficient as a penalty value weighting coefficient, so that links with more oscillations and longer oscillation times have higher penalty values, and vice versa, links with fewer oscillations and shorter oscillation times have lower penalty values, achieving the purpose of dynamically adjusting the penalty value of the link. After receiving a link failure message of the target link, if no link failure message of the target link is received again within a preset oscillation observation time, a new penalty value can be calculated. The new penalty value is compared with the oscillation suppression threshold value, and the oscillation suppression of the target link is released based on the comparison result.
[0109] Figure 7 A schematic diagram of the oscillation suppression device according to an embodiment of this disclosure is shown. Figure 7 As shown, the oscillation suppression device 700 may include an oscillation identification module 710 and an optimization calculation module 720.
[0110] The oscillation identification module 710 can be used to: upon receiving a link fault message from the target link, calculate the target penalty value for the target link based on the oscillation risk coefficient of the target link; if the target penalty value is greater than the oscillation suppression threshold, determine that the target link is oscillating, generate a link oscillation message for the target link, and send the link oscillation message to the optimization routing module; if the target penalty value is less than or equal to the oscillation suppression threshold, send the link fault message for the target link to the optimization routing module. The optimization routing module 720 can be used to: suppress oscillations in the target link based on the link oscillation message; and perform link rerouting operations based on the link fault message of the target link.
[0111] In some embodiments of this disclosure, the oscillation identification module 710 can also be used to: after receiving a link fault message of the target link, the method further includes: obtaining the fault occurrence time of the target link; detecting whether the target link has failed within a preset oscillation observation time after the fault occurrence time; if the target link has not failed within the preset oscillation observation time, reducing the target penalty value to obtain a new penalty value for the target link; if the new penalty value is less than or equal to the oscillation suppression threshold value, determining that the target link has recovered from oscillation, generating a link oscillation recovery message for the target link, and sending the link oscillation recovery message to the optimization routing module. Furthermore, the optimization routing module 720 can also be used to: remove oscillation suppression from the target link based on the link oscillation recovery message.
[0112] In some embodiments of this disclosure, the oscillation identification module 710 can also be used to: after receiving a link failure message of the target link, obtain the oscillation risk coefficient of the target link and the current penalty value of the target link; calculate the penalty value increment of the target link based on the oscillation risk coefficient of the target link and the current penalty value of the target link; and sum the penalty value increment of the target link with the current penalty value of the target link to obtain the target penalty value of the target link.
[0113] In some embodiments of this disclosure, the oscillation identification module 710 can also be used to: obtain the historical number of oscillations of the target link, the average oscillation time of the target link, and a preset oscillation observation time; calculate the oscillation risk coefficient of the target link based on the historical number of oscillations of the target link, the average oscillation time of the target link, and the preset oscillation observation time; wherein the oscillation risk coefficient of the target link is negatively correlated with the historical number of oscillations of the target link, and the oscillation risk coefficient of the target link is negatively correlated with the average oscillation time of the target link.
[0114] In some embodiments of this disclosure, the optimization routing module 720 can also be used to: obtain the current link status of the target link based on the link oscillation message; if the current link status of the target link is in a non-oscillation suppression state, then perform oscillation suppression on the target link, mark the target link as unavailable, record the oscillation start time, and switch the services on the target link to the backup link corresponding to the target link; if the current link status of the target link is in an oscillation suppression state, then determine not to process the link oscillation message.
[0115] In some embodiments of this disclosure, the optimization routing module 720 can also be used to: obtain the current link status of the target link based on the link oscillation recovery message; if the current link status of the target link is in the oscillation suppression state, then the oscillation suppression of the target link is lifted, the target link is marked as available, the oscillation end time is recorded, and the link rerouting operation is performed; if the current link status of the target link is in the non-oscillation suppression state, then it is determined that the link oscillation recovery message will not be processed.
[0116] In some embodiments of this disclosure, the optimization routing module 720 can also be used to: if the target penalty value is less than or equal to the oscillation suppression threshold value, obtain the current link state of the target link based on the link fault message of the target link; if the current link state of the target link is in a non-oscillation suppression state, perform a link rerouting operation; if the current link state of the target link is in an oscillation suppression state, determine not to process the link fault message.
[0117] Since the principle of solving the problem in this oscillation suppression device embodiment is similar to that in the above-described method embodiment, the implementation of this oscillation suppression device embodiment can be referred to in the above-described method embodiment, and repeated details will not be repeated.
[0118] Figure 8A structural block diagram of an electronic device according to an embodiment of this disclosure is shown. It should be noted that... Figure 8 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0119] like Figure 8 As shown, the electronic device 800 includes a central processing unit (CPU) 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage section 808 into a random access memory (RAM) 803. The RAM 803 also stores various programs and data required for the operation of the electronic device 800. The CPU 801, ROM 802, and RAM 803 are interconnected via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.
[0120] The following components are connected to I / O interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a LAN card, modem, etc. The communication section 808 performs communication processing via a network such as the Internet. A drive 810 is also connected to I / O interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 810 as needed so that computer programs read from it can be installed into storage section 808 as needed.
[0121] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 809, and / or installed from removable medium 811. When the computer program is executed by central processing unit (CPU) 801, it performs the functions defined above in the system of this disclosure.
[0122] It should be noted that the computer-readable medium disclosed herein may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, terminal device, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, terminal device, or device. In this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit programs for use by or in connection with an instruction execution system, terminal device, or apparatus. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0123] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0124] The modules described in the embodiments of this disclosure can be implemented in software or hardware. The described modules can also be housed in a processor; for example, a processor can be described as including a sending module, an acquisition module, a determining module, and a first processing module. The names of these modules do not necessarily limit the module itself; for example, the optimization routing module can also be described as "a module that suppresses oscillations in a target link based on link oscillation messages and performs link rerouting operations based on link fault messages of the target link."
[0125] In another aspect, this disclosure also provides a computer-readable storage medium, which may be included in the electronic device described in the above embodiments; or it may exist independently and not assembled into the electronic device. The computer-readable storage medium carries one or more programs that, when executed by the electronic device, cause the electronic device to perform the methods described in the following embodiments. For example, the electronic device may perform... Figure 2 The steps shown.
[0126] According to one aspect of this disclosure, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in various optional implementations of the above embodiments.
[0127] It should be understood that any number of elements in the accompanying drawings is for illustrative purposes only and not for limitation, and any naming is for distinction only and has no limiting meaning.
[0128] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0129] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. An oscillation suppression method, characterized in that, The method includes: After receiving a link failure message from the target link, a target penalty value for the target link is calculated based on the oscillation risk coefficient of the target link. The oscillation risk coefficient is used as a weighting coefficient for the penalty value. The higher the oscillation risk coefficient, the greater the probability that the target link is in an oscillating state when it fails. If the target penalty value is greater than the oscillation suppression threshold, the target link is determined to be oscillating, a link oscillation message for the target link is generated, and oscillation suppression is performed on the target link based on the link oscillation message; If the target penalty value is less than or equal to the oscillation suppression threshold value, then a link rerouting operation is performed according to the link failure message; Furthermore, the method further includes: obtaining the historical oscillation count, average oscillation time, and preset oscillation observation time of the target link; calculating the oscillation risk coefficient based on the historical oscillation count, the average oscillation time, and the preset oscillation observation time; the oscillation risk coefficient is positively correlated with the historical oscillation count and the average oscillation time. After receiving a link failure message for the target link, the method further includes: obtaining the failure occurrence time of the target link; detecting whether the target link fails within a preset oscillation observation period after the failure occurrence time; if the target link does not fail within the preset oscillation observation period, reducing the target penalty value to obtain a new penalty value for the target link; if the new penalty value is less than or equal to the oscillation suppression threshold value, determining that the target link has recovered from oscillation, generating a link oscillation recovery message for the target link, and releasing oscillation suppression for the target link based on the link oscillation recovery message.
2. The method according to claim 1, characterized in that, Upon receiving a link failure message from the target link, the step of calculating the target penalty value for the target link based on the oscillation risk coefficient of the target link includes: Upon receiving a link failure message from the target link, the system obtains the oscillation risk coefficient of the target link and the current penalty value of the target link. Calculate the penalty value increment of the target link based on the oscillation risk coefficient of the target link and the current penalty value of the target link; The target penalty value of the target link is obtained by summing the incremental penalty value of the target link with the current penalty value of the target link.
3. The method according to claim 1, characterized in that, The step of suppressing oscillations in the target link based on the link oscillation message includes: Based on the link oscillation message, obtain the current link status of the target link; If the current link status of the target link is in a non-oscillation suppression state, then oscillation suppression is performed on the target link, the target link is marked as unavailable, the oscillation start time is recorded, and the services on the target link are switched to the backup link corresponding to the target link. If the current link state of the target link is in an oscillation suppression state, then it is determined that the link oscillation message will not be processed.
4. The method according to claim 1, characterized in that, The step of releasing the oscillation suppression of the target link according to the link oscillation recovery message includes: Based on the link oscillation recovery message, obtain the current link status of the target link; If the current link status of the target link is in an oscillation suppression state, then the oscillation suppression is lifted for the target link, the target link is marked as available, the oscillation end time is recorded, and a link rerouting operation is performed. If the current link state of the target link is in a non-oscillation suppression state, then it is determined that the link oscillation recovery message will not be processed.
5. The method according to claim 1, characterized in that, If the target penalty value is less than or equal to the oscillation suppression threshold value, then a link rerouting operation is performed according to the link failure message, including: If the target penalty value is less than or equal to the oscillation suppression threshold value, then the current link status of the target link is obtained according to the link failure message; If the current link state of the target link is in a non-oscillation suppression state, then a link rerouting operation is performed; If the current link state of the target link is in an oscillation suppression state, then it is determined that the link failure message will not be processed.
6. An oscillation suppression device, characterized in that, The device includes: an oscillation identification module and an optimized computation module; wherein... The oscillation identification module is used to calculate a target penalty value for the target link based on the oscillation risk coefficient of the target link after receiving a link failure message from the target link. The oscillation risk coefficient is used as a weighting coefficient for the penalty value. The higher the oscillation risk coefficient, the greater the probability that the target link is in an oscillation state when it fails. If the target penalty value is greater than the oscillation suppression threshold, the target link is determined to be oscillating, a link oscillation message is generated for the target link, and the link oscillation message is sent to the optimization algorithm module. If the target penalty value is less than or equal to the oscillation suppression threshold, the link failure message is sent to the optimization algorithm module. The optimization calculation module is used to suppress oscillations in the target link based on the link oscillation message; and to perform link rerouting operations based on the link fault message. Furthermore, the oscillation identification module is also used to: acquire the historical number of oscillations, the average oscillation time, and the preset oscillation observation time of the target link; calculate the oscillation risk coefficient of the target link based on the historical number of oscillations, the average oscillation time, and the preset oscillation observation time; the oscillation risk coefficient is positively correlated with the historical number of oscillations and the average oscillation time; The oscillation identification module is further configured to: obtain the fault occurrence time of the target link; detect whether the target link has failed within a preset oscillation observation period after the fault occurrence time; if the target link has not failed within the preset oscillation observation period, reduce the target penalty value to obtain a new penalty value for the target link; if the new penalty value is less than or equal to the oscillation suppression threshold value, determine that the target link has recovered from oscillation, generate a link oscillation recovery message for the target link, and release oscillation suppression for the target link according to the link oscillation recovery message.
7. An electronic device, characterized in that, include: One or more processors; A storage device configured to store one or more programs, which, when executed by one or more processors, cause the one or more processors to implement the oscillation suppression method as described in any one of claims 1 to 5.
8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the oscillation suppression method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Communication method and device in segment routing network, electronic equipment and storage medium
CN113098767A
Routing oscillation suppression method and related equipment
CN113726542A