CN107547442B - Data transmission buffer queue distribution method and device - Google Patents

Data transmission buffer queue distribution method and device Download PDF

Info

Publication number
CN107547442B
CN107547442B CN201610483296.6A CN201610483296A CN107547442B CN 107547442 B CN107547442 B CN 107547442B CN 201610483296 A CN201610483296 A CN 201610483296A CN 107547442 B CN107547442 B CN 107547442B
Authority
CN
China
Prior art keywords
congestion
data transmission
ccf
cnm
transmission buffer
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201610483296.6A
Other languages
Chinese (zh)
Other versions
CN107547442A (en
Inventor
王治平
郭楷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201610483296.6A priority Critical patent/CN107547442B/en
Priority to PCT/CN2017/090233 priority patent/WO2018001222A1/en
Publication of CN107547442A publication Critical patent/CN107547442A/en
Application granted granted Critical
Publication of CN107547442B publication Critical patent/CN107547442B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Landscapes

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

Abstract

The invention provides a data transmission buffer queue distribution method and a device, wherein the method comprises the following steps: determining a forward port for sending a Congestion Control Flow (CCF) to a congestion point with congestion according to a Congestion Notification Message (CNM) generated when the congestion occurs; according to the CNM, a predetermined number of data transmission buffer queues are distributed to the CCF of the forward port, so that the problem of high packet loss rate of a congestion point in the related technology is solved, and the packet loss rate of the congestion point is reduced.

Description

Data transmission buffer queue distribution method and device
Technical Field
The invention relates to the field of communication, in particular to a data transmission buffer queue allocation method and device.
Background
In an ethernet three-layer Protocol network, a Transport Control Protocol (TCP) and a User Datagram Protocol (UDP) are widely used as standard Transport protocols. The TCP protocol adopts a congestion control mechanism to ensure reliable transmission of data packets, but because network packet loss caused by various factors is considered as network congestion, the transmission efficiency is low; the UDP protocol is based on connectionless network protocol packet transmission, and the transmission reliability is low.
In 2010, the IEEE standards organization promulgated a series of related standards for lossless ethernet technology. Among them, IEEE802.1Qau defines a backward Congestion Notification protocol, and also defines a weighted Congestion Notification (QCN) protocol, fig. 1 is a schematic diagram of the principle of IEEE802.1Qau protocol according to the related art, and as shown in fig. 1, IEEE802.1Qau is an ethernet protocol that can realize high-reliability and high-efficiency transmission.
In a Congestion Notification Domain (CND) defined by the QCN protocol, when a backward port of a network device configured with a Congestion Point (CP) detects occurrence of a Congestion situation, the network device notifies a source station (also referred to as a Reaction Point (RP)) causing Congestion of the Congestion situation through a Congestion Notification Message (CNM) and notifies the source station of the Congestion situation to control its own data transfer rate. When receiving the CNM message, the network device configuring the RP parses the message, determines the data stream causing Congestion and performs speed reduction processing on the data stream, and solves the Congestion situation at the CP end from the source to avoid Congestion spreading (Congestion Spread).
The problem that exists in the current QCN is that, the RP device does not respond to the active speed reduction of the data Flow that causes Congestion, that is, the Congestion control Flow (CCF for short), in time, so that on the network device configured with the CP, after the CP detects that a Congestion condition occurs, the data transmission queue to the port is quickly exhausted, so that the network packet loss is caused, and the reliability of network transmission is reduced.
Aiming at the problem of high packet loss rate of a congestion point in the related technology, no effective solution is provided at present.
Disclosure of Invention
The embodiment of the invention provides a data transmission buffer queue distribution method and a data transmission buffer queue distribution device, which at least solve the problem of high packet loss rate of a congestion point in the related technology.
According to an embodiment of the present invention, a data transmission buffer queue allocation method is provided, including: determining a forward port for sending a Congestion Control Flow (CCF) to a congestion point with congestion according to a Congestion Notification Message (CNM) generated when the congestion occurs; and allocating a predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM.
Optionally, allocating a predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM includes: judging whether the number of idle data transmission buffer queues is larger than or equal to the preset number or not; under the condition that the number of the idle data transmission buffer queues is judged to be larger than or equal to the preset number, distributing the preset number of data transmission buffer queues to the CCF of the forward port from the idle data transmission buffer queues according to the CNM; and/or, under the condition that the number of the idle data transmission buffer queues is judged to be smaller than the predetermined number, allocating the predetermined number of data transmission buffer queues to the CCF of the forward port from the idle data transmission buffer queues and the data transmission buffer queues occupied by the non-CCF data streams according to the CNM.
Optionally, allocating a predetermined number of data transmission buffer queues to the CCF in the forward port according to the CNM includes: acquiring a characteristic value of the CNM; judging whether the CNM is triggered by a legal CCF or not according to the characteristic value of the CNM; and under the condition that the CNM is judged to be triggered by a legal CCF, distributing the predetermined number of data transmission buffer queues to the CCF of the forward port.
Optionally, allocating the predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM includes: acquiring congestion information from the CNM, wherein the congestion information is used for indicating the congestion state of the congestion point; determining the predetermined number according to the congestion information; and allocating the predetermined number of data transmission buffer queues for the CCF of the forward port.
Optionally, the congestion information includes: the congestion degree of the congestion point, the congestion change rate of the congestion point and the preset feedback value of the congestion point, wherein the congestion degree is used for indicating the relation between a data transmission cache queue occupied by the congestion point at the current sampling time point and a preset threshold value, and the congestion change rate is used for indicating the change rate of the data transmission cache queue occupied by the congestion point in a preset time period.
Optionally, determining the predetermined number according to the congestion information comprises: determining congestion sensitivity of the congestion point according to the congestion degree, the congestion change rate and the preset feedback value, wherein the congestion sensitivity is used for indicating the sensitivity degree of the congestion point to congestion change; determining the predetermined number according to the congestion degree and the congestion sensitivity.
Optionally, determining, according to the CNM, the forward port that sends a CCF to the congested congestion point includes: acquiring the information of the congestion point carried in the CNM; retrieving a port for sending a data flow to the congestion point according to the information of the congestion point; and screening the forward port for sending the CCF to the congestion point from the ports for sending the data flow to the congestion point.
Optionally, before allocating a predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM, the method further includes: recording the initial number of data transmission buffer queues occupied by the CCF in the forward port, and starting a preset timer; after allocating a predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM, the method further comprises: and under the condition that the preset timer is over, recovering the number of the data transmission buffer queues occupied by the CCF of the forward port to the initial number.
According to another embodiment of the present invention, there is provided a data transmission buffer queue allocation apparatus, including: the determining module is used for determining a forward port for sending a congestion control flow CCF to a congestion point with congestion according to a congestion notification message CNM generated when the congestion occurs; and the allocation module is used for allocating a predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM.
Optionally, the allocation module comprises: the first judging unit is used for judging whether the number of the idle data transmission buffer queues is larger than or equal to the preset number; a first allocating unit, configured to allocate, according to the CNM, the predetermined number of data transmission buffer queues from the idle data transmission buffer queues to the CCF of the forward port when it is determined that the number of the idle data transmission buffer queues is greater than or equal to the predetermined number; and/or the second allocating unit is configured to allocate, according to the CNM, the predetermined number of data transmission buffer queues to the CCF of the forward port from the data transmission buffer queues occupied by the idle data transmission buffer queues and the non-CCF data flows when it is determined that the number of the idle data transmission buffer queues is smaller than the predetermined number.
Optionally, the allocation module comprises: a first obtaining unit, configured to obtain a feature value of the CNM; a second judging unit, configured to judge, according to the feature value of the CNM, whether the CNM is a CNM triggered by a legal CCF; and the third allocating unit is used for allocating the predetermined number of data transmission buffer queues to the CCF of the forward port under the condition that the CNM is judged to be triggered by a legal CCF.
Optionally, the allocation module comprises: a second obtaining unit, configured to obtain congestion information from the CNM, where the congestion information is used to indicate a congestion state of the congestion point; a determining unit configured to determine the predetermined number according to the congestion information; a fourth allocating unit, configured to allocate the predetermined number of data transmission buffer queues for the CCF of the forward port.
Optionally, the congestion information includes: the congestion degree of the congestion point, the congestion change rate of the congestion point and the preset feedback value of the congestion point, wherein the congestion degree is used for indicating the relation between a data transmission cache queue occupied by the congestion point at the current sampling time point and a preset threshold value, and the congestion change rate is used for indicating the change rate of the data transmission cache queue occupied by the congestion point in a preset time period.
Optionally, the determining unit is configured to: determining congestion sensitivity of the congestion point according to the congestion degree, the congestion change rate and the preset feedback value, wherein the congestion sensitivity is used for indicating the sensitivity degree of the congestion point to congestion change; determining the predetermined number according to the congestion degree and the congestion sensitivity.
Optionally, the determining module includes: a third obtaining unit, configured to obtain information of the congestion point carried in the CNM; a retrieval unit, configured to retrieve, according to the information of the congestion point, a port for sending a data flow to the congestion point; a screening unit, configured to screen the forward port that sends the CCF to the congestion point from the ports that send the data flow to the congestion point.
Optionally, the apparatus further comprises: the processing module is used for recording the initial number of the data transmission buffer queues occupied by the CCF in the forward port and starting a preset timer; and a recovery module, configured to recover, when the preset timer is over, the number of data transmission buffer queues occupied by the CCF of the forward port to the initial number.
According to the invention, a forward port for sending a congestion control flow CCF to a congestion point with congestion is determined according to a congestion notification message CNM generated when the congestion occurs; according to the CNM, a predetermined number of data transmission buffer queues are distributed to the CCF of the forward port, so that the scheme is adopted to determine the forward port for sending the CCF to the congestion point according to the CNM and distribute the predetermined number of data transmission buffer queues to the CCF in the forward port, and therefore, the packet loss rate of the congestion point is reduced, and the problem of high packet loss rate of the congestion point in the related technology is solved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the invention and together with the description serve to explain the invention without limiting the invention. In the drawings:
FIG. 1 is a schematic diagram of the IEEE802.1Qau protocol principles according to the related art;
FIG. 2 is a flow chart of a data transmission buffer queue allocation method according to an embodiment of the present invention;
fig. 3 is a first block diagram of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention;
fig. 4 is a block diagram of a second structure of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention;
fig. 5 is a block diagram of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention;
fig. 6 is a block diagram of a structure of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention;
fig. 7 is a block diagram of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention;
fig. 8 is a block diagram six of a structure of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention;
fig. 9 is a schematic diagram of a congestion point principle according to the related art;
fig. 10 is a diagram of a dynamically adjusting congestion point forwarding data packet buffer queue according to an alternative embodiment of the present invention;
fig. 11 is a block diagram of a data transmission buffer queue allocation apparatus according to an alternative embodiment of the present invention.
Detailed Description
The invention will be described in detail hereinafter with reference to the accompanying drawings in conjunction with embodiments. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
Example 1
In this embodiment, a data transmission buffer queue allocation method is provided, and fig. 2 is a flowchart of a data transmission buffer queue allocation method according to an embodiment of the present invention, as shown in fig. 2, the flowchart includes the following steps:
step S202, determining a forward port for sending a congestion control flow CCF to a congestion point with congestion according to a congestion notification message CNM generated when the congestion occurs;
step S204, a predetermined number of data transmission buffer queues are distributed to the CCF of the forward port according to the CNM.
Optionally, the above-mentioned data transmission buffer queue allocation method may be applied, but not limited to, in the scenario of ethernet data exchange. For example: scenarios of ethernet data exchange applying a quantized congestion notification protocol.
Optionally, the above-mentioned data transmission buffer queue allocation method may be applied to network devices, for example: network devices for ethernet data exchange, network devices configured with a quantized congestion notification protocol, etc.
Through the steps, a forward port for sending a congestion control flow CCF to a congestion point with congestion is determined according to a congestion notification message CNM generated when the congestion occurs; according to the CNM, a predetermined number of data transmission buffer queues are distributed to the CCFs of the forward ports, and therefore, by adopting the scheme, the forward ports for sending the CCFs to the congestion points are determined according to the CNM, and the predetermined number of data transmission buffer queues are distributed to the CCFs in the forward ports, so that the packet loss rate of the congestion points is reduced, and the problem of high packet loss rate of the congestion points in the related technology is solved.
Optionally, in step S204, a predetermined number of data transmission buffer queues may be allocated to the CCF of the forward port from the idle data transmission buffer queues, or the data transmission buffer queues occupied by the data flows of non-CCFs may be adjusted when the idle data transmission buffer queues are insufficient. For example: judging whether the number of the idle data transmission buffer queues is larger than or equal to a preset number or not, and distributing the preset number of the data transmission buffer queues for the CCF of the forward port from the idle data transmission buffer queues according to the CNM under the condition that the number of the idle data transmission buffer queues is larger than or equal to the preset number; and/or under the condition that the number of the idle data transmission buffer queues is judged to be less than the preset number, distributing the preset number of data transmission buffer queues for the CCF of the forward port from the data transmission buffer queues occupied by the idle data transmission buffer queues and the data flow of the non-CCF according to the CNM.
Optionally, in the step S204, but not limited to, the validity of the CCF is determined, and a data transmission buffer queue is allocated to the valid CCF. For example: and acquiring a characteristic value of the CNM, judging whether the CNM is triggered by a legal CCF according to the characteristic value of the CNM, and distributing a predetermined number of data transmission buffer queues for the CCF of the forward port under the condition of judging that the CNM is triggered by the legal CCF.
Alternatively, in step S204, the predetermined number may be a set value or a value determined according to CNM. For example: and acquiring congestion information from the CNM, wherein the congestion information is used for indicating the congestion state of a congestion point, determining a preset number according to the congestion information, and distributing the preset number of data transmission buffer queues to the CCF of the forward port.
Alternatively, the congestion information may include, but is not limited to: the method comprises the steps of determining the congestion degree of a congestion point, the congestion change rate of the congestion point and a preset feedback value of the congestion point, wherein the congestion degree is used for indicating the relation between a data transmission cache queue occupied by the congestion point at the current sampling time point and a preset threshold value, and the congestion change rate is used for indicating the change rate of the data transmission cache queue occupied by the congestion point in a preset time period.
Alternatively, the predetermined number may be determined according to the congestion information described above. For example: and determining the congestion sensitivity of the congestion point according to the congestion degree, the congestion change rate and a preset feedback value, wherein the congestion sensitivity is used for indicating the sensitivity degree of the congestion point to the congestion change, and the preset quantity is determined according to the congestion degree and the congestion sensitivity.
Optionally, in step S202, a forward port for sending a CCF to the congestion point may be screened from ports for sending a data flow to the congestion point according to the information of the congestion point carried in the CNM. For example: the method comprises the steps of obtaining information of a congestion point carried in CNM, searching a port for sending data flow to the congestion point according to the information of the congestion point, and screening a forward port for sending CCF to the congestion point from the port for sending the data flow to the congestion point.
Optionally, but not limited to, a preset timer may be set, and in the case that the preset timer is overtime, the number of data transmission buffer queues occupied by the CCF is restored to the initial number. For example: before the above step S204, the initial number of data transmission buffer queues occupied by the CCF in the forward port may be recorded, but is not limited to, and the preset timer is started at the same time. After the step S204, the number of data transmission buffer queues occupied by the CCF of the forward port may be, but is not limited to, restored to the initial number when the preset timer expires.
Example 2
In this embodiment, a data transmission buffer queue allocation apparatus is further provided, and the apparatus is used to implement the foregoing embodiments and preferred embodiments, and the description already made is omitted here for brevity. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated.
Fig. 3 is a first structural block diagram of an apparatus for allocating a data transmission buffer queue according to an embodiment of the present invention, as shown in fig. 3, the apparatus includes:
a determining module 32, configured to determine, according to a congestion notification message CNM generated when congestion occurs, a forward port that sends a congestion control flow CCF to a congestion point where congestion occurs;
an allocating module 34, coupled to the determining module 32, is configured to allocate a predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM.
Fig. 4 is a block diagram of a second structure of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention, as shown in fig. 4, optionally, the allocation module 34 includes:
a first judging unit 42, configured to judge whether the number of idle data transmission buffer queues is greater than or equal to a predetermined number;
a first allocating unit 44, coupled to the first judging unit 42, configured to, in a case that the number of idle data transmission buffer queues is judged to be greater than or equal to the predetermined number, allocate a predetermined number of data transmission buffer queues from the idle data transmission buffer queues to the CCF of the forward port according to the CNM; and/or the presence of a gas in the gas,
and a second allocating unit 46, coupled to the first determining unit 42, configured to, if it is determined that the number of idle data transmission buffer queues is less than the predetermined number, allocate, according to the CNM, a predetermined number of data transmission buffer queues for the CCF of the forward port from the idle data transmission buffer queues and the data transmission buffer queues occupied by the data flows of the non-CCF.
Fig. 5 is a block diagram of a third structure of a data transmission buffer queue allocating device according to an embodiment of the present invention, as shown in fig. 5, optionally, the allocating module 34 includes:
a first acquisition unit 52 configured to acquire a feature value of the CNM;
a second determining unit 54, coupled to the first obtaining unit 52, configured to determine, according to the feature value of the CNM, whether the CNM is triggered by a legal CCF;
and a third allocating unit 56, coupled to the second judging unit 54, configured to allocate a predetermined number of data transmission buffer queues for the CCF of the forward port in case that it is judged that the CNM is the CNM triggered by the legitimate CCF.
Fig. 6 is a block diagram of a structure of a data transmission buffer queue allocating device according to an embodiment of the present invention, as shown in fig. 6, optionally, the allocating module 34 includes:
a second obtaining unit 62, configured to obtain congestion information from the CNM, where the congestion information is used to indicate a congestion state of the congestion point;
a determining unit 64, coupled to the second obtaining unit 62, for determining the predetermined number according to the congestion information;
a fourth allocating unit 66, coupled to the determining unit 64, for allocating a predetermined number of data transmission buffer queues for the CCF of the forward port.
Optionally, the congestion information includes: the method comprises the steps of determining the congestion degree of a congestion point, the congestion change rate of the congestion point and a preset feedback value of the congestion point, wherein the congestion degree is used for indicating the relation between a data transmission cache queue occupied by the congestion point at the current sampling time point and a preset threshold value, and the congestion change rate is used for indicating the change rate of the data transmission cache queue occupied by the congestion point in a preset time period.
Optionally, the determining unit is configured to: determining congestion sensitivity of the congestion point according to the congestion degree, the congestion change rate and a preset feedback value, wherein the congestion sensitivity is used for indicating the sensitivity degree of the congestion point to congestion change; the predetermined number is determined based on the congestion degree and the congestion sensitivity.
Fig. 7 is a block diagram of a fifth structure of an apparatus for allocating a data transmission buffer queue according to an embodiment of the present invention, as shown in fig. 7, optionally, the determining module 32 includes:
a third obtaining unit 72, configured to obtain information of a congestion point carried in the CNM;
a retrieving unit 74, coupled to the third obtaining unit 72, configured to retrieve, according to the information of the congestion point, a port for sending the data flow to the congestion point;
a screening unit 76, coupled to the retrieving unit 74, is configured to screen a forward port that sends the CCF to the congestion point from among ports that send data flows to the congestion point.
Fig. 8 is a block diagram six of a structure of a data transmission buffer queue allocation apparatus according to an embodiment of the present invention, as shown in fig. 8, optionally, the apparatus further includes:
a processing module 82, coupled between the determining module 32 and the allocating module 34, for recording an initial number of data transmission buffer queues occupied by the CCF in the forward port, and starting a preset timer;
and a restoring module 84, coupled to the allocating module 34, for restoring the number of data transmission buffer queues occupied by the CCF of the forward port to the initial number in case that the preset timer expires.
It should be noted that, the above modules may be implemented by software or hardware, and for the latter, the following may be implemented, but not limited to: the modules are all positioned in the same processor; alternatively, the modules are respectively located in a plurality of processors.
Reference will now be made in detail to the alternative embodiments of the present invention.
In a CND domain defined by a QCN protocol, when congestion occurs, a CP sends a CNM notification to an RP, and the RP cannot reduce the speed in time, so that a data transmission queue of the CP is quickly exhausted, and network packet loss is caused.
The method and apparatus for allocating a data transmission buffer queue according to the alternative embodiment of the present invention are improved on a CP device. Based on the current situation that the CP equipment can not directly control the RP equipment to reduce the speed of the RP equipment in time, on one hand, the congestion notification is carried out on the RP equipment based on the existing standard protocol, on the other hand, the setting of the CP equipment is actively adjusted, the buffer queue of the CP equipment is fully utilized, the transmission buffer queue occupied by CCF flow is temporarily expanded, so that the transmission buffer queue which is greatly consumed on the CP equipment and cannot reduce the speed of the RP equipment in time is made up, and the problem of network packet loss caused by the untimely speed reduction of the RP is indirectly avoided.
In a CND domain defined by a QCN protocol, a network device configured with a CP detects the occurrence of a congestion condition at a backward port, and the lossless transmission of CCF data flow is ensured to the maximum extent by dynamically adjusting the data transmission queue distribution condition of the forward port until RP actively reduces the speed to respond, and then the data transmission queue distribution condition of the corresponding forward port is recovered. If necessary, the reliability of the non-CCF data flow can be sacrificed to ensure the reliability of the CCF data flow.
The data transmission buffer queue allocation apparatus according to an alternative embodiment of the present invention includes:
IEEE802.1Qau protocol processing unit: the protocol stack processing of the IEEE802.1Qau standard is realized, and configuration operation of protocol related functions and hardware realization components are included.
CNM message detection and calculation unit: the method realizes the detection of the CNM message generated when the backward port detects the congestion, copies the message to the computing unit, and calculates the source port (namely the forward port) of the CCF flow to which the sampling message carried by the CNM message belongs.
A data transmission queue management unit: and realizing the dynamic adjustment operation of the data transmission queue distribution condition of the forward port.
According to the IEEE802.1Qau protocol, when a network device detects the occurrence of a congestion condition at the backward port, it generates a CNM message and sends it to the source port of its sampled CCF flow, informing the RP of an active slowdown. An alternative embodiment of the present invention provides a data transmission buffer queue allocation method, which detects characteristics of a source port, a destination port, and a sampled CCF stream according to a characteristic value of a CNM message. And, according to the CP algorithm of the IEEE802.1Qau protocol and the data transmission queue growth rate occupied by the CCF stream, the size of the data transmission queue to be adjusted within one sampling period (corresponding to the predetermined number) is calculated. The data transmission queue management unit attempts to allocate a corresponding queue size from the data transmission queues that are free in the network device to the data transmission queue occupied by the CCF flow in the backward port. When the idle data transmission queue in the network device is not enough to be allocated to the data transmission queue occupied by the CCF flow, the data transmission queue of the source port (forward port) of the CCF flow in the network device is adjusted, and the size of the data transmission queue occupied by the non-CCF flow is reduced, so that the CCF flow is ensured to occupy more data transmission queue sizes.
By the method, the CCF flow is ensured to have sufficient cache to be forwarded before the RP is implemented and generates the effect by temporarily adjusting the data message cache queue occupied by the CCF flow and the data message cache occupied by the non-CCF flow, so that the CCF flow data message is ensured not to be discarded until the RP responds to the active speed reduction, and then the data transmission queue distribution condition of the corresponding forward port is recovered, and the packet loss in the backward port queue is avoided. The lossless transmission of the CCF data stream is ensured to the maximum extent, and the QCN function with higher reliability is realized.
Alternative embodiments of the present invention will be described in further detail below with reference to the accompanying drawings.
As shown in fig. 1, in the related art, when an output port of a network device configured with a congestion point (i.e., the congestion point) detects a congestion condition, a CNM message is generated, and a forwarded data packet is sampled according to an algorithm described in the IEEE802.1Qau protocol, and according to characteristics of the sampled packet, the CNM message is forwarded to a source method of the sampled packet by a method of an ethernet two-layer network knowing a unicast packet, until the CNM message is forwarded to a reaction point. The reaction point analyzes the sampling message (or the characteristic value thereof) received in the CNM message to make adjustment for reducing the transmission rate until the congestion condition of the congestion point disappears and the CNM message is not generated any more.
Fig. 9 is a schematic diagram illustrating a congestion point principle according to the related art, and as shown in fig. 9, an egress port of a network device is configured as a congestion point, which manages a data packet buffer queue of a certain priority value. In an actual network, a plurality of ports of a network device may forward a data packet to a congestion point, which may include a plurality of CCF data flows, a management data flow, and other data flows. When the congestion point detects a congestion condition, only the CCF data stream is sampled when the CNM message is generated. If the data message of the CCF flow 1 is sampled, the CNM message is only sent to the port P2 from the congestion point port P5, and then is transmitted to the network device 1 until the CNM message is forwarded to the reaction point corresponding to the CCF flow 1, and no other network device receives the CNM message; if the data packet of CCF flow 2 is sampled, the CNM message is sent to port P3 only from the port P5 of the congestion point, and then is transmitted to the network device 2 until the CNM message is forwarded to the reaction point corresponding to CCF flow 2, and no CNM message is received by any other network device. According to the IEEE802.1Qau protocol, other flow 1 and other flow 2, although also forwarded to the port where the congestion point is located, will not be sampled by the congestion point, nor will the CNM message be forwarded to its corresponding network device.
In the method for allocating a data transmission buffer queue according to the optional embodiment of the present invention, when a congestion condition is detected at a congestion point, a generated CNM message is forwarded in a network device configured with the congestion point, according to an IEEE802.1Qau protocol, a type of a two-layer data ethernet of the CNM message is 0x22e7, and a switch chip of the network device copies a data packet of this type when forwarding the data packet, and reports the data packet to a CPU chip of the network device for processing.
When the CPU chip of the network device processes the CNM message, according to the characteristic value of the CNM message reported by the switch chip, the method may include, but is not limited to:
the source port, i.e., CP port P5.
The destination port, i.e., port P2 or port P3, to which the RP is connected.
The characteristics of the sampled CCF flow, taking port P2 as an example, would include: source MAC, destination MAC, ethernet data type, CNPV value of CND domain, etc. of CCF flow 1.
The CPU chip retrieves the database from the information of CP port P5 to learn: data flows of 4 ports (P1, P2, P3 and P4) are sent to the CP port P5, wherein 2 ports P2 and P3 forward CCF flows, and 2 ports P1 and P4 forward non-CCF flows.
Further, the CPU chip searches the database from the port P2 information to know: port P2 is configured to allow reception of CCF flows for CND domains with CNPV value 0 and CND domains with CNPV value 2. And the CPU chip judges that the CNPV value of the CND domain of the CCF flow 1 sampled by the CNM message is 0, and the CNM message is triggered by the legal CCF flow. If not, further processing of the CNM message is abandoned.
Meanwhile, the CPU chip searches the database according to the port P3 information to know that: port P3 is configured to allow reception of a CCF flow for CND domain with CNPV value 1.
Therefore, the CPU chip notifies the data transmission queue management unit to dynamically adjust the forwarded data packet buffer queues of the 4 ports (P1, P2, P3, P4), and increase the data packet buffer queues used by the CCF flows of the 3 CND domains configured by the ports P2 and P3.
The following is the CP algorithm formula described by the IEEE802.1Qau protocol.
Qoffset=Qcurrent-Qeq
Qdelta=Qcurrent-Qold
Fb=-(Qoffset+w·Qdelta)
Q in the formula is data describing the size of a buffer queue occupied by the data message, when the data message enters the equipment, the data message is firstly stored in the buffer queue, the Q value is increased, when the data message is forwarded out of the equipment, the buffer queue occupied by the data message is released, and the Q value is reduced.
Qcurrent is the actual value of the data message buffer queue occupied by the CP port at the current sampling time point; qeq is a configurable CP port occupancy threshold for the data packet buffer queue, which is typically configured to a value in the (0, 100%) range of the CP port configured data packet buffer queue. The difference Qoffset between the two describes the relationship between the data packet buffer queue occupied by the CP port at the current sampling time point and a preset threshold (corresponding to the congestion degree of the congestion point): qoffset < 0 indicates that the data message at the current sampling time occupies the buffer queue and does not reach the preset threshold value; qoffset is more than or equal to 0, which indicates that the data message occupancy buffer queue at the current sampling time has reached or exceeded the preset threshold.
Qcurrent is the actual value of the data message buffer queue occupied by the CP port at the current sampling time point; qold is the actual value of the data packet buffer queue occupied by the CP port at the previous sampling time point. The difference Qdelta (equivalent to the congestion change rate of the congestion point) describes the change rate of the buffer queue occupied by the data packet in the time period between two sampling time points: qdelta > 0 indicates that more data messages enter the equipment in the time period than data messages forwarded out from the equipment; qdelta less than 0 indicates that the quantity of the data messages entering the equipment in the time period is less than that of the data messages forwarded from the equipment; qdelta of 0 indicates that the number of data packets entering the device is the same as the number of data packets forwarded out of the device during the period.
According to the CP algorithm formula described in IEEE802.1Qau protocol, the CP device calculates fb (feedback) value (equivalent to the preset feedback value of the congestion point) of the buffer queue of the current CP port, and Qoffset and Qdelta values of the buffer queue of the current CP port, fills in the CNM message Payload data area, and forwards the message to the RP device through two-layer unicast.
In the method for allocating a data transmission buffer queue according to the optional embodiment of the present invention, the data transmission queue management unit obtains Qoffset, Qdelta, and Fb (Feedback) values from Payload data of a CNM message, may calculate a w value (corresponding to a congestion sensitivity of the congestion point) according to a formula, and calculates a buffer queue size that needs to be adjusted according to the Qoffset and the w value.
The buffer queue that the queue forwarding the CCF flow needs to add is determined by the Qoffset and the w value. The larger the Qoffset value is, the more serious the current system congestion is, the larger the size of the cache queue needing to be increased is; the larger the value of w, the more sensitive the current system is to the change of the congestion situation, and the larger the size of the buffer queue to be increased.
Fig. 10 is a schematic diagram of dynamically adjusting a congestion point forwarding data packet buffer queue according to an alternative embodiment of the present invention, and as shown in fig. 10, a data transmission queue management unit calculates a buffer queue size to be increased according to Qoffset and w values, and first tries to allocate a corresponding queue size from an idle data transmission queue of a network device. If the free data transmission queue of the network device is not enough to be allocated to the buffer queue for forwarding the CCF flow, the data transmission queue management unit may reduce the size of the data transmission queue occupied by the non-CCF flow, so as to ensure that the CCF flow occupies more data transmission queue size.
The CPU chip determines to adjust the size of a data transmission queue occupied by the CCF flow, adjust the size of an idle data transmission queue of the network equipment and adjust the size of a data transmission queue occupied by the non-CCF flow through calculation. And the data transmission queue management unit realizes the quantitative adjustment of the sizes of the queues.
Alternatively, the CPU chip may manage a timer, when the size of each buffer queue is adjusted, record the initial size of the buffer queue in the database, start the timer, and recover the buffer queue size to the initial size after the timer expires. The precision of the timer can be, but is not limited to, designed to be in the order of seconds, and the timing length of the timer can be adjusted, which is typically 2 to 5 times the duration of the response time of the RP device to actively adjust the forwarding rate of the CCF stream.
Fig. 11 is a block diagram of a data transmission buffer queue allocation apparatus according to an alternative embodiment of the present invention, and as shown in fig. 11, the apparatus includes:
and the switching chip D101 is used for realizing the functions of forwarding the Ethernet data message, MAC learning, discriminating and copying the protocol message, sending the protocol message to the CPU chip and the like.
The computing unit, typically a CPU chip D102. The configuration information used for saving the QCN protocol related functions is stored in a database, and includes configuration of congestion points deployed by the network device, configuration of CNPVs and the like of all CND domains, and configuration of initial buffer queue sizes of cos queues of all ports of the network device.
The computing unit may also include an IEEE802.1Qau protocol processing unit. The ieee802.1qau standard protocol processing, including configuration operations and hardware implementation components of the protocol related functions, may be implemented. The method realizes the forwarding of CCF stream data messages and the sampling of the data messages and the generation of CNM messages when the congestion condition is detected, and the CNM messages are sent to a source port P2 or P3 of the sampled messages by a congestion point port P5.
And the database D103 is used for realizing the storage and access of all data information managed by the CPU chip.
And the timer D104 is used for realizing one-time timing triggered by the CPU chip, and can be used for starting timing after the buffer queue size of the cos queue is adjusted, and informing the CPU chip and the data transmission queue management unit to recover an initial buffer queue size configuration after the timing is finished.
The CNM message detecting and calculating unit D105 may be implemented by a forwarding chip to assist the detecting network device to generate a CNM message when the congestion condition is detected at the congestion point, copy the CNM message to the calculating unit, and calculate a source port (i.e., a forward port) of the CCF flow to which the sample packet carried by the CNM message belongs.
And the data transmission queue management unit D106 is configured to implement a dynamic adjustment operation on the data transmission queue allocation condition of the forward port.
In an optional embodiment of the present invention, when the user configures the QCN protocol related function on the network device, the CPU chip D102 records the configuration to the database D103, including the information of the configured congestion point CP, the CNPV information of the configured CND domain, and the like.
When the network device configured with the RP sends a CCF flow to the network device of this embodiment, the switch chip D101 implements forwarding of an ethernet data packet and MAC learning. Meanwhile, the CPU chip D102 records the characteristic value of CCF flow from the port P2 and the port P3 forwarded to the congestion point CP, and also records the initial buffer queue size of each queue of the port P2 and the port P3.
When the congestion point CP of the network device detects that a congestion situation occurs, the hardware generates a CNM message. The destination MAC address of the CNM message is obtained from the data packet of the sampled CCF stream, and this stream has been learned to the MAC by the switch chip, so the switch chip performs two-layer known unicast on the CNM message and forwards the CNM message to the source port P2 or P3 of the sampled packet. Meanwhile, the CNM message detection and calculation unit D105 recognizes that the ethernet type of the forwarded CNM message is 0x22e7, and copies the CNM message to be sent to the CPU chip D102.
When processing the CNM message, the CPU chip D102 parses the feature value of the CNM message sent by the switch chip, which may include, but is not limited to:
the source port, i.e., CP port P5.
The destination port, i.e., port P2 or port P3, to which the RP is connected. For example, the CCF flow sampled this time is CCF flow 1 forwarded from port P2, and the destination port is P5.
Characteristics of the sampled CCF stream may include, but are not limited to: source MAC, destination MAC, ethernet data type, CNPV value of CND field, etc. data of CCF flow 1.
The CPU chip D102 retrieves the database from the information of the CP port P5 to know: data flows of 4 ports (P1, P2, P3 and P4) are sent to the CP port P5, wherein 2 ports P2 and P3 forward CCF flows, and 2 ports P1 and P4 forward non-CCF flows.
Further, the CPU chip D102 searches the database from the port P2 information to know: port P2 is configured to allow reception of CCF flows for CND domains with CNPV value 0 and CND domains with CNPV value 2. And the CPU chip judges that the CNPV value of the CND domain of the CCF flow 1 sampled by the CNM message is 0, and the CNM message is triggered by the legal CCF flow. If not, further processing of the CNM message is abandoned.
Meanwhile, the CPU chip D102 retrieves the database from the port P3 information to know: port P3 is configured to allow reception of a CCF flow for CND domain with CNPV value 1.
Therefore, the CPU chip D102 notifies the data transmission queue management unit D106 to dynamically adjust the forwarded data packet buffer queues of the 4 ports (P1, P2, P3, P4), and increase the data packet buffer queues used by the CCF flows of the 3 CND domains configured by the ports P2 and P3.
The data transmission queue management unit D106 obtains Qoffset, Qdelta, and Fb (Feedback) values from Payload data of the CNM message, calculates a w value according to the Fb value, and calculates the size of a cache queue to be adjusted according to the Qoffset and the w value, where the size of the cache queue to be added to the cos queues for forwarding the CCF flows in 3 cases is shown in table 1:
TABLE 1
Figure BDA0001031653270000181
Figure BDA0001031653270000191
In an optional embodiment of the present invention, there are 2 ports P2, P3 and 3 cos queues forwarding CCF flows, the initial queue size is Q1, and the size of the data packet buffer queue that needs to be adjusted according to the data calculation in the table is, for example, Q1 × 30%.
The data transmission queue management unit D106 first attempts to allocate a corresponding queue size from the free data transmission queue of the network device. The size of the idle data transmission queue of the network device is reduced from Qn to Qn-Q1 x 30% x 3. The reduced queue size Q1 × 30% × 3 is the Q1 × 30% increase for each of the 3 cos queues.
If Qn-Q1 × 30% × 3 < 0 indicates that the free data transmission queue of the network device is not enough to be allocated to the buffer queue for forwarding the CCF flow, the data transmission queue management unit D106 may reduce the size of the data transmission queue occupied by the non-CCF flow (the remaining 13 cos queues in this embodiment) to ensure that the CCF flow occupies more data transmission queue size.
The data transmission queue managing unit D106 first allocates the entire queue size Qn from the free data transmission queue of the network device, and then allocates the data relief buffer queue of the size (Q1 × 30% × 3-Qn)/13 from the data transmission queue size Q2 occupied by the non-CCF flow. The data transmission queue size occupied by the 13 non-CCF flows is adjusted to be Q2- (Q1 multiplied by 30% × 3-Qn)/13.
The data transmission queue management unit D106 is finally allocated to the data transmission buffer queue with the size of Q1 × 30% × 3 in total, and adjusts the size of the data transmission queue occupied by the 3 CCF streams to be Q1+ Q1 × 30%.
The CPU chip D102 manages a timer D104, and when adjusting the size of each buffer queue, records the initial size of the buffer queue in the database, and starts the timer, and after the timer expires, restores the buffer queue size to the initial size.
The precision of the timer D104 can be designed to be in the second level, and the timing length can be adjusted, and is usually 2 to 5 times the duration of the response time of the RP device to actively adjust the forwarding rate of the CCF flow.
By applying the method, the CCF flow is ensured to have sufficient cache to be forwarded before the RP is implemented by actively reducing the speed and generating the effect by temporarily adjusting the data message cache queue occupied by the CCF flow and the data message cache occupied by the non-CCF flow, so that the CCF flow data message is ensured not to be discarded until the RP responds by actively reducing the speed, and then the data transmission queue distribution condition of the corresponding forward port is recovered, and the packet loss in the backward port queue is avoided. The lossless transmission of CCF data flow is guaranteed to the maximum extent, and the QCN function with higher reliability is realized.
The above embodiments are only intended to illustrate the technical solution of the present invention and not to limit the same, and a person skilled in the art can modify the technical solution of the present invention or substitute the same without departing from the spirit and scope of the present invention, and the scope of the present invention should be determined by the claims.
Example 3
Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but the former is a better implementation mode in many cases. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present invention.
The embodiment of the invention also provides a storage medium. Alternatively, in the present embodiment, the storage medium may be configured to store program codes for performing the following steps:
s1, determining a forward port for sending a congestion control flow CCF to a congestion point with congestion according to a congestion notification message CNM generated when the congestion occurs;
and S2, allocating a predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM.
Optionally, in this embodiment, the storage medium may include, but is not limited to: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
Optionally, in this embodiment, the processor executes the method steps described in the above embodiments according to the program code stored in the storage medium.
Optionally, the specific examples in this embodiment may refer to the examples described in the above embodiments and optional implementation manners, and this embodiment is not described herein again.
It will be apparent to those skilled in the art that the modules or steps of the present invention described above may be implemented by a general purpose computing device, they may be centralized on a single computing device or distributed across a network of multiple computing devices, and alternatively, they may be implemented by program code executable by a computing device, such that they may be stored in a storage device and executed by a computing device, and in some cases, the steps shown or described may be performed in an order different than that described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple ones of them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (14)

1. A data transmission buffer queue allocation method is characterized by comprising the following steps:
determining a forward port for sending a Congestion Control Flow (CCF) to a congestion point with congestion according to a Congestion Notification Message (CNM) generated when the congestion occurs;
distributing a predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM;
allocating a predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM at least includes:
judging whether the number of idle data transmission buffer queues is larger than or equal to the preset number or not;
under the condition that the number of the idle data transmission buffer queues is judged to be larger than or equal to the preset number, distributing the preset number of data transmission buffer queues to the CCF of the forward port from the idle data transmission buffer queues according to the CNM; and/or the presence of a gas in the gas,
and under the condition that the number of the idle data transmission buffer queues is judged to be smaller than the preset number, distributing the preset number of data transmission buffer queues for the CCF of the forward port from the idle data transmission buffer queues and the data transmission buffer queues occupied by the data flow of the non-CCF according to the CNM.
2. The method of claim 1, wherein allocating a predetermined number of data transmission buffer queues for the CCF in the forward port according to the CNM further comprises:
acquiring a characteristic value of the CNM;
judging whether the CNM is triggered by a legal CCF or not according to the characteristic value of the CNM;
and under the condition that the CNM is judged to be the CNM triggered by the legal CCF, distributing the predetermined number of data transmission buffer queues to the CCF of the forward port.
3. The method of claim 1, wherein allocating the predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM further comprises:
acquiring congestion information from the CNM, wherein the congestion information is used for indicating the congestion state of the congestion point;
determining the predetermined number according to the congestion information;
allocating the predetermined number of data transmission buffer queues to the CCF of the forward port.
4. The method of claim 3, wherein the congestion information comprises: the congestion degree of the congestion point, the congestion change rate of the congestion point and the preset feedback value of the congestion point, wherein the congestion degree is used for indicating the relation between a data transmission cache queue occupied by the congestion point at the current sampling time point and a preset threshold value, and the congestion change rate is used for indicating the change rate of the data transmission cache queue occupied by the congestion point in a preset time period.
5. The method of claim 4, wherein determining the predetermined number based on the congestion information comprises:
determining congestion sensitivity of the congestion point according to the congestion degree, the congestion change rate and the preset feedback value, wherein the congestion sensitivity is used for indicating the sensitivity degree of the congestion point to congestion change;
determining the predetermined number according to the congestion degree and the congestion sensitivity.
6. The method of claim 1, wherein determining the forward port to send a CCF to the congested congestion point based on the CNM comprises:
acquiring the information of the congestion point carried in the CNM;
retrieving a port for sending a data flow to the congestion point according to the information of the congestion point;
screening the forward port sending CCF to the congestion point from the ports sending data flow to the congestion point.
7. The method according to any one of claims 1 to 6,
before allocating a predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM, the method further comprises: recording the initial number of data transmission buffer queues occupied by the CCF in the forward port, and starting a preset timer;
after allocating a predetermined number of data transmission buffer queues for the CCF of the forward port according to the CNM, the method further comprises: and under the condition that the preset timer is over, recovering the number of the data transmission buffer queues occupied by the CCF of the forward port to the initial number.
8. A data transmission buffer queue allocation apparatus, comprising:
the determining module is used for determining a forward port for sending a congestion control flow CCF to a congestion point with congestion according to a congestion notification message CNM generated when the congestion occurs;
an allocating module, configured to allocate a predetermined number of data transmission buffer queues to the CCF of the forward port according to the CNM;
the distribution module includes:
the first judging unit is used for judging whether the number of the idle data transmission buffer queues is larger than or equal to the preset number;
a first allocating unit, configured to allocate, according to the CNM, the predetermined number of data transmission buffer queues from the idle data transmission buffer queues to the CCF of the forward port when it is determined that the number of the idle data transmission buffer queues is greater than or equal to the predetermined number; and/or the presence of a gas in the gas,
and a second allocating unit, configured to allocate, according to the CNM, the predetermined number of data transmission buffer queues to the CCF of the forward port from the data transmission buffer queues occupied by the idle data transmission buffer queues and the non-CCF data streams when it is determined that the number of the idle data transmission buffer queues is smaller than the predetermined number.
9. The apparatus of claim 8, wherein the assignment module further comprises:
a first obtaining unit, configured to obtain a feature value of the CNM;
a second judging unit, configured to judge, according to the feature value of the CNM, whether the CNM is a CNM triggered by a legitimate CCF;
and the third allocating unit is used for allocating the predetermined number of data transmission buffer queues to the CCF of the forward port under the condition that the CNM is judged to be triggered by a legal CCF.
10. The apparatus of claim 8, wherein the assignment module comprises:
a second obtaining unit, configured to obtain congestion information from the CNM, where the congestion information is used to indicate a congestion state of the congestion point;
a determining unit configured to determine the predetermined number according to the congestion information;
a fourth allocating unit, configured to allocate the predetermined number of data transmission buffer queues for the CCF of the forward port.
11. The apparatus of claim 10, wherein the congestion information comprises: the congestion control method comprises the steps of obtaining a congestion degree of a congestion point, a congestion change rate of the congestion point and a preset feedback value of the congestion point, wherein the congestion degree is used for indicating the relation between a data transmission cache queue occupied by the congestion point at a current sampling time point and a preset threshold value, and the congestion change rate is used for indicating the change rate of the data transmission cache queue occupied by the congestion point in a preset time period.
12. The apparatus of claim 11, wherein the determining unit is configured to:
determining congestion sensitivity of the congestion point according to the congestion degree, the congestion change rate and the preset feedback value, wherein the congestion sensitivity is used for indicating the sensitivity degree of the congestion point to congestion change;
determining the predetermined number according to the congestion degree and the congestion sensitivity.
13. The apparatus of claim 8, wherein the determining module comprises:
a third obtaining unit, configured to obtain information of the congestion point carried in the CNM;
a retrieval unit, configured to retrieve, according to the information of the congestion point, a port for sending a data flow to the congestion point;
a screening unit, configured to screen the forward port that sends the CCF to the congestion point from the ports that send the data flow to the congestion point.
14. The apparatus of any one of claims 8 to 13, further comprising:
the processing module is used for recording the initial number of the data transmission buffer queues occupied by the CCF in the forward port and starting a preset timer;
and the recovery module is used for recovering the number of the data transmission buffer queues occupied by the CCF of the forward port to the initial number under the condition that the preset timer is over-timed.
CN201610483296.6A 2016-06-27 2016-06-27 Data transmission buffer queue distribution method and device Active CN107547442B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610483296.6A CN107547442B (en) 2016-06-27 2016-06-27 Data transmission buffer queue distribution method and device
PCT/CN2017/090233 WO2018001222A1 (en) 2016-06-27 2017-06-27 Data transmission cache queue allocation method and apparatus, and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610483296.6A CN107547442B (en) 2016-06-27 2016-06-27 Data transmission buffer queue distribution method and device

Publications (2)

Publication Number Publication Date
CN107547442A CN107547442A (en) 2018-01-05
CN107547442B true CN107547442B (en) 2022-05-31

Family

ID=60785273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610483296.6A Active CN107547442B (en) 2016-06-27 2016-06-27 Data transmission buffer queue distribution method and device

Country Status (2)

Country Link
CN (1) CN107547442B (en)
WO (1) WO2018001222A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740146B (en) * 2018-07-18 2020-06-26 贵州白山云科技股份有限公司 Method and device for scheduling cache nodes and computer network system
CN109451541A (en) * 2018-12-21 2019-03-08 中国电子科技集团公司第三十研究所 Message transmission rate adaptive approach based on UDP under a kind of wireless network environment
CN111865716B (en) * 2020-06-30 2023-07-18 新华三信息技术有限公司 Port congestion detection method, device, equipment and machine-readable storage medium
US11463560B2 (en) 2021-01-20 2022-10-04 Jump Algorithms, Llc Network interface architecture having a directly modifiable pre-stage packet transmission buffer
WO2022241138A1 (en) 2021-05-13 2022-11-17 Janssen Biotech, Inc. Device and method for sorting biological cells
CN116915721B (en) * 2023-09-12 2023-12-19 珠海星云智联科技有限公司 Congestion control method, device, computing equipment and readable storage medium

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7706261B2 (en) * 2004-08-27 2010-04-27 Jinshen Sun Queue-based active queue management process
CN101742554A (en) * 2010-01-15 2010-06-16 南京邮电大学 Congestion control method of multi-path transmission mechanism of wireless multimedia sensor network
JP5498889B2 (en) * 2010-08-06 2014-05-21 アラクサラネットワークス株式会社 Packet relay apparatus and congestion control method
CN102185725A (en) * 2011-05-31 2011-09-14 北京星网锐捷网络技术有限公司 Cache management method and device as well as network switching equipment
US9237107B2 (en) * 2011-11-15 2016-01-12 New Jersey Institute Of Technology Fair quantized congestion notification (FQCN) to mitigate transport control protocol (TCP) throughput collapse in data center networks
CN102420776B (en) * 2012-01-12 2014-07-09 盛科网络(苏州)有限公司 Method and system for dynamically regulating portal resource allocation threshold value
US9438527B2 (en) * 2012-05-24 2016-09-06 Marvell World Trade Ltd. Flexible queues in a network switch
US10027590B2 (en) * 2014-02-24 2018-07-17 Avago Technologies General Ip (Singapore) Pte. Ltd. End to end flow control
CN103997465B (en) * 2014-05-27 2018-02-23 华为技术有限公司 A kind of generation CNM method and apparatus

Also Published As

Publication number Publication date
CN107547442A (en) 2018-01-05
WO2018001222A1 (en) 2018-01-04

Similar Documents

Publication Publication Date Title
CN107547442B (en) Data transmission buffer queue distribution method and device
US11032205B2 (en) Flow control method and switching device
US10135740B2 (en) Method and apparatus for limiting rate by means of token bucket, and computer storage medium
US8437352B2 (en) Method and system for power control based on application awareness in a packet network switch
WO2016011903A1 (en) Traffic control method and apparatus
US20170331757A1 (en) Traffic control method, traffic control apparatus and server
US20080112320A1 (en) Method and apparatus for policing bandwidth usage of a home network
WO2013075436A1 (en) Radio resource optimization method, device and system
CN106330742B (en) Flow control method and network controller
KR20070080177A (en) Apparatus and method of backward congestion notification on network
CN110943933A (en) Method, device and system for realizing data transmission
EP4075732A1 (en) Service level configuration method and device
CN112054964B (en) Queue congestion control method, device, equipment and storage medium
US7609633B2 (en) Bandwidth policer with compact data structure
JP2002111742A (en) Method for marking packet of data transmission flow and marker device performing this method
JPH07135512A (en) Router
WO2018004978A1 (en) Technologies for adaptive routing using network traffic characterization
JP2002111688A (en) Network system and its communication band control method
Feng et al. Blue: An alternative approach to active queue management
US20060209687A1 (en) Communication rate control method and device
CN114363351B (en) Proxy connection suppression method, network architecture and proxy server
CN112104564A (en) Load sharing method and equipment
US9548929B2 (en) Frame transfer apparatus and frame transfer method
CN111262792B (en) Message forwarding method, device, network equipment and storage medium
CN108243117B (en) Flow monitoring method and device and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20180425

Address after: No. 55, Nanshan District science and technology road, Nanshan District, Shenzhen, Guangdong

Applicant after: ZTE Corporation

Address before: 210012 No. 68, Bauhinia Road, Ningnan street, Yuhuatai District, Nanjing, Jiangsu

Applicant before: Nanjing Zhongxing Software Co., Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant