WO2015168888A1 - Network congestion control method and controller - Google Patents

Network congestion control method and controller Download PDF

Info

Publication number
WO2015168888A1
WO2015168888A1 PCT/CN2014/076985 CN2014076985W WO2015168888A1 WO 2015168888 A1 WO2015168888 A1 WO 2015168888A1 CN 2014076985 W CN2014076985 W CN 2014076985W WO 2015168888 A1 WO2015168888 A1 WO 2015168888A1
Authority
WO
WIPO (PCT)
Prior art keywords
path
information
data packet
hop
qos
Prior art date
Application number
PCT/CN2014/076985
Other languages
French (fr)
Chinese (zh)
Inventor
李建飞
曾毓珑
吴小蓉
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201480038039.0A priority Critical patent/CN105393597B/en
Priority to PCT/CN2014/076985 priority patent/WO2015168888A1/en
Publication of WO2015168888A1 publication Critical patent/WO2015168888A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing

Definitions

  • the present invention belongs to the field of wireless communication technologies, and in particular, to a network congestion control method and controller. Background technique
  • network congestion is the main factor affecting the performance of the backbone network. There are many reasons for network congestion, such as insufficient network resources and uneven network load causing local congestion. Therefore, when selecting the transmission route for the data packet to be transmitted, a reasonable routing method can ensure the balance of the network load and is essential for reducing network congestion.
  • MPLS-TE is a solution commonly used in backbone networks to solve network congestion caused by network load imbalance.
  • MPLS-TE combines MPLS technology and traffic engineering TE to reserve network resources for certain users by establishing a tunnel to the destination, so that network traffic can bypass some core paths in the backbone network, which is prone to congestion.
  • Path which achieves the purpose of balancing network load and optimizing network resource usage.
  • the present invention provides a network congestion control method and controller for overcoming the defects of low utilization of network resources caused by the prior art.
  • a first aspect of the present invention provides a network congestion control method, including:
  • the receiving the data packet that is forwarded by the openflow switch, and acquiring the feature information of the data packet, where the feature information includes the destination IP address and the quality of service QoS information including:
  • the determining, according to the QoS information, and status information of a hop path in a network obtained in advance Before the evaluation function value of the jump path it also includes:
  • the QoS information is not included in the QoS information, determining that the type of the hop path is a general type
  • the evaluation function value of the hop path including:
  • the evaluation function value of the per-hop path is determined according to formula (1):
  • the determining, according to the QoS information and status information of a hop path in a network obtained in advance Before the evaluation function value of each hop path it also includes:
  • the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type
  • C m ⁇ is the QoS characteristic value of the data packet
  • C m ⁇ C mm is the value of the m QoS parameters included in the QoS information, respectively
  • the status information of each hop path includes:
  • the penalty function value of the per-hop path is determined according to formula (3):
  • M is a value of a path state measurement parameter pre-specified from the path state parameter of the M Mj as a measure path state, where ⁇ is a preset penalty threshold, and ⁇ / is a path state measurement threshold;
  • the evaluation function value of the hop path including:
  • W is the penalty factor, for the general type of path, according to + ⁇ ⁇ 3 + ⁇ + M -- OK, for a particular type of path, according to
  • the method before determining the evaluation function value of the hop path according to the QoS information and the state information of each hop path in the network, the method further includes:
  • the determining, according to the status information of the hop path, the congestion area in the network includes:
  • the area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
  • the first, second, third, fourth, fifth or sixth possible implementation of the first aspect in a seventh possible implementation of the first aspect And receiving the data packet forwarded by the openflow switch, and extracting the feature information of the data packet, including:
  • the method further includes:
  • the plurality of data packets are sequentially processed according to the priority level from high to low, and the transmission paths of the respective data packets of the same priority level are determined in parallel.
  • a second aspect of the present invention provides a controller, including:
  • the feature information includes a destination IP address and quality of service (QoS) information
  • a processing module configured to determine, according to the QoS information and status information of each hop path in the overlay network that is obtained in advance, the path of each hop An evaluation function value, where the per-hop path describes a connection path between adjacent openflow switches in the network;
  • a first determining module configured to determine, by using a path of the data packet, a hop path that is the smallest sum of the evaluation function values of the destination IP address.
  • the receiving module is configured to: receive a data packet forwarded by an openflow switch, and extract the feature information from the data packet;
  • the controller further includes:
  • a second determining module configured to determine that the type of each hop path is a general type if the QoS information is not included in the QoS information
  • processing module is configured to:
  • the second determining module is further configured to:
  • the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type
  • controller further includes:
  • a third determining module configured to determine the number according to a priority of each QoS parameter According to the QoS feature value of the packet
  • processing module is configured to:
  • C _ is the QoS characteristic value of the data packet
  • C m ⁇ C mm is the value of the m QoS parameters included in the QoS information, respectively
  • the controller further includes:
  • a fourth determining module configured to determine a penalty function value of the hop path according to formula (3):
  • M is a value of a path state measurement parameter pre-specified from the path state parameter of the M Mj as a measure path state, where ⁇ is a preset penalty threshold, and ⁇ / is a path state measurement threshold;
  • processing module is configured to:
  • W is a penalty factor, for a general type of path, determined according to ⁇ - ⁇ - ⁇ " ⁇ + ⁇ - ⁇ 2 + ⁇ - ⁇ 3 + ⁇ + ⁇ condiment
  • ⁇ . ⁇ is the modulo operation.
  • the controller further includes:
  • a fifth determining module configured to determine a congestion area in the network according to status information of the hop path; a determining module, configured to determine whether a path located in the congestion area exists in the path per hop;
  • the processing module is configured to: determine, located in the congestion area according to formula (5)
  • the processing module is configured to: determine an evaluation function value of the hop path according to the formula (4).
  • the fifth determining module is specifically configured to:
  • the area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
  • the first, second, third, fourth, fifth or sixth possible implementation of the second aspect in a seventh possible implementation of the second aspect
  • the receiving module is specifically configured to:
  • the controller further includes:
  • An aggregation module configured to aggregate priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the multiple priority information Quantity
  • the processing module is configured to sequentially process the plurality of data packets according to the priority level from high to low, and determine the transmission paths of the data packets of the same priority level in parallel.
  • the network congestion control method and controller provided by the present invention, in the SDN architecture, when the controller receives the data packet forwarded by the openflow switch, extracts the feature information of the data packet, wherein the feature information includes the destination IP address and the quality of service QoS. Information, and determining a path per hop in the network according to the QoS information and status information of each hop path in the pre-obtained covered network The evaluation function value finally selects the path formed by each hop path that reaches the destination IP address and has the smallest sum of the evaluation functions to transmit the data packet.
  • FIG. 1 is a flowchart of a network congestion control method according to Embodiment 1 of the present invention.
  • FIG. 2 is a flowchart of a network congestion control method according to Embodiment 2 of the present invention.
  • FIG. 3 is a schematic structural diagram of a controller according to Embodiment 3 of the present invention.
  • FIG. 4 is a schematic structural diagram of a controller according to Embodiment 4 of the present invention.
  • FIG. 5 is a schematic structural diagram of a controller according to Embodiment 5 of the present invention. detailed description
  • FIG. 1 is a flowchart of a network congestion control method according to Embodiment 1 of the present invention.
  • the method provided in this embodiment is applicable to a Software Def ined Network (SDN) network.
  • SDN Software Def ined Network
  • the so-called SDN is to separate the control functions in the network switch or router under the traditional network architecture from the device, and the controller (Control l er) in the SDN is completed.
  • the original network switch or router is only responsible for data forwarding. Function, thus achieving the separation of the control plane and the data plane.
  • the controller and the switch use the openf low protocol for communication. Therefore, the switch in the SDN network is called the openf low switch.
  • the controller performs centralized control and control on the transmission of all the data streams in the SDN network.
  • the openf low switch performs the processing of forwarding the data stream only by executing the flow processing rules delivered by the controller.
  • the method provided by this embodiment can be performed by a controller in an SDN network. The method provided in this embodiment specifically includes the following steps:
  • Step 101 Receive a data packet forwarded by an openflow switch, and extract feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information;
  • an openflow switch when an openflow switch receives a data packet, it matches the data packet according to the locally stored flow table. When the flow entry corresponding to the data packet is not matched, the data packet is forwarded to the control. To calculate the transmission path for the packet by the controller.
  • the controller After receiving the data packet forwarded by the openflow switch, the controller needs to obtain the feature information of the data packet.
  • the feature information may be extracted from the data packet, for example, extracting the information included in the data packet header.
  • the feature information includes, for example, a destination IP address and QoS information, and the QoS information may include, for example, parameters such as delay and bandwidth.
  • the feature information of the data packet may also include information such as a service type and a network protocol type.
  • the destination IP address and the source IP address may be extracted from the data packet, and the QoS information is obtained from a locally stored user requirement according to the source IP address, where the source IP address indicates The sending user of the data packet.
  • the controller stores user demand information of each user, and the user requirement information includes, for example, each user requests specific requirements for QoS in terms of delay, priority, service type, etc., so that the controller receives After the data packet, the source IP address in the data packet is used as the user identifier to find the user requirement of the corresponding user, so as to obtain the QoS information of the data packet.
  • the controller can also customize the QoS information of the received data packet according to the pre-acquired network load condition, the processing capability of each openflow switch in the network, and the like, such as whether to configure QoS parameters for the received data packet. Which QoS parameters are configured, and so on.
  • Step 102 Determine, according to the QoS information and status information of each hop path in the overlay network that is obtained in advance, an evaluation function value of the hop path.
  • the controller can obtain the status information of each hop path in the overlay network in real time or periodically, that is, the status information of the connection path between adjacent openflow switches, and the status information can be the controller querying its coverage.
  • the port information of each openflow switch is obtained.
  • the controller can query the value of the counter included in the port information of the two adjacent openflow switches, the used bandwidth value, etc., and then according to the number of forwarding records recorded by the counter.
  • the bandwidth value is used to obtain status information such as utilization and available bandwidth of the paths between the two adjacent openflow switches.
  • the controller determines an evaluation function value of the hop path according to the QoS information of the received data packet and the state information of each hop path in the overlay network obtained in advance.
  • the evaluation function value is used as the basis for selecting the data packet transmission path, and comprehensively considers the characteristic information of the data packet and the state information of the hop path in the network, for example, considering the feature information such as the QoS of the data packet, the service type, and the current Status information such as available bandwidth, utilization, and delay for each hop path in the network. Based on the evaluation function, it is beneficial to ensure the user experience and meet the user's demand for service quality. At the same time, it is beneficial to achieve load balancing. It is worth noting that, according to the actual operation of the network, the weights of each parameter in the evaluation function of each hop path can be appropriately and reasonably adjusted, and the influence of important parameters on network load balancing is highlighted.
  • Step 103 Determine a path for transmitting the data packet to be a hop path that has the smallest sum of evaluation function values of the destination IP address.
  • the controller determines each hop path that can reach the destination IP address and has the smallest sum of evaluation function values per hop path as the path for transmitting the data packet.
  • the controller can use the routing algorithm in the prior art to calculate a path for transmitting the data packet from the source IP address to the destination IP address, but in the calculation process, the path selection is based on using the embodiment. Evaluation function. For example, the controller may first calculate a plurality of paths to the destination IP address, and then select the path with the smallest sum of evaluation function values per hop among the plurality of possible paths to transmit the data packet; or, the controller may First calculate the evaluation function value of each hop path in the network, and then determine the path with the smallest sum of the evaluation function values of each hop path to the destination IP address as the data packet transmission under the guidance of the vector direction of the destination IP address. path.
  • the controller when the controller receives the data packet forwarded by the openflow switch, extracting the feature information of the data packet, where the feature information includes the destination IP address and the quality of service QoS information, and according to the QoS information and the pre-obtained network.
  • the status information of each hop path determines the value of the evaluation function of each hop path in the network, and finally selects the path formed by each hop path that reaches the destination IP address and has the smallest sum of the evaluation functions to transmit the data packet.
  • the path selection is beneficial to ensure the QoS requirements of the data packet, and to ensure the load balancing of the network, thereby effectively reducing the possibility of network congestion. , improve the resource utilization of the network.
  • FIG. 2 is a flowchart of a network congestion control method according to Embodiment 2 of the present invention, as shown in FIG. 2
  • the method of this embodiment includes:
  • Step 201 Receive a plurality of data packets forwarded by a plurality of openflow switches, where the feature information of each of the plurality of data packets further includes priority information of the data packet;
  • the controller is likely to receive multiple data packets forwarded by multiple different openflow switches.
  • the multiple data packets may be randomly cached, that is, the data packets are randomly sorted and cached, and then processed one by one.
  • multiple data packets may be prioritized by using the method provided in this embodiment. The grading is processed sequentially according to the priority level, and each packet belonging to the same priority level is processed in parallel.
  • the feature information of the extracted data packet includes not only information such as QoS information, a destination IP address, but also priority information of the corresponding data packet, where the priority information includes, for example, a service type. Any one or more of the network protocol type, port number, and so on.
  • Step 202 Convergence the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the quantity of the multiple priority information. ;
  • the service type is used as an example.
  • the service type of the different data packets has different priorities. For example, the voice service has the highest priority, and the priority of the FTP service is 4, and the priority of the WEB service is 4. 3.
  • the priority of the FTTP service is 2, and the priority of other services is 1. Assume that 5 packets are currently received, and the priorities are 5, 2, 4, 1, and 4, respectively. It is assumed that the preset rule of the aggregation priority is the priority of the received multiple (5) packets.
  • the controller sequentially processes the data packets included in each priority level according to the priority level from high to low, and performs parallel processing on each data packet belonging to the same priority level, that is, simultaneously calculates the same priority.
  • the transmission path of each data packet in the level is equivalent to the controller calculating the transmission path of each data packet by a plurality of parallel processing processes. Since the determination methods of the transmission paths of the data packets in the same priority level are similar, the following only Any one of the same priority levels is described as an example.
  • Step 203 Determine whether the QoS information includes at least one QoS parameter, if yes, execute step 204, otherwise execute step 206;
  • Step 204 Determine that the type of the path per hop is a specific type
  • Step 205 Determine, according to a priority of each QoS parameter, a QoS feature value of the data packet.
  • Step 206 Determine that the type of the path per hop is a general type
  • the evaluation function value of the per-hop path is determined according to formula (1):
  • the path type of each hop path in the current network is determined according to the QoS information of the data packet. Specifically, if the QoS information includes at least one QoS parameter, it is determined that the path type of each hop path is a specific type. Then, according to the priority of each QoS parameter included in the QoS information, the QoS feature value of the data packet is determined, and optionally, the evaluation function value of the hop path can be determined according to formula (2):
  • C a- log (- ⁇ - ⁇ + ⁇ - log(- ⁇ ⁇ ⁇ 2 ) + ⁇ + ⁇ -log(- ⁇ - M +A + ⁇ . ⁇ ⁇ (2)
  • M ⁇ M rent is the value of n path state parameters included in the state information of each hop path
  • C m ⁇ is the QoS characteristic value of the data packet
  • C m wide C mm is the value of m QoS parameters included in the QoS information, respectively
  • ml, ⁇ composer is the value of the path state parameter corresponding to C m C mm respectively.
  • the above state information is The result of the normalization process, ie, . , ⁇ ⁇ is the path state parameter of any hop path obtained in real time.
  • the value, M iMAX is the maximum value of the corresponding path state parameter value in the current network.
  • a QoS feature value of the data packet for example, the QoS parameter included in the QoS information of the data packet is a minimum delay, a bandwidth, and a jitter, and It is required to prioritize the minimum delay, followed by the bandwidth, and finally the jitter, that is, the priority order of the QoS parameters is delay, bandwidth, and jitter.
  • the parameters added in the above formula (2) are sequentially decremented according to the degree of importance, that is, for example, according to the priority order of the QoS parameters.
  • the data packet contains m QoS parameters, and among the n state parameters of each hop path in formula (2), there are also m path state parameters which are in one-to-one correspondence with m QoS parameters, that is, for example, QoS parameters.
  • the path state information also includes the bandwidth path state parameter, then the multiplicative check logarithm of the two is used as an added term in formula (2), thereby highlighting the effect of bandwidth on path selection.
  • the path type of each hop path is determined to be a general type, and optionally, the evaluation function value of the hop path may be determined by using formula (1).
  • the state information of the path includes the bandwidth, and by taking an exponential manner on the bandwidth, the influence of the bandwidth on the transmission path selection process is increased.
  • M is a value of a path state measurement parameter pre-specified from the path state parameter of ⁇ iller as a measure path state
  • is a preset penalty threshold
  • ⁇ / is a path state measurement threshold
  • a penalty function value is assigned to each hop path according to the path state of each hop path.
  • a path state measurement parameter for measuring a path state of each hop path may be determined in advance according to the importance degree of each state parameter from the n path state parameters included in the state information of each hop path, and then respectively Obtain the value of the path state measurement parameter in each hop path, and calculate the value of each penalty function corresponding to each hop path by using the above formula (3).
  • the existence of the penalty function is beneficial to avoid selecting each hop path with a higher penalty function value when performing packet transmission path selection, thereby facilitating equalization of network load and control network congestion.
  • Step 208 Determine that the value of the network state measurement parameter is higher than the network state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area. area;
  • Step 209 determining whether there is a path in the congestion area in the hop path, if yes, executing step 210, otherwise performing step 211;
  • Step 210 Determine an evaluation function of each hop path located in the congestion area according to formula (5)
  • W is the penalty factor, for a general type of path, according to 77 ⁇
  • ⁇ . ⁇ is the modulo operation.
  • Step 212 Determine a path for transmitting the data packet to be a hop path that has the smallest sum of evaluation function values of the destination IP address.
  • a regional penalty policy is added to each hop path.
  • the controller first determines a congestion area in the network according to status information of each hop path. Specifically, it is determined that a predetermined value of the path state measurement parameter is higher than the path state measurement threshold, and an area formed by each hop path whose path distance is less than a preset distance threshold is a congestion area.
  • the path status measurement parameter is used as an example. For each hop path whose utilization is higher than the utilization threshold, if the hop path exhibits regional characteristics, that is, the path distance between the hops is less than the preset distance threshold, it is determined to be satisfied.
  • the area formed by each hop path of this condition is a congestion area.
  • the path for transmitting the data packet is the hop path with the smallest sum of the evaluation values of the destination IP address.
  • the processing priority level may be divided according to the priority information of the data packets, which may be parallel. Processing each data packet in the same priority level is beneficial to improve processing efficiency.
  • the evaluation function of each hop path comprehensively considers the characteristic information of the data packet and the state information of each hop path, for each The hopping path, according to the state information of each hop path and the congestion area of the network, further sets the penalty mechanism of each hop path, further improves the balance of the network load, thereby facilitating the control effect on network congestion.
  • FIG. 3 is a schematic structural diagram of a controller according to Embodiment 3 of the present invention. As shown in FIG. 3, the controller includes:
  • the receiving module 11 is configured to receive a data packet forwarded by the openflow switch, and obtain feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information;
  • the processing module 12 is configured to determine, according to the QoS information and status information of each hop path in the overlay network that is obtained in advance, an evaluation function value of the hop path, where each hop path describes an adjacent openflow in the network. Connection path between switches;
  • the first determining module 13 is configured to determine, according to the path for transmitting the data packet, each hop path that has the smallest sum of evaluation function values of the destination IP address.
  • the receiving module 11 is configured to:
  • the controller of this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 1.
  • the implementation principle and technical effects are similar, and details are not described herein again.
  • FIG. 4 is a schematic structural diagram of a controller according to Embodiment 4 of the present invention. As shown in FIG. 4, the controller further includes:
  • the second determining module 21 is configured to: if the QoS information does not include the QoS parameter, determine that the type of the hop path is a general type;
  • processing module 12 is configured to:
  • the second determining module 21 is further configured to:
  • the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type
  • controller further includes:
  • a third determining module 22 configured to determine a QoS feature value of the data packet according to a priority of each of the QoS parameters
  • processing module 12 is configured to:
  • C -log(- ⁇ --M 1 ) + ⁇ -log(- ⁇ -M 2 )+A + ⁇ log (- ⁇ M m ) + A + ⁇ . ⁇ ⁇ (2)
  • C m ⁇ is the QoS characteristic value of the data packet
  • C m ⁇ C mm is the value of the m QoS parameters included in the QoS information, respectively, and the path state corresponding to C m C mm respectively The value of the parameter.
  • controller further includes:
  • the fourth determining module 23 is configured to determine a penalty function value of the hop path according to formula (3):
  • M is a value of a path state measurement parameter pre-specified from the path state parameter of ⁇ iller as a measure path state
  • is a preset penalty threshold
  • ⁇ / is a path state measurement threshold
  • processing module 12 is configured to:
  • the evaluation function value of the per-hop path is determined according to formula (4).
  • W is the penalty factor, for the general type of path, according to + M laundry
  • ⁇ . ⁇ is the modulo operation.
  • controller further includes:
  • the fifth determining module 24 is configured to determine, according to the state information of the hop path, a congestion area in the network
  • the determining module 25 is configured to determine whether a path located in the congestion area exists in the path per hop;
  • the processing module 12 is configured to: determine an evaluation function value for each hop path located in the congestion region according to formula (5):
  • the processing module 12 is configured to: determine an evaluation function value of the hop path according to the formula (4).
  • the fifth determining module 24 is specifically configured to:
  • the area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
  • the receiving module 11 is specifically configured to:
  • the controller further includes:
  • the aggregation module 26 is configured to aggregate the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the multiple priority information. quantity;
  • the processing module 12 is configured to sequentially process the plurality of data packets according to the priority level from high to low, and determine the transmission paths of the data packets of the same priority level in parallel.
  • the controller of this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 2, and the implementation principle and technical effects are similar, and details are not described herein again.
  • FIG. 5 is a schematic structural diagram of a processing device according to Embodiment 5 of the present invention, where the processing device includes:
  • the receiver 31 is configured to receive a data packet forwarded by the openflow switch, and acquire feature information of the data packet, where the feature information includes Destination IP address and quality of service QoS information;
  • the memory 32 is configured to store a set of program codes, and the processor 33 is configured to invoke program code stored in the memory 32 to perform a network congestion control method as shown in FIG.
  • the receiver 31 is further configured to receive a data packet forwarded by the openflow switch, and extract the feature information from the data packet; or receive a data packet forwarded by the openflow switch, and extract the data packet from the data packet.
  • the destination IP address and the source IP address are obtained according to the source IP address, and the source IP address is obtained from a locally stored user requirement. Means /, the sending user of the data packet.
  • the processor 33 is further configured to: if the QoS parameter does not include a QoS parameter, determine that the type of the hop path is a general type; and determine an evaluation function of the hop path according to formula (1). Value:
  • the processor 33 is further configured to: if the QoS information includes at least one QoS parameter, determine that the type of each hop path is a specific type; according to the priority of each QoS parameter, determine Determining the QoS characteristic value of the data packet; determining the evaluation function value of the per-hop path according to formula (2):
  • C m ⁇ is the QoS characteristic value of the data packet
  • C m ⁇ C mm is the value of the m QoS parameters included in the QoS information, respectively
  • ⁇ twist corresponds to C m ⁇ C mm respectively The value of the path state parameter.
  • processor 33 is further configured to determine a penalty function value of the hop path according to formula (3):
  • M is a value of a path state measurement parameter pre-specified from the path state parameter of the M Mj as a measure path state
  • is a preset penalty threshold
  • ⁇ / is a path state evaluation function value
  • W is a penalty factor, for a general type of path, determined according to ⁇ - ⁇ - ⁇ - ⁇ " ⁇ + ⁇ - ⁇ 2 + ⁇ - ⁇ 3 + ⁇ + ⁇ tile
  • 1.1 is the modulo operation.
  • the processor 33 is further configured to determine, according to the state information of the hop path, a congestion area in the network, and determine whether a path located in the congestion area exists in the hop path; If present, the evaluation function value of each hop path located in the congestion area is determined according to formula (5):
  • the evaluation function value of the hop path is determined according to the formula (4). Further, the processor 33 is further configured to determine that the value of the path state measurement parameter is higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area. .
  • the receiver 31 is further configured to receive multiple data packets forwarded by multiple openflow switches, and the feature information of each of the multiple data packets further includes priority information of the data packet. ;
  • the processor 33 is further configured to aggregate the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the a plurality of pieces of priority information; processing the plurality of data packets in order from highest to lowest according to the priority level, and determining transmission paths of the respective data packets of the same priority level in parallel.

Abstract

Provided are a network congestion control method and a controller. The method comprises: receiving data packets forwarded by an openflow switch, and acquiring feature information about the data packets, wherein the feature information comprises a destination IP address and quality of service (QoS) information; determining, according to the QoS information and pre-acquired state information about each hop of path in a network, an evaluation function value of each hop of path; and determining the path for transmitting the data packets to be each hop of path with the minimum sum of the evaluation function values arriving at the destination IP address. A path is chosen according to an overall consideration of the evaluation functions of a data packet feature and a network state feature, which is not only advantageous for ensuring the QoS requirement of data packets, but also advantageous for ensuring network load balance. Thus, while the possibility of network congestion is effectively reduced, the resource utilization rate of the network is improved.

Description

网络拥塞控制方法和控制器  Network congestion control method and controller
技术领域 Technical field
本发明属于无线通信技术领域, 具体是涉及一种网络拥塞控制方法和控 制器。 背景技术  The present invention belongs to the field of wireless communication technologies, and in particular, to a network congestion control method and controller. Background technique
在互联网络中, 网络拥塞是影响骨干网络性能的主要因素, 造成网 络拥塞的原因很多, 比如网络资源不足, 网络负载不均衡导致局部拥塞 等。 因此, 在为待传输的数据包选择传输路由的时候, 合理的路由选择 方法能够保证网络负载的均衡, 对降低网络拥塞至关重要。  In the Internet, network congestion is the main factor affecting the performance of the backbone network. There are many reasons for network congestion, such as insufficient network resources and uneven network load causing local congestion. Therefore, when selecting the transmission route for the data packet to be transmitted, a reasonable routing method can ensure the balance of the network load and is essential for reducing network congestion.
MPLS-TE是目前骨干网络中常用的一种解决由网络负载不均衡导致网 络拥塞的方案。 MPLS-TE结合了 MPLS技术和流量工程 TE , 通过建立到达 目的地的隧道来为确定的用户进行网络资源的预留, 从而使网络流量能 够绕开骨干网络中的一些核心路径即容易发生拥塞的路径, 实现均衡网 络负载、 优化网络资源使用的目的。  MPLS-TE is a solution commonly used in backbone networks to solve network congestion caused by network load imbalance. MPLS-TE combines MPLS technology and traffic engineering TE to reserve network resources for certain users by establishing a tunnel to the destination, so that network traffic can bypass some core paths in the backbone network, which is prone to congestion. Path, which achieves the purpose of balancing network load and optimizing network resource usage.
但是, 上述 MPLS-TE方案中, 往往会出现资源预留过渡的情况, 而且 选择确定的数据传输路径由于缺乏对网络全局负载的考虑, 往往使得网 络资源的利用率不高。 发明内容  However, in the above MPLS-TE scheme, the resource reservation transition often occurs, and the selection of the determined data transmission path often makes the utilization of the network resource low due to lack of consideration of the global load of the network. Summary of the invention
针对现有技术中存在的问题, 本发明实提供一种网络拥塞控制方法 和控制器, 以用于克服现有技术所导致的网络资源利用率不高的缺陷。  The present invention provides a network congestion control method and controller for overcoming the defects of low utilization of network resources caused by the prior art.
本发明第一方面提供了一种网络拥塞控制方法, 包括:  A first aspect of the present invention provides a network congestion control method, including:
接收 openflow 交换机转发的数据包, 并获取所述数据包的特征信 息, 所述特征信息包括目的 IP地址和服务质量 QoS信息;  Receiving a data packet forwarded by the openflow switch, and acquiring feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information;
根据所述 QoS 信息和预先获得的覆盖网络中每跳路径的状态信息确 定所述每跳路径的评价函数值, 所述每跳路径描述的是所述网络中相邻 openflow交换机间的连接路径; 确定传输所述数据包的路径为达到所述目的 IP 地址的评价函数值之 和最小的各跳路径。 Determining an evaluation function value of the hop path according to the QoS information and status information of each hop path in the overlay network, where the hop path describes a connection path between adjacent openflow switches in the network; Determining a path for transmitting the data packet is a hop path that achieves a minimum sum of evaluation function values of the destination IP address.
在第一方面的第一种可能的实现方式中, 所述接收 openflow 交换机 转发的数据包, 获取所述数据包的特征信息, 所述特征信息包括目的 IP 地址和服务质量 QoS信息, 包括:  In a first possible implementation manner of the first aspect, the receiving the data packet that is forwarded by the openflow switch, and acquiring the feature information of the data packet, where the feature information includes the destination IP address and the quality of service QoS information, including:
接收 openflow 交换机转发的数据包, 并从所述数据包中提取所述特 征信息;  Receiving a data packet forwarded by the openflow switch, and extracting the feature information from the data packet;
或者,  Or,
接收 openflow 交换机转发的数据包, 从所述数据包中提取所述目的 IP地址和源 IP地址;  Receiving a data packet forwarded by the openflow switch, extracting the destination IP address and the source IP address from the data packet;
根据所述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所 述源 IP地址指示了所述数据包的发送用户。  And obtaining the QoS information from a locally stored user requirement according to the source IP address, where the source IP address indicates a sending user of the data packet.
根据第一方面的第一种可能的实现方式, 在第一方面的第二种可能的 实现方式中,所述根据所述 QoS信息和预先获得的网络中每跳路径的状态 信息确定所述每跳路径的评价函数值之前, 还包括:  According to a first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, the determining, according to the QoS information, and status information of a hop path in a network obtained in advance Before the evaluation function value of the jump path, it also includes:
若所述 QoS信息中不包含 QoS参数, 则确定所述每跳路径的类型为 一般类型;  If the QoS information is not included in the QoS information, determining that the type of the hop path is a general type;
相应的, 所述根据所述 QoS 信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值, 包括:  Correspondingly, determining, according to the QoS information and status information of each hop path in the network, the evaluation function value of the hop path, including:
根据公式 (1 ) 确定所述每跳路径的评价函数值:  The evaluation function value of the per-hop path is determined according to formula (1):
C = a - e~l bw + β - Μ2 +Α + ζ.Μη ( 1 ) 其中, Μ^Μ„为任一跳路径的状态信息中包括的《个路径状态参数的 取值, η 1 , 其中, 取 bw, 为该任一跳路径的可用带宽, λ、 《、 β 和 为权重系数。 C = a - e~ l bw + β - Μ 2 +Α + ζ.Μ η ( 1 ) where Μ^Μ„ is the value of the path state parameter included in the state information of any hop path, η 1 , where bw is taken as the available bandwidth of the hop path, λ, “, β and are the weight coefficients.
根据第一方面的第一种可能的实现方式, 在第一方面的第三种可能的 实现方式中, , 所述根据所述 QoS信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值之前, 还包括:  According to a first possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, the determining, according to the QoS information and status information of a hop path in a network obtained in advance Before the evaluation function value of each hop path, it also includes:
若所述 QoS信息中包含至少一个 QoS参数, 则确定所述每跳路径的 类型为特定类型;  If the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type;
根据所述每个 QoS参数的优先级, 确定所述数据包的 QoS特征值; 相应的, 所述根据所述 QoS 信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值, 包括: Determining a QoS feature value of the data packet according to a priority of each QoS parameter; Correspondingly, determining, according to the QoS information and status information of each hop path in the network, the evaluation function value of the hop path, including:
根据公式 (2) 确定所述每跳路径的评价函数值:  Determine the evaluation function value of the per-hop path according to formula (2):
C, C c  C, C c
C = - log (- MJ + ^-logC M2)+A +T-log(^≡^-Mm)+A +ζ.Μη (2) C = - log (- MJ + ^-logC M 2 )+A +T-log(^≡^-M m )+A +ζ.Μ η (2)
c c c  c c c
其中, Cm^为所述数据包的 QoS特征值, Cm^ Cmm分别为所述 QoS 信息中包含的 m个 QoS参数的取值, , ^ „为分别与 Cm ~ Cmm 对应的路径状态参数的取值。 Where C m ^ is the QoS characteristic value of the data packet, and C m ^ C mm is the value of the m QoS parameters included in the QoS information, respectively, ^ „ is corresponding to C m ~ C mm respectively The value of the path state parameter.
根据第一方面、第一方面的第一种、第二种或第三种可能的实现方式, 在第一方面的第四种可能的实现方式中,所述根据所述 QoS信息和预先获 得的网络中每跳路径的状态信息确定所述每跳路径的评价函数值之前, 还包括:  According to the first aspect, the first, the second or the third possible implementation manner of the first aspect, in a fourth possible implementation manner of the first aspect, Before determining the value of the evaluation function of each hop path in the network, the status information of each hop path includes:
根据公式 (3) 确定所述每跳路径的惩罚函数值:
Figure imgf000005_0001
The penalty function value of the per-hop path is determined according to formula (3):
Figure imgf000005_0001
其中, M为从所述 M Mj 《个路径状态参数中预先规定的一个作为 衡量路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径 状态衡量阈值;  Wherein, M is a value of a path state measurement parameter pre-specified from the path state parameter of the M Mj as a measure path state, where ^ is a preset penalty threshold, and ί/ is a path state measurement threshold;
相应的, 所述根据所述 QoS 信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值, 包括:  Correspondingly, determining, according to the QoS information and status information of each hop path in the network, the evaluation function value of the hop path, including:
c (4)
Figure imgf000005_0002
c (4)
Figure imgf000005_0002
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据
Figure imgf000005_0003
+ΓΜ3 +Λ + M„ |确定, 对于特定类型的路径, 根据
Where W is the penalty factor, for the general type of path, according to
Figure imgf000005_0003
+ Γ Μ 3 +Λ + M„ | OK, for a particular type of path, according to
C  C
η-\α- log( ~ + βΛο^(-^^-Μ2)+Κ +T.log(^^.Mm)+A +ζ.Μη |确定, η Η-\α- log( ~ + βΛο^(-^^-Μ 2 )+Κ +T.log(^^.M m )+A +ζ.Μ η |determine, η
c c c,  c c c,
为权重系数, I.I为取模运算 实现方式中,所述根据所述 QoS信息和预先获得的网络中每跳路径的状态 信息确定所述每跳路径的评价函数值之前, 还包括: For the weight coefficient, II is the modulo operation In an implementation manner, before determining the evaluation function value of the hop path according to the QoS information and the state information of each hop path in the network, the method further includes:
根据所述每跳路径的状态信息, 确定所述网络中的拥塞区域; 判断所述每跳路径中是否存在位于所述拥塞区域中的路径;  Determining, according to the state information of the hop path, a congestion area in the network; determining whether a path located in the congestion area exists in the hop path;
若存在, 则根据公式 (5 ) 确定位于所述拥塞区域中的每跳路径的评 价函  If yes, determine the evaluation function of each hop path located in the congestion area according to formula (5)
( 5 )
Figure imgf000006_0001
(5)
Figure imgf000006_0001
若不存在, 则根据所述公式 (4 ) 确定所述每跳路径的评价函数值。 根据第一方面的第五种可能的实现方式, 在第一方面的第六种可能的 实现方式中, 所述根据所述每跳路径的状态信息, 确定所述网络中的拥塞 区域, 包括:  If not, the evaluation function value of the per-hop path is determined according to the formula (4). According to the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner of the first aspect, the determining, according to the status information of the hop path, the congestion area in the network includes:
确定所述路径状态衡量参数的取值高于所述路径状态衡量阈值, 且 路径距离小于预设距离阈值的各跳路径所组成的区域为拥塞区域。  The area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
根据第一方面、 第一方面的第一种、 第二种、 第三种、 第四种、 第五 种或第六种可能的实现方式, 在第一方面的第七种可能的实现方式中, 所 述接收 openflow 交换机转发的数据包, 并提取所述数据包的特征信息, 包括:  According to the first aspect, the first, second, third, fourth, fifth or sixth possible implementation of the first aspect, in a seventh possible implementation of the first aspect And receiving the data packet forwarded by the openflow switch, and extracting the feature information of the data packet, including:
接收多个 openflow 交换机转发的多个数据包, 所述多个数据包中的 每个数据包的所述特征信息中还包括数据包的优先级信息;  Receiving a plurality of data packets forwarded by the plurality of openflow switches, wherein the feature information of each of the plurality of data packets further includes priority information of the data packets;
所述接收 openflow交换机转发的数据包之后, 还包括:  After receiving the data packet forwarded by the openflow switch, the method further includes:
根据预设规则对所述每个数据包的优先级信息进行汇聚, 得到多个 优先级等级, 所述多个优先级等级的数量小于或等于所述多个优先级信 息的数量;  Aggregating the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the number of the multiple priority information;
根据所述优先级等级由高到低的顺序依次处理所述多个数据包, 并 且并行确定同一优先级等级的各数据包的传输路径。  The plurality of data packets are sequentially processed according to the priority level from high to low, and the transmission paths of the respective data packets of the same priority level are determined in parallel.
本发明第二方面提供了一种控制器, 包括:  A second aspect of the present invention provides a controller, including:
接收模块, 用于接收 openflow 交换机转发的数据包, 并获取所述数 据包的特征信息, 所述特征信息包括目的 IP地址和服务质量 QoS信息; 处理模块, 用于根据所述 QoS 信息和预先获得的覆盖网络中每跳路 径的状态信息确定所述每跳路径的评价函数值, 所述每跳路径描述的是 所述网络中相邻 openflow交换机间的连接路径; a receiving module, configured to receive a data packet forwarded by an openflow switch, and obtain the number The feature information includes a destination IP address and quality of service (QoS) information, and a processing module, configured to determine, according to the QoS information and status information of each hop path in the overlay network that is obtained in advance, the path of each hop An evaluation function value, where the per-hop path describes a connection path between adjacent openflow switches in the network;
第一确定模块, 用于确定传输所述数据包的路径为达到所述目的 IP 地址的评价函数值之和最小的各跳路径。  And a first determining module, configured to determine, by using a path of the data packet, a hop path that is the smallest sum of the evaluation function values of the destination IP address.
在第二方面的第一种可能的实现方式中, 所述接收模块, 用于: 接收 openflow 交换机转发的数据包, 并从所述数据包中提取所述特 征信息;  In a first possible implementation manner of the second aspect, the receiving module is configured to: receive a data packet forwarded by an openflow switch, and extract the feature information from the data packet;
或者,  Or,
接收 openflow 交换机转发的数据包, 从所述数据包中提取所述目的 IP地址和源 IP地址;  Receiving a data packet forwarded by the openflow switch, extracting the destination IP address and the source IP address from the data packet;
根据所述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所 述源 IP地址指示了所述数据包的发送用户。  And obtaining the QoS information from a locally stored user requirement according to the source IP address, where the source IP address indicates a sending user of the data packet.
根据第二方面的第一种可能的实现方式, 在第二方面的第二种可能的 实现方式中, 所述控制器, 还包括:  According to a first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, the controller further includes:
第二确定模块, 用于若所述 QoS信息中不包含 QoS参数, 则确定所 述每跳路径的类型为一般类型;  a second determining module, configured to determine that the type of each hop path is a general type if the QoS information is not included in the QoS information;
相应的, 所述处理模块, 用于:  Correspondingly, the processing module is configured to:
根据公式 (1 ) 确定每跳路径的评价函数值:  Determine the evaluation function value of each hop path according to formula (1):
C = a - e~l bw + β - Μ2 +Α + ζ.Μη ( 1 ) 其中, Μ^Μ„为任一跳路径的状态信息中包括的《个路径状态参数的 取值, η 1 , 其中, 取 bw, 为该任一跳路径的可用带宽, λ、 《、 β 和 为权重系数。 C = a - e~ l bw + β - Μ 2 +Α + ζ.Μ η ( 1 ) where Μ^Μ„ is the value of the path state parameter included in the state information of any hop path, η 1 , where bw is taken as the available bandwidth of the hop path, λ, “, β and are the weight coefficients.
根据第二方面的第一种可能的实现方式, 在第二方面的第三种可能的 实现方式中, 所述第二确定模块, 还用于:  According to a first possible implementation manner of the second aspect, in a third possible implementation manner of the second aspect, the second determining module is further configured to:
若所述 QoS信息中包含至少一个 QoS参数, 则确定所述每跳路径的 类型为特定类型;  If the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type;
相应的, 所述控制器, 还包括:  Correspondingly, the controller further includes:
第三确定模块, 用于根据所述每个 QoS 参数的优先级, 确定所述数 据包的 QoS特征值; a third determining module, configured to determine the number according to a priority of each QoS parameter According to the QoS feature value of the packet;
相应的, 所述处理模块, 用于:  Correspondingly, the processing module is configured to:
根据公式 (2) 确定所述每跳路径的评价函数值:  Determine the evaluation function value of the per-hop path according to formula (2):
C, C c  C, C c
C = - log (- MJ + ^-logC M2)+A -log(^≡^-Mm)+A +ζ.Μη (2) C = - log (- MJ + ^-logC M 2 )+A -log(^≡^-M m )+A +ζ.Μ η (2)
c c c  c c c
其中, C„_为所述数据包的 QoS特征值, Cm^ Cmm分别为所述 QoS 信息中包含的 m个 QoS参数的取值, , ^ „为分别与 Cm ~ Cmm 对应的路径状态参数的取值。 Where C _ is the QoS characteristic value of the data packet, and C m ^ C mm is the value of the m QoS parameters included in the QoS information, respectively, ^ „ is corresponding to C m ~ C mm respectively The value of the path state parameter.
根据第二方面、第二方面的第一种、第二种或第三种可能的实现方式, 在第二方面的第四种可能的实现方式中, 所述控制器还包括:  According to the second aspect, the first, the second or the third possible implementation manner of the second aspect, in a fourth possible implementation manner of the second aspect, the controller further includes:
第四确定模块, 用于根据公式( 3 )确定所述每跳路径的惩罚函数值:
Figure imgf000008_0001
a fourth determining module, configured to determine a penalty function value of the hop path according to formula (3):
Figure imgf000008_0001
其中, M为从所述 M Mj 《个路径状态参数中预先规定的一个作为 衡量路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径 状态衡量阈值;  Wherein, M is a value of a path state measurement parameter pre-specified from the path state parameter of the M Mj as a measure path state, where ^ is a preset penalty threshold, and ί/ is a path state measurement threshold;
相应的, 所述处理模块, 用于:  Correspondingly, the processing module is configured to:
Figure imgf000008_0002
Figure imgf000008_0002
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据 η-\α -λ"κ+β-Μ2 +γ-Μ3 +Α + Μ„ |确定, 对于特定类型的路径 根据 Where W is a penalty factor, for a general type of path, determined according to η-\α - λ " κ +β-Μ 2 +γ-Μ 3 +Α + Μ„ |, for a particular type of path
+ .Μ„ |确定, η
Figure imgf000008_0003
+ .Μ„ |OK, η
Figure imgf000008_0003
为权重系数, ι.ι为取模运算。 For the weighting factor, ι.ι is the modulo operation.
根据第二方面的第四种可能的实现方式, 在第二方面的第五种可能的 实现方式中, 所述控制器, 还包括:  According to a fourth possible implementation manner of the second aspect, in a fifth possible implementation manner of the second aspect, the controller further includes:
第五确定模块, 用于根据所述每跳路径的状态信息, 确定所述网络 中的拥塞区域; 判断模块, 用于判断所述每跳路径中是否存在位于所述拥塞区域中 的路径; a fifth determining module, configured to determine a congestion area in the network according to status information of the hop path; a determining module, configured to determine whether a path located in the congestion area exists in the path per hop;
若存在, 则所述处理模块用于: 根据公式 (5 ) 确定位于所述拥塞区 域中  If yes, the processing module is configured to: determine, located in the congestion area according to formula (5)
C ( 5 )
Figure imgf000009_0001
C ( 5 )
Figure imgf000009_0001
若不存在, 则所述处理模块用于: 根据所述公式 (4 ) 确定所述每跳 路径的评价函数值。  If not, the processing module is configured to: determine an evaluation function value of the hop path according to the formula (4).
根据第二方面的第五种可能的实现方式, 在第二方面的第六种可能的 实现方式中, 所述第五确定模块, 具体用于:  According to the fifth possible implementation manner of the second aspect, in the sixth possible implementation manner of the second aspect, the fifth determining module is specifically configured to:
确定所述路径状态衡量参数的取值高于所述路径状态衡量阈值, 且 路径距离小于预设距离阈值的各跳路径所组成的区域为拥塞区域。  The area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
根据第二方面、 第二方面的第一种、 第二种、 第三种、 第四种、 第五 种或第六种可能的实现方式, 在第二方面的第七种可能的实现方式中, 所 述接收模块, 具体用于:  According to the second aspect, the first, second, third, fourth, fifth or sixth possible implementation of the second aspect, in a seventh possible implementation of the second aspect The receiving module is specifically configured to:
接收多个 openflow 交换机转发的多个数据包, 所述多个数据包中的 每个数据包的所述特征信息中还包括数据包的优先级信息;  Receiving a plurality of data packets forwarded by the plurality of openflow switches, wherein the feature information of each of the plurality of data packets further includes priority information of the data packets;
所述控制器, 还包括:  The controller further includes:
汇聚模块, 用于根据预设规则对所述每个数据包的优先级信息进行 汇聚, 得到多个优先级等级, 所述多个优先级等级的数量小于或等于所 述多个优先级信息的数量;  An aggregation module, configured to aggregate priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the multiple priority information Quantity
相应的, 所述处理模块, 用于根据所述优先级等级由高到低的顺序 依次处理所述多个数据包, 并且并行确定同一优先级等级的各数据包的 传输路径。  Correspondingly, the processing module is configured to sequentially process the plurality of data packets according to the priority level from high to low, and determine the transmission paths of the data packets of the same priority level in parallel.
本发明提供的网络拥塞控制方法和控制器, 在 SDN 架构下, 当控制 器接收到 openflow 交换机转发的数据包时, 提取该数据包的特征信息, 其中, 特征信息包括目的 IP地址和服务质量 QoS信息, 并根据该 QoS信 息和预先获得的覆盖的网络中每跳路径的状态信息确定网络中每跳路径 的评价函数值, 最终选择到达目的 IP 地址的、 由评价函数之和最小的各 跳路径所构成的路径来传输该数据包。 根据综合考虑了数据包特征和网 络状态特征的评价函数来进行路径的选择, 既有利于保证数据包的 QoS 需求, 又有利于保证网络的负载均衡, 从而有效降低了网络拥塞的可能 性的同时, 提高了网络的资源利用率。 附图说明 图 1为本发明实施例一提供的网络拥塞控制方法的流程图; The network congestion control method and controller provided by the present invention, in the SDN architecture, when the controller receives the data packet forwarded by the openflow switch, extracts the feature information of the data packet, wherein the feature information includes the destination IP address and the quality of service QoS. Information, and determining a path per hop in the network according to the QoS information and status information of each hop path in the pre-obtained covered network The evaluation function value finally selects the path formed by each hop path that reaches the destination IP address and has the smallest sum of the evaluation functions to transmit the data packet. According to the evaluation function that comprehensively considers the characteristics of the data packet and the network state, the path selection is beneficial to ensure the QoS requirements of the data packet, and to ensure the load balancing of the network, thereby effectively reducing the possibility of network congestion. , improve the resource utilization of the network. BRIEF DESCRIPTION OF DRAWINGS FIG. 1 is a flowchart of a network congestion control method according to Embodiment 1 of the present invention;
图 2为本发明实施例二提供的网络拥塞控制方法的流程图;  2 is a flowchart of a network congestion control method according to Embodiment 2 of the present invention;
图 3为本发明实施例三提供的控制器的结构示意图;  3 is a schematic structural diagram of a controller according to Embodiment 3 of the present invention;
图 4为本发明实施例四提供的控制器的结构示意图;  4 is a schematic structural diagram of a controller according to Embodiment 4 of the present invention;
图 5为本发明实施例五提供的控制器的结构示意图。 具体实施方式  FIG. 5 is a schematic structural diagram of a controller according to Embodiment 5 of the present invention. detailed description
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合 本发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整 地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的 实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创造 性劳动前提下所获得的所有其它实施例, 都属于本发明保护的范围。  The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is a partial embodiment of the invention, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative work are within the scope of the present invention.
图 1为本发明实施例一提供的网络拥塞控制方法的流程图, 如图 1所 示, 本实施例提供的所述方法适用于在采用软件定义网络 (Software Def ined Network , 以下简称 SDN ) 网络架构的网络中进行网络拥塞控制。 所谓 SDN , 就是将传统网络架构下的网络交换机或路由器中的控制功能从 设备中分离出来, 交由 SDN中的控制器(Control l er ) 来完成, 原有的网 络交换机或路由器只负责数据转发功能, 从而实现了控制层面与数据层 面的分离。 在 SDN中, 控制器和交换机间使用 openf low协议进行通信, 因此, 称 SDN网络中的交换机为 openf low交换机。 在 SDN网络中, 由控 制器对 SDN 网络中的所有数据流的传输进行集中的控制管理, openf low 交换机仅通过执行控制器下发的流处理规则以完成数据流的转发等处 理。 本实施例提供的所述方法可以由 SDN网络中的控制器来执行。 本实施例提供的所述方法具体包括如下歩骤: FIG. 1 is a flowchart of a network congestion control method according to Embodiment 1 of the present invention. As shown in FIG. 1 , the method provided in this embodiment is applicable to a Software Def ined Network (SDN) network. Network congestion control in the network of the architecture. The so-called SDN is to separate the control functions in the network switch or router under the traditional network architecture from the device, and the controller (Control l er) in the SDN is completed. The original network switch or router is only responsible for data forwarding. Function, thus achieving the separation of the control plane and the data plane. In SDN, the controller and the switch use the openf low protocol for communication. Therefore, the switch in the SDN network is called the openf low switch. In the SDN network, the controller performs centralized control and control on the transmission of all the data streams in the SDN network. The openf low switch performs the processing of forwarding the data stream only by executing the flow processing rules delivered by the controller. The method provided by this embodiment can be performed by a controller in an SDN network. The method provided in this embodiment specifically includes the following steps:
歩骤 101、 接收 openflow交换机转发的数据包, 并提取所述数据包的 特征信息, 所述特征信息包括目的 IP地址和服务质量 QoS信息;  Step 101: Receive a data packet forwarded by an openflow switch, and extract feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information;
在 SDN网络中, 当某 openflow交换机接收到一个数据包时, 会根据 本地存储的流表匹配该数据包, 当未匹配到与该数据包对应的流表项 时, 将该数据包转发给控制器, 以由控制器为该数据包计算传输路径。  In an SDN network, when an openflow switch receives a data packet, it matches the data packet according to the locally stored flow table. When the flow entry corresponding to the data packet is not matched, the data packet is forwarded to the control. To calculate the transmission path for the packet by the controller.
控制器在接收到该 openflow 交换机转发的数据包后, 需获取该数据 包的特征信息, 具体地, 一方面可以从该数据包中提取所述特征信息, 比 如提取该数据包头部中所包含的特征信息, 该特征信息例如包括目的 IP 地址、 QoS信息, 该 QoS信息例如可以包括时延、 带宽等参数。 可以理 解的是, 该数据包的特征信息例如还可以包括业务类型、 网络协议类型 等信息。 另一方面, 还可以从所述数据包中提取所述目的 IP地址和源 IP 地址,并根据所述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所述源 IP 地址指示了所述数据包的发送用户。 比如说, 控制器中存储有 各用户的用户需求信息, 该用户需求信息例如包括各用户对其发送的数据 包在延时、 优先级、 业务类型等 QoS方面提出具体要求, 从而控制器在接 收到数据包后, 以该数据包中的源 IP 地址为用户标识査找到对应用户的 用户需求, 以从中获得该数据包的 QoS信息。 除此之外, 控制器也可以根 据预先获得的网络负荷情况、网络中各 openflow交换机的处理能力等情况 自定义接收到的数据包的 QoS信息,比如是否为接收到的数据包配置 QoS 参数, 配置哪些 QoS参数等。  After receiving the data packet forwarded by the openflow switch, the controller needs to obtain the feature information of the data packet. Specifically, the feature information may be extracted from the data packet, for example, extracting the information included in the data packet header. The feature information includes, for example, a destination IP address and QoS information, and the QoS information may include, for example, parameters such as delay and bandwidth. It can be understood that the feature information of the data packet may also include information such as a service type and a network protocol type. On the other hand, the destination IP address and the source IP address may be extracted from the data packet, and the QoS information is obtained from a locally stored user requirement according to the source IP address, where the source IP address indicates The sending user of the data packet. For example, the controller stores user demand information of each user, and the user requirement information includes, for example, each user requests specific requirements for QoS in terms of delay, priority, service type, etc., so that the controller receives After the data packet, the source IP address in the data packet is used as the user identifier to find the user requirement of the corresponding user, so as to obtain the QoS information of the data packet. In addition, the controller can also customize the QoS information of the received data packet according to the pre-acquired network load condition, the processing capability of each openflow switch in the network, and the like, such as whether to configure QoS parameters for the received data packet. Which QoS parameters are configured, and so on.
歩骤 102、 根据所述 QoS信息和预先获得的覆盖网络中每跳路径的状 态信息确定所述每跳路径的评价函数值;  Step 102: Determine, according to the QoS information and status information of each hop path in the overlay network that is obtained in advance, an evaluation function value of the hop path.
在 SDN 网络架构中, 控制器可以实时或周期获得其覆盖网络中每跳 路径的状态信息, 即各相邻 openflow 交换机间连接路径的状态信息, 该 状态信息可以是控制器通过査询其覆盖范围内各 openflow 交换机的端口 信息统计获得的, 比如, 控制器可以査询获得两相邻 openflow 交换机的 端口信息中包含的计数器的值、 已用带宽值等, 进而可以根据计数器所 记录的转发次数和已用带宽值获得这两个相邻 openflow 交换机间路径的 利用率、 可用带宽等状态信息。 本实施例中, 控制器根据接收到的数据包的 QoS 信息和预先获得的 覆盖网络中每跳路径的状态信息确定所述每跳路径的评价函数值。 该评 价函数值作为选择数据包传输路径的依据, 综合考虑了数据包的特征信 息和网络中每跳路径的状态信息, 比如既考虑了数据包的 QoS、 业务类 型等特征信息, 又考虑了当前网络中每跳路径的可用带宽、 利用率、 时 延等状态信息。 以该评价函数为依据, 有利于保证用户体验、 满足用户 对服务质量的需求, 同时, 有利于实现负载均衡。 值得说明的是, 根据 网络的实际运行情况, 可以适当合理调整每跳路径的评价函数中各参数 的权重, 突出重要参数对网络负载均衡的影响。 In the SDN network architecture, the controller can obtain the status information of each hop path in the overlay network in real time or periodically, that is, the status information of the connection path between adjacent openflow switches, and the status information can be the controller querying its coverage. The port information of each openflow switch is obtained. For example, the controller can query the value of the counter included in the port information of the two adjacent openflow switches, the used bandwidth value, etc., and then according to the number of forwarding records recorded by the counter. The bandwidth value is used to obtain status information such as utilization and available bandwidth of the paths between the two adjacent openflow switches. In this embodiment, the controller determines an evaluation function value of the hop path according to the QoS information of the received data packet and the state information of each hop path in the overlay network obtained in advance. The evaluation function value is used as the basis for selecting the data packet transmission path, and comprehensively considers the characteristic information of the data packet and the state information of the hop path in the network, for example, considering the feature information such as the QoS of the data packet, the service type, and the current Status information such as available bandwidth, utilization, and delay for each hop path in the network. Based on the evaluation function, it is beneficial to ensure the user experience and meet the user's demand for service quality. At the same time, it is beneficial to achieve load balancing. It is worth noting that, according to the actual operation of the network, the weights of each parameter in the evaluation function of each hop path can be appropriately and reasonably adjusted, and the influence of important parameters on network load balancing is highlighted.
歩骤 103、 确定传输所述数据包的路径为达到所述目的 IP地址的评价 函数值之和最小的各跳路径。  Step 103: Determine a path for transmitting the data packet to be a hop path that has the smallest sum of evaluation function values of the destination IP address.
最后, 控制器确定能够到达所述目的 IP 地址的, 且每跳路径的评价 函数值之和最小的各跳路径作为传输所述数据包的路径。  Finally, the controller determines each hop path that can reach the destination IP address and has the smallest sum of evaluation function values per hop path as the path for transmitting the data packet.
可以理解的是, 控制器可以采用现有技术中的路由算法来计算将数 据包从源 IP地址传输到目的 IP地址的路径, 只是, 在计算过程中, 路径 选择的基于采用本实施例所述的评价函数。 比如说, 控制器可以先计算 出多条达到目的 IP 地址的路径, 之后在这多条可能路径中选择每跳的评 价函数值之和最小的那条路径来传输数据包; 或者, 控制器可以先计算 网络中每跳路径的评价函数值, 之后以达到目的 IP 地址的矢量方向为指 导, 确定出到达目的 IP 地址的每跳路径的评价函数值之和最小的那条路 径作为数据包的传输路径。  It can be understood that the controller can use the routing algorithm in the prior art to calculate a path for transmitting the data packet from the source IP address to the destination IP address, but in the calculation process, the path selection is based on using the embodiment. Evaluation function. For example, the controller may first calculate a plurality of paths to the destination IP address, and then select the path with the smallest sum of evaluation function values per hop among the plurality of possible paths to transmit the data packet; or, the controller may First calculate the evaluation function value of each hop path in the network, and then determine the path with the smallest sum of the evaluation function values of each hop path to the destination IP address as the data packet transmission under the guidance of the vector direction of the destination IP address. path.
本实施例中, 当控制器接收到 openflow 交换机转发的数据包时, 提 取该数据包的特征信息, 其中, 特征信息包括目的 IP 地址和服务质量 QoS信息, 并根据该 QoS信息和预先获得的网络中每跳路径的状态信息 确定网络中每跳路径的评价函数值, 最终选择到达目的 IP 地址的、 由评 价函数之和最小的各跳路径所构成的路径来传输该数据包。 根据综合考 虑了数据包特征和网络状态特征的评价函数来进行路径的选择, 既有利 于保证数据包的 QoS 需求, 又有利于保证网络的负载均衡, 从而有效降 低了网络拥塞的可能性的同时, 提高了网络的资源利用率。  In this embodiment, when the controller receives the data packet forwarded by the openflow switch, extracting the feature information of the data packet, where the feature information includes the destination IP address and the quality of service QoS information, and according to the QoS information and the pre-obtained network. The status information of each hop path determines the value of the evaluation function of each hop path in the network, and finally selects the path formed by each hop path that reaches the destination IP address and has the smallest sum of the evaluation functions to transmit the data packet. According to the evaluation function that comprehensively considers the characteristics of the data packet and the network state, the path selection is beneficial to ensure the QoS requirements of the data packet, and to ensure the load balancing of the network, thereby effectively reducing the possibility of network congestion. , improve the resource utilization of the network.
图 2为本发明实施例二提供的网络拥塞控制方法的流程图, 如图 2所 示, 本实施例的方法包括: 2 is a flowchart of a network congestion control method according to Embodiment 2 of the present invention, as shown in FIG. 2 The method of this embodiment includes:
歩骤 201、 接收多个 openflow交换机转发的多个数据包, 所述多个数 据包中的每个数据包的所述特征信息中还包括数据包的优先级信息;  Step 201: Receive a plurality of data packets forwarded by a plurality of openflow switches, where the feature information of each of the plurality of data packets further includes priority information of the data packet;
本实施例中, 同一时间, 控制器很有可能接收到多个不同的 openflow 交换机转发的多个数据包。 此时, 既可以对这些多个数据包进行随机缓 存, 即随机排序这些数据包并进行队列缓存, 之后逐个处理, 优选地, 也可以采用本实施例提供的方法对多个数据包进行优先级等级划分, 按 照优先级等级顺序依次处理, 对于属于同一优先级等级的各数据包, 并 行同时处理。  In this embodiment, at the same time, the controller is likely to receive multiple data packets forwarded by multiple different openflow switches. At this time, the multiple data packets may be randomly cached, that is, the data packets are randomly sorted and cached, and then processed one by one. Preferably, multiple data packets may be prioritized by using the method provided in this embodiment. The grading is processed sequentially according to the priority level, and each packet belonging to the same priority level is processed in parallel.
因此, 控制器接收到多个数据包之后, 提取的数据包的特征信息中 不仅包含诸如 QoS信息、 目的 IP地址等信息, 还包括对应数据包的优先 级信息, 该优先级信息例如包括业务类型、 网络协议类型、 端口号等的 任一种或多种。  Therefore, after the controller receives the plurality of data packets, the feature information of the extracted data packet includes not only information such as QoS information, a destination IP address, but also priority information of the corresponding data packet, where the priority information includes, for example, a service type. Any one or more of the network protocol type, port number, and so on.
歩骤 202、 根据预设规则对所述每个数据包的优先级信息进行汇聚, 得到多个优先级等级, 所述多个优先级等级的数量小于或等于所述多个 优先级信息的数量;  Step 202: Convergence the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the quantity of the multiple priority information. ;
本实施例中, 以业务类型举例说明, 不同数据包的业务类型具有不 同的优先级, 比如语音类业务具有最高优先级, 以 5标识, FTP业务的优 先级为 4、 WEB业务的优先级为 3、 FTTP业务的优先级为 2, 其他业务优 先级为 1。 假设当前接收到 5个数据包, 优先级分别为 5、 2、 4、 1、 4, 假设上述汇聚优先级的预设规则为对接收到的多个 (5个) 数据包的优先 级按照从高到低进行排序, 相邻的两种优先级为一个汇聚单位, 且相同 优先级汇聚在一起, 从而上述举例中获得的汇聚结果为 [5,4]、 [2]和 [1]三 个优先级等级, 其中, [5,4]代表的是将优先级为 5和 4的所有数据包汇聚 为一个优先级等级。  In this embodiment, the service type is used as an example. The service type of the different data packets has different priorities. For example, the voice service has the highest priority, and the priority of the FTP service is 4, and the priority of the WEB service is 4. 3. The priority of the FTTP service is 2, and the priority of other services is 1. Assume that 5 packets are currently received, and the priorities are 5, 2, 4, 1, and 4, respectively. It is assumed that the preset rule of the aggregation priority is the priority of the received multiple (5) packets. Sorting from high to low, the two adjacent priorities are one aggregation unit, and the same priority is gathered together, so that the convergence result obtained in the above example is [5, 4], [2], and [1] Priority level, where [5,4] represents the aggregation of all packets with priority levels 5 and 4 into a priority level.
本实施例中, 控制器按照优先级等级从高到低的顺序依次处理各优 先级等级中包括的数据包, 对于属于同一个优先级等级的各数据包进行 并行处理, 即同时分别计算同一优先级等级中各数据包的传输路径, 相 当于控制器以多个并行的处理进程分别计算该各数据包的传输路径。 由 于对同一优先级等级中各数据包的传输路径的确定方法相似, 以下仅以 同一优先级等级中的任一个数据包为例进行说明。 In this embodiment, the controller sequentially processes the data packets included in each priority level according to the priority level from high to low, and performs parallel processing on each data packet belonging to the same priority level, that is, simultaneously calculates the same priority. The transmission path of each data packet in the level is equivalent to the controller calculating the transmission path of each data packet by a plurality of parallel processing processes. Since the determination methods of the transmission paths of the data packets in the same priority level are similar, the following only Any one of the same priority levels is described as an example.
歩骤 203、 确定所述 QoS信息中是否包含至少一个 QoS参数, 若包 含, 则执行歩骤 204, 否则执行歩骤 206;  Step 203: Determine whether the QoS information includes at least one QoS parameter, if yes, execute step 204, otherwise execute step 206;
歩骤 204、 确定所述每跳路径的类型为特定类型;  Step 204: Determine that the type of the path per hop is a specific type;
歩骤 205、 根据所述每个 QoS参数的优先级, 确定所述数据包的 QoS 特征值;  Step 205: Determine, according to a priority of each QoS parameter, a QoS feature value of the data packet.
歩骤 206、 确定所述每跳路径的类型为一般类型;  Step 206: Determine that the type of the path per hop is a general type;
根据公式 (1) 确定所述每跳路径的评价函数值:  The evaluation function value of the per-hop path is determined according to formula (1):
C = a-e~lbw + β-Μ2 +Α+ζ.Μη (1) 其中, Μ^Μ„为所述状态信息中包括的 η 个路径状态参数的取值, n^l, 其中, 取 Mfbw, 为路径的可用带宽, λ、 《、 和 为权重系 数。 C = ae~ lbw + β-Μ 2 +Α+ζ.Μ η (1) where Μ^Μ„ is the value of the n path state parameters included in the state information, n^l, where Mfbw, the available bandwidth of the path, λ, ", and is the weighting factor.
本实施例中, 针对属于同一优先级等级中的任一个数据包, 根据该 数据包的 QoS 信息来确定当前网络中每跳路径的路径类型。 具体的, 如 果该 QoS信息中包含至少一个 QoS参数, 那么确定每跳路径的路径类型 为特定类型。 之后, 根据 QoS信息中包含的各 QoS参数的优先级, 确定 该数据包的 QoS特征值, 进而, 可选的, 可以根据公式 (2) 确定所述每 跳路径的评价函数值:  In this embodiment, for any data packet belonging to the same priority level, the path type of each hop path in the current network is determined according to the QoS information of the data packet. Specifically, if the QoS information includes at least one QoS parameter, it is determined that the path type of each hop path is a specific type. Then, according to the priority of each QoS parameter included in the QoS information, the QoS feature value of the data packet is determined, and optionally, the evaluation function value of the hop path can be determined according to formula (2):
C = a- log (-^ -Μ^ + β- log(-^^ · Μ2) +Λ +τ -log(-^≡^- M +A +ζ.Μη (2) 其中, M^M„为每跳路径的状态信息中包括的 n个路径状态参数的 取值, η 1, λ、 o、 β 、 r和 为权重系数, Cm^为所述数据包的 QoS 特征值, Cm广 Cmm分别为所述 QoS信息中包含的 m个 QoS参数的取值, m l, ^ „为分别与 Cm Cmm对应的路径状态参数的取值。 进一歩 地, 上述各状态信息为进行归一化处理后 的结果 , 即 , ,. , Μίαναΰα 为实时获得的任一跳路径的路径状态参数
Figure imgf000014_0001
C = a- log (-^ -Μ^ + β- log(-^^ · Μ 2 ) +Λ +τ -log(-^≡^- M +A +ζ.Μ η (2) where M^ M„ is the value of n path state parameters included in the state information of each hop path, η 1, λ, o, β, r and are weight coefficients, C m ^ is the QoS characteristic value of the data packet, C m wide C mm is the value of m QoS parameters included in the QoS information, respectively, ml, ^ „ is the value of the path state parameter corresponding to C m C mm respectively. Further, the above state information is The result of the normalization process, ie, . , Μ ίαναΰα is the path state parameter of any hop path obtained in real time.
Figure imgf000014_0001
值, MiMAX为当前网络中对应的该路径状态参数值的最大值。 The value, M iMAX is the maximum value of the corresponding path state parameter value in the current network.
其中, 根据 QoS信息中包含的各 QoS参数的优先级, 确定该数据包 的 QoS特征值, 举例来说, 比如该数据包的 QoS信息中包含的 QoS参数 为最小时延、 带宽和抖动, 且要求优先保证最小时延, 其次是带宽, 最 后是抖动, 即 QoS 参数的优先级排序为时延、 带宽、 抖动。 针对时延、 带宽、 抖动, 假设分别的取值为 ^=4, Cm2=2, Cm3=l, 则将该取值转换为 十进制的, 得到数据包的 QoS 特征值为 Cm^ =7。 可以理解的是, 上述公 式 (2 ) 中相加的各项参数是按照重要程度依次递减排列的, 即比如按照 QoS参数的优先级顺序排列。 另外, 假设数据包中包含 m个 QoS参数, 而且公式 (2 ) 中每跳路径的 n个状态参数中, 也有 m个路径状态参数是 与 m个 QoS参数一一对应的, 即比如 QoS参数中包括带宽, 路径的状态 信息中也包括带宽这个路径状态参数, 那么两者相乘的乘机取对数作为 公式 (2)中相加的一项, 从而突出了带宽对路径选择的影响。 Determining, according to a priority of each QoS parameter included in the QoS information, a QoS feature value of the data packet, for example, the QoS parameter included in the QoS information of the data packet is a minimum delay, a bandwidth, and a jitter, and It is required to prioritize the minimum delay, followed by the bandwidth, and finally the jitter, that is, the priority order of the QoS parameters is delay, bandwidth, and jitter. For delay, Bandwidth and jitter, assuming that the values are ^=4, C m2 =2, and C m3 =l, the value is converted to decimal, and the QoS characteristic value of the packet is C m ^ =7. It can be understood that the parameters added in the above formula (2) are sequentially decremented according to the degree of importance, that is, for example, according to the priority order of the QoS parameters. In addition, it is assumed that the data packet contains m QoS parameters, and among the n state parameters of each hop path in formula (2), there are also m path state parameters which are in one-to-one correspondence with m QoS parameters, that is, for example, QoS parameters. Including the bandwidth, the path state information also includes the bandwidth path state parameter, then the multiplicative check logarithm of the two is used as an added term in formula (2), thereby highlighting the effect of bandwidth on path selection.
进一歩地, 如果数据包的 QoS信息中不包含 QoS参数, 那么确定每 跳路径的路径类型为一般类型, 则可选的, 可以采用公式 (1 ) 来确定所 述每跳路径的评价函数值。 在公式 (1 ) 中, 对于一般类型的路径, 路径 的状态信息中包括带宽, 通过对带宽取指数的方式, 加大带宽在传输路 径选择过程中的影响比重。  Further, if the QoS parameter of the data packet does not include the QoS parameter, then the path type of each hop path is determined to be a general type, and optionally, the evaluation function value of the hop path may be determined by using formula (1). . In formula (1), for a general type of path, the state information of the path includes the bandwidth, and by taking an exponential manner on the bandwidth, the influence of the bandwidth on the transmission path selection process is increased.
确定所述每跳路径的惩罚函数值:
Figure imgf000015_0001
Determining the penalty function value of the per-hop path:
Figure imgf000015_0001
其中, M为从 ^ „的 《个路径状态参数中预先规定的一个作为衡量 路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径状态 衡量阈值;  Where M is a value of a path state measurement parameter pre-specified from the path state parameter of ^ „ as a measure path state, ^ is a preset penalty threshold, and ί/ is a path state measurement threshold;
本实施例中每跳路径的评价函数中不仅包括每跳路径的状态信息和 数据包的 QoS 信息, 进一歩地, 还根据每跳路径的路径状态, 赋予每跳 路径一个惩罚函数值。 具体地, 可以从每跳路径的状态信息中包含的 n个 路径状态参数中预先根据各状态参数的影响重要程度, 预先确定一个用 于衡量每跳路径的路径状态的路径状态衡量参数, 进而分别获取每跳路 径中该路径状态衡量参数的取值, 采用上述公式 (3 ) 分别计算获得与每 跳路径对应的各惩罚函数值。 该惩罚函数的存在, 有利于在进行数据包 传输路径选择的时候, 避免选择惩罚函数值较高的各跳路径, 从而有利 于均衡网络负载, 控制网络拥塞。  In the evaluation function of the hop path in this embodiment, not only the state information of the hop path but also the QoS information of the data packet are included, and further, a penalty function value is assigned to each hop path according to the path state of each hop path. Specifically, a path state measurement parameter for measuring a path state of each hop path may be determined in advance according to the importance degree of each state parameter from the n path state parameters included in the state information of each hop path, and then respectively Obtain the value of the path state measurement parameter in each hop path, and calculate the value of each penalty function corresponding to each hop path by using the above formula (3). The existence of the penalty function is beneficial to avoid selecting each hop path with a higher penalty function value when performing packet transmission path selection, thereby facilitating equalization of network load and control network congestion.
歩骤 208、 确定所述网络状态衡量参数的取值高于所述网络状态衡量 阈值, 且路径距离小于预设距离阈值的各跳路径所组成的区域为拥塞区 域; Step 208: Determine that the value of the network state measurement parameter is higher than the network state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area. area;
歩骤 209、 判断所述每跳路径中是否存在位于所述拥塞区域中的路 径, 若存在, 则执行歩骤 210, 否则执行歩骤 211;  Step 209, determining whether there is a path in the congestion area in the hop path, if yes, executing step 210, otherwise performing step 211;
歩骤 210、 根据公式(5)确定位于所述拥塞区域中的每跳路径的评价 函数  Step 210: Determine an evaluation function of each hop path located in the congestion area according to formula (5)
Figure imgf000016_0001
Figure imgf000016_0001
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据 77·|«·6-^+^Μ2 + ΓΜ3 +Λ + M„ |确定, 对于特定类型的路径, 根据 、 、 Where W is the penalty factor, for a general type of path, according to 77·|«· 6 -^+^Μ 2 + Γ Μ 3 + Λ + M„ |, for a particular type of path, according to , ,
ri \o - log( M + ^ logC ■M2)+A + τ - log( •Mm)+A + M„ I确定, η c C. C Ri \o - log( M + ^ logC ■M 2 )+A + τ - log( •M m )+A + M„ I determine, η c C. C
为权重系数, ι.ι为取模运算。 For the weighting factor, ι.ι is the modulo operation.
歩骤 212、 确定传输所述数据包的路径为达到所述目的 IP地址的评价 函数值之和最小的各跳路径。  Step 212: Determine a path for transmitting the data packet to be a hop path that has the smallest sum of evaluation function values of the destination IP address.
再进一歩, 本实施例中对每跳路径还加入了区域性惩罚策略。 具体 来说, 控制器根据每跳路径的状态信息, 首先确定网络中的拥塞区域。 具体地, 确定预先规定的所述路径状态衡量参数的取值高于所述路径状 态衡量阈值, 且路径距离小于预设距离阈值的各跳路径所组成的区域为 拥塞区域。 以路径状态衡量参数为利用率为例说明, 对于利用率高于利 用率阈值的各跳路径, 若该各跳路径呈现区域性特点, 即之间的路径距 离小于预设距离阈值, 则确定满足该条件的各跳路径所构成的区域为拥 塞区域。 进而, 判断网络中的每跳路径中是否存在位于所述拥塞区域中 的路径, 若存在, 则根据公式 (5) 确定每跳路径的评价函数值, 否则根 据公式 (4 ) 确定所述每跳路径的评价函数值。 公式 (5 ) 中, 加重了对属 于拥塞区域中的各跳路径的惩罚, 进一歩提高了网络负载的均衡。 值得 说明的是, 本实施例中仅加重了对位于拥塞区域中各跳路径的惩罚, 进 一歩的, 还可以加重对位于拥塞区域中各 openflow 交换机的惩罚, 比如 将该各 openflow交换机的处理能力减半。 Further, in this embodiment, a regional penalty policy is added to each hop path. Specifically, the controller first determines a congestion area in the network according to status information of each hop path. Specifically, it is determined that a predetermined value of the path state measurement parameter is higher than the path state measurement threshold, and an area formed by each hop path whose path distance is less than a preset distance threshold is a congestion area. The path status measurement parameter is used as an example. For each hop path whose utilization is higher than the utilization threshold, if the hop path exhibits regional characteristics, that is, the path distance between the hops is less than the preset distance threshold, it is determined to be satisfied. The area formed by each hop path of this condition is a congestion area. Further, determining whether there is a path located in the congestion area in each hop path in the network, and if yes, determining an evaluation function value of each hop path according to formula (5), otherwise The evaluation function value of the per-hop path is determined according to formula (4). In formula (5), the penalty for each hop path belonging to the congestion area is aggravated, and the network load balance is further improved. It should be noted that, in this embodiment, only the penalty for each hop path in the congestion area is emphasized, and further, the penalty for each openflow switch located in the congestion area may be emphasized, for example, the processing capability of each openflow switch. Halve.
最后, 确定传输所述数据包的路径为达到所述目的 IP地址的评价函 数值之和最小的各跳路径。  Finally, it is determined that the path for transmitting the data packet is the hop path with the smallest sum of the evaluation values of the destination IP address.
本实施例中, 当控制器接收到多个数据包, 需要为该多个数据包进 行传输路径的确定时, 通过以数据包的优先级信息为依据, 进行处理优 先级等级的划分, 可以并行处理同一优先级等级中的各数据包, 有利于 提高处理效率; 在确定传输路径的过程中, 每跳路径的评价函数中综合 考虑了数据包的特征信息、 每跳路径的状态信息, 针对每跳路径, 根据 每跳路径的状态信息和网络的拥塞区域, 进一歩设置了每跳路径的惩罚 机制, 进一歩提高了网络负载的均衡, 从而有利于提高对网络拥塞的控 制效果。  In this embodiment, when the controller receives multiple data packets and needs to determine the transmission path for the multiple data packets, the processing priority level may be divided according to the priority information of the data packets, which may be parallel. Processing each data packet in the same priority level is beneficial to improve processing efficiency. In the process of determining the transmission path, the evaluation function of each hop path comprehensively considers the characteristic information of the data packet and the state information of each hop path, for each The hopping path, according to the state information of each hop path and the congestion area of the network, further sets the penalty mechanism of each hop path, further improves the balance of the network load, thereby facilitating the control effect on network congestion.
图 3为本发明实施例三提供的控制器的结构示意图, 如图 3所示, 该 控制器包括:  FIG. 3 is a schematic structural diagram of a controller according to Embodiment 3 of the present invention. As shown in FIG. 3, the controller includes:
接收模块 11, 用于接收 openflow交换机转发的数据包, 并获取所述 数据包的特征信息, 所述特征信息包括目的 IP 地址和服务质量 QoS 信 息;  The receiving module 11 is configured to receive a data packet forwarded by the openflow switch, and obtain feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information;
处理模块 12, 用于根据所述 QoS信息和预先获得的覆盖网络中每跳 路径的状态信息确定所述每跳路径的评价函数值, 所述每跳路径描述的 是所述网络中相邻 openflow交换机间的连接路径;  The processing module 12 is configured to determine, according to the QoS information and status information of each hop path in the overlay network that is obtained in advance, an evaluation function value of the hop path, where each hop path describes an adjacent openflow in the network. Connection path between switches;
第一确定模块 13, 用于确定传输所述数据包的路径为达到所述目的 IP地址的评价函数值之和最小的各跳路径。  The first determining module 13 is configured to determine, according to the path for transmitting the data packet, each hop path that has the smallest sum of evaluation function values of the destination IP address.
具体地, 所述接收模块 11, 用于:  Specifically, the receiving module 11 is configured to:
接收 openflow 交换机转发的数据包, 并从所述数据包中提取所述特 征信息;  Receiving a data packet forwarded by the openflow switch, and extracting the feature information from the data packet;
或者,  Or,
接收 openflow 交换机转发的数据包, 从所述数据包中提取所述目的 IP地址和源 IP地址; Receiving a packet forwarded by an openflow switch, extracting the destination from the data packet IP address and source IP address;
根据所述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所 述源 IP地址指示了所述数据包的发送用户。  And obtaining the QoS information from a locally stored user requirement according to the source IP address, where the source IP address indicates a sending user of the data packet.
本实施例的控制器可以用于执行图 1所示方法实施例的技术方案, 其 实现原理和技术效果类似, 此处不再赘述。  The controller of this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 1. The implementation principle and technical effects are similar, and details are not described herein again.
图 4为本发明实施例四提供的控制器的结构示意图, 如图 4所示, 该 控制器在图 3所示实施例的基础上, 还包括:  4 is a schematic structural diagram of a controller according to Embodiment 4 of the present invention. As shown in FIG. 4, the controller further includes:
第二确定模块 21, 用于若所述 QoS信息中不包含 QoS参数, 则确定 所述每跳路径的类型为一般类型;  The second determining module 21 is configured to: if the QoS information does not include the QoS parameter, determine that the type of the hop path is a general type;
相应的, 所述处理模块 12, 用于:  Correspondingly, the processing module 12 is configured to:
根据公式 (1) 确定每跳路径的评价函数值:  Determine the evaluation function value for each hop path according to formula (1):
C = a-e~lbw + β-Μ2 +Α+ζ.Μη ( 1 ) 其中, Μ^Μ„为所述状态信息中包括的 η 个路径状态参数的取值, n^l, 其中, 取 M =bw, 为路径的可用带宽, λ、 《、 和 为权重系 数。 C = ae~ lbw + β-Μ 2 +Α+ζ.Μ η ( 1 ) where Μ^Μ„ is the value of the n path state parameters included in the state information, n^l, where M = bw, which is the available bandwidth of the path, λ, ", and is the weight coefficient.
进一歩地, 所述第二确定模块 21, 还用于:  Further, the second determining module 21 is further configured to:
若所述 QoS信息中包含至少一个 QoS参数, 则确定所述每跳路径的 类型为特定类型;  If the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type;
相应的, 所述控制器, 还包括:  Correspondingly, the controller further includes:
第三确定模块 22, 用于根据所述每个 QoS参数的优先级, 确定所述 数据包的 QoS特征值;  a third determining module 22, configured to determine a QoS feature value of the data packet according to a priority of each of the QoS parameters;
相应的, 所述处理模块 12, 用于:  Correspondingly, the processing module 12 is configured to:
根据公式 (2) 确定所述每跳路径的评价函数值:  Determine the evaluation function value of the per-hop path according to formula (2):
C = -log(-^--M1) + ^-log(-^^-M2)+A + τ■ log (-^≡^■ M m) + A +ζ.Μη (2) 其中, Cm^为所述数据包的 QoS特征值, Cm ~ Cmm分别为所述 QoS 信息中包含的 m个 QoS参数的取值, , 广 „为分别与 Cm Cmm 对应的路径状态参数的取值。 C = -log(-^--M 1 ) + ^-log(-^^-M 2 )+A + τ■ log (-^≡^■ M m ) + A +ζ.Μ η (2) where , C m ^ is the QoS characteristic value of the data packet, C m ~ C mm is the value of the m QoS parameters included in the QoS information, respectively, and the path state corresponding to C m C mm respectively The value of the parameter.
进一歩地, 所述控制器还包括:  Further, the controller further includes:
第四确定模块 23, 用于根据公式 (3) 确定所述每跳路径的惩罚函数 值:
Figure imgf000019_0001
The fourth determining module 23 is configured to determine a penalty function value of the hop path according to formula (3):
Figure imgf000019_0001
其中, M为从 ^ „的 《个路径状态参数中预先规定的一个作为衡量 路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径状态 衡量阈值;  Where M is a value of a path state measurement parameter pre-specified from the path state parameter of ^ „ as a measure path state, ^ is a preset penalty threshold, and ί/ is a path state measurement threshold;
相应的, 所述处理模块 12, 用于:  Correspondingly, the processing module 12 is configured to:
根据公式 (4) 确定所述每跳路径的评价函数值。  The evaluation function value of the per-hop path is determined according to formula (4).
(l + w pf(u)) - -Abw +β-Μ2 +Λ +ζ (l + w pf(u)) - - Abw +β-Μ 2 +Λ +ζ
(1 + w (Μ)) X (« · · ) + · l (4)
Figure imgf000019_0002
(1 + w ( Μ )) X (« · · ) + · l (4)
Figure imgf000019_0002
C,  C,
Λ + τ - log (- ■M +A+ .M  Λ + τ - log (- ■ M +A+ .M
C,  C,
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据
Figure imgf000019_0003
+ M„|确定, 对于特定类型的路径, 根据 rj \ - log (- ■Μ^ + β- log (-^ - - 2)+Λ +Τ- log (-^ ^■ M +Λ + ζ.Μη |确定, η
Where W is the penalty factor, for the general type of path, according to
Figure imgf000019_0003
+ M„|OK, for a particular type of path, according to rj \ - log (- ■Μ^ + β- log (-^ - - 2 )+Λ +Τ- log (-^ ^■ M +Λ + ζ. Μ η | OK, η
C, C, C  C, C, C
为权重系数, ι.ι为取模运算。 For the weighting factor, ι.ι is the modulo operation.
进一歩地, 所述控制器还包括:  Further, the controller further includes:
第五确定模块 24, 用于根据所述每跳路径的状态信息, 确定所述网 络中的拥塞区域;  The fifth determining module 24 is configured to determine, according to the state information of the hop path, a congestion area in the network;
判断模块 25, 用于判断所述每跳路径中是否存在位于所述拥塞区域 中的路径;  The determining module 25 is configured to determine whether a path located in the congestion area exists in the path per hop;
若存在, 则所述处理模块 12用于: 根据公式 (5) 确定位于所述拥塞 区域中的每跳路径的评价函数值:  If present, the processing module 12 is configured to: determine an evaluation function value for each hop path located in the congestion region according to formula (5):
(1 +
Figure imgf000019_0004
(1 +
Figure imgf000019_0004
C,  C,
Α + τ - log (- ■Mm)+A +ζ.Μη)] Α + τ - log (- ■M m )+A +ζ.Μ η )]
C  C
若不存在, 则所述处理模块 12用于: 根据所述公式 (4) 确定所述每 跳路径的评价函数值。 具体地, 所述第五确定模块 24, 具体用于: If not, the processing module 12 is configured to: determine an evaluation function value of the hop path according to the formula (4). Specifically, the fifth determining module 24 is specifically configured to:
确定所述路径状态衡量参数的取值高于所述路径状态衡量阈值, 且 路径距离小于预设距离阈值的各跳路径所组成的区域为拥塞区域。  The area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
具体地, 所述接收模块 11, 具体用于:  Specifically, the receiving module 11 is specifically configured to:
接收多个 openflow 交换机转发的多个数据包, 所述多个数据包中的 每个数据包的所述特征信息中还包括数据包的优先级信息;  Receiving a plurality of data packets forwarded by the plurality of openflow switches, wherein the feature information of each of the plurality of data packets further includes priority information of the data packets;
所述控制器, 还包括:  The controller further includes:
汇聚模块 26, 用于根据预设规则对所述每个数据包的优先级信息进 行汇聚, 得到多个优先级等级, 所述多个优先级等级的数量小于或等于 所述多个优先级信息的数量;  The aggregation module 26 is configured to aggregate the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the multiple priority information. quantity;
相应的, 所述处理模块 12, 用于根据所述优先级等级由高到低的顺 序依次处理所述多个数据包, 并且并行确定同一优先级等级的各数据包 的传输路径。  Correspondingly, the processing module 12 is configured to sequentially process the plurality of data packets according to the priority level from high to low, and determine the transmission paths of the data packets of the same priority level in parallel.
本实施例的控制器可以用于执行图 2所示方法实施例的技术方案, 其 实现原理和技术效果类似, 此处不再赘述。  The controller of this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 2, and the implementation principle and technical effects are similar, and details are not described herein again.
图 5为本发明实施例五提供的处理设备的结构示意图, 该处理设备包 括:  FIG. 5 is a schematic structural diagram of a processing device according to Embodiment 5 of the present invention, where the processing device includes:
接收器 31、 存储器 32以及与所述存储器 32连接的处理器 33, 其中, 所述接收器 31用于接收 openflow交换机转发的数据包, 并获取所述数据 包的特征信息, 所述特征信息包括目的 IP地址和服务质量 QoS信息; 所述存储器 32用于存储一组程序代码, 所述处理器 33用于调用所述 存储器 32 中存储的程序代码, 以执行如图 1 所示网络拥塞控制方法中 的: 根据所述 QoS 信息和预先获得的覆盖网络中每跳路径的状态信息确 定所述每跳路径的评价函数值, 所述每跳路径描述的是所述网络中相邻 openflow 交换机间的连接路径; 确定传输所述数据包的路径为达到所述 目的 IP地址的评价函数值之和最小的各跳路径。  a receiver 31, a memory 32, and a processor 33 connected to the memory 32, wherein the receiver 31 is configured to receive a data packet forwarded by the openflow switch, and acquire feature information of the data packet, where the feature information includes Destination IP address and quality of service QoS information; the memory 32 is configured to store a set of program codes, and the processor 33 is configured to invoke program code stored in the memory 32 to perform a network congestion control method as shown in FIG. Determining, according to the QoS information and the pre-obtained state information of each hop path in the overlay network, the evaluation function value of the hop path, the hop path describing the interval between adjacent openflow switches in the network a connection path; determining a path for transmitting the data packet to be a hop path having a smallest sum of evaluation function values of the destination IP address.
进一歩地, 所述接收器 31 还用于接收 openflow 交换机转发的数据 包, 并从所述数据包中提取所述特征信息; 或者,接收 openflow交换机转 发的数据包, 从所述数据包中提取所述目的 IP地址和源 IP地址; 根据所 述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所述源 IP地址 指 /, 了所述数据包的发送用户。 Further, the receiver 31 is further configured to receive a data packet forwarded by the openflow switch, and extract the feature information from the data packet; or receive a data packet forwarded by the openflow switch, and extract the data packet from the data packet. The destination IP address and the source IP address are obtained according to the source IP address, and the source IP address is obtained from a locally stored user requirement. Means /, the sending user of the data packet.
进一歩地, 所述处理器 33 还用于若所述 QoS信息中不包含 QoS参 数, 则确定所述每跳路径的类型为一般类型; 根据公式 (1) 确定所述每 跳路径的评价函数值:  Further, the processor 33 is further configured to: if the QoS parameter does not include a QoS parameter, determine that the type of the hop path is a general type; and determine an evaluation function of the hop path according to formula (1). Value:
C = a- -β-Μ2 +Λ + ζ.Μ (1) 其中, Μ^Μ„为任一跳路径的状态信息中包括的《个路径状态参数的 取值, η 1, 其中, 取 M= bw, 为该任一跳路径的可用带宽, λ、 《、 β 和 为权重系数。 C = a- -β-Μ 2 +Λ + ζ.Μ (1) where Μ^Μ„ is the value of the path state parameter included in the state information of any hop path, η 1, where M = bw, which is the available bandwidth of the hop path, λ, ", β and is the weight coefficient.
进一歩地, 所述处理器 33 还用于若所述 QoS 信息中包含至少一个 QoS 参数, 则确定所述每跳路径的类型为特定类型; 根据所述每个 QoS 参数的优先级, 确定所述数据包的 QoS特征值; 根据公式 (2) 确定所述 每跳路径的评价函数值:  Further, the processor 33 is further configured to: if the QoS information includes at least one QoS parameter, determine that the type of each hop path is a specific type; according to the priority of each QoS parameter, determine Determining the QoS characteristic value of the data packet; determining the evaluation function value of the per-hop path according to formula (2):
C = - log +ζ.Μη (2)
Figure imgf000021_0001
C = - log +ζ.Μ η (2)
Figure imgf000021_0001
其中, Cm^为所述数据包的 QoS特征值, Cm^ Cmm分别为所述 QoS 信息中包含的 m个 QoS参数的取值, , ^ „为分别与 Cm】~ Cmm 对应的路径状态参数的取值。 Where C m ^ is the QoS characteristic value of the data packet, and C m ^ C mm is the value of the m QoS parameters included in the QoS information, respectively, ^ „ corresponds to C m 】~ C mm respectively The value of the path state parameter.
进一歩地, 所述处理器 33还用于根据公式 (3) 确定所述每跳路径的 惩罚函数值:
Figure imgf000021_0002
Further, the processor 33 is further configured to determine a penalty function value of the hop path according to formula (3):
Figure imgf000021_0002
其中, M为从所述 M Mj 《个路径状态参数中预先规定的一个作为 衡量路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径 状态 评价函数值。  Where M is a value of a path state measurement parameter pre-specified from the path state parameter of the M Mj as a measure path state, where ^ is a preset penalty threshold, and ί/ is a path state evaluation function value.
c (4)
Figure imgf000021_0003
c (4)
Figure imgf000021_0003
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据 η-\α-β-λ"κ+β-Μ2+γ-Μ3+Α + Μ„ |确定, 对于特定类型的路径, 根据 C, C. Where W is a penalty factor, for a general type of path, determined according to η-\α- β - λ " κ +β-Μ 2 +γ-Μ 3 +Α + Μ„ |, for a particular type of path, according to C, C.
η \ α - log( ~ Μ^ + β - log (-^ - - 2) +Λ + τ - log (-^ -■ M +Λ + ζ.Μη |确定, η c C c. η \ α - log( ~ Μ^ + β - log (-^ - - 2 ) +Λ + τ - log (-^ -■ M +Λ + ζ.Μ η |determined, η c C c.
为权重系数, 1.1为取模运算。 For the weight coefficient, 1.1 is the modulo operation.
进一歩地, 所述处理器 33 还用于根据所述每跳路径的状态信息, 确 定所述网络中的拥塞区域; 判断所述每跳路径中是否存在位于所述拥塞 区域中的路径; 若存在, 则根据公式 (5 ) 确定位于所述拥塞区域中的每 跳路径的评价函数值:  Further, the processor 33 is further configured to determine, according to the state information of the hop path, a congestion area in the network, and determine whether a path located in the congestion area exists in the hop path; If present, the evaluation function value of each hop path located in the congestion area is determined according to formula (5):
(1 + (1 +
C = (1 + ( 5 )
Figure imgf000022_0001
C = (1 + ( 5 )
Figure imgf000022_0001
C  C
Λ + T - log (- ■M +A + ζ.Μη)] Λ + T - log (- ■ M + A + ζ.Μ η )]
C 若不存在, 则根据所述公式 (4 ) 确定所述每跳路径的评价函数值。 进一歩地, 所述处理器 33 还用于确定所述路径状态衡量参数的取值 高于所述路径状态衡量阈值, 且路径距离小于预设距离阈值的各跳路径 所组成的区域为拥塞区域。  If it does not exist, the evaluation function value of the hop path is determined according to the formula (4). Further, the processor 33 is further configured to determine that the value of the path state measurement parameter is higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area. .
进一歩地, 所述接收器 31还用于接收多个 openflow交换机转发的多 个数据包, 所述多个数据包中的每个数据包的所述特征信息中还包括数 据包的优先级信息;  Further, the receiver 31 is further configured to receive multiple data packets forwarded by multiple openflow switches, and the feature information of each of the multiple data packets further includes priority information of the data packet. ;
相应的, 所述处理器 33 还用于根据预设规则对所述每个数据包的优 先级信息进行汇聚, 得到多个优先级等级, 所述多个优先级等级的数量 小于或等于所述多个优先级信息的数量; 根据所述优先级等级由高到低 的顺序依次处理所述多个数据包, 并且并行确定同一优先级等级的各数 据包的传输路径。 本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分 歩骤可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计 算机可读取存储介质中, 该程序在执行时, 执行包括上述方法实施例的 歩骤; 而前述的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以 存储程序代码的介质。  Correspondingly, the processor 33 is further configured to aggregate the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the a plurality of pieces of priority information; processing the plurality of data packets in order from highest to lowest according to the priority level, and determining transmission paths of the respective data packets of the same priority level in parallel. A person skilled in the art can understand that all or part of the steps of implementing the above method embodiments may be implemented by hardware related to program instructions, and the foregoing program may be stored in a computer readable storage medium, when executed, The foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
最后应说明的是: 以上各实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述各实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修 改, 或者对其中部分或者全部技术特征进行等同替换; 而这些修改或者替 换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。 Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention, and not The invention is described in detail with reference to the foregoing embodiments, and those skilled in the art should understand that the technical solutions described in the foregoing embodiments may be modified, or some or all of the technical features may be modified. The equivalents are made without departing from the scope of the technical solutions of the embodiments of the present invention.

Claims

权 利 要 求 书 Claims
1、 一种网络拥塞控制方法, 其特征在于, 包括: A network congestion control method, comprising:
接收 openflow 交换机转发的数据包, 并获取所述数据包的特征信 息, 所述特征信息包括目的 IP地址和服务质量 QoS信息;  Receiving a data packet forwarded by the openflow switch, and acquiring feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information;
根据所述 QoS 信息和预先获得的覆盖网络中每跳路径的状态信息确 定所述每跳路径的评价函数值, 所述每跳路径描述的是所述网络中相邻 openflow交换机间的连接路径;  Determining an evaluation function value of the hop path according to the QoS information and status information of each hop path in the overlay network, where the hop path describes a connection path between adjacent openflow switches in the network;
确定传输所述数据包的路径为达到所述目的 IP 地址的评价函数值之 和最小的各跳路径。  It is determined that the path for transmitting the data packet is a hop path having the smallest sum of evaluation function values of the destination IP address.
2、 根据权利要求 1所述的方法, 其特征在于, 所述接收 openflow交 换机转发的数据包, 获取所述数据包的特征信息, 所述特征信息包括目的 IP地址和服务质量 QoS信息, 包括:  The method according to claim 1, wherein the receiving the data packet forwarded by the openflow switch, and acquiring the feature information of the data packet, where the feature information includes the destination IP address and the quality of service QoS information, including:
接收 openflow 交换机转发的数据包, 并从所述数据包中提取所述特 征信息;  Receiving a data packet forwarded by the openflow switch, and extracting the feature information from the data packet;
或者,  Or,
接收 openflow 交换机转发的数据包, 从所述数据包中提取所述目的 IP地址和源 IP地址;  Receiving a data packet forwarded by the openflow switch, extracting the destination IP address and the source IP address from the data packet;
根据所述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所 述源 IP地址指示了所述数据包的发送用户。  And obtaining the QoS information from a locally stored user requirement according to the source IP address, where the source IP address indicates a sending user of the data packet.
3、 根据权利要求 2所述的方法, 其特征在于, 所述根据所述 QoS信 息和预先获得的网络中每跳路径的状态信息确定所述每跳路径的评价函 数值之前, 还包括:  The method according to claim 2, wherein the determining, before the determining the value of the evaluation function of each hop path according to the QoS information and the state information of the hop path in the network obtained in advance, the method further includes:
若所述 QoS信息中不包含 QoS参数, 则确定所述每跳路径的类型为 一般类型;  If the QoS information is not included in the QoS information, determining that the type of the hop path is a general type;
相应的, 所述根据所述 QoS 信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值, 包括:  Correspondingly, determining, according to the QoS information and status information of each hop path in the network, the evaluation function value of the hop path, including:
根据公式 (1 ) 确定所述每跳路径的评价函数值:  The evaluation function value of the per-hop path is determined according to formula (1):
C = a - e-A bw + β - Μ2 +Α + ζ.Μη ( 1 ) 其中, Μ^Μ„为任一跳路径的状态信息中包括的《个路径状态参数的 取值, η 1, 其中, 取 M = bw, 为该任一跳路径的可用带宽, λ、 《、 β 和 为权重系数。 C = a - e- A bw + β - Μ 2 +Α + ζ.Μ η ( 1 ) where Μ^Μ„ is the value of the path state parameter included in the state information of any hop path, η 1, where M = bw, is the available bandwidth of the hop path, λ, ", β And is the weight coefficient.
4、 根据权利要求 2所述的方法, 其特征在于, 所述根据所述 QoS信 息和预先获得的网络中每跳路径的状态信息确定所述每跳路径的评价函 数值之前, 还包括:  The method according to claim 2, wherein the determining, before determining the value of the evaluation function of each hop path according to the QoS information and the state information of each hop path in the network obtained in advance, the method further includes:
若所述 QoS信息中包含至少一个 QoS参数, 则确定所述每跳路径的 类型为特定类型;  If the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type;
根据所述每个 QoS参数的优先级, 确定所述数据包的 QoS特征值; 相应的, 所述根据所述 QoS 信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值, 包括:  Determining, according to the priority of each QoS parameter, a QoS feature value of the data packet; correspondingly, determining, according to the QoS information and status information of each hop path in the network obtained in advance, the path of each hop Evaluation function values, including:
根据公式 (2) 确定所述每跳路径的评价函数值:  Determine the evaluation function value of the per-hop path according to formula (2):
C, C c  C, C c
C = - log (- MJ + ^-logC M2)+A -log(^≡^-Mm)+A +ζ.Μη (2) c c c C = - log (- MJ + ^-logC M 2 )+A -log(^≡^-M m )+A +ζ.Μ η (2) ccc
其中, Cm^为所述数据包的 QoS特征值, Cm^ Cmm分别为所述 QoS 信息中包含的 m个 QoS参数的取值, , ^ „为分别与 Cm ~ Cmm 对应的路径状态参数的取值。 Where C m ^ is the QoS characteristic value of the data packet, and C m ^ C mm is the value of the m QoS parameters included in the QoS information, respectively, ^ „ is corresponding to C m ~ C mm respectively The value of the path state parameter.
5、 根据权利要求 1〜4中任一项所述的方法, 其特征在于, 所述根据 所述 QoS 信息和预先获得的网络中每跳路径的状态信息确定所述每跳路 径的评价函数值之前, 还包括:  The method according to any one of claims 1 to 4, wherein the determining the evaluation function value of the hop path according to the QoS information and the state information of each hop path in the network obtained in advance Previously, it also included:
根据公式 (3) 确定所述每跳路径的惩罚函数值:
Figure imgf000025_0001
The penalty function value of the per-hop path is determined according to formula (3):
Figure imgf000025_0001
其中, M为从所述 M^MJ 《个路径状态参数中预先规定的一个作为 衡量路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径 状态衡量阈值;  Wherein, M is a value of a path state measurement parameter pre-specified from the path state parameter of the M^MJ as a measure path state, where ^ is a preset penalty threshold, and ί/ is a path state measurement threshold;
相应的, 所述根据所述 QoS 信息和预先获得的网络中每跳路径的状 态信息确定所述每跳路径的评价函数值, 包括:  Correspondingly, determining, according to the QoS information and status information of each hop path in the network, the evaluation function value of the hop path, including:
c (4)
Figure imgf000025_0002
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据
c (4)
Figure imgf000025_0002
Where W is the penalty factor, for the general type of path, according to
77.|c e-^+^M2+ M3+A + M„ |确定, 对于特定类型的路径, 根据 77.|c e -^+^M 2 + M 3 +A + M„ |determine, for a particular type of path, according to
C  C
η \α- log( ~ Μ^ + β- log(^^- - 2)+Λ +τ- log(^^■ M +Λ + ζ.Μη |确定, η η \α- log( ~ Μ^ + β- log(^^- - 2 )+Λ +τ- log(^^■ M +Λ + ζ.Μ η |determined, η
C C C  C C C
6、 根据权利要求 5所述的方法, 其特征在于, 所述根据所述 QoS信 息和预先获得的网络中每跳路径的状态信息确定所述每跳路径的评价函 数值之前, 还包括: The method according to claim 5, wherein the determining, before the determining the value of the evaluation function of the hop path according to the QoS information and the state information of the hop path in the network obtained in advance, the method further includes:
根据所述每跳路径的状态信息, 确定所述网络中的拥塞区域; 判断所述每跳路径中是否存在位于所述拥塞区域中的路径;  Determining, according to the state information of the hop path, a congestion area in the network; determining whether a path located in the congestion area exists in the hop path;
若存在, 则根据公式 (5) 确定位于所述拥塞区域中的每跳路径的评 价函  If yes, determine the evaluation function of each hop path located in the congestion area according to formula (5)
C (5)
Figure imgf000026_0001
C (5)
Figure imgf000026_0001
若不存在, 则根据所述公式 (4) 确定所述每跳路径的评价函数值。 If not, the evaluation function value of the hop path is determined according to the formula (4).
7、 根据权利要求 6 所述的方法, 其特征在于, 所述根据所述每跳路 径的状态信息, 确定所述网络中的拥塞区域, 包括: The method according to claim 6, wherein the determining the congestion area in the network according to the status information of each hop path includes:
确定所述路径状态衡量参数的取值高于所述路径状态衡量阈值, 且 路径距离小于预设距离阈值的各跳路径所组成的区域为拥塞区域。  The area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
8、 根据权利要求 1〜7中任一项所述的方法, 其特征在于, 所述接收 openflow交换机转发的数据包, 并提取所述数据包的特征信息, 包括: 接收多个 openflow 交换机转发的多个数据包, 所述多个数据包中的 每个数据包的所述特征信息中还包括数据包的优先级信息;  The method according to any one of claims 1 to 7, wherein the receiving the data packet forwarded by the openflow switch and extracting the feature information of the data packet comprises: receiving a plurality of openflow switch forwarding a plurality of data packets, where the feature information of each of the plurality of data packets further includes priority information of the data packet;
所述接收 openflow交换机转发的数据包之后, 还包括:  After receiving the data packet forwarded by the openflow switch, the method further includes:
根据预设规则对所述每个数据包的优先级信息进行汇聚, 得到多个 优先级等级, 所述多个优先级等级的数量小于或等于所述多个优先级信 息的数量;  Aggregating the priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the number of the multiple priority information;
根据所述优先级等级由高到低的顺序依次处理所述多个数据包, 并 且并行确定同一优先级等级的各数据包的传输路径。 Processing the plurality of data packets in order according to the priority level from high to low, and And the transmission paths of the data packets of the same priority level are determined in parallel.
9、 一种控制器, 其特征在于, 包括:  9. A controller, comprising:
接收模块, 用于接收 openflow 交换机转发的数据包, 并获取所述数 据包的特征信息, 所述特征信息包括目的 IP地址和服务质量 QoS信息; 处理模块, 用于根据所述 QoS 信息和预先获得的覆盖网络中每跳路 径的状态信息确定所述每跳路径的评价函数值, 所述每跳路径描述的是 所述网络中相邻 openflow交换机间的连接路径;  a receiving module, configured to receive a data packet forwarded by the openflow switch, and obtain feature information of the data packet, where the feature information includes a destination IP address and quality of service QoS information, and a processing module, configured to obtain, according to the QoS information, a pre-acquisition State information of each hop path in the overlay network determines an evaluation function value of the hop path, and the hop path describes a connection path between adjacent openflow switches in the network;
第一确定模块, 用于确定传输所述数据包的路径为达到所述目的 IP 地址的评价函数值之和最小的各跳路径。  And a first determining module, configured to determine, by using a path of the data packet, a hop path that is the smallest sum of the evaluation function values of the destination IP address.
10、 根据权利要求 9所述的控制器, 其特征在于, 所述接收模块, 用 于:  The controller according to claim 9, wherein the receiving module is configured to:
接收 openflow 交换机转发的数据包, 并从所述数据包中提取所述特 征信息;  Receiving a data packet forwarded by the openflow switch, and extracting the feature information from the data packet;
或者,  Or,
接收 openflow 交换机转发的数据包, 从所述数据包中提取所述目的 Receiving a packet forwarded by an openflow switch, extracting the destination from the data packet
IP地址和源 IP地址; IP address and source IP address;
根据所述源 IP地址从本地存储的用户需求中获取所述 QoS信息, 所 述源 IP地址指示了所述数据包的发送用户。  And obtaining the QoS information from a locally stored user requirement according to the source IP address, where the source IP address indicates a sending user of the data packet.
1 1、 根据权利要求 10所述的控制器, 其特征在于, 还包括:  The controller according to claim 10, further comprising:
第二确定模块, 用于若所述 QoS信息中不包含 QoS参数, 则确定所 述每跳路径的类型为一般类型;  a second determining module, configured to determine that the type of each hop path is a general type if the QoS information is not included in the QoS information;
相应的, 所述处理模块, 用于:  Correspondingly, the processing module is configured to:
根据公式 (1 ) 确定每跳路径的评价函数值:  Determine the evaluation function value of each hop path according to formula (1):
C = a - e~l bw + β - Μ2 +Α + ζ.Μη ( 1 ) 其中, Μ^Μ„为任一跳路径的状态信息中包括的《个路径状态参数的 取值, η 1, 其中, 取 bw, 为该任一跳路径的可用带宽, λ、 《、 β 和 为权重系数。 C = a - e~ l bw + β - Μ 2 +Α + ζ.Μ η ( 1 ) where Μ^Μ„ is the value of the path state parameter included in the state information of any hop path, η 1, where bw is taken as the available bandwidth of the hop path, λ, ", β and are the weight coefficients.
12、 根据权利要求 10 所述的控制器, 其特征在于, 所述第二确定模 块, 还用于:  The controller according to claim 10, wherein the second determining module is further configured to:
若所述 QoS信息中包含至少一个 QoS参数, 则确定所述每跳路径的 类型为特定类型; 相应的, 所述控制器, 还包括: If the QoS information includes at least one QoS parameter, determining that the type of the hop path is a specific type; Correspondingly, the controller further includes:
第三确定模块, 用于根据所述每个 QoS 参数的优先级, 确定所述数 据包的 QoS特征值;  a third determining module, configured to determine a QoS feature value of the data packet according to a priority of each of the QoS parameters;
相应的, 所述处理模块, 用于:  Correspondingly, the processing module is configured to:
根据公式 (2) 确定所述每跳路径的评价函数值:  Determine the evaluation function value of the per-hop path according to formula (2):
C = - log +ζ.Μη (2)
Figure imgf000028_0001
C = - log +ζ.Μ η (2)
Figure imgf000028_0001
其中, Cm^为所述数据包的 QoS特征值, 广 Cmm分别为所述 QoS 信息中包含的 m个 QoS参数的取值, , ^ „为分别与 Cm ~ Cmm 对应的路径状态参数的取值。 Where C m ^ is the QoS characteristic value of the data packet, and the wide C mm is the value of the m QoS parameters included in the QoS information, respectively, ^ „ is the path state corresponding to C m ~ C mm respectively The value of the parameter.
13、 根据权利要求 9〜12中任一项所述的控制器, 其特征在于, 还包 括:  The controller according to any one of claims 9 to 12, further comprising:
第四确定模块, 用于根据公式( 3 )确定所述每跳路径的惩罚函数值:
Figure imgf000028_0002
a fourth determining module, configured to determine a penalty function value of the hop path according to formula (3):
Figure imgf000028_0002
其中, M为从所述 M^MJ 《个路径状态参数中预先规定的一个作为 衡量路径状态的路径状态衡量参数的取值, ^为预设惩罚阈值, ί/为路径 状态衡量阈值;  Wherein, M is a value of a path state measurement parameter pre-specified from the path state parameter of the M^MJ as a measure path state, where ^ is a preset penalty threshold, and ί/ is a path state measurement threshold;
相应的, 所述处理模块, 用于:  Correspondingly, the processing module is configured to:
Figure imgf000028_0003
Figure imgf000028_0003
其 中 , W 为 惩 罚 因 子 , 对于一般类型 的路径 , 根据 α -Μκ+β-Μ2+γ-Μ3+Α + Μ„ |确定, 对于特定类型的路径 根据 Where W is a penalty factor, for a general type of path, determined according to α - Μκ +β-Μ 2 +γ-Μ 3 +Α + Μ„ |, for a particular type of path according to
. Mm) +Λ + ζ.Μη I确定, η
Figure imgf000028_0004
. M m ) +Λ + ζ.Μ η I determines, η
Figure imgf000028_0004
为权重系数, ι.ι为取模运算。 For the weighting factor, ι.ι is the modulo operation.
14、 根据权利要求 13所述的控制器, 其特征在于, 还包括:  The controller according to claim 13, further comprising:
第五确定模块, 用于根据所述每跳路径的状态信息, 确定所述网络 中的拥塞区域; a fifth determining module, configured to determine the network according to status information of each hop path Congested area
判断模块, 用于判断所述每跳路径中是否存在位于所述拥塞区域中 的路径;  a determining module, configured to determine whether a path located in the congestion area exists in the path per hop;
若存在, 则所述处理模块用于: 根据公式 (5 ) 确定位于所述拥塞区 域中  If yes, the processing module is configured to: determine, located in the congestion area according to formula (5)
C ( 5 )
Figure imgf000029_0001
C ( 5 )
Figure imgf000029_0001
若不存在, 则所述处理模块用于: 根据所述公式 (4 ) 确定所述每跳 路径的评价函数值。  If not, the processing module is configured to: determine an evaluation function value of the hop path according to the formula (4).
15、 根据权利要求 14 所述的控制器, 其特征在于, 所述第五确定模 块, 具体用于:  The controller according to claim 14, wherein the fifth determining module is specifically configured to:
确定所述路径状态衡量参数的取值高于所述路径状态衡量阈值, 且 路径距离小于预设距离阈值的各跳路径所组成的区域为拥塞区域。  The area of the path state measurement parameter is determined to be higher than the path state measurement threshold, and the area formed by each hop path whose path distance is less than the preset distance threshold is a congestion area.
16、 根据权利要求 9〜15中任一项所述的控制器, 其特征在于, 所述 接收模块, 具体用于:  The controller according to any one of claims 9 to 15, wherein the receiving module is specifically configured to:
接收多个 openflow 交换机转发的多个数据包, 所述多个数据包中的 每个数据包的所述特征信息中还包括数据包的优先级信息;  Receiving a plurality of data packets forwarded by the plurality of openflow switches, wherein the feature information of each of the plurality of data packets further includes priority information of the data packets;
所述控制器, 还包括:  The controller further includes:
汇聚模块, 用于根据预设规则对所述每个数据包的优先级信息进行 汇聚, 得到多个优先级等级, 所述多个优先级等级的数量小于或等于所 述多个优先级信息的数量;  An aggregation module, configured to aggregate priority information of each data packet according to a preset rule, to obtain multiple priority levels, where the number of the multiple priority levels is less than or equal to the multiple priority information Quantity
相应的, 所述处理模块, 用于根据所述优先级等级由高到低的顺序 依次处理所述多个数据包, 并且并行确定同一优先级等级的各数据包的 传输路径。  Correspondingly, the processing module is configured to sequentially process the plurality of data packets according to the priority level from high to low, and determine the transmission paths of the data packets of the same priority level in parallel.
17、 一种控制器, 其特征在于, 包括:  17. A controller, comprising:
接收器、 存储器以及与所述存储器连接的处理器, 其中, 所述存储器 用于存储一组程序代码, 所述处理器用于调用所述存储器中存储的程序 代码, 执行权利要求 1~8中任一项所述的方法。  a receiver, a memory, and a processor coupled to the memory, wherein the memory is configured to store a set of program codes, the processor is configured to invoke program code stored in the memory, and perform any of claims 1-8 One of the methods described.
PCT/CN2014/076985 2014-05-07 2014-05-07 Network congestion control method and controller WO2015168888A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201480038039.0A CN105393597B (en) 2014-05-07 2014-05-07 Method for controlling network congestion and controller
PCT/CN2014/076985 WO2015168888A1 (en) 2014-05-07 2014-05-07 Network congestion control method and controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/076985 WO2015168888A1 (en) 2014-05-07 2014-05-07 Network congestion control method and controller

Publications (1)

Publication Number Publication Date
WO2015168888A1 true WO2015168888A1 (en) 2015-11-12

Family

ID=54391976

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/076985 WO2015168888A1 (en) 2014-05-07 2014-05-07 Network congestion control method and controller

Country Status (2)

Country Link
CN (1) CN105393597B (en)
WO (1) WO2015168888A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021000694A1 (en) * 2019-06-29 2021-01-07 华为技术有限公司 Method for deploying services and scheduling apparatus

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059941B (en) * 2016-07-14 2018-12-18 电子科技大学 A kind of backbone network traffic scheduling method for eliminating link congestion
CN110866599A (en) * 2019-11-08 2020-03-06 芯盟科技有限公司 Chip and method for establishing data path in chip
CN111865795B (en) * 2020-06-10 2022-11-18 新华三技术有限公司 Control method and device
CN114650296B (en) * 2020-12-18 2023-03-24 中国科学院声学研究所 Information center network copy selection method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119308A (en) * 2007-08-21 2008-02-06 北京航空航天大学 Routing device and method of wireless mobile self-organizing network of dynamic assurance service quality
CN101478802A (en) * 2009-01-21 2009-07-08 东北大学 Self-organizing QoS routing method based on ant colony algorithm
US20110261688A1 (en) * 2010-04-27 2011-10-27 Puneet Sharma Priority Queue Level Optimization for a Network Flow
CN103326946A (en) * 2013-07-02 2013-09-25 中国(南京)未来网络产业创新中心 SVC streaming media transmission optimization method based on OpenFlow
CN103346922A (en) * 2013-07-26 2013-10-09 电子科技大学 Controller for determining network state based on SDN (Software Defined Networking) and determination method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8503307B2 (en) * 2010-05-10 2013-08-06 Hewlett-Packard Development Company, L.P. Distributing decision making in a centralized flow routing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119308A (en) * 2007-08-21 2008-02-06 北京航空航天大学 Routing device and method of wireless mobile self-organizing network of dynamic assurance service quality
CN101478802A (en) * 2009-01-21 2009-07-08 东北大学 Self-organizing QoS routing method based on ant colony algorithm
US20110261688A1 (en) * 2010-04-27 2011-10-27 Puneet Sharma Priority Queue Level Optimization for a Network Flow
CN103326946A (en) * 2013-07-02 2013-09-25 中国(南京)未来网络产业创新中心 SVC streaming media transmission optimization method based on OpenFlow
CN103346922A (en) * 2013-07-26 2013-10-09 电子科技大学 Controller for determining network state based on SDN (Software Defined Networking) and determination method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021000694A1 (en) * 2019-06-29 2021-01-07 华为技术有限公司 Method for deploying services and scheduling apparatus
US11838389B2 (en) 2019-06-29 2023-12-05 Huawei Cloud Computing Technoloiges Co., Ltd. Service deployment method and scheduling apparatus

Also Published As

Publication number Publication date
CN105393597A (en) 2016-03-09
CN105393597B (en) 2019-06-28

Similar Documents

Publication Publication Date Title
US10305769B2 (en) Method and apparatus for augmenting TWAMP
US8750121B2 (en) Addressing the large flow problem for equal cost multi-path in the datacenter
JP5985483B2 (en) Automated traffic engineering for multiprotocol label switching (MPLS) using links as feedback to tie-breaking mechanisms
US8503310B2 (en) Technique for policy conflict resolution using priority with variance
JP5830539B2 (en) Automated traffic engineering for 802.1AQ based on using link utilization as feedback to tie breaking mechanism
US11522786B2 (en) Packet forwarding path determining method, device, and system
JP2020502948A (en) Packet transmission system and method
WO2015043327A1 (en) Routing method, device and system
WO2015168888A1 (en) Network congestion control method and controller
Felix et al. Redundant packet scheduling by uncorrelated paths in heterogeneous wireless networks
Cheng et al. Application-aware routing scheme for sdn-based cloud datacenters
CN107231318B (en) Method, equipment and device for dynamic switching control based on real-time network performance
Zinner et al. Using concurrent multipath transmission for transport virtualization: analyzing path selection
CN111327505B (en) Tunnel-based communication method and communication device
Huang et al. A dynamic QoS management system with flow classification platform for software-defined networks
WO2014000467A1 (en) Method for adjusting bandwidth in network virtualization system
US20130201829A1 (en) Method for call admission control in mpls networks
Tan et al. Flow-based NDN architecture
Nakayama et al. Path selection algorithm for shortest path bridging in access networks
Nishimuta et al. Adaptive server and path switching for content delivery networks
Hussain et al. A QoS-aware multipath routing protocol for WiFi-based long distance mesh networks
Nakayama Rate-based path selection for shortest path bridging in access networks
TWI757887B (en) Method, network controller, and computer program product for facilitating multipath transmission of a data stream from a sender to a receiver
Boanea et al. Performance evaluation of a situation aware multipath routing solution
WO2023144589A1 (en) Quality of experience directed network resource handling

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480038039.0

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14891443

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14891443

Country of ref document: EP

Kind code of ref document: A1