The present invention provides a method for automatically optimizing different egress links for service flows of different attributes according to performance requirements.
 The method for selecting the egress link for flow provided by the present invention establishes a communication connection between the control routing device and the member routing device, so that the control routing device can communicate with the member routing device in time after analyzing the business strategy formulated by the user through the control routing device. Adjust the egress link of each service flow. Each member routing device learns the connection information between the member routing device and other member routing devices by sending message information to each other, the control routing device obtains the connection information, and when receiving the traffic information of the service flow, according to the pre-configuration Determine whether the egress link of the current service flow conforms to the service strategy according to the service strategy. When it does not conform to the service strategy, adjust the egress link of the service flow according to the connection information between the member routing devices.
 When the pre-configured service policy is not met, the process of controlling the routing device to adjust the egress link of the service flow is as follows: the control routing device first searches for the egress link that complies with the pre-configured service policy according to the connection information, and then forwards it to the current The member routing device where the traffic is located delivers a route adjustment message, and the member routing device adjusts the egress link of the current traffic according to the route adjustment message.
 The present invention uses the strategy routing technology in the prior art to subdivide the service flow according to the quintuple, specify different forwarding paths for different service flows, and specifically divide the service flow according to source address information, source port information, and destination. Address information, destination port information, and service types are classified into business, and the corresponding business strategy is configured for the business flow of each business type. The business strategy usually includes the delay time of the link, the packet loss rate, and other performance that reflects the business flow. Indicators and other parameters to describe.
 The traffic information of the service flow sent by each member routing device to the control routing device includes address information, source port information, destination address information, destination port information, service type, and the delay time and packet loss rate of the current link of the service flow According to the traffic information of the service flow, matching the corresponding service strategy can learn the performance requirements of the current service flow on the egress link, and then determine whether the current egress link is capable of The export link with this performance and the export link with this performance. When the export link of the current traffic does not meet the performance requirements, the routing information of the export link that meets the business strategy is sent to the current member routing device, so that it can be timely Adjust the export link.
 The message information sent between each member routing device includes the address information of the member routing device that sends the message. In addition, in order to ensure that the links between the member routing devices connected to each other are in a smooth state, the present invention also sets the message sending period of the member routing device, and sends the message information according to the sending period, and if the member sending the message If the routing device does not receive a response message within a predetermined time, it continues to send the message information. The connection information between the member routing device and other member routing devices includes address information and interface information of the member routing device.
With regard to the method for selecting the egress link for the above traffic, the present invention is implemented by a routing device that forwards traffic. The routing device includes a control routing device and a member routing device connected to the control routing device, and the member routing device is used to send messages to each other The information learns the connection information between the member routing device and other member routing devices; the control routing device includes a storage module for storing pre-configured service policies; a decision-making module for pre-configured service policies to determine the current service flow Whether the egress link complies with the service strategy, and the egress link selected according to the connection information between the member routing devices; and a communication module for communicating with the member routing device when the service strategy is not met, The egress link information is sent to the member routing device, and the member routing device adjusts the egress link of the service flow. The member routing device includes an outgoing interface table, which is used to store connection information between the member routing device and other member routing devices; the storage module is also used to store the outgoing interface table, and search for a match according to the outgoing interface table. The egress link of the pre-configured service strategy, the communication module sends the egress link that conforms to the pre-configured service strategy to the member routing device where the current traffic is located.
 Aiming at the problem in the prior art that the flow with the same destination address cannot select its egress link, the present invention applies the method for selecting egress link as described above, and provides a method for selecting egress link for flow, which is pre-configured The business strategy corresponding to each service flow, each member routing device learns the connection information between the member routing device and other member routing devices by sending message information to each other, and controls the routing device to obtain the connection information; when the destination address is received When multiple service flows are the same, according to the flow information of each service flow and the service strategy corresponding to each service flow, the respective corresponding egress links are selected for the service flows with the same destination address.
 A specific embodiment for realizing the present invention is described below. In this embodiment, the control routing device is represented by CR, and the member routing device is represented by MR. The service classification method in this embodiment is manually configured by the user using ACL, and other automatic service awareness methods can also be used for service classification. CR is a logical controller. It can exist independently of MR or coexist with a certain MR on a routing device. And CR and MR can be directly connected or connected through multiple forwarding devices. MRs can be directly connected or connected through multiple forwarding devices. Such as figure 2 As shown, this embodiment includes three member routing devices MR1, MR2, and MR3.
 image 3 It is a flowchart of this embodiment. First, a TCP communication connection is established between the CR and each MR. For the CR, the interface address of each MR connected to the CR is used to uniquely identify the MR (S1).
 Fully connect between MRs and run a simple private protocol, by sending messages (S2) to other MRs, so that each MR can learn the local outgoing interface that can reach other MRs, thus laying the foundation for the realization of distributed policy routing . Such as figure 2 As shown, the local outbound interface of MR3 to MR1 by running a private protocol is E1/0/1.
 Message type (1 byte)
 If it does not receive ACK packets from other MRs, it will continue to send the TCP packets (S3) every 10 seconds; if it receives ACK packets from other MRs, it will re-send the packets every 30 seconds. To ensure that the links with other MRs are unblocked, the status of other MRs is also normal (S4).
 Local MR land
 In this embodiment, the service strategy configured by the user is performed on the CR. The business classification is realized by matching the five-tuple of ACL (Access Control List, access control list) (S6). If the ACL configuration does not meet the requirements, the corresponding business policy will not be generated. Each business can be configured with different performance requirements. For example, if the traffic with the source address of 18.104.22.168 is configured as voice service on CR through ACL, its routing strategy is configured as delay <200 milliseconds; the traffic with source address of 22.214.171.124 is configured as data service, and its configured option The road strategy is loss<10%.
 Each MR detects which traffic flows on each outbound interface, and then reports the five-tuple attribute data and performance data of each traffic to the CR (S7) through the service flow information.
 The CR filters and classifies each traffic quintuple attribute reported by each MR through the service policy configured by the user (S8). The traffic information reported by the current business traffic to the CR is shown in the following table. In the table, the MR reports two traffic information:
 source address
 According to the service policy configured by the user, the result of matching and filtering is: the stream with the source address of 126.96.36.199 meets the standard of the voice stream configured by the user, and its performance requirement is delay <200 milliseconds, and the current egress link does not meet the requirements. The user's requirements need to be adjusted to other egress links to find an egress link that meets the requirements of the policy. The stream whose source address is 188.8.131.52 conforms to the standard of the data stream configured by the user, and its performance requirement is loss<10%. The current egress link meets the user's requirements and does not need to be adjusted.
 When CR finds that there is current traffic that does not conform to the policy, it will look up the stored locally stored list of outbound interfaces that the traffic may reach the destination on each MR, specifically by looking up whether there is a route to the destination address of the traffic on the MR, and then The performance of each link is monitored and analyzed, and the egress link of the flow is obtained (S9).
 CR's strategy for monitoring and analyzing the performance of each link can select multiple monitoring strategies according to user needs. The present invention provides two solutions. The first solution is: when CR judges that the current egress link does not meet the business strategy , Proactively send link detection information to each outbound interface at the same time, and then select the best egress link based on the flow information returned by the outbound interface; another solution is: when the CR judges that the current egress link does not meet the business policy, Send link detection information to each outgoing interface in turn until an outgoing interface that conforms to the service policy is detected.
 If the egress link of the flow is not the egress link on the MR where the flow is currently located, CR will issue a policy routing message to the MR where the flow is currently located, adjust the outgoing interface of the flow, and adjust the flow to conform to the business policy Go up to the MR where the egress link is located (S10). In this way, the traffic will reach the destination from the egress link on the new MR.
 The following is an embodiment of applying the present invention, in this embodiment, the selection of the best egress link is taken as an example for illustration. Such as figure 2 As shown, for the flow whose source address is 184.108.40.206, it is currently going out through the outgoing interface of MR3. Since the current egress link does not meet the user's policy requirements, CR will find the local (MR3) flow in each MR On the list of outbound interfaces that may reach the destination, CR finds that the best outlet of the voice stream is the outbound interface E1/0/0 of MR1 through analysis. Therefore, CR sends a policy route adjustment message to MR3, requesting MR3 to generate a policy route. For traffic with a source address of 220.127.116.11, it is forwarded to MR1 through the E1/0/1 outbound interface. When the source 18.104.22.168 voice stream is actually received, the message can be forwarded to MR1 for forwarding according to the policy routing. As for the flow whose source address is 22.214.171.124, the current egress link of MR3 meets the user's requirements and does not need to be adjusted.
 In this way, we have realized that the traffic of different services with the same destination address and different attributes of other four-tuples is forwarded through the best egress links on different MRs.
 The above are only the preferred embodiments of the present invention. It should be pointed out that for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and modifications can be made, and these improvements and modifications should also be made. It is regarded as the protection scope of the present invention.