WO2017157064A1 - 令牌添加方法、装置及计算机存储介质 - Google Patents

令牌添加方法、装置及计算机存储介质 Download PDF

Info

Publication number
WO2017157064A1
WO2017157064A1 PCT/CN2016/110045 CN2016110045W WO2017157064A1 WO 2017157064 A1 WO2017157064 A1 WO 2017157064A1 CN 2016110045 W CN2016110045 W CN 2016110045W WO 2017157064 A1 WO2017157064 A1 WO 2017157064A1
Authority
WO
WIPO (PCT)
Prior art keywords
weight
queue
compression
queues
shaping
Prior art date
Application number
PCT/CN2016/110045
Other languages
English (en)
French (fr)
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 深圳市中兴微电子技术有限公司
Publication of WO2017157064A1 publication Critical patent/WO2017157064A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping

Definitions

  • the present invention relates to congestion control technologies in the field of communication technologies, and in particular, to a token addition method, apparatus, and computer storage medium.
  • IPTV interactive network television
  • VoIP Voice over Internet Protocol
  • video conferencing video conferencing
  • QoS quality of Service
  • the congestion management module is speed limit.
  • the object controlled by the shaping control component is a queue.
  • the queue stores the same type of data packet.
  • the shaping control component adds the token at the shaping rate configured by the user.
  • the queue with the token in the token bucket can schedule the packet to leave the device, and the queue scheduling packet will consume the token in the queue token bucket when leaving the device;
  • the existing integral control component is generally
  • a weighted allocation algorithm is used to allocate service opportunities to the queue, and a weighted allocation algorithm, such as Weighted Fair Queuing (WQ) or Weighted Round Robin (WRR), adds a certain number of tokens per service. The number of cards can be converted into bandwidth.
  • WQ Weighted Fair Queuing
  • WRR Weighted Round Robin
  • the number of tokens added by a single service is equal to the sum of weights of all queues/reference weight.
  • the reference weight of the device corresponds to the reference shaping value of the device, that is, the shaping rate configured by the user is converted into a weight value. Assigned to the queue, each queue gets the opportunity to add the token according to its own weight, weight Less chance opportunities queue to get tokens to add more weight to obtain a small queue of tokens.
  • the queue with the larger weight in the system will increase the sum of the weights of all the queues of the system, so that the number of tokens added by a single service is also larger, and the number of tokens obtained by the queue with a small weight is fixed for a period of time.
  • the queue with small weight can only obtain a small number of service opportunities, and each service obtains a relatively large number of tokens, so that the queue with small weights acquires tokens in a burst, however, the queue with small weight is in the system.
  • the buffer that can be occupied by internal energy is limited, and the capacity of the queue with small weight is relatively poor.
  • the traffic burst exceeds the capacity of the queue with small weight, the packet will be discarded. Will affect the quality of service of the business.
  • the embodiments of the present invention are to provide a token adding method, a device, and a computer storage medium, which can reduce traffic bursts of queues with small weights and improve service quality of services under the premise of ensuring accurate shaping rate of queues. .
  • the embodiment of the invention provides a token adding method, including:
  • the shaping weights of the queues satisfying the preset condition in each of the queues are compressed based on the shaping weights of the respective queues corresponding to the target ports, and the compression weights of the queues are determined;
  • the shaping weights of the queues satisfying the preset condition in each of the queues are compressed based on the shaping weights of the respective queues corresponding to the target port, and the compression weights of the queues are determined, including:
  • the shaping weight of the queue is used as the compression weight of the queue.
  • the method before the determining the target queue allocated to the service opportunity in each of the queues, the method further includes:
  • the determining, according to the compression weight of each of the queues, the service opportunities of each of the queues including:
  • the calculated ratio is determined as the service opportunity of the queue.
  • the determining, according to the reference weight, the compression weight of each of the queues, and the shaping weight of the target queue, the number of tokens added to the token bucket corresponding to the target queue including:
  • the shaping weight of the target queue is compressed according to the weight compression coefficient.
  • the ratio of the shaping weight of the target queue to the weight retention value is calculated, and then Calculating a product of the ratio and the minimum number of tokens added by the single service, and determining the calculated product value as the number of tokens to be added to the token bucket corresponding to the target queue; when determining the compression
  • the product of the weight compression coefficient and the minimum number of tokens added by the single service is calculated, and the calculated product value is determined to be in the token bucket corresponding to the target queue. The number of tokens added.
  • the determining the minimum number of tokens added by a single service based on the reference weight and the compression weight of each of the queues includes:
  • the calculated ratio is determined as the minimum number of tokens added for a single service.
  • An embodiment of the present invention further provides a token adding apparatus, including:
  • a determining module configured to compress, according to a shaping weight of each queue corresponding to the target port, a shaping weight of a queue that meets a preset condition in each of the queues, and determine a compression weight of each of the queues;
  • the determining module is further configured to determine a target queue allocated to the service opportunity in each of the queues, and determine, according to the reference weight, the compression weight of each of the queues, and the shaping weight of the target queue, the corresponding to the target queue The number of tokens added in the token bucket;
  • a distribution module configured to add, to the token bucket corresponding to the target queue, the number of added tokens determined by the determining module.
  • the determining module is specifically configured to determine whether the shaping weight of the queue is greater than a weight retention value
  • the shaping weight of the queue is used as the compression weight of the queue.
  • the determining module is further configured to determine a service opportunity of each queue according to a compression weight of each queue before determining a target queue allocated to a service opportunity in each of the queues.
  • the determining module is specifically configured to calculate compression weights of each of the queues. And calculating a ratio of the queue to the summation value; determining the calculated ratio as a service opportunity of the queue.
  • the determining module is specifically configured as:
  • the shaping weight of the target queue is compressed according to the weight compression coefficient.
  • the ratio of the shaping weight of the target queue to the weight retention value is calculated, and then Calculating a product of the ratio and the minimum number of tokens added by the single service, and determining the calculated product value as the number of tokens to be added to the token bucket corresponding to the target queue; when determining the compression
  • the product of the weight compression coefficient and the minimum number of tokens added by the single service is calculated, and the calculated product value is determined to be in the token bucket corresponding to the target queue. The number of tokens added.
  • the determining module is specifically configured to calculate a sum of compression weights of each of the queues; calculate a ratio of the summation value to a reference weight; and determine the calculated ratio as a minimum order for a single service addition Number of cards.
  • An embodiment of the present invention provides a computer storage medium, where the computer storage medium stores a computer program, and the computer program is used to execute the token adding method described above.
  • the technical solution of the embodiment of the present invention compresses the shaping weight of the queue that meets the preset condition, and ensures the shaping weight of the queue that does not meet the preset condition, and determines the need to go to the target queue according to the compression weight of the queue (the queue that obtains the service) The number of tokens added to the token bucket.
  • the sum of the compression weights of the queues is smaller than the sum of the shaping weights of the queues.
  • the shaping weight of the queue that does not satisfy the preset condition is not compressed (the shaping weight is equal to the compression weight) ), therefore, this embodiment will Increase the number of tokens that do not meet the preset conditions, and reduce the number of tokens that need to be added to the corresponding token bucket when the queue does not meet the preset conditions. Sudden, improve the quality of service of the business.
  • FIG. 1 is an optional schematic flowchart of a method for adding a token according to an embodiment of the present invention
  • FIG. 2 is another schematic flowchart of a method for adding a token according to an embodiment of the present invention
  • FIG. 3 is still another schematic flowchart of a method for adding a token according to an embodiment of the present invention
  • FIG. 4 is a schematic diagram of still another optional process of a token adding method according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of an apparatus for adding a token according to an embodiment of the present invention.
  • FIG. 6 is another schematic structural diagram of a token adding apparatus according to an embodiment of the present invention.
  • the token adding apparatus in the following specific embodiments
  • the token adding apparatus can be implemented in various manners, for example, in a network device such as a network processor or a router.
  • a network device such as a network processor or a router.
  • Implementing all components of the token adding device for example, the token adding device may be integrated into the shaping control component of the congestion management module in the network device described above), or implementing the token in a coupled manner on the network device side described above Add components in the device.
  • This embodiment describes a token adding method, which can be applied to the congestion management technology to solve the following problem: It is desirable to reduce the traffic burst of the queue with small weight and improve the service of the service under the premise that the shaping rate of the queue is accurate. Quality; this embodiment describes the processing of this situation Bright.
  • the token adding method described in this embodiment includes the following steps:
  • Step 101 Compress the shaping weights of the queues satisfying the preset condition in each queue based on the shaping weights of the respective queues corresponding to the target port, and determine the compression weights of the queues.
  • the target port may be one or more data interfaces of the network device.
  • the scheduler of the network device analyzes the packet based on the feature information of the packet.
  • the file is allocated to the queue corresponding to the feature information of the packet.
  • the user configures the shaping rate for each queue corresponding to the target port.
  • the shaping rate can be the CIR (Committed Information Rate) or the information rate (EIR). Excess Information Rate);
  • the reference shaping rate refers to the maximum data rate allowed by the network device, and the reference weight corresponds to the reference shaping rate; based on the reference shaping rate, the reference weight, and the shaping rate of the queue, the shaping weight of the queue in the network device can be determined.
  • the ratio of the shaping rate of the queue to the reference shaping rate is calculated, and the product of the ratio and the reference weight is calculated, and the obtained product value is used as the shaping weight of the queue.
  • each of the queues corresponding to the target port is defined (divided) into at least two types, that is, a queue with a larger weight and a smaller queue with a smaller weight.
  • the preset condition defines whether a queue belongs to the queue.
  • a queue with a larger weight is defined as a queue that meets the preset condition in each queue, and a queue that does not satisfy the preset condition is defined as a queue with a smaller weight.
  • the marker corresponds to the target.
  • Each queue of the port includes at least a first queue and a second queue. It is assumed that the first queue is defined as a queue having a larger shaping weight because the preset condition is met, and the second queue is defined as belonging to the shaping weight because the preset condition is not met. Smaller queue.
  • the compression weights of the queues are obtained by using different processing methods for the queues with larger shaping weights and queues with smaller shaping weights.
  • the shaping weight of the queue is pressed
  • the weight obtained by the compression is determined as the compression weight of the queue; for example, the shaping weight of the first queue is compressed, and the weight obtained by the compression is determined as the compression weight of the first queue.
  • the shaping weight of the queue is determined as the compression weight; for example, the shaping weight of the second queue is determined as the compression weight of the second queue.
  • the compression weight of the queue that satisfies the preset condition is smaller than the shaping weight, and the compression weight of the queue that does not satisfy the preset condition is equal to the shaping weight. It can be known that the sum of the compression weights of the foregoing queues is smaller than the sum of the shaping weights of the queues.
  • the token adding apparatus determines the service opportunities of the queues based on the compression weights of the queues, specifically, The token adding device calculates the sum of the compression weights of each queue, calculates the ratio of the queue to the summation value, determines the calculated ratio as the service opportunity of the queue, and obtains the service by each corresponding service opportunity (probability);
  • the shaping weights of the queues are used to allocate service opportunities to the queues.
  • the compression weights of the queues are used to allocate service opportunities to the queues, because the sum of the compression weights of the queues is smaller than the sum of the shaping weights of the queues. And the compression weight of the queue with the smaller shaping weight is equal to the shaping weight, which can increase the shaping weight less. Service opportunities column.
  • Step 102 Determine a target queue allocated to the service in each queue, and determine the number of tokens added to the token bucket corresponding to the target queue based on the reference weight, the compression weight of each queue, and the shaping weight of the target queue.
  • the token adding device determines the target queue allocated to the service in each queue, based on the reference weight, the compression weight of each queue, and the shaping weight of the target queue, the compression weight of the target queue is decompressed, and the compression weight of the target queue is compressed according to the target queue.
  • the number of tokens added to the token bucket corresponding to the target queue in the case of a single service, and the number of tokens added to the token bucket corresponding to the target queue in the single service described above can ensure the shaping rate of the target queue. accurate.
  • each queue of the target port is treated differently according to the size of the shaping weight, and the shaping weight of the queue that meets the preset condition is compressed, and the team that does not meet the preset condition is guaranteed.
  • the shaping weight of the column determines the number of tokens to be added to the token bucket of the target queue (the queue that gets the service) according to the compression weight of the queue.
  • the sum of the compression weights of the queues is smaller than the sum of the shaping weights of the queues. Since the shaping weight of the queue that does not satisfy the preset condition is not compressed (the shaping weight is equal to the compression weight), the present embodiment can increase the service opportunity of the queue that does not satisfy the preset condition, and reduce the queue that does not satisfy the preset condition.
  • the service is obtained, the number of tokens to be added to the corresponding token bucket is reduced, thereby reducing the traffic burst of the queue that does not meet the preset condition, and improving the service quality of the service.
  • This embodiment is described with reference to the first embodiment, and specifically describes how to compress the shaping weight of the queue.
  • any one of the queues described above is taken as an example for description.
  • the token adding method described in this embodiment includes the following steps:
  • Step 201 Acquire a shaping weight corresponding to a queue of the target port.
  • Step 202 Determine whether the shaping weight of the queue is greater than the weight retention value. If yes, go to step 203; otherwise, go to step 207.
  • the weight retention value can be set in advance according to actual needs.
  • Step 203 Compress the shaping weight of the queue according to the weight compression coefficient.
  • the weight compression factor can be set in advance according to actual needs.
  • Step 204 Determine whether the compression result is greater than the weight retention value. If yes, go to step 205; otherwise, go to step 206.
  • Step 205 The compression result is used as a compression weight of the queue; and the process proceeds to step 208.
  • Step 206 Use the weight retention value as the compression weight of the queue; and jump to step 208.
  • Step 207 The shaping weight of the queue is used as the compression weight of the queue.
  • Step 208 Determine whether the compression weight has been determined for all queues corresponding to the target port, and if yes, go to step 209, otherwise go to step 201.
  • Step 209 Determine a target queue allocated to the service opportunity in each queue, based on the reference weight, The compression weight of each queue and the shaping weight of the target queue determine the number of tokens added to the token bucket corresponding to the target queue and add them.
  • the preset condition is that the shaping right of the queue is greater than the weight retention value; those skilled in the art can understand that the foregoing preset condition is not limited to the example described herein, as long as the shaping weight of each queue can be performed.
  • the conditions or methods of classification are within the scope of the invention.
  • the queues with the large weights of the processing and the queues with the smaller weights are processed, and the shaping weights of the queues with large compression weights are less, and the shaping weights of the queues with less compression or less compression weights are less.
  • the token adding method described in this embodiment includes the following steps:
  • Step 301 Acquire a shaping weight of a queue corresponding to the target port.
  • Step 302 Compress the shaping weights of the queues satisfying the preset condition in each queue based on the shaping weights of the respective queues corresponding to the target port, and determine the compression weights of the queues.
  • Step 303 Determine a target queue allocated to the service opportunity in each queue.
  • Step 304 Determine a minimum number of tokens added by a single service based on the reference weight and the compression weight of each queue.
  • the method for determining the minimum number of tokens added by a single service may include: calculating a sum of compression weights of each queue; calculating a ratio of the summation value to the reference weight; and determining the calculated ratio as the minimum order for adding a single service. Number of cards.
  • Step 305 Determine whether the shaping weight of the target queue is less than or equal to the weight retention value; if yes, go to step 306, otherwise go to step 307.
  • the weight retention value can be set in advance according to actual needs.
  • Step 306 Determine the minimum number of tokens added by the single service as the number of tokens to be added to the token bucket corresponding to the target queue; and go to step 311.
  • Step 307 compress the shaping weight of the target queue according to the weight compression coefficient.
  • Step 308 Determine whether the compression result is less than or equal to the weight retention value. If yes, go to step 309, otherwise go to step 310.
  • Step 309 Calculate the ratio of the shaping weight of the target queue to the weight retention value, calculate the product of the ratio and the minimum number of tokens added by the single service, and determine the calculated product value as the token bucket corresponding to the target queue. The number of tokens added; jump to step 311.
  • Step 310 Calculate a product of a weight compression coefficient and a minimum number of tokens added by a single service, and determine the calculated product value as the number of tokens to be added to the token bucket corresponding to the target queue.
  • Step 311 Add a corresponding token to the token bucket corresponding to the target queue based on the determined number of tokens.
  • the weight compression factor can be set in advance according to actual needs.
  • the minimum number of tokens added by the single service determined based on the compression weights of the queues and the reference weights is reduced compared with the prior art.
  • the number of tokens added by the token adding device to the token bucket corresponding to the queue with a small weighting weight assigned to the service opportunity is the minimum number of tokens added by the single service, that is, compared with the prior art.
  • the reduction can further reduce the traffic burst of the queue with small shaping weight; on the other hand, the token adding device decompresses the compression weight by combining the weight compression coefficient and the weight value, and multiplies the minimum number of tokens added by the single service.
  • the number of tokens added to the token bucket corresponding to the queue with the significant shaping right assigned to the service opportunity is determined by the ratio of the weight compression coefficient or the shaping weight to the weight retention value, so that the token bucket corresponding to the queue with the significant weighting right is in the token bucket.
  • the number of added tokens is close to the number in the prior art, so that the shaping rate of the queue can be guaranteed to be accurate.
  • the present embodiment describes a method for adding a token, which can be applied to the following scenario: in the congestion management process, it is desirable to reduce the traffic of a queue with a small weight under the premise of ensuring an accurate shaping rate of the queue. Sudden, improve the quality of service of the service; this embodiment describes the processing of this case.
  • the queues with large weights and the queues with small weights are different, and the weights of the queues with large weights are guaranteed, and the weights of the queues with small weights are guaranteed, and the sum of the weights of all the queues is reduced.
  • the number of single-service tokens added is small; the bandwidth is allocated according to the weight of the compression; in order to ensure that the shaping rate configured by the user is accurate, when the queue is served, the compression weight needs to be decompressed, and the compression multiple k is calculated (k is A positive integer is a power of 2, which is used to indicate the multiple of the shaping weight of the queue.
  • the number of tokens added to the token bucket corresponding to the queue is equal to the minimum number of tokens added by the single service multiplied by the compression multiple. k.
  • the token adding method described in this embodiment includes the following steps:
  • Step 401 Acquire a shaping rate of each queue corresponding to the target port, and obtain a weight compression coefficient a and a weight retention value b, where a is a positive integer, a is a power of 2, b is a positive integer, and b is 2. Power square.
  • the compression weight d of each queue is calculated separately, where d is a positive integer, which is used when the token is allocated. use.
  • Step 402 Determine, for any queue, the shaping weight of the queue according to the shaping rate of the queue; the calculation formula is as follows:
  • Step 403 Determine whether the shaping weight c of the queue is less than or equal to the weight retention value b: if yes, go to step 406, otherwise go to step 404.
  • Step 404 Divide the shaping weight c by the weight compression coefficient a, determine whether the ratio is less than or equal to the weight retention value b, and if yes, go to step 405, otherwise go to step 407.
  • Step 405 the compression weight d of the queue is equal to the weight retention value b; go to step 408.
  • Step 406 The compression weight d of the queue is equal to the shaping weight value c; go to step 408.
  • Step 407 The compression weight d of the queue is equal to the calculation result, that is, the ratio obtained by dividing the shaping weight c by the weight compression coefficient a.
  • Step 408 Determine whether the compression weight has been determined for all queues corresponding to the target port, and if yes, go to step 409, otherwise go to step 402.
  • Step 409 Determine a service opportunity of each queue based on a weighting algorithm and compression weights of each queue.
  • Weighting algorithm such as WFQ or DWRR; for any queue A, first calculate the sum of the compression weights of each queue, and then calculate the ratio of the queue A to the summation value, and determine the calculated ratio as the service opportunity of queue A; each queue Obtain token distribution opportunities with their respective service opportunities (probabilities).
  • Step 410 Determine a minimum number of tokens N1 added by a single service based on the reference weight and the compression weight of each queue.
  • the minimum number of tokens N1 added by a single service is equal to the sum of the compression weights of all queues divided by the base weight.
  • Step 411 Determine, for the target queue allocated to the service opportunity, whether the shaping weight c of the target queue is less than or equal to the weight retention value b; if yes, go to step 412; otherwise, go to step 413.
  • Step 413 calculating the ratio of the shaping weight c of the target queue and the weight compression coefficient a c / a, determining whether the ratio c / a is less than or equal to the weight retention value b, and if yes, go to step 414, otherwise go to step 415;
  • Step 414 Calculate a ratio c/b of the shaping weight c of the target queue and the weight retention value b, and then calculate a product of the ratio c/b and the minimum number of tokens N1 added by the single service (c/b*N1).
  • Step 415 Calculate the product of the weight compression coefficient a and the minimum number of tokens N1 added by the single service (a*N1).
  • Step 416 Add a corresponding token to the token bucket corresponding to the target queue based on the determined number of tokens n.
  • the priority of the queue service with a smaller shaping rate is increased, and the burst of the queue with a smaller shaping rate is reduced, and the memory usage of the queue system with a small shaping rate is not increased.
  • the ability of the queue with small shaping rate to withstand bursts is increased, and the possibility of packet loss of the queue with small shaping rate is reduced. Provide better shaping effects and improve system QoS performance.
  • the present embodiment describes a token adding apparatus, which may be used to implement the solution of the fourth embodiment.
  • the token adding apparatus may be a device specially set for implementing the embodiment of the present invention, or may be built in the network.
  • the device may include a network processor and a router.
  • the token adding apparatus in this embodiment includes:
  • the configuration module 501 is configured to configure (acquire) a weight compression coefficient, a weight retention value, and a shaping weight of the queue, and configure other necessary information;
  • the shaping compression calculation module 502 is configured to perform the weight compression operation of steps 401 to 408, and calculate the final weight value of the queue (the compression weight of the queue);
  • the shaping decompression calculation module 503 is configured to perform the weight decompression operation of steps 411 to 415, and calculate the token addition number;
  • the token distribution module 504 is configured to allocate a token service opportunity to each queue according to the weighting algorithm and the final weight value of the queue (the compression weight of the queue), and add the number of tokens calculated according to the shaping decompression calculation module 503. , add the corresponding token to the token bucket of the queue.
  • the token consumption module 505 is configured to consume the corresponding number of tokens when the queue schedules the data packet to leave the device.
  • the storage module 506 is configured to store information such as a weight compression coefficient, a weight retention value, and a shaping weight value of the queue, and other necessary information.
  • the configuration module 501, the shaping compression calculation module 502, the shaping and decompression calculation module 503, the token distribution module 504, the token consumption module 505, and the storage module 506 may all be owned by the token adding device or the token adding device.
  • the priority of the queue service with a smaller shaping rate is increased, and the burst of the queue with a smaller shaping rate is reduced, and the memory usage of the queue system with a small shaping rate is not increased.
  • the ability of the queue with small shaping rate to withstand bursts is increased, and the possibility of packet loss of the queue with small shaping rate is reduced. Provide better shaping effects and improve system QoS performance.
  • the present embodiment is directed to the foregoing token adding apparatus, and the token adding apparatus may be used to execute the token adding method in the embodiment of the present invention.
  • the token adding apparatus may be implemented to implement the embodiment of the present invention.
  • the specifically provided device may also be built in the network device, and the network device may include a network processor and a router. Referring to FIG. 6, the token adding device described in this embodiment includes:
  • the determining module 601 is configured to compress, according to the shaping weight of each queue corresponding to the target port, the shaping weights of the queues satisfying the preset condition in each queue, and determine the compression weight of each queue;
  • the determining module 601 is further configured to determine a target queue allocated to the service opportunity in each queue, and determine the number of tokens added to the token bucket corresponding to the target queue based on the reference weight, the compression weight of each queue, and the shaping weight of the target queue. ;
  • the distribution module 602 is configured to add, to the token bucket corresponding to the target queue, the number of added tokens determined by the determining module.
  • each queue of the target port is treated differently according to the size of the shaping weight, and the shaping weight of the queue that meets the preset condition is compressed, and the shaping weight of the queue that does not meet the preset condition is ensured, and the compression weight of the queue is determined according to the compression weight of the queue.
  • the number of tokens to be added to the token bucket of the target queue (the queue that gets the service).
  • the sum of the compression weights of the queues is smaller than the sum of the shaping weights of the queues, and the shaping weight of the queues that do not meet the preset conditions. It is not compressed (the shaping weight is equal to the compression weight).
  • the service opportunity of the queue that does not meet the preset condition can be increased, and the queue that does not satisfy the preset condition needs to be reduced to the corresponding token bucket when the service is obtained.
  • the number of added tokens which in turn reduces the traffic burst of the queue that does not meet the preset conditions, and improves the service quality of the service.
  • the determining module 601 is specifically configured to determine whether the shaping weight of the queue is greater than the weight retention value; if yes, compress the shaping weight of the queue according to the weight compression coefficient If the compression result is greater than the weight retention value, the compression result is used as the compression weight of the queue, and when the compression result is determined not to be greater than the weight retention value, the weight retention value is used as the compression weight of the queue;
  • the shaping weight of the queue is taken as the compression weight of the queue.
  • the determining module 601 is further configured to determine a service opportunity of each queue according to compression weights of each queue before determining a target queue allocated to the service opportunity in each queue.
  • the determining module 601 is specifically configured to calculate a sum of compression weights of each queue; calculate a ratio of the queue to the summation value; and determine the calculated ratio as a service opportunity of the queue.
  • the determining module 601 is configured to determine, according to the reference weight and the compression weight of each queue, the minimum number of tokens added by the single service; and determine whether the shaping weight of the target queue is not greater than the weight reserved value;
  • the minimum number of tokens added by the single service is determined as the number of tokens that need to be added to the token bucket corresponding to the target queue;
  • the shaping weight of the target queue is compressed according to the weight compression coefficient.
  • the ratio of the shaping weight of the target queue to the weight retention value is calculated, and then the ratio is calculated and the minimum order of the single service is added.
  • the product of the number of cards, the calculated product value is determined as the number of tokens to be added to the token bucket corresponding to the target queue; when it is determined that the compression result is greater than the weight retention value, the calculation of the weight compression coefficient and the minimum number of single service additions
  • the product of the number of tokens, and the calculated product value is determined as the number of tokens that need to be added to the token bucket corresponding to the target queue.
  • the determining module 601 is specifically configured to calculate a sum of compression weights of each queue; calculate a ratio of the summation value to the reference weight; and determine the calculated ratio as the minimum number of tokens added by the single service.
  • the determining module 601 and the distributing module 602 can be configured by a central processing unit (CPU, Central Processing Unit) and a microprocessor (MPU, Micro) located in the network device.
  • CPU Central Processing Unit
  • MPU Microprocessor
  • Processor Unit Digital Signal Processor
  • FPGA Field Programmable Gate Array
  • This embodiment describes a computer storage medium, which may be a ROM (for example, a read only memory, a FLASH memory, a transfer device, etc.), a magnetic storage medium (for example, a magnetic tape, a magnetic disk drive, etc.), an optical storage medium (for example, a CD-ROM). , a DVD-ROM, a paper card, a paper tape, etc., and other well-known types of program memory; the computer storage medium storing computer-executable instructions that, when executed, cause at least one processor to perform operations including:
  • the shaping weights of the queues satisfying the preset conditions in each queue are compressed based on the shaping weights of the respective queues corresponding to the target ports, and the compression weights of the queues are determined;
  • the shaping weights of the queues satisfying the preset condition in each queue are compressed based on the shaping weights of the respective queues corresponding to the target port, and the compression weights of the queues are determined, including: determining whether the shaping weight of the queue is greater than The weight retention value; if yes, compressing the shaping weight of the queue according to the weight compression coefficient, and using the compression result as the compression weight of the queue when determining that the compression result is greater than the weight retention value, and retaining the weight when determining that the compression result is not greater than the weight retention value The value is used as the compression weight of the queue;
  • the shaping weight of the queue is taken as the compression weight of the queue.
  • the method before determining a target queue allocated to a service opportunity in each queue, the method further includes: determining a service opportunity of each queue according to compression weights of each queue.
  • determining service opportunities of each queue according to compression weights of each queue includes: calculating a sum of compression weights of each queue; and calculating a ratio of the queue to the summation value; The resulting ratio is determined as the service opportunity for the queue.
  • determining the number of tokens added to the token bucket corresponding to the target queue based on the reference weight, the compression weight of each queue, and the shaping weight of the target queue including: determining, based on the reference weight and the compression weight of each queue, The minimum number of tokens added by a single service; whether the shaping weight of the target queue is not greater than the weight retention value; if yes, the minimum number of tokens added by the single service is determined to be added to the token bucket corresponding to the target queue. The number of tokens; otherwise, the shaping weight of the target queue is compressed according to the weight compression coefficient.
  • the ratio of the shaping weight of the target queue to the weight retention value is calculated, and then the ratio and the single service are calculated.
  • the product of the added minimum number of tokens, the calculated product value is determined as the number of tokens to be added to the token bucket corresponding to the target queue; when it is determined that the compression result is greater than the weight retention value, the weight compression coefficient is calculated and single time
  • the product of the minimum number of tokens added by the service, and the calculated product value is determined to correspond to the target queue. The number of tokens in the bucket added token.
  • determining a minimum number of tokens added by a single service based on the reference weight and the compression weight of each queue including: calculating a sum of compression weights of each queue; and calculating a ratio of the summation value to the reference weight; The resulting ratio is determined as the minimum number of tokens added for a single service.
  • the shaping weight of the queue that satisfies the preset condition is compressed, and the shaping weight of the queue that does not meet the preset condition is ensured, and the target queue is determined according to the compression weight of the queue (the queue for obtaining the service) The number of tokens added to the token bucket.
  • the sum of the compression weights of the queues is smaller than the sum of the shaping weights of the queues.
  • the shaping weight of the queue that does not satisfy the preset condition is not compressed (the shaping weight is equal to the compression weight) Therefore, in this embodiment, the service opportunity of the queue that does not meet the preset condition is increased, and the number of tokens that need to be added to the corresponding token bucket when the queue that does not satisfy the preset condition is obtained is reduced, thereby reducing the unsatisfied
  • the traffic burst of the queue of the preset condition improves the service quality of the service.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may employ hardware embodiments, software embodiments, or junctions. In the form of an embodiment of the software and hardware aspects. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • the shaping weight of the queue that meets the preset condition is compressed, and the shaping weight of the queue that does not meet the preset condition is ensured, and the compression weight of the queue is determined according to the compression weight of the queue.
  • the number of tokens added to the token bucket of the target queue (the queue that gets the service).
  • the sum of the compression weights of the queues is smaller than the sum of the shaping weights of the queues, and the shaping weight of the queue that does not satisfy the preset condition is not Compression (the shaping weight is equal to the compression weight). Therefore, in this embodiment, the service opportunity of the queue that does not meet the preset condition is increased, and the queue that does not satisfy the preset condition needs to be added to the corresponding token bucket when the service is obtained.
  • the number of cards thereby reducing the traffic burst of the queue that does not meet the preset conditions, and improving the service quality of the service.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种令牌添加方法、装置及计算机存储介质;其中,所述令牌添加方法包括:基于对应于目标端口的各个队列的整形权重,对各队列中满足预设条件的队列的整形权重进行压缩,确定各队列的压缩权重;确定各队列中分配到服务机会的目标队列,基于基准权重、各队列的压缩权重及目标队列的整形权重,确定向目标队列对应的令牌桶中添加的令牌数并添加。

Description

令牌添加方法、装置及计算机存储介质 技术领域
本发明涉及通信技术领域的拥塞控制技术,尤其涉及一种令牌添加方法、装置及计算机存储介质。
背景技术
随着网络应用的不断发展,新型业务的不断推出,例如交互式网络电视(IPTV)、网络电话(VoIP,Voice over Internet Protocol)、视频会议等非传统数据通信业务,对网络的服务质量(QoS,Quality of Service)提出了更高的时延、丢包率和抖动控制要求;为了保证QoS的实现,通常在网络处理器或路由器中设置专门的拥塞管理模块,拥塞管理模块用于控制帧、信元或分组如何离开一个设备。
拥塞管理模块的一个功能是限速,这个功能由整形控制组件完成,整形控制组件控制的对象是队列,队列内存储的是同一类型的数据包;整形控制组件以用户配置的整形速率添加令牌到队列的令牌桶内,令牌桶内有令牌的队列可以调度数据包离开设备,队列调度数据包离开设备时会消耗队列令牌桶内的令牌;现有的整块控制组件一般采用加权分配算法给队列分配服务机会,加权分配算法,例如加权公平队列(WFQ,Weighted Fair Queuing),或者加权循环调度算法(WRR,Weighted Round Robin),每次服务添加一定数目的令牌,令牌数可以转化为带宽,单次服务添加的令牌数等于所有队列的权重之和/基准权重,设备的基准权重对应设备的基准整形值,也就是将用户配置的整形速率转化为一个权重值分配给队列,每个队列根据自身的权重,获得令牌添加的机会,权重大的队列获得令牌添加的机会多,权重小的队列获得令牌添加的机会少。
然而,***中权重较大的队列会拉高***所有队列的权重之和,使得单次服务添加的令牌数也较大,权重小的队列在一段时间内获得的令牌数是固定的,权重小的队列在这段时间内,只能获得很少的服务机会,每次服务获得比较多的令牌,使得权重小的队列突发式的获得令牌,然而,权重小的队列在***内能占用的缓存是有限的,权重小的队列承受突发的能力比较差,在一段时间内,如果流量突发超过权重小的队列承受突发能力时,就会发生数据包丢弃,如此,会影响业务的服务质量。
发明内容
有鉴于此,本发明实施例期望提供一种令牌添加方法、装置及计算机存储介质,能在保证队列的整形速率准确的前提下,减少权重小的队列的流量突发,提高业务的服务质量。
为达到上述目的,本发明的技术方案是这样实现的:
本发明实施例提供一种令牌添加方法,包括:
基于对应于目标端口的各个队列的整形权重,对各所述队列中满足预设条件的队列的整形权重进行压缩,确定各所述队列的压缩权重;
确定各所述队列中分配到服务机会的目标队列,基于基准权重、各所述队列的压缩权重及所述目标队列的整形权重,确定向所述目标队列对应的令牌桶中添加的令牌数并添加。
上述方案中,所述基于对应于目标端口的各个队列的整形权重,对各所述队列中满足预设条件的队列的整形权重进行压缩,确定各所述队列的压缩权重,包括:
判断所述队列的整形权重是否大于权重保留值;
若是,则根据权重压缩系数对所述队列的整形权重进行压缩,当确定所述压缩结果大于所述权重保留值时将所述压缩结果作为所述队列的压缩权重,当确定所述压缩结果不大于所述权重保留值时将所述权重保留值作 为所述队列的压缩权重;
否则,将所述队列的整形权重作为所述队列的压缩权重。
上述方案中,所述确定各所述队列中分配到服务机会的目标队列之前,所述方法还包括:
根据各所述队列的压缩权重,确定各所述队列的服务机会。
上述方案中,所述根据各所述队列的压缩权重,确定各所述队列的服务机会,包括:
计算各所述队列的压缩权重之和;
再计算所述队列与所述求和值的比值;
将计算得到的比值确定为所述队列的服务机会。
上述方案中,所述基于基准权重、各所述队列的压缩权重及所述目标队列的整形权重,确定向所述目标队列对应的令牌桶中添加的令牌数,包括:
基于基准权重及各所述队列的压缩权重确定单次服务添加的最少令牌数;
判断所述目标队列的整形权重是否不大于权重保留值;
若是,则将所述单次服务添加的最少令牌数确定为需要向所述目标队列对应的令牌桶中添加的令牌数;
否则,根据权重压缩系数对所述目标队列的整形权重进行压缩,当确定所述压缩结果不大于所述权重保留值时,计算所述目标队列的整形权重与所述权重保留值的比值,再计算所述比值与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数;当确定所述压缩结果大于所述权重保留值时,计算所述权重压缩系数与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数。
上述方案中,所述基于基准权重及各所述队列的压缩权重确定单次服务添加的最少令牌数,包括:
计算各所述队列的压缩权重之和;
再计算所述求和值与基准权重的比值;
将计算得到的比值确定为单次服务添加的最少令牌数。
本发明实施例还提供一种令牌添加装置,包括:
确定模块,配置为基于对应于目标端口的各个队列的整形权重,对各所述队列中满足预设条件的队列的整形权重进行压缩,确定各所述队列的压缩权重;
所述确定模块,还配置为确定各所述队列中分配到服务机会的目标队列,基于基准权重、各所述队列的压缩权重及所述目标队列的整形权重,确定向所述目标队列对应的令牌桶中添加的令牌数;
分发模块,配置为向所述目标队列对应的令牌桶中添加所述确定模块确定的添加的令牌数。
上述方案中,所述确定模块,具体配置为判断所述队列的整形权重是否大于权重保留值;
若是,则根据权重压缩系数对所述队列的整形权重进行压缩,当确定所述压缩结果大于所述权重保留值时将所述压缩结果作为所述队列的压缩权重,当确定所述压缩结果不大于所述权重保留值时将所述权重保留值作为所述队列的压缩权重;
否则,将所述队列的整形权重作为所述队列的压缩权重。
上述方案中,所述确定模块,还配置为在确定各所述队列中分配到服务机会的目标队列之前,根据各所述队列的压缩权重,确定各所述队列的服务机会。
上述方案中,所述确定模块,具体配置为计算各所述队列的压缩权重 之和;再计算所述队列与所述求和值的比值;将计算得到的比值确定为所述队列的服务机会。
上述方案中,所述确定模块,具体配置为:
基于基准权重及各所述队列的压缩权重确定单次服务添加的最少令牌数;
判断所述目标队列的整形权重是否不大于权重保留值;
若是,则将所述单次服务添加的最少令牌数确定为需要向所述目标队列对应的令牌桶中添加的令牌数;
否则,根据权重压缩系数对所述目标队列的整形权重进行压缩,当确定所述压缩结果不大于所述权重保留值时,计算所述目标队列的整形权重与所述权重保留值的比值,再计算所述比值与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数;当确定所述压缩结果大于所述权重保留值时,计算所述权重压缩系数与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数。
上述方案中,所述确定模块,具体配置为计算各所述队列的压缩权重之和;再计算所述求和值与基准权重的比值;将计算得到的比值确定为单次服务添加的最少令牌数。
本发明实施例提供了一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序用于执行以上所述的令牌添加方法。
本发明实施例所述技术方案,对满足预设条件的队列的整形权重进行压缩,同时保证不满足预设条件的队列的整形权重,根据队列的压缩权重确定需要向目标队列(得到服务的队列)的令牌桶中添加的令牌数,如此,各队列的压缩权重之和小于各队列的整形权重之和,由于不满足预设条件的队列的整形权重未被压缩(整形权重等于压缩权重),因此,本实施例会 增加不满足预设条件的队列的服务机会,并降低不满足预设条件的队列在得到服务时需要向对应的令牌桶中添加的令牌数,进而减少不满足预设条件的队列的流量突发,提高业务的服务质量。
附图说明
图1为本发明实施例中令牌添加方法的一个可选的流程示意图;
图2为本发明实施例中令牌添加方法的另一个可选的流程示意图;
图3为本发明实施例中令牌添加方法的又一个可选的流程示意图;
图4为本发明实施例中令牌添加方法的再一个可选的流程示意图;
图5为本发明实施例中令牌添加装置的一个可选的结构示意图;
图6为本发明实施例中令牌添加装置的另一个可选的结构示意图。
具体实施方式
下面将结合附图及实施例,对本发明的技术方案进行清楚、完整地描述。
下面首先对实施本发明实施例的装置(在以下各具体实施例中即为令牌添加装置)进行说明,令牌添加装置可以采用各种方式来实施,例如在网络处理器、路由器等网络设备中实施令牌添加装置的全部组件(比如,令牌添加装置可以集成于上述的网络设备中的拥塞管理模块的整形控制组件中),或者,在上述的网络设备侧以耦合的方式实施令牌添加装置中的组件。
基于上述记载的令牌添加装置,提出以下各具体实施例。
实施例一
本实施例记载一种令牌添加方法,可以应用于拥塞管理技术中以解决如下问题:希望能在保证队列的整形速率准确的前提下,减少权重小的队列的流量突发,提高业务的服务质量;本实施例针对此情况的处理进行说 明。
参见图1,本实施例记载的令牌添加方法包括以下步骤:
步骤101、基于对应于目标端口的各个队列的整形权重,对各队列中满足预设条件的队列的整形权重进行压缩,确定各队列的压缩权重。
在本实施例中,目标端口可以是指上述网络设备的一个或多个数据接口,对于需经数据接口发送的报文,网络设备的调度器基于该报文的特征信息进行分析,将该报文分配至对应于该报文的特征信息的队列中;用户为对应于目标端口的各个队列分别配置整形速率,整形速率可以为承诺信息速率(CIR,Committed Information Rate)或者超出信息速率(EIR,Excess Information Rate);基准整形速率是指网络设备所允许的最大数据速率,基准权重对应于基准整形速率;基于基准整形速率、基准权重及队列的整形速率,可以确定队列在网络设备中的整形权重;可选的,计算队列的整形速率与基准整形速率的比值,再计算该比值与基准权重的乘积,将得到的乘积值作为队列的整形权重。
本实施例将对应于目标端口的各个队列界定(划分)为至少两类,即整形权重较大的队列、整形权重较小的队列;具体地,本实施例通过预设条件界定一个队列是否属于整形权重较大的队列,将各队列中满足预设条件的队列界定为整形权重较大的队列,及将不满足预设条件的队列界定为整形权重较小的队列;这里,标记对应于目标端口的各个队列至少包括第一队列和第二队列,假设,第一队列由于满足预设条件被界定为属于整形权重较大的队列,第二队列由于不满足预设条件被界定为属于整形权重较小的队列。
本实施例针对上述界定的整形权重较大的队列和整形权重较小的队列分别采取不同的处理方法得到各队列的压缩权重:
1)针对上述界定的整形权重较大的队列,对该队列的整形权重进行压 缩,将压缩得到的权重确定为该队列的压缩权重;例如,对第一队列的整形权重进行压缩,将压缩得到的权重确定为第一队列的压缩权重。
2)针对上述界定的整形权重较小的队列,将该队列的整形权重确定为压缩权重;例如,将第二队列的整形权重确定为第二队列的压缩权重。
本实施例在对满足预设条件的队列的整形权重进行压缩后,一方面,满足预设条件的队列的压缩权重小于整形权重,不满足预设条件的队列的压缩权重等于整形权重,由此可以知晓,上述各队列的压缩权重之和小于上述各队列的整形权重之和;另一方面,在本发明中令牌添加装置基于上述各队列的压缩权重确定各队列的服务机会,具体地,令牌添加装置计算各队列的压缩权重之和,再计算队列与求和值的比值,将计算得到的比值确定为队列的服务机会,各队列以各自对应的服务机会(几率)获得服务;相比于现有技术使用各队列的整形权重为各队列分配服务机会,本发明中使用各队列的压缩权重为各队列分配服务机会,由于各队列的压缩权重之和小于各队列的整形权重之和,且整形权重较小的队列的压缩权重等于整形权重,可以提高整形权重较小的队列的服务机会。
步骤102、确定各队列中分配到服务的目标队列,基于基准权重、各队列的压缩权重及目标队列的整形权重,确定向目标队列对应的令牌桶中添加的令牌数并添加。
令牌添加装置确定各队列中分配到服务的目标队列后,基于基准权重、各队列的压缩权重及目标队列的整形权重,对目标队列的压缩权重进行解压缩,根据目标队列的整形权重的压缩情况,确定单次服务时向目标队列对应的令牌桶中添加的令牌数,上述确定的单次服务时向目标队列对应的令牌桶中添加的令牌数可以保证目标队列的整形速率准确。
本实施例中,基于整形权重的大小区别对待目标端口的各个队列,对满足预设条件的队列的整形权重进行压缩,同时保证不满足预设条件的队 列的整形权重,根据队列的压缩权重确定需要向目标队列(得到服务的队列)的令牌桶中添加的令牌数,如此,各队列的压缩权重之和小于各队列的整形权重之和,由于不满足预设条件的队列的整形权重未被压缩(整形权重等于压缩权重),因此,本实施例可以增加不满足预设条件的队列的服务机会,并降低不满足预设条件的队列在得到服务时需要向对应的令牌桶中添加的令牌数,进而减少不满足预设条件的队列的流量突发,提高业务的服务质量。
实施例二
本实施例基于实施例一,针对具体如何对队列的整形权重进行压缩的情况进行说明,本实施例以上述各队列中的任一队列为例进行说明。
参见图2,本实施例记载的令牌添加方法包括以下步骤:
步骤201、获取对应于目标端口的队列的整形权重。
步骤202、判断队列的整形权重是否大于权重保留值,若是,则转到步骤203,否则,转到步骤207。
权重保留值可以根据实际需要预先设置。
步骤203、根据权重压缩系数对队列的整形权重进行压缩。
权重压缩系数可以根据实际需要预先设置。
步骤204、判断压缩结果是否大于权重保留值,若是,则转到步骤205,否则,转到步骤206。
步骤205、将压缩结果作为队列的压缩权重;跳转到步骤208。
步骤206、将权重保留值作为队列的压缩权重;跳转到步骤208。
步骤207、将队列的整形权重作为队列的压缩权重。
步骤208、判断是否为对应于目标端口的所有队列均已确定压缩权重,若是,则转到步骤209,否则转到步骤201。
步骤209、确定各队列中分配到服务机会的目标队列,基于基准权重、 各队列的压缩权重及目标队列的整形权重,确定向目标队列对应的令牌桶中添加的令牌数并添加。
本实施例中,上述预设条件为:队列的整形权重大于权重保留值;本领域技术人员可以理解,上述预设条件并不限于此处记载的示例,只要是能够将各队列的整形权重进行分类的条件或方法都在本发明的保护范围之内。
本实施例区别对待整形权重大的队列和整形权重小的队列,压缩整形权重大的队列的整形权重,少压缩或者不压缩整形权重小的队列的整形权重。
实施例三
本实施例基于实施例一,针对具体如何确定向获得服务的队列对应的令牌桶中添加的令牌数的情况进行说明,本实施例以上述各队列中的任一队列为例进行说明。
参见图3,本实施例记载的令牌添加方法包括以下步骤:
步骤301、获取对应于目标端口的队列的整形权重。
步骤302、基于对应于目标端口的各个队列的整形权重,对各队列中满足预设条件的队列的整形权重进行压缩,确定各队列的压缩权重。
步骤303、确定各队列中分配到服务机会的目标队列。
步骤304、基于基准权重及各队列的压缩权重确定单次服务添加的最少令牌数。
确定单次服务添加的最少令牌数的实现方式可以包括:计算各队列的压缩权重之和;再计算求和值与基准权重的比值;将计算得到的比值确定为单次服务添加的最少令牌数。
步骤305、判断目标队列的整形权重是否小于等于权重保留值;若是,则转到步骤306,否则转到步骤307。
权重保留值可以根据实际需要预先设置。
步骤306、将单次服务添加的最少令牌数确定为需要向目标队列对应的令牌桶中添加的令牌数;跳转到步骤311。
步骤307、根据权重压缩系数对目标队列的整形权重进行压缩。
步骤308、判断压缩结果是否小于等于权重保留值,若是,则转到步骤309,否则转到步骤310。
步骤309、计算目标队列的整形权重与权重保留值的比值,再计算比值与单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向目标队列对应的令牌桶中添加的令牌数;跳转到步骤311。
步骤310、计算权重压缩系数与单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向目标队列对应的令牌桶中添加的令牌数。
步骤311、基于所确定的令牌数,向目标队列对应的令牌桶中添加相应的令牌。
权重压缩系数可以根据实际需要预先设置。
本实施例中由于各队列的压缩权重之和小于各队列的整形权重之和,基于各队列的压缩权重及基准权重确定的单次服务添加的最少令牌数与现有技术相比有所减小,一方面,令牌添加装置向分配到服务机会的整形权重小的队列对应的令牌桶中添加的令牌数为单次服务添加的最少令牌数,即与现有技术相比有所减小,进而可减少整形权重小的队列的流量突发;另一方面,令牌添加装置结合权重压缩系数及权重值对压缩权重进行解压缩,将单次服务添加的最少令牌数乘以权重压缩系数或整形权重与权重保留值的比值,确定为分配到服务机会的整形权重大的队列对应的令牌桶中添加的令牌数,使得整形权重大的队列对应的令牌桶中添加的令牌数与现有技术中的数目接近,如此可以保证队列的整形速率准确。
实施例四
基于上述各实施例,本实施例记载一种令牌添加方法,可以应用于以下场景中:在拥塞管理过程中,希望能在保证队列的整形速率准确的前提下,减少权重小的队列的流量突发,提高业务的服务质量;本实施例针对此情况的处理进行说明。
现有技术中,***(如目标端口)中存在一些权重较大的队列,存在一些权重较小的队列,权重较大的队列拉高了***所有队列的权重之和,使得单次服务添加的令牌数较大,权重小的队列在一段时间内获得的令牌数是固定的,当单次服务添加的令牌数较大时,权重小的队列在这段时间内,只能获得很少的服务机会,每次服务获得比较多的令牌,这样会导致权重小的队列突发式的获得令牌,权重小的队列在***内能占用的缓存是有限的,这就导致权重小的队列承受突发的能力比较差,在一段时间内,如果流量突发超过权重小的队列缓存的承受能力的话,就会发生数据包丢弃。
本实施例为了解决该问题,区别对待权重大的队列和权重小的队列,压缩权重大的队列的权重值,同时保证权重小的队列的权重值,减小了所有队列的权重之和,减小了单次服务令牌添加数;根据压缩后的权重进行带宽分配;为了保证用户配置的整形速率准确,当队列被服务时,需要对压缩权重进行解压缩,计算得到压缩倍数k(k为正整数,是2的幂次方,用于表示队列的整形权重被压缩的倍数),向队列对应的令牌桶中添加的令牌数等于单次服务添加的最少令牌数乘以压缩倍数k。
参见图4,本实施例记载的令牌添加方法包括以下步骤:
步骤401、获取对应于目标端口的各队列的整形速率,获取权重压缩系数a及权重保留值b,其中,a为正整数,a是2的幂次方,b为正整数,b是2的幂次方。
下面分别计算各队列的压缩权重d,其中d为正整数,在令牌分配时使 用。
步骤402、对于任意一个队列,根据队列的整形速率,确定队列的整形权重c;计算公式如下:
c=(队列的整形速率/基准整形速率)*基准权重。
步骤403、判断队列的整形权重c是否小于等于权重保留值b:若是,则转到步骤406,否则转到步骤404。
步骤404、将整形权重c除以权重压缩系数a,判断比值是否小于等于权重保留值b,若是,则转到步骤405,否则转到步骤407。
步骤405、队列的压缩权重d等于权重保留值b;转到步骤408。
步骤406、队列的压缩权重d等于整形权重值c;转到步骤408。
步骤407、队列的压缩权重d等于计算结果,即整形权重c除以权重压缩系数a得到的比值。
步骤408、判断是否为对应于目标端口的所有队列均已确定压缩权重,若是,则转到步骤409,否则转到步骤402。
步骤409、基于加权算法及各队列的压缩权重确定各队列的服务机会。
加权算法,例如WFQ或DWRR等;针对任意队列A,首先计算各队列的压缩权重之和,再计算队列A与求和值的比值,将计算得到的比值确定为队列A的服务机会;各队列以各自对应的服务机会(几率)获得令牌分发机会。
步骤410、基于基准权重及各队列的压缩权重确定单次服务添加的最少令牌数N1。
单次服务添加的最少令牌数N1等于所有队列的压缩权重之和除以基准权重。
步骤411、针对分配到服务机会的目标队列,判断目标队列的整形权重c是否小于等于权重保留值b;若是,则转到步骤412,否则转到步骤413。
步骤412、该步骤中,压缩倍数k=1,即需要向目标队列对应的令牌桶中添加的令牌数n=单次服务添加的最少令牌数N1;跳转到步骤416;
步骤413、计算目标队列的整形权重c与权重压缩系数a的比值c/a,判断比值c/a是否小于等于权重保留值b,若是则转到步骤414,否则转到步骤415;
步骤414、计算目标队列的整形权重c与权重保留值b的比值c/b,再计算比值c/b与单次服务添加的最少令牌数N1的乘积(c/b*N1),该步骤中,压缩倍数k=c/b,即需要向目标队列对应的令牌桶中添加的令牌数n=c/b*N1;跳转到步骤416。
步骤415、计算权重压缩系数a与单次服务添加的最少令牌数N1的乘积(a*N1),该步骤中,压缩倍数k=a,即需要向目标队列对应的令牌桶中添加的令牌数n=a*N1。
步骤416、基于所确定的令牌数n,向目标队列对应的令牌桶中添加相应的令牌。
本实施例在保证用户配置整形速率准确前提下,增加一段时间内整形速率较小的队列服务的机会,减小整形速率较小的队列的突发,在不增加整形速率小的队列***内存占用量的前提下,增加了整形速率小的队列承受突发的能力,减小了整形速率小的队列丢包的可能性。提供更好的整形效果,提高***的QoS性能。
实施例五
与实施例四对应,本实施例记载一种令牌添加装置,可以用于执行实施例四的方案,令牌添加装置可以是为实施本发明实施例而专门设置的设备,也可以内置于网络设备内部,网络设备可以包括网络处理器、路由器,参见图5,本实施例记载的令牌添加装置包括:
配置模块501、整形压缩计算模块502、整形解压缩计算模块503、令 牌分发模块504、令牌消耗模块505、存储模块506,其中:
配置模块501,配置为配置(获取)权重压缩系数、权重保留值及队列的整形权重,配置其它的必要信息;
整形压缩计算模块502,配置为执行步骤401至步骤408的权重压缩运算,计算得到队列的最终权重值(队列的压缩权重);
整形解压缩计算模块503,配置为执行步骤411至步骤415的权重解压缩运算,计算得到令牌添加数;
令牌分发模块504,配置为根据加权算法和队列的最终权重值(队列的压缩权重),分配令牌服务机会给各个队列,并根据整形解压缩计算模块503中计算得到的令牌添加个数,向队列的令牌桶中添加相应的令牌。
令牌消耗模块505,配置为当队列调度数据包离开设备时,消耗相应的令牌个数。
存储模块506,配置为存储权重压缩系数、权重保留值及队列的整形权重值等信息和其它的必要信息。
在实际应用中,配置模块501、整形压缩计算模块502、整形解压缩计算模块503、令牌分发模块504、令牌消耗模块505、存储模块506,均可由令牌添加装置或令牌添加装置所属设备中的中央处理器(CPU,Central Processing Unit)、微处理器(MPU,Micro Processor Unit)、数字信号处理器(DSP,Digital Signal Processor)、或现场可编程门阵列(FPGA,Field Programmable Gate Array)等实现。
本实施例在保证用户配置整形速率准确前提下,增加一段时间内整形速率较小的队列服务的机会,减小整形速率较小的队列的突发,在不增加整形速率小的队列***内存占用量的前提下,增加了整形速率小的队列承受突发的能力,减小了整形速率小的队列丢包的可能性。提供更好的整形效果,提高***的QoS性能。
实施例六
与前述实施例对应,本实施例针对前述的令牌添加装置进行说明,令牌添加装置可以用于执行本发明实施例的令牌添加方法,令牌添加装置可以是为实施本发明实施例而专门设置的设备,也可以内置于网络设备内部,网络设备可以包括网络处理器、路由器,参见图6,本实施例记载的令牌添加装置包括:
确定模块601,配置为基于对应于目标端口的各个队列的整形权重,对各队列中满足预设条件的队列的整形权重进行压缩,确定各队列的压缩权重;
确定模块601,还配置为确定各队列中分配到服务机会的目标队列,基于基准权重、各队列的压缩权重及目标队列的整形权重,确定向目标队列对应的令牌桶中添加的令牌数;
分发模块602,配置为向目标队列对应的令牌桶中添加确定模块确定的添加的令牌数。
本实施例中,基于整形权重的大小区别对待目标端口的各个队列,对满足预设条件的队列的整形权重进行压缩,同时保证不满足预设条件的队列的整形权重,根据队列的压缩权重确定需要向目标队列(得到服务的队列)的令牌桶中添加的令牌数,如此,各队列的压缩权重之和小于各队列的整形权重之和,由于不满足预设条件的队列的整形权重未被压缩(整形权重等于压缩权重),因此,本实施例可以增加不满足预设条件的队列的服务机会,并降低不满足预设条件的队列在得到服务时需要向对应的令牌桶中添加的令牌数,进而减少不满足预设条件的队列的流量突发,提高业务的服务质量。
作为一种实施方式,确定模块601,具体配置为判断队列的整形权重是否大于权重保留值;若是,则根据权重压缩系数对队列的整形权重进行压 缩,当确定压缩结果大于权重保留值时将压缩结果作为队列的压缩权重,当确定压缩结果不大于权重保留值时将权重保留值作为队列的压缩权重;
否则,将队列的整形权重作为队列的压缩权重。
作为一种实施方式,确定模块601,还配置为在确定各队列中分配到服务机会的目标队列之前,根据各队列的压缩权重,确定各队列的服务机会。
作为一种实施方式,确定模块601,具体配置为计算各队列的压缩权重之和;再计算队列与求和值的比值;将计算得到的比值确定为队列的服务机会。
作为一种实施方式,确定模块601,具体配置为:基于基准权重及各队列的压缩权重确定单次服务添加的最少令牌数;判断目标队列的整形权重是否不大于权重保留值;
若是,则将单次服务添加的最少令牌数确定为需要向目标队列对应的令牌桶中添加的令牌数;
否则,根据权重压缩系数对目标队列的整形权重进行压缩,当确定压缩结果不大于权重保留值时,计算目标队列的整形权重与权重保留值的比值,再计算比值与单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向目标队列对应的令牌桶中添加的令牌数;当确定压缩结果大于权重保留值时,计算权重压缩系数与单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向目标队列对应的令牌桶中添加的令牌数。
作为一种实施方式,确定模块601,具体配置为计算各队列的压缩权重之和;再计算求和值与基准权重的比值;将计算得到的比值确定为单次服务添加的最少令牌数。
在实际应用中,确定模块601、分发模块602,均可由位于网络设备的中央处理器(CPU,Central Processing Unit)、微处理器(MPU,Micro  Processor Unit)、数字信号处理器(DSP,Digital Signal Processor)、或现场可编程门阵列(FPGA,Field Programmable Gate Array)等实现。
实施例七
实体实施例
本实施例记载一种计算机存储介质,可以为ROM(例如,只读存储器、FLASH存储器、转移装置等)、磁存储介质(例如,磁带、磁盘驱动器等)、光学存储介质(例如,CD-ROM、DVD-ROM、纸卡、纸带等)以及其他熟知类型的程序存储器;计算机存储介质中存储有计算机可执行指令,当执行指令时,引起至少一个处理器执行包括以下的操作:
基于对应于目标端口的各个队列的整形权重,对各队列中满足预设条件的队列的整形权重进行压缩,确定各队列的压缩权重;
确定各队列中分配到服务机会的目标队列,基于基准权重、各队列的压缩权重及目标队列的整形权重,确定向目标队列对应的令牌桶中添加的令牌数并添加。
作为一种实施方式,基于对应于目标端口的各个队列的整形权重,对各队列中满足预设条件的队列的整形权重进行压缩,确定各队列的压缩权重,包括:判断队列的整形权重是否大于权重保留值;若是,则根据权重压缩系数对队列的整形权重进行压缩,当确定压缩结果大于权重保留值时将压缩结果作为队列的压缩权重,当确定压缩结果不大于权重保留值时将权重保留值作为队列的压缩权重;
否则,将队列的整形权重作为队列的压缩权重。
作为一种实施方式,确定各队列中分配到服务机会的目标队列之前,方法还包括:根据各队列的压缩权重,确定各队列的服务机会。
作为一种实施方式,根据各队列的压缩权重,确定各队列的服务机会,包括:计算各队列的压缩权重之和;再计算队列与求和值的比值;将计算 得到的比值确定为队列的服务机会。
作为一种实施方式,基于基准权重、各队列的压缩权重及目标队列的整形权重,确定向目标队列对应的令牌桶中添加的令牌数,包括:基于基准权重及各队列的压缩权重确定单次服务添加的最少令牌数;判断目标队列的整形权重是否不大于权重保留值;若是,则将单次服务添加的最少令牌数确定为需要向目标队列对应的令牌桶中添加的令牌数;否则,根据权重压缩系数对目标队列的整形权重进行压缩,当确定压缩结果不大于权重保留值时,计算目标队列的整形权重与权重保留值的比值,再计算比值与单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向目标队列对应的令牌桶中添加的令牌数;当确定压缩结果大于权重保留值时,计算权重压缩系数与单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向目标队列对应的令牌桶中添加的令牌数。
作为一种实施方式,基于基准权重及各队列的压缩权重确定单次服务添加的最少令牌数,包括:计算各队列的压缩权重之和;再计算求和值与基准权重的比值;将计算得到的比值确定为单次服务添加的最少令牌数。
综上,本发明实施例中通过对满足预设条件的队列的整形权重进行压缩,同时保证不满足预设条件的队列的整形权重,根据队列的压缩权重确定需要向目标队列(得到服务的队列)的令牌桶中添加的令牌数,如此,各队列的压缩权重之和小于各队列的整形权重之和,由于不满足预设条件的队列的整形权重未被压缩(整形权重等于压缩权重),因此,本实施例会增加不满足预设条件的队列的服务机会,并降低不满足预设条件的队列在得到服务时需要向对应的令牌桶中添加的令牌数,进而减少不满足预设条件的队列的流量突发,提高业务的服务质量。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结 合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
工业实用性
本发明实施例中,对满足预设条件的队列的整形权重进行压缩,同时保证不满足预设条件的队列的整形权重,根据队列的压缩权重确定需要向 目标队列(得到服务的队列)的令牌桶中添加的令牌数,如此,各队列的压缩权重之和小于各队列的整形权重之和,由于不满足预设条件的队列的整形权重未被压缩(整形权重等于压缩权重),因此,本实施例会增加不满足预设条件的队列的服务机会,并降低不满足预设条件的队列在得到服务时需要向对应的令牌桶中添加的令牌数,进而减少不满足预设条件的队列的流量突发,提高业务的服务质量。

Claims (13)

  1. 一种令牌添加方法,所述方法包括:
    基于对应于目标端口的各个队列的整形权重,对各所述队列中满足预设条件的队列的整形权重进行压缩,确定各所述队列的压缩权重;
    确定各所述队列中分配到服务机会的目标队列,基于基准权重、各所述队列的压缩权重及所述目标队列的整形权重,确定向所述目标队列对应的令牌桶中添加的令牌数并添加。
  2. 根据权利要求1所述的方法,其中,所述基于对应于目标端口的各个队列的整形权重,对各所述队列中满足预设条件的队列的整形权重进行压缩,确定各所述队列的压缩权重,包括:
    判断所述队列的整形权重是否大于权重保留值;
    若是,则根据权重压缩系数对所述队列的整形权重进行压缩,当确定所述压缩结果大于所述权重保留值时将所述压缩结果作为所述队列的压缩权重,当确定所述压缩结果不大于所述权重保留值时将所述权重保留值作为所述队列的压缩权重;
    否则,将所述队列的整形权重作为所述队列的压缩权重。
  3. 根据权利要求1所述的方法,其中,所述确定各所述队列中分配到服务机会的目标队列之前,所述方法还包括:
    根据各所述队列的压缩权重,确定各所述队列的服务机会。
  4. 根据权利要求3所述的方法,其中,所述根据各所述队列的压缩权重,确定各所述队列的服务机会,包括:
    计算各所述队列的压缩权重之和;
    再计算所述队列与所述求和值的比值;
    将计算得到的比值确定为所述队列的服务机会。
  5. 根据权利要求1所述的方法,其中,所述基于基准权重、各所述队 列的压缩权重及所述目标队列的整形权重,确定向所述目标队列对应的令牌桶中添加的令牌数,包括:
    基于基准权重及各所述队列的压缩权重确定单次服务添加的最少令牌数;
    判断所述目标队列的整形权重是否不大于权重保留值;
    若是,则将所述单次服务添加的最少令牌数确定为需要向所述目标队列对应的令牌桶中添加的令牌数;
    否则,根据权重压缩系数对所述目标队列的整形权重进行压缩,当确定所述压缩结果不大于所述权重保留值时,计算所述目标队列的整形权重与所述权重保留值的比值,再计算所述比值与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数;当确定所述压缩结果大于所述权重保留值时,计算所述权重压缩系数与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数。
  6. 根据权利要求5所述的方法,其中,所述基于基准权重及各所述队列的压缩权重确定单次服务添加的最少令牌数,包括:
    计算各所述队列的压缩权重之和;
    再计算所述求和值与基准权重的比值;
    将计算得到的比值确定为单次服务添加的最少令牌数。
  7. 一种令牌添加装置,所述装置包括:
    确定模块,配置为基于对应于目标端口的各个队列的整形权重,对各所述队列中满足预设条件的队列的整形权重进行压缩,确定各所述队列的压缩权重;
    所述确定模块,还配置为确定各所述队列中分配到服务机会的目标队列,基于基准权重、各所述队列的压缩权重及所述目标队列的整形权重, 确定向所述目标队列对应的令牌桶中添加的令牌数;
    分发模块,配置为向所述目标队列对应的令牌桶中添加所述确定模块确定的添加的令牌数。
  8. 根据权利要求7所述的装置,其中,所述确定模块,具体配置为判断所述队列的整形权重是否大于权重保留值;
    若是,则根据权重压缩系数对所述队列的整形权重进行压缩,当确定所述压缩结果大于所述权重保留值时将所述压缩结果作为所述队列的压缩权重,当确定所述压缩结果不大于所述权重保留值时将所述权重保留值作为所述队列的压缩权重;
    否则,将所述队列的整形权重作为所述队列的压缩权重。
  9. 根据权利要求7所述的装置,其中,所述确定模块,还配置为在确定各所述队列中分配到服务机会的目标队列之前,根据各所述队列的压缩权重,确定各所述队列的服务机会。
  10. 根据权利要求9所述的装置,其中,所述确定模块,具体配置为计算各所述队列的压缩权重之和;再计算所述队列与所述求和值的比值;将计算得到的比值确定为所述队列的服务机会。
  11. 根据权利要求7所述的装置,其中,所述确定模块,具体配置为:
    基于基准权重及各所述队列的压缩权重确定单次服务添加的最少令牌数;
    判断所述目标队列的整形权重是否不大于权重保留值;
    若是,则将所述单次服务添加的最少令牌数确定为需要向所述目标队列对应的令牌桶中添加的令牌数;
    否则,根据权重压缩系数对所述目标队列的整形权重进行压缩,当确定所述压缩结果不大于所述权重保留值时,计算所述目标队列的整形权重与所述权重保留值的比值,再计算所述比值与所述单次服务添加的最少令 牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数;当确定所述压缩结果大于所述权重保留值时,计算所述权重压缩系数与所述单次服务添加的最少令牌数的乘积,将计算得到的乘积值确定为需要向所述目标队列对应的令牌桶中添加的令牌数。
  12. 根据权利要求7所述的装置,其中,所述确定模块,具体配置为计算各所述队列的压缩权重之和;再计算所述求和值与基准权重的比值;将计算得到的比值确定为单次服务添加的最少令牌数。
  13. 一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至6任一项所述的方法。
PCT/CN2016/110045 2016-03-17 2016-12-15 令牌添加方法、装置及计算机存储介质 WO2017157064A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610158873.4A CN107204930B (zh) 2016-03-17 2016-03-17 令牌添加方法及装置
CN201610158873.4 2016-03-17

Publications (1)

Publication Number Publication Date
WO2017157064A1 true WO2017157064A1 (zh) 2017-09-21

Family

ID=59851916

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/110045 WO2017157064A1 (zh) 2016-03-17 2016-12-15 令牌添加方法、装置及计算机存储介质

Country Status (2)

Country Link
CN (1) CN107204930B (zh)
WO (1) WO2017157064A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612699A (zh) * 2021-08-02 2021-11-05 上海航天测控通信研究所 一种提高IP over CCSDS传输效率的方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110048964B (zh) * 2018-01-15 2023-09-12 深圳市中兴微电子技术有限公司 一种业务队列的整形方法、终端及存储介质
WO2022178872A1 (zh) * 2021-02-26 2022-09-01 华为技术有限公司 流量整形方法及装置
CN116686256A (zh) * 2021-05-06 2023-09-01 华为技术有限公司 一种基于令牌桶的流量控制方法和网络设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599905A (zh) * 2009-06-30 2009-12-09 中兴通讯股份有限公司 一种实现流量整形令牌添加的方法、装置及***
CN103547330A (zh) * 2012-12-12 2014-01-29 华为技术有限公司 用户调度方法及其装置
CN104753809A (zh) * 2013-12-25 2015-07-01 深圳市中兴微电子技术有限公司 一种流量整形中添加令牌的方法及装置
CN106302231A (zh) * 2015-05-12 2017-01-04 深圳市中兴微电子技术有限公司 数据流队列整形的方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5953006A (en) * 1992-03-18 1999-09-14 Lucent Technologies Inc. Methods and apparatus for detecting and displaying similarities in large data sets
CN103259743B (zh) * 2012-02-15 2017-10-27 中兴通讯股份有限公司 基于令牌桶的输出流量控制的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599905A (zh) * 2009-06-30 2009-12-09 中兴通讯股份有限公司 一种实现流量整形令牌添加的方法、装置及***
CN103547330A (zh) * 2012-12-12 2014-01-29 华为技术有限公司 用户调度方法及其装置
CN104753809A (zh) * 2013-12-25 2015-07-01 深圳市中兴微电子技术有限公司 一种流量整形中添加令牌的方法及装置
CN106302231A (zh) * 2015-05-12 2017-01-04 深圳市中兴微电子技术有限公司 数据流队列整形的方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612699A (zh) * 2021-08-02 2021-11-05 上海航天测控通信研究所 一种提高IP over CCSDS传输效率的方法
CN113612699B (zh) * 2021-08-02 2023-12-08 上海航天测控通信研究所 一种提高IP over CCSDS传输效率的方法

Also Published As

Publication number Publication date
CN107204930B (zh) 2020-05-19
CN107204930A (zh) 2017-09-26

Similar Documents

Publication Publication Date Title
US10772081B2 (en) Airtime-based packet scheduling for wireless networks
US10178053B2 (en) Programmable broadband gateway hierarchical output queueing
WO2017157064A1 (zh) 令牌添加方法、装置及计算机存储介质
EP2466824B1 (en) Service scheduling method and device
CN104079501B (zh) 一种基于多优先级的队列调度方法
CN106793133B (zh) 一种电力无线通信***中保障多业务QoS的调度方法
CN102611605B (zh) 一种数据交换网的调度方法、装置和***
US9940471B2 (en) Virtual output queue authorization management method and device, and computer storage medium
CN107835133B (zh) 一种基于多属性决策的流优先级控制方法
WO2010124516A1 (zh) 数据通信输入端口调度方法及装置
WO2014173356A1 (zh) 缓存空间分配控制方法、装置及计算机存储介质
CN113328879B (zh) 一种基于网络演算的云数据中心网络QoS保证方法
CN105577563B (zh) 流量管理方法
WO2017032075A1 (zh) 一种服务质量复用方法及装置、计算机存储介质
US20140095902A1 (en) Power Saving Traffic Management Policies
CN115941634A (zh) 共享缓存的阈值调节方法、装置和计算机设备
WO2020036200A1 (ja) 通信制御装置、および、通信制御方法
CN107277862B (zh) 一种移动云计算环境下的视频传输调度方法
WO2016000326A1 (zh) 一种用户队列调度的方法、装置及计算机存储介质
Wang et al. A priority-based EDF scheduling algorithm for H. 264 video transmission over WiMAX network
Hajjawi et al. A novel scheduling algorithm based class-service using game theory for LTE network
Sharmal et al. Review of Different Queuing Disciplines in VOIP, Video Conferencing and File Transfer
US10742710B2 (en) Hierarchal maximum information rate enforcement
Wang et al. Nested {QoS}: Providing Flexible Performance in Shared {IO} Environment
Chang et al. Block-based fair queuing: an efficient network QoS provisioning algorithm for high-speed data transmission

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 16894223

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16894223

Country of ref document: EP

Kind code of ref document: A1