CN108809858A - Method for controlling network congestion, equipment and system - Google Patents

Method for controlling network congestion, equipment and system Download PDF

Info

Publication number
CN108809858A
CN108809858A CN201710296918.9A CN201710296918A CN108809858A CN 108809858 A CN108809858 A CN 108809858A CN 201710296918 A CN201710296918 A CN 201710296918A CN 108809858 A CN108809858 A CN 108809858A
Authority
CN
China
Prior art keywords
data packet
deadline
time
cut
sending device
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.)
Granted
Application number
CN201710296918.9A
Other languages
Chinese (zh)
Other versions
CN108809858B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710296918.9A priority Critical patent/CN108809858B/en
Publication of CN108809858A publication Critical patent/CN108809858A/en
Application granted granted Critical
Publication of CN108809858B publication Critical patent/CN108809858B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • H04L47/564Attaching a deadline to packets, e.g. earliest due date first
    • 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/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/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders

Landscapes

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

Abstract

The embodiment of the present application provides method for controlling network congestion, equipment and system, is related to field of communication technology so that has both reduced the waste of resource and has met the deadline requirements of data flow as far as possible.This method includes:The network equipment obtains the deadline of each data packet at least two data packets in traffic queue at the first moment, wherein first moment is any one moment, includes the first data packet at least two data packet;In the case where the network equipment determines first data packet transmission time-out according to the deadline of first data packet, the network equipment is deleted in the traffic queue, in addition to first data packet, deadline is equal to the data packet of the deadline of first data packet;The network equipment sends first data packet to receiving device.

Description

Method for controlling network congestion, equipment and system
Technical field
This application involves field of communication technology more particularly to method for controlling network congestion, equipment and systems.
Background technology
With continuous universal, the deadline (English of data flow of network application:Flow completion time, FCT) become the key index of evaluation network application performance.But it due to bursts of traffic or is unevenly distributed in existing network Situations such as, lead to network congestion phenomenon frequent occurrence, affects the FCT of data flow.The very long waiting of user in order to prevent, at present Deadline (the English of data flow would generally be set in application layer:Deadline), the result of processing is returned in deadline Back to user, and it is more than that the data packet of deadline would not be used.However, when the data packet for being more than deadline is excessive When, since the data packet being not used is excessive, it will lead to phenomena such as content of pages is not complete, picture can not be shown, to greatly The experience for affecting user.
To ensure the network application of high performance requirements, user experience is promoted, two kinds of scheduling schemes are provided at present.A kind of scheduling Scheme is (English by deadline and priority:Priority) equivalent, it is scheduling foundation with priority, ensures high preferential data Stream is by priority scheduling.Another scheduling scheme is by Centralized Controller come the deadline of stringent real-time control single data flow. However, both scheduling schemes all nonrecognition deadline attributes in transmission process, do not cause even if certain data flows not It meets the requirements, still occupies transfer resource, not only cause the waste of resource, will also influence other data flows, lead to more data Stream cannot meet deadline requirements.
Therefore, the waste of resource how is reduced, and meets the deadline requirements of data flow as far as possible, is urgently to solve at present Certainly the problem of.
Invention content
Embodiments herein provides method for controlling network congestion, equipment and system so that the waste of resource can be reduced, And meet the deadline requirements of data flow as far as possible.
In order to achieve the above objectives, embodiments herein adopts the following technical scheme that:
On the one hand, a kind of method for controlling network congestion is provided, this method includes:The network equipment obtains data at the first moment The deadline of each data packet at least two data packets in flow queue, wherein first moment is any one moment, It include the first data packet at least two data packet;Being determined according to the deadline of first data packet in the network equipment should In the case of first data packet transmission time-out, which deletes in the traffic queue, in addition to first data packet, cut-off Time is equal to the data packet of the deadline of first data packet;The network equipment sends first data packet to receiving device. Method for controlling network congestion provided by the embodiments of the present application, when the network equipment obtains the cut-off of each data packet in traffic queue Between, in the case where the network equipment determines the first data packet transmission time-out according to the deadline of the first data packet, then network is set It is standby to delete in traffic queue, in addition to the first data packet, deadline data packet identical with the deadline of the first data packet. In this manner it is possible to which reducing the network equipment sends the quantity of timeout datum packet to receiving device, that is, reduce some overtime numbers According to the failed transmission of packet, to not only save bandwidth resources, and data in the traffic queue of the network equipment can be reduced The competition of packet, and then the deadline requirements of data flow can be met as far as possible.
In a kind of possible realization method, which includes cut-off time or the first cut-off duration, wherein this first The cut-off time of data packet is that the first sending device is preset at the time of first data packet is sent to the receiving device, this A length of remaining handling duration in first moment, first data packet when the first cut-off of one data packet.Based on the program, cut Only the time includes cut-off time or cut-off duration, is applicable not only to the time that the network equipment, receiving device and sending device use The identical scene of axis, and the different scene of time shaft used suitable for the network equipment, receiving device and sending device so that Application scenarios are more extensive.
In a kind of possible realization method, the network equipment in the first moment obtained traffic queue at least two In data packet after the deadline of each data packet, this method further includes:The network equipment is cut according to each data packet The only time, update each data packet in the traffic queue transmission sequence, wherein the deadline be cut-off time In the case of, cut-off time is more early, and transmission sequence is more forward, and in the case where the deadline is the first cut-off duration, this One cut-off duration is smaller, and transmission sequence is more forward;The network equipment according to the deadline of first data packet determine this In the case of one data packet transmission time-out, which deletes in the traffic queue, and deadline is equal to first data The data packet of the deadline of packet, including:First number is determined according to the deadline of first data packet in the network equipment In the case of packet transmission time-out, which deletes in the traffic queue transmission sequence after first data packet , deadline is equal to the data packet of the deadline of first data packet, wherein first data packet is the traffic queue Middle deadline is equal to the data packet of transmission sequence up front in the data packet of the deadline of first data packet.Based on this Scheme updates transmission sequence of each data packet in traffic queue according to deadline;Time-out is transmitted in the first data packet, Deleting transmission sequence in traffic queue, after the first data packet, deadline is equal to the deadline of the first data packet Data packet.That is, in the embodiment of the present application, the deadline phase of the transmission sequence and data packet of data in traffic queue It closes.It is cut-off in deadline since deadline represents data packet urgency level to be treated in traffic queue In the case of moment, cut-off time is more early, and the processing of characterize data packet is more urgent;The case where deadline is cut-off duration Under, the first cut-off duration is smaller, and the processing of characterize data packet is more urgent.Therefore, each data packet is updated according to deadline to exist Transmission sequence in traffic queue, can to need the packet priority of emergent management to handle, so as to as full as possible Each data packet is handled before deadline in sufficient data flow, that is to say, that further can maximumlly meet data flow Deadline requirement.
In a kind of possible realization method, in the case where the deadline is the first cut-off duration, in the network equipment According to the deadline of each data packet, before updating transmission sequence of each data packet in the traffic queue, also Including:The network equipment obtains join the team moment and the second cut-off duration of each data packet of each data packet, wherein should A length of remaining handling duration in the second moment first data packet when the second cut-off of the first data packet, which is should First sending device sends the delivery time of the first data packet to the receiving device;The network equipment is according to each data packet Second cut-off duration of moment and each data packet of joining the team, when determining the first cut-off of each data packet in conjunction with preset formula It is long;Wherein, which includes:First cut-off duration=the second cut-off duration-(the first moment-join the team the moment).Based on this Scheme is applicable not only to the network equipment, receiving device and hair when determining the first cut-off duration of data packet based on preset formula The identical scene of time shaft for sending equipment to use, and the time shaft used suitable for the network equipment, receiving device and sending device Different scene so that application scenarios are more extensive.
In a kind of possible realization method, in the network equipment deletes the traffic queue, except first data packet it Outside, deadline is equal to after the data packet of the deadline of first data packet, further includes:The network equipment receives the second hair Send the probe data packet of the second data packet of equipment transmission, wherein the probe data packet of second data packet carries second number According to the deadline of the probe data packet of packet, the deadline of the probe data packet of second data packet is equal to second data packet Deadline, second data packet be the traffic queue in deadline it is identical with the deadline of first data packet Data packet;The network equipment determines the spy of second data packet according to the deadline of the probe data packet of second data packet Measured data packet transmission time-out;The probe data packet that the network equipment sends second data packet to the receiving device is based on the party Case is avoided when the second data packet since transmission time-out is deleted, but the second sending device does not know the second data of transmission Packet be transmission time-out be deleted or since other reasons are dropped, caused by receiving device retransmit data packet the case where, To not only save bandwidth resources, and it can be further reduced the competition of data packet in the traffic queue of the network equipment, And then it can maximumlly meet the deadline requirements of data flow.
Another aspect, provides a kind of method for controlling network congestion, and this method includes:Receiving device refers to sending device transmission Show message, which is used to indicate the deadline of data packet to be transmitted, wherein the data packet to be transmitted includes the One data packet;The receiving device receives first data packet that the network equipment is sent, which carries first data The deadline of packet;First data packet transmission time-out is determined according to the deadline of first data packet in the receiving device In the case of, which sends first to the sending device and confirms ACK, and first identifier and the second mark are carried in the first ACK Know, which is used to indicate the first data packet transmission time-out, the second identifier be used to indicate the sending device obtain this The target cut-off time of one data packet, target cut-off time of first data packet are the sending device according to first data packet Deadline determine.Method for controlling network congestion provided by the embodiments of the present application, in receiving device according to first data In the case that the deadline of packet determines first data packet transmission time-out, the first ACK is sent to sending device.First identifier can So that sending device determines whether the first data packet transmits time-out, which is obtained according to the first ACK second identifiers carried According to the target cut-off time of packet.
In a kind of possible realization method, which includes cut-off time or cut-off duration, wherein first data At the time of first data packet is sent to the receiving device by the cut-off time of packet for the sending device is preset, first data A length of remaining handling duration in third moment first data packet when third cut-off of packet, the third moment are the sending device Send the delivery time of the instruction message.Based on the program, deadline includes cut-off time or cut-off duration, is applicable not only to The identical scene of time shaft that the network equipment, receiving device and sending device use, and suitable for the network equipment, receiving device and The different scene of time shaft that sending device uses so that application scenarios are more extensive.
Another aspect, provides a kind of method for controlling network congestion, and this method includes:Sending device, which receives, comes from receiving device Instruction message, which is used to indicate the deadline of data packet to be transmitted, wherein the data packet packet to be transmitted Include the first data packet;The sending device sends the first data packet, first data packet according to the instruction message to the receiving device Carry the deadline of first data packet;The sending device receives the first confirmation ACK of receiving device transmission, this first First identifier and second identifier are carried in ACK, which is used to indicate the first data packet transmission time-out, which uses In indicating that the sending device obtains target cut-off time of first data packet, the target cut-off time of first data packet is should Sending device is determined according to the deadline of first data packet;The sending device determines first number according to the first identifier According to packet transmission time-out;The sending device obtains the target cut-off time of first data packet according to the second identifier;The transmission is set Target cut-off time is equal to the data of the target cut-off time of first data packet in the standby buffer queue for deleting the sending device Packet.Method for controlling network congestion provided by the embodiments of the present application, in the first sending device in first sent according to receiving device In the case that the first identifier of ACK determines the first data packet transmission time-out, the first sending device can be obtained according to second identifier The target cut-off time of first data packet, the first sending device delete the first sending device buffer queue in target cut-off time Equal to the data packet of the target cut-off time of the first data packet, in this manner it is possible to avoid the first sending device to receiving device weight The data packet for passing or sending time-out, further reduces the failed transmission of some timeout datum packets, thus not only further section Bandwidth resources have been saved, and the competition of data packet in the traffic queue of the network equipment can be further reduced, and then can be most The deadline requirements for meeting data flow changed greatly.
In a kind of possible realization method, which includes cut-off time or cut-off duration, wherein first data At the time of first data packet is sent to the receiving device by the cut-off time of packet for the sending device is preset, first data Packet the 4th cut-off when it is a length of the 4th the moment first data packet remaining handling duration, the 4th moment be the sending device Receive the time of reception of the instruction message.Based on the program, deadline includes cut-off time or cut-off duration, is applicable not only to The identical scene of time shaft that the network equipment, receiving device and sending device use, and suitable for the network equipment, receiving device and The different scene of time shaft that sending device uses so that application scenarios are more extensive.
In a kind of possible realization method, after the sending device sends the first data packet to receiving device, further include: In the case of the first ACK that the receiving device is sent, which sends the spy of first data packet to the receiving device Measured data packet, wherein the probe data packet of first data packet carries the deadline of the probe data packet of first data packet, The deadline of the probe data packet of first data packet is equal to the deadline of first data packet.Based on the program, work as hair In the case of sending equipment to be not received by the first ACK of the first data packet of receiving device transmission, sending device is to receiving device Send deadline probe data packet identical as the deadline of the first data packet.Sending device receives the first ACK, In sending device in the case where the first ACK sent according to receiving device determines the first data packet transmission time-out, deletes and send Target cut-off time is equal to the data packet of the target cut-off time of the probe data packet of the first data packet in the buffer queue of equipment. In this way, avoid when the first data packet since transmission time-out is deleted, but sending device does not know the first data packet of transmission Be transmission time-out be deleted or since other reasons are dropped, caused by receiving device retransmit data packet the case where, from And bandwidth resources are not only saved, and it can be further reduced the competition of data packet in the traffic queue of the network equipment, into And it can maximumlly meet the deadline requirements of data flow.
In a kind of possible realization method, the detection number of first data packet is sent to the receiving device in the sending device After packet, further include:The sending device receives the 2nd ACK of receiving device transmission, and third mark is carried in the 2nd ACK With the 4th mark, third mark is used to indicate the probe data packet transmission time-out of first data packet, and the 4th mark is used for Indicate that the sending device obtains the target cut-off time of the probe data packet of first data packet;The sending device is according to the third Mark determines the probe data packet transmission time-out of first data packet;The sending device obtains first number according to the 4th mark According to the target cut-off time of the probe data packet of packet;When the sending device deletes that target is ended in the buffer queue of the sending device Carve the data packet of the target cut-off time of the probe data packet equal to first data packet.Based on the program, sending device is in root After the 2nd ACK sent according to receiving device determines the first data packet transmission time-out, target in the buffer queue of sending device is deleted Cut-off time is equal to the data packet of the target cut-off time of the probe data packet of the first data packet.In this way, avoiding when first Data packet is since transmission time-out is deleted, but sending device does not know that the first data packet of transmission is that transmission time-out is deleted also Be since other reasons are dropped, caused by receiving device retransmit data packet the case where, to not only save bandwidth money Source, and it can be further reduced the competition of data packet in the traffic queue of the network equipment, and then can maximumlly meet The deadline requirements of data flow.
Another aspect, provides a kind of IP data packet formats, and the stem of the IP data packet formats can be used for carrying data packet Deadline.
In a kind of possible realization method, provide a kind of IP data packet formats, in the stem of the IP data packet formats can Option Field can be used for carrying the deadline of data packet.
Another aspect, provides a kind of IP data packet formats, and the stem of the IP data packet formats can be used for carrying data packet Deadline and indicate the data packet be probe data packet mark.
In a kind of possible realization method, provide a kind of IP data packet formats, in the stem of the IP data packet formats can Option Field can be used for carrying the deadline of probe data packet and indicate that the data packet is the mark of probe data packet.
Another aspect provides a kind of TCP data packet format, and the first ACK in the embodiment of the present application uses the TCP data The format of packet, the packet header of the TCP data packet format can be used for carrying first identifier and second identifier, first identifier may be used to indicate Whether corresponding first data packets of the first ACK transmit time-out, and first data packet transmission time-out is being determined according to first identifier In the case of, second identifier may be used to indicate send first data packet sending device obtain first data packet target cut The only moment.
In a kind of possible realization method, a kind of TCP data packet format is provided, the first ACK in the embodiment of the present application is adopted With the format of the TCP data packet, can be used for carrying in the reservation bit field in the packet header of the TCP data packet format first identifier and The second identifier.
By using the IP data packet formats and TCP data packet format provided in the embodiment of the present application, can be set in network At least one of standby, receiving device, sending device realize the above-mentioned corresponding method for controlling network congestion of various aspects.
Another aspect provides a kind of network equipment, which has network equipment behavior in the above method of realizing Function.The function can also execute corresponding software realization by hardware realization by hardware.The hardware or software include One or more modules corresponding with above-mentioned function.
Another aspect provides a kind of receiving device, which has receiving device behavior in the above method of realizing Function.The function can also execute corresponding software realization by hardware realization by hardware.The hardware or software include One or more modules corresponding with above-mentioned function.
Another aspect provides a kind of sending device, which has sending device behavior in the above method of realizing Function.The function can also execute corresponding software realization by hardware realization by hardware.The hardware or software include One or more modules corresponding with above-mentioned function.
Another aspect provides a kind of network congestion control system, includes the network equipment such as above-mentioned various aspects, such as above-mentioned each The receiving device of the sending device of aspect and such as above-mentioned various aspects.
Another aspect provides a kind of network equipment, including:Processor, memory and communication interface;The memory is for depositing Computer executed instructions are stored up, when the network equipment is run, the computer which executes memory storage executes Instruction, so that the network equipment executes the method for controlling network congestion of above-mentioned various aspects.
Another aspect provides a kind of sending device, including:Processor, memory and communication interface;The memory is for depositing Computer executed instructions are stored up, when the sending device is run, the computer execution which executes memory storage refers to It enables, so that the network equipment executes the method for controlling network congestion of above-mentioned various aspects.
Another aspect provides a kind of receiving device, including:Processor, memory and communication interface;The memory is for depositing Computer executed instructions are stored up, when the receiving device is run, the computer execution which executes memory storage refers to It enables, so that the receiving device executes the method for controlling network congestion of above-mentioned various aspects.
Another aspect, the embodiment of the present application provide a kind of computer readable storage medium, the computer-readable storage medium Instruction is stored in matter, when run on a computer so that computer executes the web impact factor side of above-mentioned various aspects Method.
Another aspect, the embodiment of the present application provides a kind of computer program product including instruction, when it is in computer When upper execution so that computer executes the method for controlling network congestion of above-mentioned various aspects.
In addition, technique effect caused by any design method can be found in above-mentioned network congestion in above equipment embodiment Technique effect caused by different designs mode in control method embodiment, details are not described herein again.
These aspects or other aspects of the application can more straightforward in the following description.
Description of the drawings
Fig. 1 is a kind of Organization Chart of network congestion control system provided by the embodiments of the present application;
Fig. 2 is TCP data packet form schematic diagram provided by the embodiments of the present application;
Fig. 3 is a kind of interaction schematic diagram of method for controlling network congestion provided by the embodiments of the present application;
Fig. 4 is IP data packet formats schematic diagram provided by the embodiments of the present application;
Fig. 5 is the interaction schematic diagram of another method for controlling network congestion provided by the embodiments of the present application;
Fig. 6 is the interaction schematic diagram of another method for controlling network congestion provided by the embodiments of the present application;
Fig. 7 is another IP data packet format schematic diagram provided by the embodiments of the present application;
Fig. 8 is the interaction schematic diagram of another method for controlling network congestion provided by the embodiments of the present application;
Fig. 9 is a kind of application scenarios schematic diagram of method for controlling network congestion provided by the embodiments of the present application;
Figure 10 is a kind of schematic diagram of the traffic queue 1 of network equipment 1 provided by the embodiments of the present application;
Figure 11 is a kind of schematic diagram of the buffer queue 1 of sending device 1 provided by the embodiments of the present application;
Figure 12 is a kind of schematic diagram of the buffer queue 2 of sending device 2 provided by the embodiments of the present application;
Figure 13 is a kind of network equipment infrastructure schematic diagram provided by the embodiments of the present application;
Figure 14 is another network equipment infrastructure schematic diagram provided by the embodiments of the present application;
Figure 15 is a kind of receiving device structural schematic diagram provided by the embodiments of the present application;
Figure 16 is another receiving device structural schematic diagram provided by the embodiments of the present application;
Figure 17 is a kind of sending device structural schematic diagram provided by the embodiments of the present application;
Figure 18 is another sending device structural schematic diagram provided by the embodiments of the present application;
Figure 19 is a kind of computer equipment structural schematic diagram provided by the embodiments of the present application.
Specific implementation mode
Below in conjunction with the attached drawing in the embodiment of the present application, technical solutions in the embodiments of the present application is described.
It should be noted that "/" in the embodiment of the present application indicate or the meaning, for example, A/B can indicate A or B;This "and/or" in application embodiment is only a kind of incidence relation of description affiliated partner, indicates may exist three kinds of relationships, example Such as, A and/or B can be indicated:Individualism A exists simultaneously A and B, these three situations of individualism B." multiple " refer to two Or more than two.
It should be noted that in the embodiment of the present application, " illustrative " or " such as " etc. words make example, example for indicating Card or explanation.Be described as in the embodiment of the present application " illustrative " or " such as " any embodiment or design scheme do not answer It is interpreted than other embodiments or design scheme more preferably or more advantage.Specifically, " illustrative " or " example are used Such as " word is intended to that related notion is presented in specific ways.
It should be noted that in the embodiment of the present application, " (English:Of) ", " corresponding (English:Corresponding, English:Relevant) " and " corresponding (English:Corresponding it) " can use with sometimes, it is noted that not strong When adjusting its difference, meaning to be expressed is consistent.
As shown in Figure 1, for the configuration diagram of network congestion control system 100 provided by the embodiments of the present application, the network Congestion control system system 100 includes:One or more sending devices, one or more network equipments and one or more Receiving device.Wherein, sending device for example can be sending device 1, sending device 2 or sending device 3;The network equipment for example may be used To be the network equipment 1, the network equipment 2, the network equipment 3 or the network equipment 4;Receiving device for example can be receiving device 1, receive Equipment 2 or receiving device 3.Sending device is used for through the network equipment to receiving device transmission data packet, and receiving device is used for It is (English to sending device feedback acknowledgment by the network equipment after receiving data packet:Acknowledgement, ACK).
In general, sending device and receiving device can be host or server, sending device and receiving device are opposite , the sending device in the embodiment of the present application may be receiving device, and the receiving device in the embodiment of the present application may be Sending device, the embodiment of the present application are not especially limited this.
It should be noted that the network equipment can be the equipment that logarithm is route, forwarded according to packet, for example, it may be object Interchanger, physical router are managed, or is built-in in physical server, the virtual switch based on software virtualization technology (English:Virtual switch, vSwitch), virtual router (English:Virtual router, vRouter).
Optionally, the ACK in the embodiment of the present application uses transmission control protocol (English as shown in Figure 2: Transmission control protocol, TCP) data packet format.The TCP data packet includes packet header TCP and from answering With the data of layer.Wherein, the header parts TCP include:Source port number, destination slogan, sequence number, confirmation number, stem, reservation Position, flag, window, verification and urgent pointer and option.
The header parts TCP of TCP data packet are briefly introduced with reference to Fig. 2:
Source port number and destination number are respectively 16, the connection for indicating application layer.
Sequence number:32, identify the data word throttling sent from source to destination.
Confirmation number:32, indicate that Serial No. confirmation number subtracts 1 data packet and its pervious data packet correctly connects It receives, is equivalent to the symbol of next byte for preparing to receive.
Stem:4, it is used to indicate data start.
Flag bit:6, wherein URG (English:Urgent) indicate that urgent pointer field is effective;ACK indicates confirmation word Duan Youxiao;PSH (English:Push) current data packet needs to ask push operation;RST (English:Reset) set indicates to reset TCP Connection;SYN (English:Synchronous it) is used to synchronize serial number when establishing TCP connection;FIN (English:Final it) is used to discharge Sender's bit stream is identified when TCP connection to terminate.
Window:16, indicate that source end host needs the byte number received before request receiving device etc. is to be confirmed.
Verification and:16, the consistency for checking the packet header TCP and data.
Urgent pointer:16, emergency data byte is directed toward when URG codes are effective.
Option:8 times numerical digit also has 4 other byte datas after indicating the packet header TCP in the presence of option.
It is sky that ACK in the embodiment of the present application, which uses the header parts TCP, data portion,.Wherein it is possible in TCP packet headers Whether the first place for the reserved bit divided or any bit are arranged more than deadline.For example, if data packet 1 is more than deadline, The first place of reserved bit sets 1, if data packet 1 is less than deadline, reserved bit first place is set to 0.
It should be noted that the packet header of the format of TCP data packet is referred to as stem, the embodiment of the present application does not make this It is specific to limit.
As shown in figure 3, being a kind of interaction schematic diagram of method for controlling network congestion provided by the embodiments of the present application, including step Rapid S301-S313:
S301, receiving device send instruction message to the first sending device.
Specifically, in step S301, instruction message is sent to the network equipment by receiving device first, and the network equipment receives It is transmitted to the first sending device to after the first data packet, then by instruction message.
Wherein, instruction message is used to indicate the deadline of data packet to be transmitted, and data packet to be transmitted includes first Data packet.
S302, the first sending device receive instruction message.
S303, the first sending device send the first data packet according to instruction message to receiving device.
Specifically, in step S303, instruction message is sent to the network equipment by the first sending device first.
Wherein, the first data packet carries the deadline of the first data packet.
Optionally, interconnection protocol is (English between networks in the embodiment of the present application:Internet protocol, IP) number According to the deadline that can carry data packet in packet format stem, Fig. 4 is the format of IP data packets provided by the embodiments of the present application, As shown in figure 4, IP data packets include:Stem and data, stem include fixed part and variable part.Wherein, fixed part subpackage It includes:Version, header length, service, total length, mark, mark, piece offset, life span, agreement, header check and source address And destination address;Variable part includes:Optional Field.
The stem of IP data packets is briefly introduced with reference to Fig. 4:
Version:4, indicate the version of IP agreement.
Header length:4, indicate the length of stem in IP data packets.
Service type:8, for obtaining better service.
Total length:16, indicate the sum of the length of stem and data.
Mark:16, identical mark enables each data packet after fragment correctly to reset as original data packet.
Mark:3, there was only 2 significant, numbers for " also having fragment " behind the expression of extreme lower position 1 of attribute field at present According to packet, the extreme lower position 0 of attribute field indicates that this has been the last one in several packet fragmentations.One among attribute field Position only just allows fragment when setting to 0.
Piece deviates:13, the starting point of opposite user data fields, the piece is since where.
Agreement:8, the data for referring to data packet carrying are which kind of agreement used.
Header check and:16, the stem of inspection data packet.
Source address and each 32 of destination address, source address indicate the source host address for sending IP data packets, destination address mark The bright destination host address for receiving IP data packets.
Optional Field, the variable part for increasing stem are to increase the function of IP data packets.
Optionally, the deadline in the embodiment of the present application carries in the Optional Field of the stem of IP data packets, this Shen Please embodiment the length and initial position that use Optional Field are not especially limited.
In general, needing the data transmitted to be packaged according to ICP/IP protocol before data transmission, wherein first according to TCP Data packet format is packaged as TCP data packet, and TCP data packet is then encapsulated as IP data according to IP data packet formats again Packet.Therefore, data packet is both including the packet header TCP or including IP stems.
It should be noted that data packet includes IP stems and the packet header TCP in the embodiment of the present application, wherein when using IP packets When head, data packet is referred to as IP data packets, and when using the packet header TCP, data packet is alternatively referred to as TCP data packet, the application Embodiment is not especially limited this.
It should be noted that the stem in the format of IP data packets is alternatively referred to as packet header, the embodiment of the present application does not make this It is specific to limit.
S304, the network equipment each data packet in the first moment obtained at least two data packets in traffic queue Deadline.
Wherein, the first moment was any one moment, included the first data packet at least two data packets.
Optionally, in the embodiment of the present application, the network equipment can be any one network equipment in Fig. 1, such as network Any one in equipment 1, the network equipment 2, the network equipment 3 or the network equipment 4.
Optionally, in the embodiment of the present application, the data packet in the traffic queue of the network equipment can be different transmission What equipment was sent, for example may include sending device 1, sending device 2 and hair in the traffic queue of the network equipment 1 in Fig. 1 The data packet for sending equipment 3 to send;Certainly, the data packet in the traffic queue of the network equipment can also be to be set by identical transmission Preparation is sent, for example can only include the data packet that sending device 1 is sent, this Shen in the traffic queue of the network equipment 1 in Fig. 1 Please embodiment this is not especially limited.
S305, the situation for determining the first data packet transmission time-out according to the deadline of the first data packet in the network equipment Under, the network equipment is deleted in traffic queue, and in addition to the first data packet, deadline is equal to the deadline of the first data packet Data packet.
It should be noted that determining first according to the deadline of the first data packet in the network equipment in the embodiment of the present application In the case of data packet transmission time-out, the data packet of deletion can be in addition to the first data packet, and deadline is equal to the first number According to all data packets of the deadline of packet, the data packet of deletion can be in addition to the first data packet, and deadline is equal to the The partial data packet of the deadline of one data packet, the embodiment of the present application are not especially limited this.
Optionally, the first data packet in the embodiment of the present application can be any one data packet in traffic queue, Or first data packet to be sent in traffic queue, the embodiment of the present application are not especially limited this.
Method for controlling network congestion provided by the embodiments of the present application, the network equipment obtain each data packet in traffic queue Deadline, the network equipment according to the deadline of the first data packet determine the first data packet transmission time-out in the case of, Then the network equipment is deleted in traffic queue, and in addition to the first data packet, deadline is identical as the deadline of the first data packet Data packet.In this manner it is possible to which reducing the network equipment sends the quantity of timeout datum packet to receiving device, that is, reduce one The failed transmission of a little timeout datum packets, to not only save bandwidth resources, and can reduce the data flow team of the network equipment The competition of data packet in row, and then the deadline requirements of data flow can be met as far as possible.
S306, the network equipment send the first data packet to receiving device.
S307, receiving device receive the first data packet that the network equipment is sent.
S308, receiving device determine the first data packet transmission time-out according to the deadline of the first data packet.
S309, the situation for determining the first data packet transmission time-out according to the deadline of the first data packet in receiving device Under, receiving device sends ACK1 to the first sending device.
Specifically, in step S309, ACK1 is sent to the network equipment by receiving device first, and the network equipment is receiving ACK1 is transmitted to the first sending device after ACK1.
Wherein, mark 1 and mark 2 are carried in ACK1, mark 1 is used to indicate the first data packet transmission time-out, and mark 2 is used In the target cut-off time for indicating the first sending device the first data packet of acquisition, the target cut-off time of the first data packet is to send The cut-off time that equipment is determined according to the deadline of the first data packet and the time shaft of the sending device.
It should be noted that in the embodiment of the present application, to assume that the first data packet is that the first sending device is sent to reception For the data packet of equipment, therefore, after the first data packet that receiving device receives that the network equipment is sent, sends and set to first Preparation send ACK1.
It should be noted that in the embodiment of the present application, the deadline of the first data packet is with the first data packet in the first hair Send the transmission sequence in equipment unrelated;Also, the deadline for each data packet that the first sending device is sent can be identical, Can be different, the embodiment of the present application is not especially limited this.
Method for controlling network congestion provided by the embodiments of the present application, in cut-off of the receiving device according to first data packet Between determine first data packet transmission time-out in the case of, to sending device send ACK1.Mark 1 can make the first sending device Determine whether the transmission of the first data packet transmits time-out, the mark 2 carried according to ACK1 indicates that sending device obtains first data The target cut-off time of packet.
S310, the first sending device receive the ACK1 that receiving device is sent.
S311, the first sending device determine the first data packet transmission time-out according to mark 1.
S312, the first sending device obtain the target cut-off time of the first data packet according to mark 2.
Wherein, the target cut-off time of the first data packet is that sending device is determined according to the deadline of the first data packet 's.
S313, the first sending device delete the first sending device buffer queue in target cut-off time be equal to the first data The data packet of the target cut-off time of packet.
Specifically, in the embodiment of the present application, since data packet may need to retransmit, the first sending device is sending number After packet, an identical data pack buffer can be replicated in the buffer queue of the first sending device, which carries mesh Cut-off time is marked, in general, sending device needs to receive an ACK, determines that received could delete of data packet should according to the ACK The identical data packet that data packet replicates in buffer queue.
In the case where the first sending device determines the first data packet transmission time-out according to the mark 1 of ACK1, first sends Equipment can obtain the target cut-off time of the first data packet according to mark 2, and the first sending device deletes the first sending device Target cut-off time is equal to the data packet of the target cut-off time of the first data packet in buffer queue.It in this way can be to avoid the first hair It send equipment to continue to send the data packet of the first data packet and other time-out to the network equipment, reduces some timeout datum packets Failed transmission to not only save bandwidth resources, and can be further reduced data in the traffic queue of the network equipment The competition of packet, and then can maximumlly meet the deadline requirements of data flow.
It should be noted that in the embodiment of the present application, the data packet that the first sending device is deleted can be that the first transmission is set Target cut-off time is equal to all data packets of the target cut-off time of the first data packet in standby buffer queue, or the Target cut-off time is equal to the partial data packet of the target cut-off time of the first data packet in the buffer queue of one sending device, this Application embodiment is not especially limited this.
In method for controlling network congestion provided by the embodiments of the present application, on the one hand, the network equipment obtains in traffic queue The deadline of each data packet determines the first data packet transmission time-out in the network equipment according to the deadline of the first data packet In the case of, then the network equipment is deleted in traffic queue, in addition to the first data packet, the cut-off of deadline and the first data packet Time identical data packet.In this manner it is possible to the quantity that the network equipment sends timeout datum packet to receiving device is reduced, that is, The failed transmission for reducing some timeout datum packets to not only save bandwidth resources, and can reduce the network equipment The competition of data packet in traffic queue, and then the deadline requirements of data flow can be met as far as possible.On the other hand, exist In the case that receiving device determines first data packet transmission time-out according to the deadline of first data packet, to sending device ACK1 is sent, the first sending device can be made to determine the feelings of the first data packet transmission time-out in the ACK1 sent according to receiving device Under condition, number of the target cut-off time equal to the target cut-off time of the first data packet in the buffer queue of the first sending device of deletion According to packet, in this manner it is possible to which the first sending device is avoided to retransmit or send the data packet of time-out to receiving device, it is further reduced The failed transmission of some timeout datum packets to not only further save bandwidth resources, but also can be further reduced net The competition of data packet in the traffic queue of network equipment, and then can maximumlly meet the deadline requirements of data flow.
In a kind of possible realization method, when the deadline of data packet includes the cut-off of data packet in the embodiment of the present application The cut-off duration of quarter or data packet, wherein the cut-off time of data packet is that preset be sent to the data packet of sending device connects At the time of receiving unit, when cut-off of data packet a length of at a time data packet remaining handling duration, at different times, together The cut-off duration of one data packet is different.
When the deadline that data packet carries is cut-off time, after network equipment received data packet, the network equipment can be with Extract the cut-off time in Optional Field in IP data packet headers;When the deadline of carrying is cut-off duration, the network equipment The cut-off duration of Optional Field in IP data packet headers can be extracted and change, network equipment periodic refresh is ended duration, needed Illustrate, the order of magnitude in the period of refreshing can meet the requirement of successively decreasing of cut-off duration.
Illustratively, per number at least two data packets of the network equipment in the traffic queue that the first moment obtained Deadline according to packet is cut-off time or the first cut-off duration of each data packet;Alternatively, illustrative, receiving device is the The deadline that two moment sent each data packet to receiving device is cut-off time or the second cut-off duration of each data packet. Alternatively, it is illustrative, when the deadline of the data packet to be transmitted of instruction message instruction is the cut-off of data packet to be transmitted It carves or third ends duration;Or it is illustrative, sending device is to be transmitted per number in the 4th reception instruction message Deadline according to packet is cut-off time or the 4th cut-off duration of each data packet.Wherein, the cut-off time of the first data packet At the time of first data packet is sent to receiving device for the first sending device is preset, the first cut-off duration of the first data packet It is a length of at the second moment first in the remaining handling duration of first the first data packet of moment, the second cut-off of the first data packet The remaining handling duration of data packet, a length of the first data packet of delivery time in instruction message when the third of the first data packet is ended Remaining handling duration, when third cut-off of the first data packet is a length of in the time of reception the first data packet for receiving instruction message Remaining processing time.Obviously, in the case where deadline is cut-off duration, the cut-off duration of instruction message instruction is by net Network equipment is successively decreased when transmission, is repeated no more below.
It should be noted that in the case where deadline is cut-off time, sending device, the network equipment and receiving device The time shaft of use is identical;In the case where deadline is cut-off duration, sending device, the network equipment and receiving device are adopted It is not required with whether time shaft is identical, the time shaft that sending device, the network equipment and receiving device use can be identical, also may be used With difference, the embodiment of the present application is not especially limited this.
It should be noted that in the embodiment of the present application, cut-off duration is it is also assumed that be opposite cut-off duration, the application is real Example is applied to be not especially limited this.
, it is understood that for relative to the T1 moment The remaining handling duration of data packet 1 be 20S, the remaining processing relative to the data packet 1 at the T1+10S moment when it is a length of 10S。
Based on the program, deadline includes cut-off time or the first cut-off duration, is applicable not only to sending device, network Equipment and the identical scene of receiving device time shaft, and it is suitable for sending device, the network equipment and receiving device time shaft not phase Same scene so that application scenarios are more extensive.
In a kind of possible realization method, in the case where deadline is cut-off time, target cut-off time is to cut The only moment.In the case where deadline is cut-off duration, target cut-off time is sending device according to cut-off duration and cut-off It determines to obtain at the time of sending device time shaft is shown at the time of duration corresponds to.
Optionally, at the time of receiving device receives instruction message, receiving device can by receiving device it is current when It carves plus indicating in instruction message in current time remaining handling duration and be determined as target and handle the moment, the application is real It is not especially limited at the time of example is applied for determining target cut-off time.
Illustratively, it is assumed that in the case where deadline is cut-off time, in conjunction with Fig. 1, it is assumed that the network equipment 1 receives Equipment 1 is identical with the time shaft of sending device 1, and 28 divide when the deadline for the instruction message instruction that receiving device 1 is sent is 16 53 seconds.Since each equipment room is transmitted without the time difference, 28 divide when 1 preset target deadline of sending device is 16 53 seconds.Assuming that the network equipment 1 uses standard time axis T1, sending device to adopt 1 with T1-2 seconds time shafts, receiving device 1 uses T1+2 seconds time shafts 28 divide 50 seconds when 1 is 16 at the time of standard time axis, since the time shaft of sending device 1 is T1-2 Second, the time shaft of accepting device 1 is T1+2 seconds, then 28 divide 48 seconds when being 16 at the time of 1 sending device 1 of moment is shown, the moment 1 28 divide 52 seconds when being 16 at the time of receiving device 1 is shown, therefore are determined according to cut-off time when each equipment room interacts It is inaccurate to delete data packet, and there are possibility, and the data packet being not timed-out is judged as to overtime data packet, or will be overtime Data packet be judged as being not timed-out, therefore, in the case of time shaft difference, deadline does not include including cut-off time End duration.
Illustratively, in the case where deadline is cut-off duration, due to the instruction message middle finger of receiving device reception That shows is off duration, and the data packet of identical cut-off duration may be from using different time axis for sending device The instruction message instruction that receiving device is sent, such as receiving device 1, receiving device 2 or receiving device 3 in Fig. 1, it is also possible to What the instruction message from the same receiving device of same different moments, such as the transmission of receiving device 1 indicated, carry identical cut-off It may be the same moment that the data packet of duration, which corresponds to cut-off time for receiving device, it is also possible at the time of different, therefore Sending device according to it is identical cut-off duration can not judge whether other data packets whether time-out.Therefore, the embodiment of the present application In, sending device can be sent in the cut-off duration for the time of reception instruction message instruction for receiving instruction message and in the time of reception The target cut-off time for sending device is determined at the time of the time shaft of equipment.For example, data packet 1 in sending device Target deadline be opposite deadline in the time of reception sending device at the time of show plus the time of reception, for example send out Equipment 1 is sent 28 to divide at 16 and receive within 50 seconds instruction message, the remaining processing time of instruction message instruction is 3S, then data packet 1 When the target deadline in sending device 1 is 16,28 divide 53S.
Optionally, after receiving device receives instruction message, receiving device carries the deadline in instruction message in number In stem according to the IP data packets of packet, when turned off between for the deadline that in the case of cut-off time, data packet carries be to cut The only moment, when turned off between for cut-off duration in the case of, data packet carry deadline be receive the instruction message moment, The remaining processing time of instruction message instruction can cache according to data packet in sending device before sending device transmission data packet Queuing duration in queue determines data packet in the cut-off duration of delivery time, cut-off when data packet is lined up on the sending device Duration can update, and can not also update, the embodiment of the present application is not especially limited this.
Based on the program, in the case where deadline is cut-off time, sending device can be directly according to cut-off time Delete data packet identical with the cut-off time of the first data packet in buffer queue;Exist in network congestion control system arbitrary In the case of the time shaft difference that two equipment uses, network congestion control provided by the embodiments of the present application is executed according to cut-off time There are errors for method processed.In the case where deadline is cut-off duration, web impact factor and other are executed in each equipment It is unrelated at the time of equipment, therefore be also not present using error caused by time shaft difference, that is to say, that when deadline is cut-off In the case of quarter, it only can be suitably used for each equipment in network congestion control system and use same time axis;It is the in deadline In the case of one cut-off duration, it both can be suitably used for each equipment in network congestion control system and used identical time shaft, and also could Different time shafts is used suitable for each equipment.
Specifically, in the embodiment of the present application, the identical data packet of the first cut-off duration of the same sending device transmission Target cut-off time is also identical.Since the first cut-off duration is that the network equipment obtains, target cut-off time is that the first transmission is set Standby setting, if therefore the network equipment the first data packet transmission time-out, net are determined according to the first of the first data packet the cut-off duration Network equipment is deleted in traffic queue, and in addition to the first data packet, the first cut-off duration is equal to the first cut-off of the first data packet The data packet of duration;And in the first sending device in the case where determining the first data packet transmission time-out, it deletes the first transmission and sets Target cut-off time is equal to the data packet of the target cut-off time of the first data packet in standby buffer queue.Certainly, due to network In the traffic queue of equipment other than the data packet sent comprising the first sending device, it is also possible to comprising except first send set The data packet that other sending devices except standby are sent;And in addition to comprising being sent to network in the buffer queue of the first sending device Except the duplicate packet of the data packet of equipment, it is also possible to which comprising the data packet for not being sent to the network equipment, therefore first sends Equipment delete data packet and the network equipment delete data packet may be not fully identical, but due to first cut-off when appearance With data packet target cut-off time it is also identical, so if the first data packet transmission time-out, the first sending device delete The data packet that the data packet that data packet and the network equipment are deleted all is a time out.
The target cut-off time for the identical data packet of the first cut-off duration that the same sending device is sent is given below Identical proof is as follows:
First, in the embodiment of the present application, the network equipment can be based on formula (1) calculates data packet in traffic queue the One cut-off duration:
First cut-off duration=the second cut-off duration-(the first moment-join the team the moment) formula (1)
Wherein, the network equipment receives each data packet carries the second cut-off duration, when second cut-off it is a length of The remaining handling duration of second time data packet, the second moment are transmission of the sending device to the receiving device transmission data packet Moment is typically obtained by sending device based on formula (2):
Second cut-off duration=target cut-off time-delivery time formula (2)
For example, when a length of first sending device sends the first data packet to receiving device when the second cut-off of the first data packet The remaining handling duration of first data packet.The target cut-off time-of the second cut-off data packet of duration=first of the first data packet The delivery time of first data packet.Assuming that the target cut-off time of the first data packet 25 divides 00 second when being 16, delivery time 16 When 24 divide 00 second, then 25 24 divide 00 second=60 seconds when dividing 00 second -16 when the second cut-off duration of the first data packet=16.
Secondly, it is assumed that the first cut-off duration of first cut-off duration=data packet 2 of data packet 1.
It can then be obtained according to formula (1) and formula (2):
The joining the team the moment of the-the first moment of delivery time+data packet 1 of target cut-off time-data packet 1 of data packet 1= The-the first moment of delivery time+data packet 2 of target cut-off time-data packet 2 of data packet 2 is joined the team the moment.
That is, (the target cut-off time of target cut-off time-data packet 2 of the data packet 1)=(delivery time of data packet 1 Data packet 1 is joined the team the moment)-(joining the team the moment for delivery time-data packet 2 of data packet 2).
Since data packet 1 and data packet 2 are all the data packet that the first sending device is sent,:
Delivery time-data packet 2 of the joining the team the moment of delivery time-data packet 1 of data packet 1=data packet 2 is joined the team Moment,
In turn:Target cut-off time=0 of target cut-off time-data packet 2 of data packet 1, the i.e. target of data packet 1 are cut The only target cut-off time of moment=data packet 2.
It therefore deduces that, when the target for the identical data packet of the first cut-off duration that the same sending device is sent is ended It carves also identical.
It should be noted that whether above-mentioned formula (1) is not made identical to have for the time shaft of sending device with the network equipment Body limits.In addition, above-mentioned formula (1) has ignored the duration that data packet is sent to the network equipment from sending device, because of data packet The duration that the network equipment is sent to from sending device is very small, can be ignored, and therefore, the second phase ends duration and is equal to net Network equipment receives the remaining handling duration of the time of reception data packet of data packet.
Illustratively, it is assumed that the sending device 1 and the network equipment 1 in Fig. 1 are using same timeline T1, it assumes that send 28 divide 00 second when the preset target cut-off time that data packet 1 and data packet 2 are sent to receiving device 1 of equipment 1 is 16, number 27 divide 10 seconds when according to the delivery time of packet 1 being 16,27 divide 00 second when the delivery time of data packet 2 is 16, then the of data packet 1 28 27 divide 10 seconds=50S when dividing 00 second -16 when two cut-off durations=16, and 28 divide 00 when the second cut-off duration of data packet 2=16 27 divide 00 second=60S when the second -16.Since sending device 1 and the network equipment 1 use same timeline T1, having ignored Under the premise of data packet is sent to the duration of the network equipment from sending device, data packet 1 reach the joining the team the moment of the network equipment 1= 27 divide 10 seconds when the delivery time of data packet 1=16, and data packet 2 reaches the transmission of the joining the team the moment of the network equipment 1=data packet 2 27 divide 00 second when moment=16.Assuming that the first moment 27 divided 30S when being 16, then first cut-off duration=50S- of data packet 1 (when 16 27 when dividing 30 seconds -16 27 divide 10 seconds)=30S, (27 divide 30 seconds -16 first cut-off duration=60S- of data packet 2 when 16 When 27 divide 00 second)=30S.Obviously, the first cut-off duration of target cut-off time identical data packet is also identical.
Alternatively, illustrative, it is assumed that sending device 2 and the network equipment 1 in Fig. 1 use different time shafts, network to set Standby 1 uses time shaft T1, and sending device 2 uses time shaft T1+10S, that is, sending device 2 time than the network equipment 1 Slow 10 seconds of the time, it assumes that the preset target that data packet 3 and data packet 4 are sent to receiving device 1 of sending device 2 is ended 28 divide 10 seconds when moment is 16, and 27 divide 10 seconds when the delivery time of data packet 3 is 16,27 when the delivery time of data packet 4 is 16 Point 00 second, then 28 27 divide 10 seconds=60S when dividing 10 seconds -16 when the second cut-off duration of data packet 3=16, the second of data packet 4 28 27 divide 00 second=70S when dividing 10 seconds -16 when cut-off duration=16.Not due to the time shaft of sending device 1 and the network equipment 1 Together, therefore under the premise of having ignored data packet from sending device and being sent to the duration of the network equipment, data packet 3 reaches network and sets 27 27 divide 00 second when dividing -10 seconds 10 seconds=16 when delivery time-time deviation of standby 1 join the team the moment=data packet 3=16, 27 divide -10 seconds 00 second when data packet 4 reaches delivery time-time deviation of the joining the team the moment of the network equipment 1=data packet 4=16 26 divide 50 seconds when=16, it is assumed that 27 divide 30S when the first moment was 16, then first cut-off duration=60S- of data packet 3 is (when 16 27 divide 00 second at 27 point 30 seconds -16)=30S, (27 26 divide when dividing 30 seconds -16 first cut-off duration=70S- of data packet 4 when 16 50 seconds)=30S.Obviously, the first cut-off duration of target cut-off time identical data packet is also identical.
To sum up, no matter whether the time shaft of the time shaft of sending device and the network equipment is identical, the same sending device hair The target cut-off time for the identical data packet of the first cut-off duration sent is also identical.
Certainly, by above-mentioned example it can also be seen that the first of distinct device transmission ends the identical data packet of duration Target cut-off time may be different, and the embodiment of the present application is not especially limited this.For example, in above-mentioned two example, first 27 divide 30S when moment is 16, data packet 1, data packet 2, data packet 3 and data packet 4 the first cut-off duration be all 30S, but 28 divide 00 second when the target cut-off time for being data packet 1 and data packet 2 is 16, when the target cut-off of data packet 3 and data packet 4 28 divide 10 seconds when quarter is 16, it is clear that the target cut-off time for the identical data packet of the first cut-off duration that distinct device is sent is simultaneously It differs.
A kind of possible realization method further includes step S314 as shown in figure 5, after step S304:
S314, the network equipment update each data packet in traffic queue according to the deadline of each data packet Transmission sequence.
Wherein, in the case where deadline is cut-off time, cut-off time is more early, and transmission sequence is more forward, is ending In the case that time is cut-off duration, the first cut-off duration is smaller, and transmission sequence is more forward.
Optionally, in the embodiment of the present application, after data packet enters traffic queue, can according to existing sort algorithm, In the case where deadline is cut-off time, the cut-off time of the data packet and other data packets are carried out pair at cut-off quarter Than the data packet is inserted into before data packet of the cut-off time somewhat later than the cut-off time of the data packet.That is, cutting Only the moment is more early, and transmission sequence is more forward.Alternatively, in the case where deadline is cut-off duration, by the first of the data packet Cut-off duration and the first cut-off duration of data packet in current data flow queue are compared, which is inserted into first section Only duration is slightly less than behind the first cut-off duration of the data packet.That is the first cut-off duration is smaller, transmission sequence It is more forward.Wherein, which for example can be dichotomy.
In turn, step S305 specifically includes step S305A:
S305A, the situation for determining the first data packet transmission time-out according to the deadline of the first data packet in the network equipment Under, the network equipment deletes transmission sequence in traffic queue, and after the first data packet, deadline is equal to the first data packet Deadline data packet.
Wherein, the first data packet is the data packet for the deadline that deadline is equal to the first data packet in traffic queue The data packet of middle transmission sequence up front.
Method for controlling network congestion provided by the embodiments of the present application updates each data packet in data flow according to deadline Transmission sequence in queue;The first data packet transmit time-out, delete traffic queue in transmission sequence the first data packet it Afterwards, deadline is equal to the data packet of the deadline of the first data packet.That is, in the embodiment of the present application, data flow The transmission sequence of data is related to the deadline of data packet in queue.Since deadline represents data packet in data flow team Urgency level to be treated in row, in the case where deadline is cut-off time, cut-off time is more early, characterize data packet Processing is more urgent;In the case where deadline is cut-off duration, the first cut-off duration is smaller, and the processing of characterize data packet is tighter It is anxious.Therefore, transmission sequence of each data packet in traffic queue is updated according to deadline, can to need promptly to locate The packet priority of reason is handled, and is handled before deadline so as to meet each data packet in data flow as far as possible, That is the deadline requirements of data flow further can maximumlly be met.
A kind of possible realization method, in the case where deadline is cut-off duration, before step S314, such as Fig. 6 It is shown, further include step S315-S316:
Wherein, in the case where deadline is cut-off duration, step S301-S304, step S314 in Fig. 6, step Step S301-S304, step S314, step S305A and step S306-S308 in S305A and step S306-S308 and Fig. 5 Similar, the step S309- steps S313 in Fig. 6 can refer to the step S309- steps S313 in Fig. 5.
S315, the network equipment obtain the second cut-off duration of join the team moment and each data packet of each data packet.
Wherein, a length of remaining handling duration in second the first data packet of moment when the second cut-off of the first data packet, the Two moment were the delivery time that the first sending device sends the first data packet to receiving device, and specific method of determination can refer to Embodiment of the method is stated, details are not described herein.
S316, the network equipment according to the second cut-off duration of join the team moment and each data packet of each data packet, in conjunction with Formula (1) determines the first cut-off duration of each data packet.
Wherein, determine that the specific implementation of the first cut-off duration of data packet can refer to the above method and implement based on formula (1) Example, details are not described herein.
Method for controlling network congestion provided by the embodiments of the present application, in the first cut-off for determining data packet based on formula (1) When duration, it is applicable not only to the identical scene of time shaft that the network equipment, receiving device and sending device use, and be suitable for net The different scene of time shaft that network equipment, receiving device and sending device use so that application scenarios are more extensive.
In a kind of possible realization method, after step S303, the first sending device does not receive in preset time In the case of the ACK1 that receiving device is sent, the first sending device sends the probe data packet of the first data packet to receiving device, In, the probe data packet of the first data packet carries the deadline of the probe data packet of the first data packet, the spy of the first data packet The deadline of measured data packet is equal to the deadline of the first data packet.
It should be noted that in the embodiment of the present application, the condition that the first sending device sends probe data packet is default The ACK1 of receiving device transmission is not received in time, wherein preset time is related to the deadline of data packet, preset time The deadline of data packet can be equal to, can also be more than the deadline of data packet, the embodiment of the present application is not made this specifically It limits.
Optionally, the probe data packet of the first data packet can be other than carrying the mark of probe data packet with first The identical data packet of packet header other parts, since the deadline carried in detection data is equal to cutting for the first data packet The only time, therefore the probe data packet of the first data packet can be judged according to the deadline of the probe data packet of the first data packet It is whether overtime, it can also judge whether the first data packet transmits time-out according to the probe data packet of the first data packet, below no longer It repeats.
As shown in fig. 7, for a kind of format of probe data packet provided by the embodiments of the present application, in the embodiment of the present application, the The probe data packet of one data packet can carry the detection number of the probe data packet in the Optional Field in the stem of IP data packets Mark according to packet and deadline, the network equipment can identify whether data packet is detection number according to the mark that data packet carries According to packet, to avoid the probe data packet is deleted.
It should be noted that in the embodiment of the present application, what mark and deadline for middle probe data packet used can The length of word selection section and the position in Optional Field are not especially limited.
Optionally, for the stem of probe data packet other than the mark of probe data packet, other parts can be with the first number Identical according to the stem of packet, the embodiment of the present application is not especially limited this.
It should be noted that according in current TCP transmission agreement, sending device often sends a data packet and is required for receiving It is that receiving device receives the ACK returned after data packet to the confirmation ACK of the data packet, the ACK, if sending device sends number According to being more than the ACK for not receiving return after the default time retransmitted after packet, receiving device can retransmit the data packet and again The default time retransmitted, until sending device returns to ACK, wherein default time retransmitted and the deadline of data packet does not have Relationship.
Illustratively, it is assumed that sending device receives one and confirms the ACK5 received, illustrates that the first data packet has been transmitted To receiving device, then the first data packet replicated in buffer queue can be directly deleted.Therefore, the case where receiving ACK5 Under, sending device need not send the probe data packet of the first data packet to determine whether deleting first replicated in buffer queue Data packet.After the deadline more than data packet, the first sending device is being not received by ACK1, and first sends Equipment does not know that the first data packet is because the data packet time-out of other same deadline deletes the first data packet or the One data packet is in the case where having timed, out because other reasons are lost.Due to according to existing transport protocol in the first data In the case that packet has timed, out, if the first sending device is not received by ACK5 in preset time, the first sending device is also It is that can retransmit the first data packet having timed, out.Therefore, in the embodiment of the present application, the first data packet is being equaled or exceeded After deadline, the first sending device can send the first data packet in the case that being not received by ACK1, the first sending device Probe data packet, what the probe data packet of the first data packet carried is the deadline of the first data packet, in the first data packet Probe data packet reach the network equipment after, since the deadline of probe data packet has timed, out, the network equipment may be used also To delete the detection number on the network equipment at this time with the first data packet according to the deadline of the probe data packet of the first data packet According to the deadline of packet identical data packet, when the probe data packet of the first data packet reaches receiving device, receiving device root Determine that the deadline of the first data packet has timed, out according to the deadline of the probe data packet of the first data packet, receiving device returns 1 instruction the first data packet transmission time-out of mark, 2 instruction the of mark in reserved bit in the ACK1 returned in the packet header of TCP data packet One sending device obtains the target deadline of the first data packet, and the first sending device can be determined according to mark 1 and mark 2 and be deleted Except data packet identical with the target deadline of the first data packet.
Specifically, in the case where deadline is cut-off time, the cut-off time of probe data packet is equal to the first data The cut-off time of packet.For example, the cut-off time of the first data packet 28 divides 50 seconds when being 14, the probe data packet of the first data packet 28 divide 50 seconds when cut-off time is 14.In the case where deadline is cut-off duration, the detection of probe data packet delivery time Data packet cut-off duration be equal to the first data packet probe data packet delivery time cut-off duration.For example, being sent first When equipment sends the probe data packet of the first data packet, the remaining handling duration of the first data packet is 0S, then the first data packet A length of 0S when the cut-off of probe data packet.
Based on the program, when sending device is not received by the first data packet of receiving device transmission in preset time In the case of ACK1, sending device sends the spy identical with the deadline of the first data packet of a deadline to receiving device Measured data packet.Sending device receives ACK1, determines that the first data packet passes in the ACK1 sent according to receiving device in sending device In the case of defeated time-out, the probe data packet that target cut-off time in the buffer queue of sending device is equal to the first data packet is deleted Target cut-off time data packet.In this way, avoid when the first data packet since transmission time-out is deleted, but sending device Do not know the first data packet of transmission be transmission time-out be deleted or since other reasons are dropped, caused by set to reception Standby the case where retransmitting data packet, to not only save bandwidth resources, and the data flow of the network equipment can be further reduced The competition of data packet in queue, and then can maximumlly meet the deadline requirements of data flow.
Assuming that in step S305, the data packet that the network equipment is deleted includes the second data packet, which is The deadline that second sending device is sent is equal to the data packet of the deadline of the first data packet.Then since the second data packet passes Defeated failure, and be not that the first sending device is sent, then the second sending device does not receive the ACK2 of receiving device transmission.Its In, ACK2 carries mark 3 and mark 4, and mark 3 is used to indicate the second data packet transmission time-out, and mark 4 is used to indicate the second transmission Equipment obtains the target cut-off time of the second data packet.At this point, the second sending device can not determine that the first data packet is by network Equipment deletes, still in the transmission because other reasons be lost, therefore, optionally, as shown in figure 8, step S305 it Afterwards, further include step S317-S327:
S317, the second sending device send the probe data packet of the second data packet to receiving device.
Wherein, the deadline of the probe data packet of probe data packet the second data packet of carrying of the second data packet, second The deadline of the probe data packet of data packet is equal to the deadline of the second data packet.
Specifically, in step S317, the probe data packet of the second data packet is sent to net by the second sending device first Network equipment.
S318, the network equipment receive the probe data packet for the second data packet that the second sending device is sent.
S319, the network equipment determine the spy of the second data packet according to the deadline of the probe data packet of the second data packet Measured data packet transmission time-out.
Specifically, since the probe data packet of the second data packet and the second data packet is all that the second sending device is sent, And the target cut-off time of the probe data packet of the second data packet is equal to the target cut-off time of the second data packet, therefore, root According to " the target cut-off time for the identical data packet of the first cut-off duration that same sending device the is sent also phase proved above Same " conclusion is it is found that when the first cut-off of the probe data packet for the second data packet that the network equipment is determined according to the above method First cut-off duration of long=the second data packet.Again since the second data packet is the first cut-off duration that the second sending device is sent Equal to the data packet of the first cut-off duration of the first data packet, that is to say, that the first cut-off duration=second of the first data packet counts End duration according to the first of packet, therefore, the of the first cut-off data packet of duration=first of the probe data packet of the second data packet One cut-off duration.In turn, if the first data packet transmission time-out is determined according to the first of the first data packet the cut-off duration, according to the First cut-off duration of the probe data packet of two data packets can also determine the probe data packet transmission time-out of the second data packet.
It should be noted that after step S319, the network equipment can also be according to the probe data packet of the second data packet The deadline identical data packet of deadline and the second data packet are deleted with reference to the step S305 in figure 5, these and second The deadline identical data packet of data packet is the data packet entered after step S305 in the network equipment.
S320, the network equipment send the probe data packet of the second data packet to receiving device.
S321, receiving device receive the probe data packet for the second data packet that the network equipment is sent.
S322, receiving device determine the spy of the second data packet according to the deadline of the probe data packet of the second data packet Measured data packet transmission time-out.
S323, receiving device send ACK3 to the second sending device.
Wherein, mark 5 and mark 6 are carried in ACK3, the probe data packet transmission that mark 5 is used to indicate the second data packet is super When, mark 6 is used to indicate the target cut-off time that the second sending device obtains the probe data packet of the second data packet.
Specifically, in step S323, ACK3 is sent to the network equipment by receiving device first, and the network equipment is receiving ACK3 and then ACK3 is transmitted to the second sending device.
S324, the second sending device receive the ACK3 that receiving device is sent.
S325, the second sending device determine that the probe data packet of the second data packet transmits time-out according to mark 5.
S326, the second sending device obtain the target cut-off time of the probe data packet of the second data packet according to mark 6.
S327, the second sending device delete the second sending device buffer queue in target cut-off time be equal to the second data The data packet of the target cut-off time of the probe data packet of packet.
It should be noted that in the embodiment of the present application, the data packet that the second sending device is deleted can be that the second transmission is set Target cut-off time is equal to all data packets of the target cut-off time of the second data packet in standby buffer queue, or the Target cut-off time is equal to the partial data packet of the target cut-off time of the second data packet in the buffer queue of two sending devices, this Application embodiment is not especially limited this.
Method for controlling network congestion provided by the embodiments of the present application, when the second sending device is not received by receiving device hair The ACK2 for the second data packet sent, the second sending device send the deadline of second data packet of carrying to receiving device Probe data packet, receiving device are sent after the probe data packet transmission time-out for determining the second data packet to the second sending device ACK3, the second sending device delete the second hair after the ACK3 sent according to receiving device determines the second data packet transmission time-out Send the data that target cut-off time in the buffer queue of equipment is equal to the target cut-off time of the probe data packet of the second data packet Packet.In this way, avoid when the second data packet since transmission time-out is deleted, but the second sending device does not know the of transmission Two data packets are that transmission time-out is deleted or since other reasons are dropped, caused by receiving device retransmit data packet Situation to not only save bandwidth resources, and can be further reduced data packet in the traffic queue of the network equipment Competition, and then can maximumlly meet the deadline requirements of data flow.
The method for controlling network congestion provided in conjunction with above-described embodiment is provided and carries out the specific of web impact factor Example.Illustratively, it is assumed that receiving device 1 sends an instruction message to sending device 1, and instruction will be to be transmitted in 10 seconds Data packet is sent to receiving device 1, and data packet to be transmitted includes data packet 1, it is assumed that sending device 1 receives instruction after 8S Message 1, as shown in Figure 9, it is assumed that current time be t0 moment, sending device 1 and sending device 2 by the network equipment 1 to reception 1 transmission data packet of equipment.Wherein, sending device 1, sending device 2 are identical with the time shaft of the network equipment 1.Sending device 1 includes Buffer queue 1, buffer queue 1 include data packet 1, data packet 2, data packet 3, data packet 7, data packet 8 and data packet 9.Its In, data packet 1, data packet 7, the target cut-off time of data 8 are identical.Sending device 2 includes buffer queue 2, in buffer queue 2 Including data packet 4, data packet 5, data packet 6, data packet 10, data packet 11 and data packet 12.Wherein, data packet 4, data packet 11, the target cut-off time of data packet 12 is identical.And, it is assumed that t0 moment sending device 1 to 1 transmission data packet 1 of receiving device, Data packet 2 and data packet 3;Sending device 2 is to 1 transmission data packet 4 of receiving device, data packet 5 and data packet 6.That is, net Include data packet 1, data packet 2, data packet 3, data packet 4, data packet 5 and data packet 6 in the traffic queue 1 of network equipment 1.Its In, at the t0 moment, when the second cut-off that a length of 2S, data packet 2 carry when the second cut-off that data packet 1 carries a length of 2S, data A length of 3S when the second cut-off that packet 3 carries, that is, the target cut-off time of data packet 1 is t0+2S, when the target of data packet 2 is ended It is t0+2S to carve, and the target cut-off time of data packet 3 is t0+3S;At the t0 moment, 2 preset data packet 4 of sending device carry the A length of 4S when the second cut-off that a length of 8S, data packet 6 carry when the second cut-off that a length of 2S, data packet 5 carry when two cut-offs, That is, the target cut-off time of data packet 4 is t0+2S, the target cut-off time of data packet 5 is t0+8S, and the target of data packet 6 is cut Only the moment is t0+4S.
Then combine the process that the method for controlling network congestion that above-described embodiment provides carries out web impact factor as follows.
Step 1, the first moment of hypothesis are t1 moment, t1=t0+2S, as shown in Figure 10 A, according to formula (1), the network equipment 1 obtains the first cut-off duration of each data packet at least two data packets in traffic queue 1, wherein the of data packet 1 A length of 0s when one cut-off, the first of data packet 2 a length of 0s when ending, the first of data packet 3 a length of 1s when ending, data packet 4 A length of 0s when the first cut-off, the first of data packet 5 a length of 6s when ending, the first of data packet 6 a length of 2s when ending.
Step 2, the network equipment 1 update each data according to the first cut-off duration of each data packet in traffic queue 1 The transmission sequence in traffic queue 1 is wrapped, the first cut-off duration is smaller, and transmission sequence is more forward, as a result as shown in Figure 10 B, Updated transmission sequence is:Data packet 1, data packet 2, data packet 4, data packet 3, data packet 6, data packet 5.
Step 3, the network equipment 1 determine that data packet 1 transmits time-out, data packet 1 according to the first of data packet 1 the cut-off duration Transmission sequence is before most in the data packet for ending the first cut-off duration that duration is equal to data packet 1 in traffic queue 1 first The data packet in face.
Step 4, the network equipment 1 delete transmission sequence in traffic queue 1, and after data packet 1, first ends duration etc. In the data packet of the first cut-off duration of data packet 1, as a result as illustrated in figure 10 c, the network equipment 1 deletes data packet 2 and data Packet 4.
Data packet 1 is sent to receiving device 1 by step 5, the network equipment 1.
Step 6,1 received data packet 1 of receiving device determine that the transmission of data packet 1 is super according to the first of data packet 1 the cut-off duration When.
Step 7, receiving device 1 send ACK1 to sending device 1, and ACK1 carries mark 1 and mark 2, and mark 1 is for referring to Show that data packet 1 transmits time-out, mark 2 is used to indicate the target cut-off time that sending device 1 obtains data packet 1.
Specifically, mark 1 can by the way that 1 realization is set in the first place of the reserved bit in ACK1, the embodiment of the present application to this not Make specific limit.
Step 8, sending device 1 receive the ACK1 of the transmission of receiving device 1, and data packet is determined according to the mark 1 in ACK1 Transmission time-out.
Step 9, sending device 1 determine that the corresponding data packets of ACK1 are data packet 1, and number according to the sequence number in ACK1 It is buffer queue 1 according to the target cut-off time of packet 1 and the buffer queue at place.
The target cut-off time of step 10, the deletion data packet 1 of sending device 1 in the buffer queue 1 of sending device 1 is equal to The data packet of the target cut-off time of data packet 1.As a result as shown in figure 11, sending device 1 deletes data in buffer queue 1 Packet 1, data packet 7 and data packet 8.
Step 11, sending device 2 are at the t2 moment to the probe data packet 1 of 1 transmission data packet 4 of the network equipment, data packet 4 The deadline that carries of probe data packet 1 be remaining handling duration, cut-off duration of the probe data packet 1 at the t2 moment is equal to number End duration at the t2 moment according to packet 4, by the identical data of the first cut-off duration for the data packet that the same sending device is sent Target cut-off time of packet it is found that the target cut-off time of probe data packet 1 be equal to the target cut-off time of data packet 4.
Step 12, the network equipment 1 receive probe data packet 1, determine that probe data packet 1 transmits time-out, and to receiving device 1 sends probe data packet 1.
Step 13, receiving device 1 receive probe data packet 1.
Step 14, receiving device 1 determine that probe data packet 1 transmits time-out according to the cut-off duration of probe data packet 1.
Step 15, receiving device 1 return to ACK2 to sending device 2, and ACK2 carries mark 3 and mark 4, and mark 3 is for referring to Show that probe data packet 1 transmits time-out, mark 4 is used to indicate the target cut-off time that sending device 2 obtains probe data packet 1.
Specifically, mark 3 can by the way that 1 realization is set in the first place of the reserved bit in ACK2, the embodiment of the present application to this not Make specific limit.
Step 16, sending device 2 receive the ACK2 of the transmission of receiving device 1, and data packet is determined according to the mark 3 in ACK2 Transmission time-out.
Step 17, sending device 2 determine that the corresponding data packets of ACK2 are the detection of data packet 4 according to the sequence number in ACK2 Data packet 1, the target cut-off time of probe data packet 1 and the buffer queue where data packet 4 are buffer queue 2.
The target cut-off time of step 18, the deletion data packet 4 of sending device 2 in the buffer queue 2 of sending device 2 is equal to The data packet of the target cut-off time of probe data packet 1.As a result as shown in figure 12, sending device 2 deletes number in buffer queue 2 According to packet 4, data packet 11 and data packet 12.
So far, whole network congestion control procedure terminates.
It should be noted that this example is carried out by taking the corresponding remaining handling duration of delivery time and sending device as an example Illustrate to determine target cut-off time, can be any time after receiving instruction message at the time of determining target cut-off time, The embodiment of the present application is not especially limited this.
It should be noted that the step 1- steps 18 in above-mentioned example are there is no point execution of priority, sequence of steps can To exchange, other steps can also be increased before any one step wherein, the embodiment of the present application is not especially limited this.
This example is set comprising buffer queue 2 and network comprising buffer queue 1, sending device 2 with sending device 1 Standby 1 for traffic queue 1 comprising illustrating.Certainly, each sending device may include multiple buffer queues, each network Equipment may include multiple traffic queues, and the embodiment of the present application does not limit the quantity and network of buffer queue in sending device The quantity of traffic queue in equipment.
In the above-described embodiments, can come wholly or partly by software, hardware, firmware or its arbitrary combination real It is existing.When being realized using software program, can entirely or partly realize in the form of a computer program product.The computer Program product includes one or more computer instructions.On computers load and execute computer program instructions when, all or It partly generates according to the flow or function described in the embodiment of the present application.The computer can be all-purpose computer, special meter Calculation machine, computer network or other programmable devices.The computer instruction can be stored in computer readable storage medium In, or from a computer readable storage medium to the transmission of another computer readable storage medium, for example, the computer Instruction can pass through wired (such as coaxial cable, optical fiber, number from a web-site, computer, server or data center Word user line (English:Digital subscriber line, DSL)) or wireless (such as infrared, wireless, microwave etc.) mode to Another web-site, computer, server or data center are transmitted.The computer readable storage medium can be meter Any usable medium that calculation machine can access either can use the integrated server of medium, data center comprising one or more Equal data storage devices.The usable medium can be magnetic medium (for example, floppy disk, hard disk, tape), and optical medium is (for example, number Word video disc (English:Digital video dis, DVD)) or semiconductor medium (such as solid state disk (English: Solid state disk, SSD)) etc..
Scheme provided by the present application is introduced in the above-mentioned angle mainly interacted from equipment, it is to be understood that above-mentioned For terminal in order to realize above-mentioned function, it comprises execute the corresponding hardware configuration of each function and/or software module.This field skill Art personnel should be readily appreciated that, in conjunction with each exemplary unit and algorithm steps of embodiment description disclosed herein Suddenly, the application can be realized with the combining form of hardware or hardware and computer software.Some function actually with hardware still Computer software drives the mode of hardware to execute, and depends on the specific application and design constraint of technical solution.Professional skill Art personnel can use different methods to achieve the described function each specific application, but this realization should not be recognized To exceed scope of the present application.
The embodiment of the present application can carry out equipment according to the above method example division of function module, for example, can be right It answers each function to divide each function module, two or more functions can also be integrated in a processing module. The form that hardware had both may be used in above-mentioned integrated module is realized, can also be realized in the form of software function module.It needs Illustrate, is schematical, only a kind of division of logic function to the division of module in the embodiment of the present application, it is practical to realize When there may be another division manner.
For example, in the case where dividing each function module using corresponding each function, Figure 13 shows above-described embodiment In the involved network equipment 130 a kind of possible structural schematic diagram.As shown in figure 13, the network equipment 130 includes obtaining mould Block 131, determining module 132, removing module 133 and sending module 134.Optionally, the network equipment 130 further includes update module 135 and receiving module 136.Acquisition module 131 is used to support the step S304 that the network equipment 130 executes in Fig. 3;Determining module 132 for supporting the network equipment 130 to execute the step S305 in Fig. 3;Removing module 133 is for supporting the network equipment 130 to execute Step S305 in Fig. 3;Sending module 134 is used to support the step S306 that the network equipment 130 executes in Fig. 3.Alternatively, optional , acquisition module 131 is used to support the step S304 that the network equipment 130 executes in Fig. 5;Determining module 132 is for supporting network Equipment 130 executes the step S305A in Fig. 5;Removing module 133 is used to support the step that the network equipment 130 executes in Fig. 5 S305A;Sending module 134 is used to support the step S306 that the network equipment 130 executes in Fig. 5;Update module 135 is for supporting net Network equipment 130 executes the step S314 in Fig. 5.Alternatively, optional, acquisition module 131 is for supporting 130 execution figure of the network equipment Step S304 in 6 and step S315;Determining module 132 be used for support the network equipment 130 execute Fig. 6 in step S305A and Step S316;Removing module 133 is used to support the step S305A that the network equipment 130 executes in Fig. 6;Sending module 134 is for branch Hold the step S306 in the execution of the network equipment 130 Fig. 6;Update module 135 is used to support the step that the network equipment 130 executes in Fig. 7 Rapid S314.Alternatively, optional, acquisition module 131 is used to support the step S304 that the network equipment 130 executes in Fig. 8;Determine mould Block 132 is used to support the network equipment 130 to execute step S305 and step S319 in Fig. 8;Removing module 133 is for supporting net Network equipment 130 executes the step S305 in Fig. 8;Sending module 134 is used to support the step that the network equipment 130 executes in Fig. 8 S306 and step S320;Receiving module 136 is used to support the step S318 that the network equipment 130 executes in Fig. 8.
Wherein, all related contents for each step that above method embodiment is related to can quote corresponding function module Function description, details are not described herein.
In the case of using the integrated each function module of model split, Figure 14 shows involved in above-described embodiment The network equipment 140 a kind of possible structural schematic diagram.As shown in figure 14, the network equipment 140 includes processing module 141 and leads to Believe module 142.Processing module 141 is used to support step S304, the step S305 that the network equipment 140 executes in Fig. 3;Communication module 142 for supporting the network equipment 140 to execute the step S306 in Fig. 3.Optionally, processing module 141 is for supporting the network equipment 140 execute step S304, step S314, step S305A in Fig. 5;Communication module 142 is for supporting the network equipment 140 to execute Step S306 in Fig. 5.Optionally, processing module 141 is used to support the network equipment 140 to execute the step S304 in Fig. 6, step Rapid S315, step S316, step S314 and step S305A;Communication module 142 is for supporting the network equipment 140 to execute in Fig. 6 Step S306.Optionally, processing module 141 be used for support the network equipment 140 execute Fig. 8 in step S304, step S305, Step S319;Communication module 142 is used to support the step S306 and S320 that the network equipment 140 executes in Fig. 8.
Wherein, all related contents for each step that above method embodiment is related to can quote corresponding function module Function description, details are not described herein.
For example, in the case where dividing each function module using corresponding each function, Figure 15 shows above-described embodiment In involved receiving device 150 a kind of possible structural schematic diagram.As shown in figure 15, receiving device 150 includes sending mould Block 151, receiving module 152 and determining module 153.Sending module 151 is used to support the step that receiving device 150 executes in Fig. 3 S301 and step S309;Receiving module 152 is used to support the step S307 that receiving device 150 executes in Fig. 3;Determining module 153 For supporting receiving device to execute the step S308 in Fig. 3.Alternatively, optional, sending module 151 is for supporting receiving device 150 execute step S301 and step S309 in Fig. 5;Receiving module 152 is used to support the step that receiving device 150 executes in Fig. 5 Rapid S307;Determining module 153 is for supporting receiving device to execute the step S308 in Fig. 5.Alternatively, optional, sending module 151 For supporting receiving device 150 to execute step S301 and step S309 in Fig. 6;Receiving module 152 is for supporting receiving device 150 execute the step S307 in Fig. 6;Determining module 153 is for supporting receiving device to execute the step S308 in Fig. 6.Alternatively, can Choosing, sending module 151 is used to support receiving device 150 to execute step S301 and step S309 in Fig. 8;Receiving module 152 For supporting receiving device 150 to execute step S307 and step S321 in Fig. 8;Determining module 153 is for supporting receiving device Execute the step S308 and step S322 in Fig. 8.
Wherein, all related contents for each step that above method embodiment is related to can quote corresponding function module Function description, details are not described herein.
In the case of using the integrated each function module of model split, Figure 16 shows involved in above-described embodiment Receiving device 160 a kind of possible structural schematic diagram.As shown in figure 16,160 receiving device 160 of receiving device includes place Manage module 161 and communication module 162.Processing module 161 is used to support the step S308 that receiving device 160 executes in Fig. 3;Communication Module 162 is used to support step S301, the step S307 that receiving device 160 executes in Fig. 3.Optionally, processing module 161 is used The step S308 in Fig. 5 is executed in supporting receiving device 160;Communication module 162 is for supporting receiving device 160 to execute in Fig. 5 Step S301, step S307.Optionally, processing module 161 is used to support the step S308 that receiving device 160 executes in Fig. 6; Communication module 162 is used to support step S301, the step S307 that receiving device 160 executes in Fig. 6.Optionally, processing module 161 For supporting receiving device 160 to execute step S308 and step S322 in Fig. 8;Communication module 162 is for supporting receiving device 160 execute step S301, step S307, step S309, step S321 and the step S323 in Fig. 8.
Wherein, all related contents for each step that above method embodiment is related to can quote corresponding function module Function description, details are not described herein.
For example, in the case where dividing each function module using corresponding each function, Figure 17 shows above-described embodiments In involved sending device 170 a kind of possible structural schematic diagram.As shown in figure 18, sending device 170 includes receiving mould Block 171, sending module 172, determining module 173 and removing module 174.Receiving module 171 is for supporting sending device 170 to hold Step S302 in row Fig. 3 and step S310;Sending module 172 is used to support the step that sending device 170 executes in Fig. 3 S303;Determining module 173 is used to support the step S311 that sending device 170 executes in Fig. 3;Removing module 174 is sent out for supporting Equipment 170 is sent to execute the step S313 in Fig. 3.Alternatively, optional, receiving module 171 is for supporting 170 execution figure of sending device Step S302 in 5 and step S310;Sending module 172 is used to support the step S303 that sending device 170 executes in Fig. 5;Really Cover half block 173 is used to support the step S311 that sending device 170 executes in Fig. 5;Removing module 174 is for supporting sending device 170 execute the step S313 in Fig. 5.Alternatively, optional, receiving module 171 is for supporting sending device 170 to execute in Fig. 6 Step S302 and step S310;Sending module 172 is used to support the step S303 that sending device 170 executes in Fig. 6;Determine mould Block 173 is used to support the step S311 that sending device 170 executes in Fig. 6;Removing module 174 is for supporting sending device 170 to hold Step S313 in row Fig. 6.Alternatively, optional, receiving module 171 is used to support the step that sending device 170 executes in Fig. 8 S302, step S310 and step S324;Sending module 172 is used to support sending device 170 to execute step S303 and step in Fig. 8 Rapid S317;Determining module 173 is used to support sending device 170 to execute step S311 and step S325 in Fig. 8;Removing module 174 for supporting sending device 170 to execute step S313 and step S327 in Fig. 8.
Wherein, all related contents for each step that above method embodiment is related to can quote corresponding function module Function description, details are not described herein.
In the case of using the integrated each function module of model split, Figure 18 shows involved in above-described embodiment Sending device 180 a kind of possible structural schematic diagram.As shown in figure 18, sending device 180 includes processing module 181 and leads to Believe module 182.Processing module 181 is used to support step S311, step S312 and the step that sending device 180 executes in Fig. 3 S313;Communication module 182 is used to support step S302, step S303 and the step S310 that sending device 180 executes in Fig. 3.It can Choosing, processing module 181 is used to support step S311, step S312 and the step S313 that sending device 180 executes in Fig. 5;It is logical Letter module 182 is used to support step S302, step S303 and the step S310 that sending device 180 executes in Fig. 5.Optionally, locate Reason module 181 is used to support step S311, step S312 and the step S313 that sending device 180 executes in Fig. 6;Communication module 182 for supporting sending device 180 to execute step S302, step S303 and step S310 in Fig. 6.Optionally, processing module 181 for supporting sending device 180 to execute step S311, step S312, step S313, step S325, step S326 in Fig. 8 With step S327;Communication module 182 is used to support sending device 180 to execute the step S302 in Fig. 8, step S303, step S310, step S317, step S324 and step S327.
Wherein, all related contents for each step that above method embodiment is related to can quote corresponding function module Function description, details are not described herein.
As shown in figure 19, the sending device in Fig. 1, the network equipment or receiving device can pass through the computer in Figure 19 Equipment (or system) is realized.
Figure 19 is computer equipment schematic diagram provided by the embodiments of the present application.Computer equipment 1900 includes at least one place Manage device 1901, communication bus 1902, memory 1903 and at least one communication interface 1904.
Processor 1901 can be a general central processor (English:Central processing unit, CPU), Microprocessor, application-specific integrated circuit (English:Application-specific integrated circuit, ASIC), Or one or more integrated circuits for controlling the execution of application scheme program.
The network equipment by the computer equipment (or system) in Figure 19 come in the case of realization, processor 1901 can be with For supporting the network equipment to execute the step S304 in above method embodiment, step S305 (including step S305A), step S314, step S315, step S316 and step S319, and/or for other processes of technology described herein, that is, handle Device 1901 can complete all steps performed by above-mentioned processing module 1401 as shown in figure 14.
Receiving device by the computer equipment (or system) in Figure 19 come in the case of realization, processor 1901 can be with It is retouched for supporting receiving device to execute step S308 and step S322 in above method embodiment, and/or for the application Other processes for the technology stated, i.e. processor 1901 can complete the institute performed by above-mentioned processing module 1601 as shown in figure 16 There is step.
Sending device by the computer equipment (or system) in Figure 19 come in the case of realization, processor 1901 can be with For supporting the first sending device or the second sending device to execute the step S311 in above method embodiment, step S312, step Rapid S313, step S325, step S326 and step S327, and/or for other processes of technology described herein, that is, locate Reason device 1901 can complete all steps performed by above-mentioned processing module 1801 as shown in figure 18.
Communication bus 1902 may include an access, and information is transmitted between said modules.
Communication interface 1904, using the device of any transceiver one kind, for other equipment or communication, such as Ethernet, wireless access network (English:Radio access network, RAN), WLAN (English:wireless Local area networks, WLAN) etc..
The network equipment by the computer equipment (or system) in Figure 19 come in the case of realization, communication interface 1904 can Step S306, step S320 in above method embodiment are executed for the support network equipment, and/or is retouched for the application Other processes for the technology stated, i.e. communication interface 1904 can be completed performed by above-mentioned communication module 1402 as shown in figure 14 All steps.
Receiving device by the computer equipment (or system) in Figure 19 come in the case of realization, communication interface 1904 can For supporting receiving device to execute step S301, step S307, step S309, step S321 in above method embodiment With step S323, and/or for other processes of technology described herein, i.e., communication interface 1904 can complete it is above-mentioned such as All steps performed by communication module 1602 shown in Figure 16.
Sending device by the computer equipment (or system) in Figure 19 come in the case of realization, communication interface 1904 can It is connect for the step S302 in support the first sending device execution above method embodiment, step S303, step S310, communication Mouth 1904 can be used for supporting the second sending device to execute step S317 and step S324 in above method embodiment, and/or use In other processes of technology described herein, i.e. communication interface 1904 can complete above-mentioned communication module as shown in figure 18 All steps performed by 1802.
Memory 1903 can be read-only memory (English:Read-only memory, ROM) or can store static information With the other kinds of static storage device of instruction, random access memory (English:Random access memory, RAM) Or the other kinds of dynamic memory of information and instruction can be stored, can also be Electrically Erasable Programmable Read-Only Memory (English:Electrically erasable programmable read-only memory, EEPROM), CD-ROM (English Text:Compact disc read-only memory, CD-ROM) or other optical disc storages, optical disc storage (including compression optical disc, Laser disc, optical disc, Digital Versatile Disc, Blu-ray Disc etc.), magnetic disk storage medium or other magnetic storage apparatus or can For carry or store have instruction or data structure form desired program code and can be by any of computer access Other media, but not limited to this.Memory can be individually present, and be connected with processor by bus.Memory can also It is integrated with processor.
Wherein, memory 1903 be used for store execution application scheme application code, and by processor 1901 Control executes.Processor 1901 is for executing the application code stored in memory 1903, to realize that the application is implemented Method for controlling network congestion in example.
In the concrete realization, as a kind of embodiment, processor 1901 may include one or more CPU, such as Figure 19 In CPU0 and CPU1.
In the concrete realization, as a kind of embodiment, computer equipment 1900 may include multiple processors, such as Figure 19 In processor 1901 and processor 1908.Each in these processors can be a monokaryon (English:single- CPU) processor can also be a multinuclear (English:Multi-CPU) processor.Here processor can refer to one or more A equipment, circuit, and/or the process cores for handling data (such as computer program instructions).
In the concrete realization, as a kind of embodiment, computer equipment 1900 can also include output equipment 1905 and defeated Enter equipment 1906.Output equipment 1905 and processor 1901 communicate, and can show information in many ways.For example, output is set Standby 1905 can be liquid crystal display (English:Liquid crystal display, LCD), Light-Emitting Diode (English: Light emitting diode, LED) display equipment, cathode-ray tube (English:Cathode ray tube, CRT) display set Standby or projecting apparatus (English:Projector) etc..Input equipment 1906 and processor 1901 communicate, and can receive in many ways The input of user.For example, input equipment 1906 can be mouse, keyboard, touch panel device or sensing equipment etc..
Above-mentioned computer equipment 1900 can be an a general purpose computing device either dedicated computing machine equipment. In the concrete realization, computer equipment 1900 can be desktop computer, portable computer, network server, palm PC (English: Personal digital assistant, PDA), cell phone, tablet computer, wireless terminal device, communication equipment, insertion Formula equipment or the equipment for having similar structures in Figure 19.The unlimited type for determining computer equipment 1900 of the embodiment of the present application.
It should be noted that the application can also virtualize (English based on general physical server combination network function: Network function virtualization, NFV) technology realize virtual network device, the virtual network device can To be the virtual machine (English for the program that operation is useful for web impact factor:Virtual machine, VM), the application also may be used To realize that virtual receiving device, the virtual receiving device can also be fortune based on general physical server combination NFV technologies Row is useful for the virtual machine of the program of web impact factor.The application can also be based on general physical server combination NFV skills Art realizes that virtual sending device, the virtual sending device can also be the virtual of the program that operation is useful for web impact factor Machine.The deploying virtual machine on hardware device (for example, physical server).Virtual machine refers to be had completely by what software was simulated Hardware system function, operate in complete computer in a completely isolated environment.
The network equipment by above-mentioned virtual network device come in the case of realization, virtual network device can be used for holding Step S304, step S305, step S305A, step S306, step S314, step S315, step in row above method embodiment Rapid S316, step S319, step S320, and/or for other processes of technology described herein, i.e. virtual network device It can complete all steps performed by above-mentioned processing module 1401 as shown in figure 14 and communication module 1402.
Receiving device by above-mentioned virtual receiving device come in the case of realization, virtual receiving device can be used for holding Step S301, step S307, step S308, step S309, step S321, step S322 in row above method embodiment and Step S323, and/or for other processes of technology described herein, i.e., virtual receiving device can be completed above-mentioned as schemed All steps performed by processing module 1601 and communication module 1602 shown in 16.
Sending device by above-mentioned virtual sending device come in the case of realization, virtual sending device can be used for holding Step S302, step S303, step S310, step S311, step S312, step S313 in row above method embodiment and Step S317, step S324, step S325, step S326 and step S327, and/or for technology described herein its His process, i.e., virtual sending device can complete above-mentioned processing module 1801 as shown in figure 18 and communication module 1802 is held Capable all steps.
Although the application is described in conjunction with each embodiment herein, however, implementing the application claimed In the process, those skilled in the art are by checking the attached drawing, disclosure and the appended claims, it will be appreciated that and it is real Other variations of the existing open embodiment.In the claims, " comprising " (English:Comprising) word is not excluded for other Component part or step, "a" or "an" are not excluded for multiple situations.Right may be implemented in single processor or other units Several functions of being enumerated in it is required that.Mutually different has been recited in mutually different dependent certain measures, it is not intended that this A little measures, which cannot combine, generates good effect.
Although the application is described in conjunction with specific features and embodiment, it is clear that, do not departing from this Shen In the case of spirit and scope please, it can be carry out various modifications and is combined.Correspondingly, the specification and drawings are only institute The exemplary illustration for the application that attached claim is defined, and be considered as covered within the scope of the application arbitrary and all and repair Change, change, combining or equivalent.Obviously, those skilled in the art the application can be carried out various modification and variations without It is detached from spirit and scope.If in this way, these modifications and variations of the application belong to the application claim and its Within the scope of equivalent technologies, then the application is also intended to include these modifications and variations.

Claims (28)

1. a kind of method for controlling network congestion, which is characterized in that the method includes:
The network equipment obtains the deadline of each data packet at least two data packets in traffic queue at the first moment, Wherein, first moment is any one moment, includes the first data packet at least two data packet;
The feelings of the first data packet transmission time-out are determined according to the deadline of first data packet in the network equipment Under condition, the network equipment is deleted in the traffic queue, and in addition to first data packet, deadline is equal to described first The data packet of the deadline of data packet;
The network equipment sends first data packet to receiving device.
2. according to the method described in claim 1, it is characterized in that, when the deadline includes cut-off time or the first cut-off It is long, wherein first data packet is sent to institute by the cut-off time of first data packet for the first sending device is preset At the time of stating receiving device, the first of first data packet a length of the first data packet described in first moment when ending Remaining handling duration.
3. according to the method described in claim 2, it is characterized in that, obtaining data flow team at the first moment in the network equipment In at least two data packets in row after the deadline of each data packet, the method further includes:
The network equipment updates each data packet in the data flow team according to the deadline of each data packet Transmission sequence in row, wherein in the case where the deadline is cut-off time, cut-off time is more early, and transmission sequence is got over Forward, in the case where the deadline is the first cut-off duration, the first cut-off duration is smaller, and transmission sequence is more leaned on Before;
The feelings of the first data packet transmission time-out are determined according to the deadline of first data packet in the network equipment Under condition, the network equipment is deleted in the traffic queue, and deadline is equal to the deadline of first data packet Data packet, including:
The feelings of the first data packet transmission time-out are determined according to the deadline of first data packet in the network equipment Under condition, the network equipment deletes in the traffic queue transmission sequence after first data packet, deadline Equal to the data packet of the deadline of first data packet, wherein first data packet is to be cut in the traffic queue Only the time is equal to the data packet of transmission sequence up front in the data packet of the deadline of first data packet.
4. according to the method described in claim 3, it is characterized in that, the case where the deadline is the first cut-off duration Under, in the network equipment according to the deadline of each data packet, each data packet is updated in the data flow Before transmission sequence in queue, further include:
The network equipment obtains the second cut-off duration of join the team moment and each data packet of each data packet, In, the remaining handling duration of the second of first data packet a length of the first data packet described in the second moment when ending is described Second moment was the delivery time that first sending device sends the first data packet to the receiving device;
The network equipment is according to the second cut-off duration of join the team moment and each data packet of each data packet, knot Close the first cut-off duration that preset formula determines each data packet;Wherein, the preset formula includes:
First cut-off duration=the second cut-off duration-(the first moment-join the team the moment).
5. according to claim 1-4 any one of them methods, which is characterized in that delete the data flow in the network equipment In queue, in addition to first data packet, deadline is equal to after the data packet of the deadline of first data packet, Further include:
The network equipment receives the probe data packet for the second data packet that the second sending device is sent, wherein second number The deadline of the probe data packet of second data packet, the detection of second data packet are carried according to the probe data packet of packet The deadline of data packet is equal to the deadline of second data packet, and second data packet is in the traffic queue Deadline data packet identical with the deadline of the first data packet;
The network equipment determines second data packet according to the deadline of the probe data packet of second data packet Probe data packet transmission time-out;
The network equipment sends the probe data packet of second data packet to the receiving device.
6. a kind of method for controlling network congestion, which is characterized in that the method includes:
Receiving device sends instruction message to sending device, when the instruction message is used to indicate the cut-off of data packet to be transmitted Between, wherein the data packet to be transmitted includes the first data packet;
The receiving device receives first data packet that the network equipment is sent, and first data packet carries first number According to the deadline of packet;
The feelings of the first data packet transmission time-out are determined according to the deadline of first data packet in the receiving device Under condition, the receiving device sends first to the sending device and confirms ACK, and first identifier and the are carried in the first ACK Two marks, the first identifier are used to indicate the first data packet transmission time-out, and the second identifier is used to indicate the transmission and sets The target cut-off time of the standby target cut-off time for obtaining first data packet, first data packet are the sending device It is determined according to the deadline of first data packet.
7. according to the method described in claim 6, it is characterized in that, the deadline include cut-off time or cut-off duration, Wherein, first data packet is sent to described connect by the cut-off time of first data packet for the sending device is preset At the time of receiving unit, the remaining processing of the third of first data packet a length of first data packet described in third moment when ending Duration, the third moment are the delivery time that the sending device sends the instruction message.
8. a kind of method for controlling network congestion, which is characterized in that the method includes:
Sending device receives the instruction message from receiving device, and the instruction message is used to indicate cutting for data packet to be transmitted The only time, wherein the data packet to be transmitted includes the first data packet;
The sending device sends the first data packet according to the instruction message to the receiving device, and first data packet is taken Deadline with first data packet;
The sending device receives the receiving device is sent first and confirms ACK, carried in the first ACK first identifier and Second identifier, the first identifier are used to indicate the first data packet transmission time-out, and the second identifier is used to indicate the transmission Equipment obtains the target cut-off time of first data packet, and the target cut-off time of first data packet is that the transmission is set For what is determined according to the deadline of first data packet;
The sending device determines that first data packet transmits time-out according to the first identifier;
The sending device obtains the target cut-off time of first data packet according to the second identifier;
The sending device deletes target cut-off time in the buffer queue of the sending device and is equal to first data packet The data packet of target cut-off time.
9. according to the method described in claim 8, it is characterized in that, the deadline include cut-off time or cut-off duration, Wherein, first data packet is sent to described connect by the cut-off time of first data packet for the sending device is preset At the time of receiving unit, the remaining processing of the 4th of first data packet a length of the first data packet described in the 4th moment when ending Duration, the 4th moment are the time of reception that the sending device receives the instruction message.
10. method according to claim 8 or claim 9, which is characterized in that send first to receiving device in the sending device After data packet, further include:
In the case that the sending device does not receive the ACK that the receiving device is sent in preset time, institute State the probe data packet that sending device sends first data packet to the receiving device, wherein first data packet Probe data packet carries the deadline of the probe data packet of first data packet, the probe data packet of first data packet Deadline be equal to first data packet deadline.
11. method according to claim 8 or claim 9, which is characterized in that sent to the receiving device in the sending device After the probe data packet of first data packet, further include:
The sending device receives the 2nd ACK that the receiving device is sent, and third mark and the 4th are carried in the 2nd ACK Mark, the third mark are used to indicate the probe data packet transmission time-out of first data packet, and the 4th mark is used for Indicate that the sending device obtains the target cut-off time of the probe data packet of first data packet;
The sending device determines that the probe data packet of first data packet transmits time-out according to third mark;
The sending device obtains the target cut-off time of the probe data packet of first data packet according to the 4th mark;
The sending device deletes target cut-off time in the buffer queue of the sending device and is equal to first data packet The data packet of the target cut-off time of probe data packet.
12. a kind of network equipment, which is characterized in that the network equipment includes acquisition module, removing module and sending module;
The acquisition module, the cut-off for obtaining each data packet in multiple data packets in traffic queue at the first moment Time, wherein first moment is any one moment, includes the first data packet in the multiple data packet;
The removing module, for determining first number according to the deadline of first data packet in the determining module It in the case of according to packet transmission time-out, deletes in the traffic queue, in addition to first data packet, deadline is equal to described The data packet of the deadline of first data packet;
The sending module, for sending first data packet to receiving device.
13. the network equipment according to claim 12, which is characterized in that the deadline includes cut-off time or first End duration, wherein the cut-off time of first data packet, which is that the first sending device is preset, sends out first data packet At the time of being sent to the receiving device, the first of first data packet a length of the first number described in first moment when ending According to the remaining handling duration of packet.
14. the network equipment according to claim 13, which is characterized in that the network equipment further includes update module;
The update module, is used for:
Section of each data packet at least two data packets in traffic queue is obtained at the first moment in the acquisition module Only after the time, according to the deadline of each data packet, each data packet is updated in the traffic queue Transmission sequence, wherein the deadline be cut-off time in the case of, cut-off time is more early, transmission sequence it is more forward, In the case where the deadline is cut-off duration, the first cut-off duration is smaller, and transmission sequence is more forward;
The removing module, is specifically used for:
The feelings of the first data packet transmission time-out are determined according to the deadline of first data packet in the determining module Under condition, deleting transmission sequence in the traffic queue, after first data packet, deadline is equal to described first The data packet of the deadline of data packet, wherein first data packet is equal to institute for deadline in the traffic queue State the data packet of transmission sequence up front in the data packet of the deadline of the first data packet.
15. the network equipment according to claim 14, which is characterized in that
The acquisition module, is additionally operable to:
In the case where the deadline is the first cut-off duration, in the update module cutting according to each data packet The only time obtains each data packet before updating transmission sequence of each data packet in the traffic queue Join the team moment and each data packet the second cut-off duration, wherein it is a length of when the second cut-off of first data packet The remaining handling duration of the first data packet described in the second moment, second moment are that first sending device connects to described Receiving unit sends the delivery time of the first data packet;
The determining module, is additionally operable to:
It is true in conjunction with preset formula according to the second cut-off duration of join the team moment and each data packet of each data packet First cut-off duration of fixed each data packet;Wherein, the preset formula includes:
First cut-off duration=the second cut-off duration-(the first moment-join the team the moment).
16. according to claim 12-15 any one of them network equipments, which is characterized in that the network equipment further includes connecing Receive module;
The receiving module, is used for:
In the removing module deletes the traffic queue, in addition to first data packet, deadline is equal to described After the data packet of the deadline of first data packet, the detection data for the second data packet that the second sending device is sent is received Packet, wherein the probe data packet of second data packet carries the deadline of the probe data packet of second data packet, institute The deadline for stating the probe data packet of the second data packet is equal to the deadline of second data packet, second data packet For the data packet identical with the deadline of the first data packet of deadline in the traffic queue;
The determining module, is additionally operable to:
According to the deadline of the probe data packet of second data packet, determine that the probe data packet of second data packet passes Defeated time-out;
The sending module is additionally operable to send the probe data packet of second data packet to the receiving device.
17. a kind of receiving device, which is characterized in that the receiving device includes:Sending module, receiving module, acquisition module and Determining module;
The sending module, for sending instruction message to sending device, the instruction message is used to indicate data to be transmitted The deadline of packet, wherein the data packet to be transmitted includes the first data packet;
The receiving module, first data packet for receiving network equipment transmission, described in first data packet carries The deadline of first data packet;
The sending module, is additionally operable to:
The feelings of the first data packet transmission time-out are determined according to the deadline of first data packet in the determining module It under condition, sends first to the sending device and confirms ACK, carry first identifier and second identifier in the first ACK, described the One mark is used to indicate the first data packet transmission time-out, and the second identifier is used to indicate the sending device and obtains described first The target cut-off time of the target cut-off time of data packet, first data packet are that the sending device is counted according to described first It is determined according to the deadline of packet.
18. receiving device according to claim 17, which is characterized in that the deadline includes cut-off time or cut-off Duration, wherein the cut-off time of first data packet, which is that the sending device is preset, is sent to first data packet At the time of the receiving device, when third of first data packet cut-off a length of the first data packet described in the third moment it is surplus Remaining handling duration, the third moment are the delivery time that the sending device sends the instruction message.
19. a kind of sending device, which is characterized in that the sending device includes:Receiving module, determining module, obtains sending module Modulus block and removing module;
The receiving module, for receiving the instruction message from receiving device, the instruction message is used to indicate to be transmitted The deadline of data packet, wherein the data packet to be transmitted includes the first data packet;
The sending module, for sending the first data packet, first number to the receiving device according to the instruction message The deadline of first data packet is carried according to packet;
The receiving module, is additionally operable to:
It receives the receiving device is sent first and confirms ACK, first identifier and second identifier, institute are carried in the first ACK It states first identifier and is used to indicate the first data packet transmission time-out, the second identifier is used to indicate described in the sending device acquisition The target cut-off time of first data packet, target cut-off time of first data packet are the sending device according to described the The cut-off time that the time shaft of the deadline of one data packet and the sending device determines;
The determining module, for determining that first data packet transmits time-out according to the first identifier;
The acquisition module, the target cut-off time for obtaining first data packet according to the second identifier;
The removing module, in the buffer queue for deleting the sending device target cut-off time be equal to first data The data packet of the target cut-off time of packet.
20. sending device according to claim 19, which is characterized in that the deadline includes cut-off time or cut-off Duration, wherein the cut-off time of first data packet, which is that the sending device is preset, is sent to first data packet At the time of the receiving device, the 4th of first data packet a length of the first data packet described in the 4th moment when ending remains Remaining handling duration, the 4th moment are the time of reception that the sending device receives the instruction message.
21. the sending device according to claim 19 or 20, which is characterized in that
The sending module, is additionally operable to:
After the sending module sends the first data packet to receiving device, the receiving module does not receive in preset time In the case of the first ACK sent to the receiving device, the detection of first data packet is sent to the receiving device Data packet, wherein when the probe data packet of first data packet carries the cut-off of the probe data packet of first data packet Between, the deadline of the probe data packet of first data packet is equal to the deadline of first data packet.
22. the sending device according to claim 19 or 20, which is characterized in that
The receiving module, is additionally operable to:
After the sending module sends the probe data packet of first data packet to the receiving device, connect described in reception Third mark and the 4th mark are carried in the 2nd ACK that receiving unit is sent, the 2nd ACK, the third mark is used to indicate The probe data packet transmission time-out of first data packet, the 4th mark are used to indicate the sending device and obtain described the The target cut-off time of the probe data packet of one data packet;
The determining module is additionally operable to determine that the probe data packet transmission of first data packet is super according to third mark When;
The acquisition module, the target for being additionally operable to the probe data packet for obtaining first data packet according to the 4th mark are cut The only moment;
The removing module, being additionally operable in the buffer queue for deleting the sending device target cut-off time is equal to described first and counts According to the data packet of the target cut-off time of the probe data packet of packet.
23. a kind of network congestion control system, which is characterized in that the system comprises as described in claim any one of 12-16 The network equipment, such as claim 17-18 any one of them receiving device and as claim 19-22 any one of them send out Send equipment.
24. a kind of network equipment, which is characterized in that including:Processor, memory and communication interface;
The memory is for storing computer executed instructions, when the network equipment is run, described in the processor execution The computer executed instructions of memory storage, so that the network equipment is executed such as any one of claim 1-5 institutes The method for controlling network congestion stated.
25. a kind of receiving device, which is characterized in that including:Processor, memory and communication interface;
The memory is for storing computer executed instructions, when the receiving device is run, described in the processor execution The computer executed instructions of memory storage, so that the receiving device is executed such as any one of claim 6 or 7 institute The method for controlling network congestion stated.
26. a kind of sending device, which is characterized in that including:Processor, memory and communication interface;
The memory is for storing computer executed instructions, when the sending device is run, described in the processor execution The computer executed instructions of memory storage, so that the sending device is executed such as any one of claim 8-12 institutes The method for controlling network congestion stated.
27. a kind of computer readable storage medium, which is characterized in that including computer instruction, when run on a computer, So that computer is executed in claim 1-5 or in claim 6 or 7 or as described in any one of claim 8-12 Method for controlling network congestion.
28. a kind of computer program product including instruction, which is characterized in that when run on a computer so that calculate Machine is executed such as the network congestion in claim 1-5 or in claim 6 or 7 or as described in any one of claim 8-12 Control method.
CN201710296918.9A 2017-04-28 2017-04-28 Network congestion control method, equipment and system Active CN108809858B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710296918.9A CN108809858B (en) 2017-04-28 2017-04-28 Network congestion control method, equipment and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710296918.9A CN108809858B (en) 2017-04-28 2017-04-28 Network congestion control method, equipment and system

Publications (2)

Publication Number Publication Date
CN108809858A true CN108809858A (en) 2018-11-13
CN108809858B CN108809858B (en) 2020-11-10

Family

ID=64053245

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710296918.9A Active CN108809858B (en) 2017-04-28 2017-04-28 Network congestion control method, equipment and system

Country Status (1)

Country Link
CN (1) CN108809858B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6791992B1 (en) * 1999-10-07 2004-09-14 The Regents Of The University Of California Earliest-deadline-first queuing cell switching architecture and method
US20070036116A1 (en) * 2005-08-12 2007-02-15 Toshiba America Research, Inc. Latency-aware service opportunity window-based (laso) scheduling
US7924728B2 (en) * 2006-08-25 2011-04-12 Raytheon Bbn Technologies Corp Systems and methods for energy-conscious communication in wireless ad-hoc networks
CN102685204A (en) * 2011-03-17 2012-09-19 华为技术有限公司 Method and equipment for transmitting data resource
CN106027407A (en) * 2016-08-05 2016-10-12 广州市香港科大霍英东研究院 Adjusting method of congestion windows in network, network congestion control method and interchanger

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6791992B1 (en) * 1999-10-07 2004-09-14 The Regents Of The University Of California Earliest-deadline-first queuing cell switching architecture and method
US20070036116A1 (en) * 2005-08-12 2007-02-15 Toshiba America Research, Inc. Latency-aware service opportunity window-based (laso) scheduling
US7924728B2 (en) * 2006-08-25 2011-04-12 Raytheon Bbn Technologies Corp Systems and methods for energy-conscious communication in wireless ad-hoc networks
CN102685204A (en) * 2011-03-17 2012-09-19 华为技术有限公司 Method and equipment for transmitting data resource
CN106027407A (en) * 2016-08-05 2016-10-12 广州市香港科大霍英东研究院 Adjusting method of congestion windows in network, network congestion control method and interchanger

Also Published As

Publication number Publication date
CN108809858B (en) 2020-11-10

Similar Documents

Publication Publication Date Title
TWI332150B (en) Processing data for a tcp connection using an offload unit
US7817634B2 (en) Network with a constrained usage model supporting remote direct memory access
US9503383B2 (en) Flow control for reliable message passing
US8121125B2 (en) Accelerated TCP (transport control protocol) stack processing
US8976789B2 (en) Communication transport protocol for distributed information technology architectures
US10791054B2 (en) Flow control and congestion management for acceleration components configured to accelerate a service
JP2004534311A (en) Configuration to create multiple virtual queue pairs from compressed queue pairs based on shared attributes
US8694701B2 (en) Recovering dropped instructions in a network interface controller
CN101138216A (en) Server side TFTP flow control
US11032147B2 (en) Acceleration of node configuration for TWAMP with a large number of test sessions
US8539089B2 (en) System and method for vertical perimeter protection
CN110502364A (en) Across the cloud back-up restoring method of big data sandbox cluster under a kind of OpenStack platform
US10601722B2 (en) Method and device for dynamically managing the message retransmission delay on an interconnection network
US20080263171A1 (en) Peripheral device that DMAS the same data to different locations in a computer
US8527664B2 (en) Direct memory access with minimal host interruption
Steenkiste Design, implementation, and evaluation of a single‐copy protocol stack
Bergstrom et al. The distributed open network emulator: Using relativistic time for distributed scalable simulation
US20050188070A1 (en) Vertical perimeter framework for providing application services
CN108809858A (en) Method for controlling network congestion, equipment and system
CN111586040B (en) High-performance network data receiving method and system
WO2024125280A1 (en) Message transmission method and apparatus, and device and storage medium
US10901820B1 (en) Error state message management
WO2024114645A1 (en) Instantiation method for virtualization network function (vnf), and apparatus
US20230273824A1 (en) Establishing coherent message analysis across distributed locations
JPS59176952A (en) Communication control system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant