WO2015024400A1 - 一种路由器的拥塞避免方法及装置 - Google Patents

一种路由器的拥塞避免方法及装置 Download PDF

Info

Publication number
WO2015024400A1
WO2015024400A1 PCT/CN2014/077913 CN2014077913W WO2015024400A1 WO 2015024400 A1 WO2015024400 A1 WO 2015024400A1 CN 2014077913 W CN2014077913 W CN 2014077913W WO 2015024400 A1 WO2015024400 A1 WO 2015024400A1
Authority
WO
WIPO (PCT)
Prior art keywords
queue
packet
storage unit
queue depth
basic storage
Prior art date
Application number
PCT/CN2014/077913
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 WO2015024400A1 publication Critical patent/WO2015024400A1/zh

Links

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
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • 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/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6255Queue scheduling characterised by scheduling criteria for service slots or service orders queue load conditions, e.g. longest queue first

Definitions

  • the present invention relates to the field of network transmission control, and in particular, to a router congestion avoiding method and related apparatus.
  • BACKGROUND With the development of networks, the rapid growth of data traffic has made network congestion increasingly serious. Network congestion will cause QoS performance indicators such as delay and throughput to drop, which is a key factor affecting resource utilization such as bandwidth and system cache.
  • An effective congestion avoidance mechanism is important for improving router performance. Congestion avoidance is based on the use of queues or memory buffers. When the congestion is increasing, the packets are discarded actively, and the network traffic is removed to adjust the network overload. In short, it is based on the cache (that is, the queue depth;) to determine whether the packet is discarded.
  • queue depth and message length are the most fundamental basis for congestion avoidance.
  • the existing queue depth is calculated and updated according to the packets entering the system and the length of the packets sent out. For example, as shown in Figure 1, the packet entering the system is pkt_in, the length of the packet is a, the queue depth of the current queue is q_len, and the discarding threshold is td_th. If q_len+ a is greater than td_th, it is determined that the packet is discarded, and the queue depth remains unchanged; otherwise, the packet is judged to be enqueued, and the queue depth is updated to be q_len+a.
  • the packet length is b
  • the queue depth of the current queue is q_len
  • the update queue depth is q_len-b.
  • the unit of the message length is byte.
  • the present invention refers to the byte mode.
  • the system uses the cache space to store messages, not based on byte storage and scheduling, but in chunked blocks. For short packets and packet tail slices with a length of less than 1 block, one block is required to be stored.
  • Block size is variable, it can be 256Byte, 512Byte or 1Kbyte and so on.
  • a newly entered message with a message length of 257 bytes.
  • the message can be enqueued.
  • the block size is 256 bytes.
  • the queue depth maintained by the system is q_len + 257.
  • the packet needs to occupy 2 blocks, which is 512 bytes.
  • the actual cache depth of the system cache is q_len+512. Therefore, the cache space actually occupied by the queue is larger than the cache space occupied by the queue depth. For the above reasons, when the short packet and the long end-slice slice whose packet length is less than the block length are generated, the cache fragment that is not available is generated.
  • the discard threshold for each queue the user divides the queue by the maximum cache space supported by the system. Assuming that the total system cache is M byte, N queues can be supported, and all queues share the system cache. If the discarding threshold of each queue is set to be larger, for example, greater than or equal to the M/N byte, the discarding threshold is not exceeded when the congestion is judged, but the cache occupied by each queue is large, and the threshold is actually exceeded. This causes queues to preempt each other's cache space and even cache overflow issues.
  • the discarding threshold of each queue is set to be small, for example, it is much smaller than the M/N, the congestion judgment is much smaller than the discarding threshold.
  • the actual cache occupied by each queue is small, so that the total cache of the system cannot be obtained. Make full use of the cache utilization is low. It can be seen that the existing Byte-based congestion avoidance mechanism is not reasonable enough to solve the congestion problem. It is not possible to judge the packet discard according to the actual queue depth. As a result, the congestion discard judgment is invalid, and the cache space between the queues and the cache utilization rate are low. And other issues.
  • An object of the present invention is to provide a method and a device for avoiding congestion of a router, which can better solve the problem of discarding packet according to the actual queue depth.
  • a congestion avoiding method of a router including: obtaining, according to a queue number of a to-be-processed packet, a basic storage unit that is currently buffering the queue; The packet length is converted to the packet length in the basic storage unit mode, and the packet in the basic storage unit mode is obtained. The packet in the basic storage unit mode is used by using the packet length in the basic storage unit mode. Discard judgment processing and queue depth adjustment processing are performed.
  • the packet length in the basic storage unit mode is obtained by dividing the packet length of the to-be-processed message by the basic storage unit and rounding up.
  • the queue depth of the queue and the queue depth of the system are obtained according to the queue number of the to-be-processed message, and the packet length in the basic storage unit mode, the queue depth of the queue, and the queue of the system are utilized. Depth, the discarding decision process is performed, and according to the processing result, it is determined whether to discard or store the packet in the basic storage unit mode.
  • the message discarding decision process is performed by the tail drop TD algorithm and/or the weighted random early detection WRED algorithm.
  • the queue depth of the queue and the queue depth of the system are respectively added to the packet length in the basic storage unit mode, and the adjusted length is obtained.
  • the queue depth of the queue and the queue depth of the system otherwise, the queue depth of the queue and the queue depth of the system are kept unchanged.
  • the queue depth of the queue is used to obtain the queue depth of the queue and the queue depth of the system, and the queue depth of the queue is obtained.
  • the queue depth of the system is subtracted from the packet length in the basic storage unit mode, and the queue depth of the adjusted queue and the queue depth of the system are obtained.
  • a congestion avoiding apparatus of a router including: a storage unit acquiring unit, configured to obtain a basic storage unit that is currently buffering the queue according to a queue number of a to-be-processed message.
  • the message length conversion unit is configured to convert the packet length of the to-be-processed message into a packet length in the basic storage unit mode to obtain a packet in a basic storage unit mode;
  • the congestion avoidance processing unit is configured to utilize The packet length in the basic storage unit mode is subjected to discarding decision processing and queue depth adjustment processing on the packet in the basic storage unit mode.
  • the message length conversion unit divides the message length of the to-be-processed message by the basic storage unit and rounds up to obtain the message length in the basic storage unit mode.
  • the congestion avoidance processing unit includes: a discarding decision subunit, configured to use a queue depth of a queue obtained by using a queue number of the to-be-processed message, a queue depth of the system, and a report in the basic storage unit mode The length of the file is discarded, and the discarding decision process is performed. According to the processing result, it is determined whether the packet in the basic storage unit mode is discarded or stored.
  • the congestion avoidance processing unit further includes: a queue depth maintenance subunit, configured to: when determining to store the message in the basic storage unit mode, respectively, the queue depth of the queue and the queue depth of the system are respectively The length of the packet in the basic storage unit mode is added, and the queue depth of the adjusted queue and the queue depth of the system are obtained. Otherwise, the queue depth of the queue and the queue depth of the system are kept unchanged, and When the message in the basic storage unit mode is scheduled to be dequeued, Using the queue number of the packet, the queue depth of the queue and the queue depth of the system are obtained, and the queue depth of the queue and the queue depth of the system are respectively subtracted from the packet length in the basic storage unit mode.
  • a queue depth maintenance subunit configured to: when determining to store the message in the basic storage unit mode, respectively, the queue depth of the queue and the queue depth of the system are respectively The length of the packet in the basic storage unit mode is added, and the queue depth of the adjusted queue and the queue depth of the system are obtained. Otherwise, the
  • the embodiment of the present invention converts the packet length of the dequeued and dequeued packets, and uses the converted report.
  • the length of the packet and the depth of the queue are discarded. Therefore, the queue depth of the congestion avoidance maintenance is the same as the actual queue depth of the cache space. This can effectively determine the congestion discarding and solve the problem of preempting the cache space between queues.
  • the system cache is fully utilized to improve cache utilization.
  • FIG. 1 is a schematic diagram of a queue depth maintenance method for supporting a TD algorithm provided by the prior art
  • FIG. 2 is a schematic block diagram of a congestion avoidance method for a router according to an embodiment of the present invention
  • FIG. 3 is an original message storage provided by the prior art.
  • FIG. 4 is a schematic diagram of an improved packet storage space mapping relationship according to an embodiment of the present invention
  • FIG. 5 is a flowchart of a congestion avoidance method based on WRED and TD mechanisms according to an embodiment of the present invention
  • the congestion avoidance mechanism of the embodiment of the present invention dynamically adjusts the length of the packet used for congestion avoidance according to the basic storage unit that the system actually stores.
  • the length of the adjustable packet includes the length of the packet that enters the queue and the length of the packet that is dequeued. By adjusting the packet length, the queue depth is consistent with the actual storage of the cache.
  • the updated packet length and queue depth can be used for, but not limited to, the discarding judgment in the TD algorithm and the WRED algorithm.
  • Other congestion avoidance algorithms can support This mechanism, hereinafter referred to as the BLOCK mechanism.
  • Step 201 Obtain a basic storage unit that is currently buffering the queue according to the queue number of the to-be-processed message.
  • Step 202 Convert the packet length of the to-be-processed packet to the packet length in the basic storage unit mode, and obtain the packet in the basic storage unit mode.
  • the packet length in the basic storage unit mode is obtained by dividing the packet length of the to-be-processed message by the basic storage unit and rounding up.
  • Step 203 Perform discarding decision processing and queue depth adjustment processing on the packet in the basic storage unit mode by using the packet length in the basic storage unit mode.
  • the queue depth of the queue and the queue depth of the system are obtained according to the queue number of the to-be-processed message, and the packet length in the basic storage unit mode, the queue depth of the queue, and the queue of the system are utilized. Depth, the discarding decision process is performed, and according to the processing result, it is determined whether to discard or store the packet in the basic storage unit mode.
  • the discarding decision process can be processed by using a congestion avoidance algorithm such as a TD algorithm or a WRED algorithm.
  • the queue depth of the queue and the queue depth of the system are respectively added to the packet length in the basic storage unit mode, and the adjusted queue is obtained.
  • FIG. 3 is a schematic diagram of the original packet storage space mapping relationship provided by the prior art. As shown in FIG. 3, the queue depth of the maintenance is the sum of the packet lengths of the packets 0 to 4, because the system uses the cache space for storage.
  • FIG. 5 is a flowchart of a congestion avoidance method based on WRED and TD mechanism according to an embodiment of the present invention. As shown in FIG. 5, a cached block value (ie, a basic storage unit) is determined according to a storage condition of a system cache.
  • the queue depth is read according to the queue number of the packet. Then, according to the block value, the message length is converted into the message length in the basic storage unit mode. The converted packet length and the queue depth are sent to a congestion avoidance algorithm such as a TD algorithm or a WRED algorithm for judging according to a normal flow. If the user chooses TD The method adds the length of the converted packet to the queue depth of the queue to which the packet belongs. If the result of the addition is greater than the discarding threshold td_th, the packet is discarded. Otherwise, the packet is queued and the queue of the queue is adjusted. Depth and system queue depth, that is, the converted message length is added to the original queue depth.
  • a congestion avoidance algorithm such as a TD algorithm or a WRED algorithm for judging according to a normal flow. If the user chooses TD The method adds the length of the converted packet to the queue depth of the queue to which the packet belongs. If the result of the addition is greater than the discarding threshold td_th, the packet
  • the judgment method is roughly the same as the original method. The only difference is the length of the converted message, which will not be described again.
  • the queue depth of the queue to which the dequeue packet belongs and the queue depth of the system are read.
  • the block value is obtained according to the queue number, and the packet length of the dequeued packet is converted.
  • the queue depth of the queue and the queue depth of the system are respectively updated, that is, the converted packet length is subtracted from the original queue depth.
  • the method for adaptive congestion avoidance includes the following steps: Step 1: A new packet enters the system, and according to the queue number of the packet, the queue depth q_len of the queue is read. System queue depth sys_q_len. In the second step, according to the queue number, the basic storage unit of the queue in the cache is queried, that is, the block value block_size of the queue is obtained. The third step, the new enrollment package length calculation.
  • the converted packet length is pkt_len_ new packet length by dividing pkt_ken
  • the fourth step is to discard the packet according to the length of the converted packet. If the packet is queued (that is, it is not discarded), the system cache is updated, and the queue depth of the queue and the queue depth of the system are respectively added to the converted packet length. Otherwise, the packet is discarded, and the queue depth of the queue is not updated. And the queue depth of the system.
  • the fifth step the message is dispatched out of the team. According to the queue number of the message, the queue depth q_len of the queue and the queue depth sys_q_l en of the system are read.
  • the sixth step is to query the basic storage unit obtained by the queue according to the queue number of the packet, that is, obtain the block value block_size of the queue.
  • the seventh step the calculation of the length of the new dequeue message.
  • the message length pkt_len is converted into the message length pkt_len_ne W under the Block mechanism.
  • the converted message length pkt_len_new is obtained by dividing the message length pkt_ken by the block value block_size and rounding up.
  • the packet length satisfies an integer number of blocks
  • the packet is updated. The queue depth of the current queue and the queue depth of the system are respectively subtracted from the converted packet length to obtain a new queue depth.
  • the embodiment of the present invention further provides a congestion avoiding device of a router, including: a storage unit acquiring unit, configured to obtain a basic storage unit that is currently buffering the queue according to a queue number of the to-be-processed message; a unit, configured to convert a packet length of the to-be-processed packet into a packet length in a basic storage unit mode, to obtain a packet in a basic storage unit mode, and preferably, the packet length conversion unit passes the The packet length of the packet to be processed is divided by the basic storage unit, and rounded up to obtain the packet length in the basic storage unit mode; the congestion avoidance processing unit is configured to use the basic storage unit mode The packet length is subjected to discarding decision processing and queue depth adjustment processing on the packet in the basic storage unit mode.
  • the congestion avoidance processing unit includes a discarding decision subunit and a queue depth maintenance subunit; wherein the discarding decision subunit utilizes a queue depth of the queue obtained by the queue number of the to-be-processed message and a queue depth of the system, Determining the length of the packet in the basic storage unit mode, performing discarding decision processing, and determining whether to discard or store the packet in the basic storage unit mode according to the processing result, and determine the packet in the basic storage unit mode.
  • the queue depth maintenance sub-unit adds the queue depth of the queue and the queue depth of the system to the packet length in the basic storage unit mode, respectively, to obtain the adjusted queue depth of the queue and the queue of the system.
  • FIG. 6 is a structural diagram of a congestion avoidance apparatus based on WRED and TD mechanisms according to an embodiment of the present invention. As shown in FIG. 6, the BLOCK mode detection module, the enqueue calculation module, and the dequeue calculation module are included.
  • blk_size Block size
  • the BLOCK mode detection module implements the function of the storage unit acquisition unit.
  • the enqueue calculation module is responsible for maintaining the message length and queue depth entering the system.
  • the module reads the queue depth q_len (Q ueue Length) of the current queue and the queue depth sys_q_len (System Queue Length) of the system.
  • the packet length is converted into the packet length in the basic storage unit mode, and the converted packet length and the queue depth are sent to the congestion avoidance algorithm module (including the TD algorithm, WRED algorithm, etc.).
  • the determination of the final result is discarded, sy are updated queue depth of the queue and the queue depth q_len_ neW system s_q_l en-new.
  • the enqueue calculation module implements the functions of the message length conversion unit and the queue depth maintenance subunit, and the congestion avoidance algorithm module implements the function of discarding the decision subunit.
  • the dequeue calculation module is responsible for maintaining the packet length and queue depth that are dispatched from the system. First, after receiving the message information of the scheduled dequeue, the module reads the queue depth q_len (Q UeU e Length) of the current queue and the queue depth sys_q_lenCSystem Queue Length of the system.
  • the length of the dequeue message is converted into the packet length in the basic storage unit mode.
  • the packet length obtained after the conversion and queue depth respectively update the queue and the queue depth q_len_ neW system queue depth S ys_q_l en _ neW.
  • the dequeue calculation module implements the functions of the message length conversion unit and the queue depth maintenance subunit.
  • the workflow of the device is as follows: After the first packet enters the system, the queue depth q_len and the system queue depth sys_q_len of the queue are read according to the queue number of the packet.
  • the BLOCK mode detection module monitors the storage of the system cache in real time.
  • the basic storage unit of the queue cache is detected according to the queue number of the packet.
  • the module will generate a block valid indication blk_vld(Block Valid), and according to the queue
  • the buffer is in the interval, and the block value blk_size (Block size) is determined, and the block valid indication blk_vld and the block value blk_size are passed to the enqueue calculation module and the dequeue calculation module.
  • the enqueue calculation module maintains the packet length and queue depth of entering the system.
  • the enqueue calculation module reads the queue depth q_len (Queue Length) of the current queue and the queue depth sys_q_len (System Queue Length) of the system.
  • the converted packet length and queue depth are sent to the congestion avoidance algorithm module, such as the TD algorithm, the WRED algorithm, and the like.
  • the congestion avoidance algorithm module discards the decision based on the converted message length.
  • the four-step, dequeue calculation module is responsible for maintaining the packet length and queue depth that are dispatched from the system.
  • the module After receiving the message of the scheduled dequeue, the module reads the queue depth q_len of the current queue and the queue depth sys_q_len of the system. According to the queue number of the dequeue message, the BLOCK mode detection module queries the storage condition of the queue.
  • the length of the converted packet is used as the actual discarding judgment basis, so that the queue depth for congestion avoidance maintenance is consistent with the actual queue depth stored in the cache.
  • the converted packet length and queue depth can be used to support but not limited to TD policy, WRED policy, and other congestion avoidance algorithms.
  • the packet length is converted to the packet length of the block mechanism, so that the effective congestion judgment can be performed according to the set threshold, and the preemption cache and system buffer overflow problem are avoided.
  • the packet length is converted to the packet length in the block mechanism, more buffer space can be released, so that more subsequent packets can be enqueued and the system cache can be fully utilized.
  • the embodiments of the present invention have the following technical effects:
  • the embodiment of the present invention has made progress in dealing with network congestion, and has achieved the effects of improving congestion avoidance performance and system cache utilization.
  • the invention has been described in detail above, the invention is not limited thereto, and various modifications may be made by those skilled in the art in accordance with the principles of the invention. Therefore, modifications made in accordance with the principles of the invention should be construed as falling within the scope of the invention.
  • Industrial Applicability The technical solution provided by the embodiments of the present invention can be applied to the network transmission control field to ensure that the queue depth of the maintenance is consistent with the actual queue depth stored in the cache, effectively improving the performance of congestion avoidance, and improving the utilization of the entire system cache.

Landscapes

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

Abstract

公开了一种路由器的拥塞避免方法及装置,涉及网络传输控制领域,所述方法包括:根据待处理报文的队列号,得到当前正在对该队列进行缓存的基本存储单位;将所述待处理报文的报文长度转换为基本存储单位模式下的报文长度,得到基本存储单位模式下的报文;利用所述基本存储单位模式下的报文长度,对所述基本存储单位模式下的报文进行丢弃判决处理和队列深度调整处理。能够使维护的队列深度与缓存中存储的实际队列深度保持一致,有效改善拥塞避免的性能,提高整个***缓存的利用率。

Description

一种路由器的拥塞避免方法及装置 技术领域 本发明涉及网络传输控制领域, 特别涉及路由器拥塞避免方法和相关装置。 背景技术 随着网络的发展, 数据流量的快速增长, 使得网络拥塞日益严重。 而网络拥塞会 造成延迟和吞吐量等 QoS性能指标下降, 是影响带宽、 ***缓存等资源利用率的关键 因素。 有效的拥塞避免机制对于提高路由器性能具有重要意义。 拥塞避免是根据队列或内存缓冲区的使用情况, 在拥塞有加剧的趋势时, 主动丢 弃报文,通过调整网络的流量来解除网络过载。简而言之, 就是根据缓存 (即队列深度;) 来判断报文是否丢弃。 因此, 队列深度和报文长度是拥塞避免的最根本依据。 现有的队列深度是根据进入***的报文和调度出去的报文长度进行计算和更新 的。 以尾部丢弃 TD算法为例,如图 1所示,新进入***的报文 pkt_in,报文长度为 a, 当前队列的队列深度为 q_len, 丢弃阈值为 td_th。 若 q_len+ a大于 td_th, 则判断该报 文丢弃, 队列深度保持不变; 否则, 判断该报文入队, 并更新队列深度为 q_len+ a。 当有报文 pkt_out要调度出去, 报文长度为 b, 当前队列的队列深度为 q_len, 则更新 队列深度为 q_len-b。报文长度的单位为字节,为了方便说明,本发明称之为字节模式。 在实际应用中, 由于存储介质和报文调度效率等情况, ***在使用缓存空间存储 报文时, 并不是基于字节存储和调度的, 而是按照分块 Block存储的。 对于长度不足 1个 Block的短包和报文尾切片, 均需要占用 1个 Block来存储。 Block大小不定, 可 以是 256Byte, 512Byte或者 1Kbyte等等。 例如, 一个新进入的报文, 报文长度为 257byte。 经过 TD算法判断, 该报文可以入队。 此时, Block大小为 256byte。 ***维 护的队列深度为 q_len + 257, 而实际存储的缓存中, 该报文需要占用 2个 Block, 即 512byte。 这样, ***缓存实际的队列深度为 q_len+512。 因此, 就会出现队列实际占 用的缓存空间大于队列深度所反映的缓存空间占用量。 基于以上的原因, 在存储包长不足 Block长度的短包和长包尾切片时, 就会产生 不可用的缓存碎片。 除了包长恰好为 Block的整数倍之外的其它包长时, 都不可能用 完全部的***缓存。 而实际的报文长度都是随机的, 所以缓存碎片必然会存在。 用户在配置每个队列的丢弃阈值时是针对***支持的最大缓存空间按队列进行划 分。 假设***总缓存为 M byte, 可支持 N个队列, 所有队列共享***缓存。 若每个队 列的丢弃阈值设置的较大, 例如大于或等于 M/N byte, 则在拥塞判断时没有超过丢弃 阈值, 但每个队列占用的缓存都很大, 实际已经超出了门限值, 导致队列之间相互抢 占缓存空间, 甚至出现缓存溢出问题。 若每个队列的丢弃阈值设置的较小, 例如远远 小于 M/N,则在拥塞判断时会远小于丢弃阈值, 每个队列实际占用的缓存都很小, 从而 使***总缓存得不到充分利用, 缓存利用率较低。 可见, 现有的基于字节模式的拥塞避免机制在解决拥塞问题上不够合理, 不能够 根据实际队列深度判断报文丢弃, 会导致拥塞丢弃判断无效, 队列之间抢占缓存空间 和缓存利用率低下等问题。 发明内容 本发明实施例的目的在于提供一种路由器的拥塞避免方法及装置, 能更好地解决 根据实际队列深度判断报文丢弃的问题。 根据本发明实施例的一个方面, 提供了一种路由器的拥塞避免方法, 包括: 根据待处理报文的队列号, 得到当前正在对该队列进行缓存的基本存储单位; 将所述待处理报文的报文长度转换为基本存储单位模式下的报文长度, 得到基本 存储单位模式下的报文; 利用所述基本存储单位模式下的报文长度, 对所述基本存储单位模式下的报文进 行丢弃判决处理和队列深度调整处理。 优选地, 通过将所述待处理报文的报文长度与所述基本存储单位相除, 并向上取 整, 得到基本存储单位模式下的报文长度。 优选地, 根据所述待处理报文的队列号, 得到该队列的队列深度和***的队列深 度, 并利用所述基本存储单位模式下的报文长度、 所述队列的队列深度和***的队列 深度, 进行丢弃判决处理, 根据处理结果, 确定对所述基本存储单位模式下的报文进 行丢弃还是存储。 优选地,通过尾部丢弃 TD算法和 /或加权随机早期检测 WRED算法,进行报文丢 弃判决处理。 优选地, 当确定对所述基本存储单位模式下的报文进行存储时, 将所述队列的队 列深度和***的队列深度分别加上所述基本存储单位模式下的报文长度, 得到调整后 的队列的队列深度和***的队列深度, 否则, 保持所述队列的队列深度和***的队列 深度不变。 优选地, 当对所述基本存储单位模式下的报文调度出队时, 利用所述报文的队列 号, 得到所述队列的队列深度和***的队列深度, 并将所述队列的队列深度和***的 队列深度分别减去所述基本存储单位模式下的报文长度, 得到调整后的队列的队列深 度和***的队列深度。 根据本发明实施例的另一方面, 提供了一种路由器的拥塞避免装置, 包括: 存储单位获取单元, 设置为根据待处理报文的队列号, 得到当前正在对该队列进 行缓存的基本存储单位; 报文长度转换单元, 设置为将所述待处理报文的报文长度转换为基本存储单位模 式下的报文长度, 得到基本存储单位模式下的报文; 拥塞避免处理单元, 设置为利用所述基本存储单位模式下的报文长度, 对所述基 本存储单位模式下的报文进行丢弃判决处理和队列深度调整处理。 优选地, 所述报文长度转换单元通过将所述待处理报文的报文长度与所述基本存 储单位相除, 并向上取整, 得到基本存储单位模式下的报文长度。 优选地, 所述拥塞避免处理单元包括: 丢弃判决子单元, 设置为利用通过所述待处理报文的队列号得到的队列的队列深 度和***的队列深度、 所述基本存储单位模式下的报文长度, 进行丢弃判决处理, 根 据处理结果, 确定对所述基本存储单位模式下的报文进行丢弃还是存储。 优选地, 所述拥塞避免处理单元还包括: 队列深度维护子单元, 设置为当确定对所述基本存储单位模式下的报文进行存储 时, 将所述队列的队列深度和***的队列深度分别加上所述基本存储单位模式下的报 文长度, 得到调整后的队列的队列深度和***的队列深度, 否则, 保持所述队列的队 列深度和***的队列深度不变, 并当对所述基本存储单位模式下的报文调度出队时, 利用所述报文的队列号, 得到所述队列的队列深度和***的队列深度, 并将所述队列 的队列深度和***的队列深度分别减去所述基本存储单位模式下的报文长度, 得到调 整后的队列的队列深度和***的队列深度。 与现有技术相比较, 本发明实施例的有益效果在于: 本发明实施例根据缓存队列的基本存储单位, 转换拥塞判断的出队和入队报文的 报文长度, 并利用转换后的报文长度和队列深度做丢弃判断, 从而使拥塞避免维护的 队列深度与缓存空间存储的实际队列深度保持一致, 既可有效的进行拥塞丢弃判断, 解决队列之间相互抢占缓存空间问题, 又尽量保证***缓存得到充分利用, 提高了缓 存利用率。 附图说明 图 1是现有技术提供的支持 TD算法的队列深度维护示意图; 图 2是本发明实施例提供的路由器的拥塞避免方法原理框图; 图 3是现有技术提供的原始的报文存储空间映射关系示意图; 图 4是本发明实施例提供的改进后的报文存储空间映射关系示意图; 图 5 是本发明实施例提供的基于 WRED和 TD机制的拥塞避免方法流程图; 图 6 是本发明实施例提供的基于 WRED和 TD机制的拥塞避免装置结构图。 具体实施方式 以下结合附图对本发明的优选实施例进行详细说明, 应当理解, 以下所说明的优 选实施例仅用于说明和解释本发明, 并不用于限定本发明。 本发明实施例的拥塞避免机制是根据***实际存储的基本存储单位, 动态调整用 于拥塞避免的报文长度, 可调整的报文长度包括入队的报文长度和出队的报文长度。 通过调整报文长度, 获得与缓存实际存储相一致的队列深度, 更新后的报文长度和队 列深度可以用于但不局限于 TD算法和 WRED算法中的丢弃判断,其它拥塞避免算法 都可以支持该机制, 以下简称 BLOCK机制。 图 2是本发明实施例提供的路由器的拥塞避免方法原理框图, 如图 2所示, 步骤 包括: 步骤 201、 根据待处理报文的队列号, 得到当前正在对该队列进行缓存的基本存 储单位。 步骤 202、将所述待处理报文的报文长度转换为基本存储单位模式下的报文长度, 得到基本存储单位模式下的报文。 优选地, 通过将所述待处理报文的报文长度与所述基本存储单位相除, 并向上取 整, 得到基本存储单位模式下的报文长度。 步骤 203、 利用所述基本存储单位模式下的报文长度, 对所述基本存储单位模式 下的报文进行丢弃判决处理和队列深度调整处理。 优选地, 根据所述待处理报文的队列号, 得到该队列的队列深度和***的队列深 度, 并利用所述基本存储单位模式下的报文长度、 所述队列的队列深度和***的队列 深度, 进行丢弃判决处理, 根据处理结果, 确定对所述基本存储单位模式下的报文进 行丢弃还是存储。 丢弃判决处理可以利用 TD算法、 WRED算法等拥塞避免算法进行 处理。 当确定对所述基本存储单位模式下的报文进行存储时, 将所述队列的队列深度 和***的队列深度分别加上所述基本存储单位模式下的报文长度, 得到调整后的队列 的队列深度和***的队列深度, 否则, 保持所述队列的队列深度和***的队列深度不 变。 当对所述基本存储单位模式下的报文调度出队时, 利用所述报文的队列号, 得到 所述队列的队列深度和***的队列深度, 并将所述队列的队列深度和***的队列深度 分别减去所述基本存储单位模式下的报文长度, 得到调整后的队列的队列深度和*** 的队列深度。 图 3是现有技术提供的原始的报文存储空间映射关系示意图, 如图 3所示, 维护 的队列深度为报文 0至报文 4的报文长度的累加, 由于***在使用缓存空间存储报文 时按照 block存储, 因此实际占用的缓存为 5个基本存储单位, 即 5个 block。 由图 2 所示实施例原理图可知, 本发明实施例通过利用转换后的报文长度对队列深度进行维 护, 从而使得维护的队列深度与实际占用缓存相一致。 图 4是本发明实施例提供的改 进后的报文存储空间映射关系示意图, 如图 4所示, 维护的队列深度与实际占用缓存 均为 4个 block。 图 5 是本发明实施例提供的基于 WRED和 TD机制的拥塞避免方法流程图,如图 5所示, 根据***缓存的存储情况, 判断缓存的分块值 (即基本存储单位)。 当***有新 的报文到达之后, 根据报文的队列号读取队列深度。 然后, 根据分块值, 将报文长度 转换为基本存储单位模式下的报文长度。 将转换后的报文长度和队列深度送给 TD算 法或 WRED算法等拥塞避免算法, 以供按照正常的流程进行判断。 若用户选择 TD算 法, 则将转换后的报文长度与报文所属队列的队列深度相加, 如果相加结果大于丢弃 门限 td_th, 则丢弃该报文, 否则, 判断报文入队, 并调整该队列的队列深度和***的 队列深度, 即在原来的队列深度基础上加上转换后的报文长度。若用户选择 WRED算 法, 判断方法与原方法大致相同。 唯一区别的是采用转换后的报文长度, 不再赘述。 当收到调度出队的报文信息后,读取出队报文所属队列的队列深度和***的队列深度, 同样地, 根据队列号获得分块值, 将出队报文的报文长度转换为新的报文长度, 根据 出队报文的报文长度和队列深度, 分别更新队列的队列深度和***的队列深度, 即在 原来的队列深度基础上减去转换后的报文长度。 具体步骤如下: 本发明实施例所述的自适应拥塞避免的方法包括以下步骤: 第一步、新的报文进入***,根据所述报文的队列号,读取该队列的队列深度 q_len 和***队列深度 sys_q_len。 第二步、 根据队列号, 查询该队列在缓存的基本存储单位, 即得到该队列的分块 值 block—size。 第三步、 新的入队包长计算。 将报文长度 pkt_len转换成 BLOCK机制下的报文长度 pkt_len_neW (即转换成基 本存储单位模式下的报文长度 pkt_len_new),转换后的报文长度 pkt_len_new是通过将 报文长度 pkt_ken除以分块值 block_size并向上取整得到。也就是说,报文长度满足整 数个 Block的,所述报文占用的 Block的数量是 pkt_len_new=pkt_ken/block_size;报文 长度不足一个 Block 的, 按照 1 个 block存储, 所述报文占用的 Block 的数量是 pkt_len_new= pkt ken I block_size+l。 第四步、 根据转换后的报文长度, 对该报文进行丢弃判断。 若判断报文入队(即不丢弃), 则更新***缓存, 将队列的队列深度和***的队列 深度分别加上转换后的报文长度, 否则, 判断报文丢弃, 不更新队列的队列深度和系 统的队列深度。 第五步、 报文调度出队。 根据报文的队列号, 读取该队列的队列深度 q_len和***的队列深度 sys_q_len。 第六步、 根据报文的队列号, 查询该队列获得的基本存储单位, 即得到该队列的 分块值 block—size。 第七步、 新的出队报文长度计算。 将报文长度 pkt_len转换成 Block机制下的报文长度 pkt_len_neW。 转换后的报文 长度 pkt_len_new是通过将报文长度 pkt_ken除以分块值 block_size并向上取整得到。 也就是说, 报文长度满足整数个 Block 的, 所述报文占用的 Block 的数量是 pkt_len_new=pkt_ken/block_size; 报文长度不足一个 Block的, 按照 1个 block出队, 所述报文占用的 Block的数量是 pkt_len_new= pkt ken I block_size+l。 第八步、 根据调整后的报文长度, 对该报文进行出队更新。 将当前队列的队列深 度和***的队列深度分别减去转换后的报文长度, 得到新的队列深度。 本发明实施例还提供了一种路由器的拥塞避免装置, 包括: 存储单位获取单元, 设置为根据待处理报文的队列号, 得到当前正在对该队列进 行缓存的基本存储单位; 报文长度转换单元, 设置为将所述待处理报文的报文长度转换为基本存储单位模 式下的报文长度, 得到基本存储单位模式下的报文, 优选地, 所述报文长度转换单元 通过将所述待处理报文的报文长度与所述基本存储单位相除, 并向上取整, 得到基本 存储单位模式下的报文长度; 拥塞避免处理单元, 设置为利用所述基本存储单位模式下的报文长度, 对所述基 本存储单位模式下的报文进行丢弃判决处理和队列深度调整处理。 所述拥塞避免处理 单元包括丢弃判决子单元和队列深度维护子单元; 其中, 所述丢弃判决子单元利用通 过所述待处理报文的队列号得到的队列的队列深度和***的队列深度、 所述基本存储 单位模式下的报文长度, 进行丢弃判决处理, 根据处理结果, 确定对所述基本存储单 位模式下的报文进行丢弃还是存储, 当确定对所述基本存储单位模式下的报文进行存 储时, 所述队列深度维护子单元将所述队列的队列深度和***的队列深度分别加上所 述基本存储单位模式下的报文长度,得到调整后的队列的队列深度和***的队列深度, 否则, 保持所述队列的队列深度和***的队列深度不变, 并当对所述基本存储单位模 式下的报文调度出队时, 利用所述报文的队列号, 得到所述队列的队列深度和***的 队列深度, 并将所述队列的队列深度和***的队列深度分别减去所述基本存储单位模 式下的报文长度, 得到调整后的队列的队列深度和***的队列深度。 . 图 6 是本发明实施例提供的基于 WRED和 TD机制的拥塞避免装置结构图,如图 6所示, 包括 BLOCK模式检测模块、 入队计算模块和出队计算模块。 其中, 所述 BLOCK模式检测模块实时监控***缓存的存储情况, 当新包进入系 统或者调度出***时, 根据队列号, 检测该队列缓存的基本存储单位。 该模块根据系 统缓存所处区间, 判断出分块值 blk_size(Block size;), 范围为 1〜N-1。 若 blk_size=l, 则表示基本存储单位为字节, 即兼容字节模式; 并通过计算新包实际占用的 Block, 产生分块有效指示 blk_vld(Block Valid)。 最后, 将分块有效指示和分块值传递给入队 计算模块和出队计算模块。 所述 BLOCK模式检测模块实现了存储单位获取单元的功 能。 入队计算模块负责维护进入***的报文长度和队列深度。 首先, 当新包进入*** 后, 该模块会读取当前队列的队列深度 q_len(Queue Length)和***的队列深度 sys_q_len(System Queue Length)。根据 BLOCK模式检测模块送来的 blk_size和 blk_vld, 将报文长度转换为基本存储单位模式下的报文长度, 并将转换得到的报文长度和队列 深度送给拥塞避免算法模块(包括 TD算法, WRED算法等)。根据丢弃判断的最终结 果, 分别更新队列的队列深度 q_len_neW和***的队列深度 sy s_q_l en—new。 所述入队 计算模块实现了报文长度转换单元和队列深度维护子单元的功能, 所述拥塞避免算法 模块实现了丢弃判决子单元的功能。 出队计算模块负责维护从***调度出去的报文长度和队列深度。 首先, 当收到调 度出队的报文信息后, 该模块会读取当前队列的队列深度 q_len(QUeUe Length)和*** 的队列深度 sys_q_lenCSystem Queue Length)。 根据 BLOCK 模式检测模块送来的 blk_size blk_vld, 将出队报文长度转换为基本存储单位模式下的报文长度。 根据转 换后得到的报文长度和队列深度, 分别更新队列的队列深度 q_len_neW和***的队列 深度 Sys_q_len_neW。所述出队计算模块实现了报文长度转换单元和队列深度维护子单 元的功能。 所述装置的工作流程如下: 第一步、新的报文进入***后, 根据报文的队列号, 读取该队列的队列深度 q_len 和***队列深度 sys_q_len。 第二步、 BLOCK模式检测模块实时监控***缓存的存储情况。 当新的报文进入***或者报文调度出***时, 根据报文的队列号, 检测该队列缓 存的基本存储单位。 该模块将产生分块有效指示 blk_vld(Block Valid), 并根据该队列 的缓存所处区间, 判断分块值 blk_size(Block size), 将分块有效指示 blk_vld和分块值 blk_size传递给入队计算模块和出队计算模块。 第三步、 入队计算模块维护进入***的报文长度和队列深度。 首先, 当新包进入***后, 该入队计算模块会读取当前队列的队列深度 q_len(Queue Length)和***的队列深度 sys_q_len( System Queue Length)。 根据 BLOCK模式检测模块传递的 blk_size和 blk_vld, 将报文长度 pkt_len_enq 转换为基本存储单位模式下的报文长度 pkt_len_enq_new, S卩: pkt_len_enq_new=pkt_ken_enq/blk_size; 不足一个 Block的, 需要按照 1个 block存储, 即: pkt_len_enq_new=pkt_ken_enq/blk_size+l。 将转换后的报文长度和队列深度送给拥塞避免算法模块, 例如 TD算法、 WRED 算法等。 拥塞避免算法模块会根据转换后的报文长度进行丢弃判决。 入队计算模块根据判决结果, 更新队列的队列深度, 即: q_len_new=q_len+pkt_len_enq_new 入队计算模块根据判决结果, 更新***的队列深度, 即: sy s q l en_new=sy s q l en+pkt_l en enq new 第四步、 出队计算模块负责维护从***调度出去的报文长度和队列深度。 首先, 当收到调度出队的报文信息后, 该模块会读取当前队列的队列深度 q_len 和***的队列深度 sys_q_len。 根据出队报文的队列号, 到 BLOCK模式检测模块查询该队列的存储情况。 根据 BLOCK模式检测模块传递的 blk_size和 blk_vld,将出队报文长度 pkt_len_deq 转换为基本存储单位模式下的报文长度, 即: pkt_len_deq_new=pkt_len_deq/blk_size 不足一个 Block的, 需要按照 1个 block存储, 即: pkt_len_deq_new=pkt_ken_deq/blk_size+l 根据出队报文长度和队列深度, 更新队列的队列深度, 即: q_len_new=q_len+pkt_len_deq_new 根据出队报文长度和队列深度, 更新***的队列深度, 即: sy s q l en_new=sy s q l en+pkt_l en deq new 本发明实施例是根据缓存的实际存储情况,调整拥塞判断的报文长度和队列深度。 将转换后的报文长度做实际的丢弃判断依据, 从而使拥塞避免维护的队列深度与缓存 中存储的实际队列深度保持一致。 转换后的报文长度和队列深度可以用于包括但不限 于 TD策略, WRED策略, 其它拥塞避免算法均可支持。 在报文入队判断时, 将报文 长度转换成 Block机制下的报文长度, 从而保证能够根据设置的门限进行有效拥塞判 断,避免队列间抢占缓存和***缓存溢出问题;在报文出队时,将报文长度转换成 Block 机制下的报文长度, 可以释放较多的缓存空间, 从而保证后续较多的报文入队, 充分 利用***缓存。 综上所述, 本发明实施例具有以下技术效果: 本发明实施例在处理网络拥塞问题上取得了进步, 达到了提高拥塞避免性能和系 统缓存利用率的效果。 尽管上文对本发明进行了详细说明, 但是本发明不限于此, 本技术领域技术人员 可以根据本发明的原理进行各种修改。 因此, 凡按照本发明原理所作的修改, 都应当 理解为落入本发明的保护范围。 工业实用性 本发明实施例提供的技术方案可以应用于网络传输控制领域, 使维护的队列深度 与缓存中存储的实际队列深度保持一致, 有效改善拥塞避免的性能, 提高整个***缓 存的利用率。

Claims

权 利 要 求 书 、 一种路由器的拥塞避免方法, 包括: 根据待处理报文的队列号, 得到当前正在对该队列进行缓存的基本存储单 位;
将所述待处理报文的报文长度转换为基本存储单位模式下的报文长度, 得 到基本存储单位模式下的报文;
利用所述基本存储单位模式下的报文长度, 对所述基本存储单位模式下的 报文进行丢弃判决处理和队列深度调整处理。 、 根据权利要求 1所述的方法, 其中, 通过将所述待处理报文的报文长度与所述 基本存储单位相除, 并向上取整, 得到基本存储单位模式下的报文长度。 、 根据权利要求 2所述的方法, 其中, 根据所述待处理报文的队列号, 得到该队 列的队列深度和***的队列深度,并利用所述基本存储单位模式下的报文长度、 所述队列的队列深度和***的队列深度, 进行丢弃判决处理, 根据处理结果, 确定对所述基本存储单位模式下的报文进行丢弃还是存储。 、 根据权利要求 3所述的方法, 其中, 通过尾部丢弃 TD算法和 /或加权随机早期 检测 WRED算法, 进行报文丢弃判决处理。 、 根据权利要求 3所述的方法, 其中, 当确定对所述基本存储单位模式下的报文 进行存储时, 将所述队列的队列深度和***的队列深度分别加上所述基本存储 单位模式下的报文长度, 得到调整后的队列的队列深度和***的队列深度, 否 则, 保持所述队列的队列深度和***的队列深度不变。 、 据权利要求 3所述的方法, 其中, 当对所述基本存储单位模式下的报文调度出 队时, 利用所述报文的队列号, 得到所述队列的队列深度和***的队列深度, 并将所述队列的队列深度和***的队列深度分别减去所述基本存储单位模式下 的报文长度, 得到调整后的队列的队列深度和***的队列深度。 、 一种路由器的拥塞避免装置, 包括: 存储单位获取单元, 设置为根据待处理报文的队列号, 得到当前正在对该 队列进行缓存的基本存储单位; 报文长度转换单元, 设置为将所述待处理报文的报文长度转换为基本存储 单位模式下的报文长度, 得到基本存储单位模式下的报文;
拥塞避免处理单元, 设置为利用所述基本存储单位模式下的报文长度, 对 所述基本存储单位模式下的报文进行丢弃判决处理和队列深度调整处理。 、 根据权利要求 7所述的装置, 其中, 所述报文长度转换单元通过将所述待处理 报文的报文长度与所述基本存储单位相除, 并向上取整, 得到基本存储单位模 式下的报文长度。 、 根据权利要求 7所述的装置, 其中, 所述拥塞避免处理单元包括: 丢弃判决子单元, 设置为利用通过所述待处理报文的队列号得到的队列的 队列深度和***的队列深度、 所述基本存储单位模式下的报文长度, 进行丢弃 判决处理, 根据处理结果, 确定对所述基本存储单位模式下的报文进行丢弃还 是存储。 0、 根据权利要求 7所述的装置, 其中, 所述拥塞避免处理单元还包括: 队列深度维护子单元, 设置为当确定对所述基本存储单位模式下的报文进 行存储时, 将所述队列的队列深度和***的队列深度分别加上所述基本存储单 位模式下的报文长度,得到调整后的队列的队列深度和***的队列深度,否则, 保持所述队列的队列深度和***的队列深度不变, 并当对所述基本存储单位模 式下的报文调度出队时, 利用所述报文的队列号, 得到所述队列的队列深度和 ***的队列深度, 并将所述队列的队列深度和***的队列深度分别减去所述基 本存储单位模式下的报文长度, 得到调整后的队列的队列深度和***的队列深 度。
PCT/CN2014/077913 2013-08-21 2014-05-20 一种路由器的拥塞避免方法及装置 WO2015024400A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310367452.9A CN104426796A (zh) 2013-08-21 2013-08-21 一种路由器的拥塞避免方法及装置
CN201310367452.9 2013-08-21

Publications (1)

Publication Number Publication Date
WO2015024400A1 true WO2015024400A1 (zh) 2015-02-26

Family

ID=52483029

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/077913 WO2015024400A1 (zh) 2013-08-21 2014-05-20 一种路由器的拥塞避免方法及装置

Country Status (2)

Country Link
CN (1) CN104426796A (zh)
WO (1) WO2015024400A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112822717A (zh) * 2020-12-31 2021-05-18 联想未来通信科技(重庆)有限公司 一种动态控制报文缓冲的方法、装置及***

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106911740A (zh) * 2015-12-22 2017-06-30 深圳市中兴微电子技术有限公司 一种缓存管理的方法和装置
CN116418757A (zh) * 2018-12-12 2023-07-11 深圳市中兴微电子技术有限公司 拥塞控制方法及装置、网络设备及存储介质
CN110099013B (zh) * 2019-04-25 2022-08-09 新华三技术有限公司 一种报文发送控制方法及装置
CN113835611A (zh) * 2020-06-23 2021-12-24 深圳市中兴微电子技术有限公司 存储调度方法、设备和存储介质
CN112835818A (zh) * 2021-02-01 2021-05-25 芯河半导体科技(无锡)有限公司 一种流队列缓存空间地址回收的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069356B2 (en) * 2001-04-09 2006-06-27 Telefonaktiebolaget Lm Ericsson (Publ) Method of controlling a queue buffer by performing congestion notification and automatically adapting a threshold value
CN101984608A (zh) * 2010-11-18 2011-03-09 中兴通讯股份有限公司 报文拥塞避免方法及***
CN102629910A (zh) * 2012-02-14 2012-08-08 中兴通讯股份有限公司 一种基于加权随机早期检测的拥塞避免方法和***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3514215B2 (ja) * 2000-05-25 2004-03-31 日本電気株式会社 スケジューリング回路
US7301907B2 (en) * 2005-01-06 2007-11-27 Telefonktiebolaget Lm Ericsson (Publ) Method of controlling packet flow
CN100496022C (zh) * 2006-05-09 2009-06-03 华为技术有限公司 一种流量控制的方法及装置
CN101521813B (zh) * 2009-04-17 2010-10-13 杭州华三通信技术有限公司 一种处理媒体流的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069356B2 (en) * 2001-04-09 2006-06-27 Telefonaktiebolaget Lm Ericsson (Publ) Method of controlling a queue buffer by performing congestion notification and automatically adapting a threshold value
CN101984608A (zh) * 2010-11-18 2011-03-09 中兴通讯股份有限公司 报文拥塞避免方法及***
CN102629910A (zh) * 2012-02-14 2012-08-08 中兴通讯股份有限公司 一种基于加权随机早期检测的拥塞避免方法和***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BRISCOE, B. ET AL.: "Byte and Packet Congestion Notification Draft-Ietf-Tsvwg- Byte -Pkt-Congest-08", TRANSPORT AREA WORKING GROUP INTERNET -DRAFT, 13 August 2012 (2012-08-13), pages 5 - 9 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112822717A (zh) * 2020-12-31 2021-05-18 联想未来通信科技(重庆)有限公司 一种动态控制报文缓冲的方法、装置及***
CN112822717B (zh) * 2020-12-31 2023-04-28 联想未来通信科技(重庆)有限公司 一种动态控制报文缓冲的方法、装置及***

Also Published As

Publication number Publication date
CN104426796A (zh) 2015-03-18

Similar Documents

Publication Publication Date Title
WO2015024400A1 (zh) 一种路由器的拥塞避免方法及装置
CN112104562B (zh) 拥塞控制方法及装置、通信网络、计算机存储介质
CN102223675B (zh) 拥塞告警及处理方法、***和设备
WO2020042624A1 (zh) 传输速率控制方法、装置、发送设备和接收设备
US8565092B2 (en) Dynamic flow redistribution for head of line blocking avoidance
US9590910B1 (en) Methods and apparatus for handling multicast packets in an audio video bridging (AVB) network
CN113726671B (zh) 一种网络拥塞控制方法及相关产品
WO2022016889A1 (zh) 一种拥塞控制方法和装置
CN116233003A (zh) 一种对网络进行配置的方法和设备
WO2018218957A1 (zh) 一种流量控制方法、设备及***
CN110086728B (zh) 发送报文的方法、第一网络设备及计算机可读存储介质
KR101141160B1 (ko) 네트워크 장치를 위한 버퍼 제어 방법
WO2017114231A1 (zh) 一种报文发送方法、tcp代理以及tcp客户端
US10237194B2 (en) Maximize network capacity policy with heavy-tailed traffic
WO2016082603A1 (zh) 一种调度器及调度器的动态复用方法
US8514700B2 (en) MLPPP occupancy based round robin
Wu et al. SPMLD: Sub-packet based multipath load distribution for real-time multimedia traffic
CN111224888A (zh) 发送报文的方法及报文转发设备
WO2012139496A1 (zh) 一种流控方法和装置
CN110784417A (zh) 拥塞控制方法、设备及***
Xue et al. Afcd: An approximated-fair and controlled-delay queuing for high speed networks
CN116319590A (zh) 一种队列控制的方法及装置
CN109257302B (zh) 一种基于分组排队时间的包散射方法
WO2013044438A1 (zh) 一种拥塞避免方法及装置
Su et al. Scalable, network-assisted congestion control for the MobilityFirst future internet architecture

Legal Events

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

Ref document number: 14838295

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: 14838295

Country of ref document: EP

Kind code of ref document: A1