CN109412964A - Message control method and network equipment - Google Patents

Message control method and network equipment Download PDF

Info

Publication number
CN109412964A
CN109412964A CN201710713089.XA CN201710713089A CN109412964A CN 109412964 A CN109412964 A CN 109412964A CN 201710713089 A CN201710713089 A CN 201710713089A CN 109412964 A CN109412964 A CN 109412964A
Authority
CN
China
Prior art keywords
message
flow
congestion
priority
message flow
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
CN201710713089.XA
Other languages
Chinese (zh)
Other versions
CN109412964B (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
Priority to CN201710713089.XA priority Critical patent/CN109412964B/en
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to KR1020207007821A priority patent/KR102317523B1/en
Priority to PCT/CN2018/093298 priority patent/WO2019033857A1/en
Priority to JP2020509427A priority patent/JP6938766B2/en
Priority to EP23201129.6A priority patent/EP4325803A3/en
Priority to EP18845599.2A priority patent/EP3661137B1/en
Publication of CN109412964A publication Critical patent/CN109412964A/en
Priority to US16/793,136 priority patent/US11190449B2/en
Priority to US17/521,664 priority patent/US11646967B2/en
Application granted granted Critical
Publication of CN109412964B publication Critical patent/CN109412964B/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/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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • 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
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • 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
    • H04L47/129Avoiding congestion; Recovering from congestion at the destination endpoint, e.g. reservation of terminal resources or buffer space
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • 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/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • 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/17Interaction among intermediate nodes, e.g. hop by hop
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2458Modification of priorities while in transit

Abstract

It itself provides message control method and the network equipment.The described method includes: the message flow that detection causes congestion state to change;It generates congestion and message is isolated, the congestion isolation message is used to change the priority of message in the message flow, and the congestion isolation message includes the description information of the message flow;The congestion is sent at least one node, and message is isolated.Using method and the network equipment etc. provided herein, it can be when congestion state changes, identify the message flow for causing congestion state to change, and other nodes is notified to change the priority of message in the message flow, without influencing other message flow transmission, to not only can be to avoid leading to packet loss because of congestion, but also it can be largely avoided the appearance because not making hol blocking situation caused by congestion is isolated, congestion is avoided to spread.

Description

Message control method and network equipment
Technical field
This application involves network communication field more particularly to message control methods and network equipment.
Background technique
As high-performance calculation, artificial intelligence, distributed storage etc. are more next dependent on the business of ultralow time delay data center More, requirement of the user between the data transmission delay node each in data center is also higher and higher.And in actual use, It is the major reason for influencing service feature because of packet loss caused by congestion.
To reduce because of packet loss caused by congestion, can introduce in the data transmission procedure between node in the data center With priority flow control (priority-based flow control, PFC) mechanism.After introducing PFC mechanism, upstream node can With according to the priority of business to be transmitted determine each business to be transmitted corresponding to message flow priority, wherein it is to be transmitted The priority of business is higher, corresponding to message flow priority it is also higher.After the priority of message flow determines, upstream section Point can send different message flows to downstream node by different transmit queues, and wherein each queue is preferential for sending The identical message flow of grade, and different queues is then used to send the different message flow of priority.Downstream node then can accordingly be set Multiple buffer queues are equipped with, each buffer queue is to applied to the message flow for belonging to a priority, different caching teams Column then can be used for the different message flow of cache priority grade.When the data cached in some buffer queue are more than preset level Line, it is possible to which when congestion can occur, downstream node can send back-pressure signal with upstream nodes, and request upstream node pause is sent The message flow of priority corresponding to the buffer queue, so as to avoid the generation of congestion.
But in data center, the same downstream node may have more than one upstream node, and it is each on Different types of message flow transmitted by trip node may have identical priority, and the message flow of same priority Data volume may be different.Some message flow after introducing PFC mechanism, in the identical message flow of multiple priority Data volume it is excessive when, it is possible to will lead to the data that are cached in buffer queue is more than preset level line, so as to cause downstream Node can send back-pressure signal with upstream nodes.And upstream nodes send back-pressure signal, meeting to downstream node in the case All upstream node pauses are caused to send the message flow of all priority, to will appear because data volume is smaller without causing The message flow of obstruction also suspends the case where sending by upstream node, and the lesser message flow of these data volumes is made serious team's head occur Block (head of line blocking, HOLB) problem, and hol blocking can cause congestion to spread, and greatly influence whole net Performance.
Summary of the invention
This application provides message control method and equipment, to reduce the appearance of hol blocking situation, to reduce congestion Diffusion.
In a first aspect, this application provides a kind of message control methods, comprising: the message that detection causes congestion state to change Stream;It generates congestion and message is isolated, the congestion isolation message is used to change the priority of message in the message flow, the congestion Isolation message includes the description information of the message flow;The congestion is sent at least one node, and message is isolated.
With reference to first aspect, in a first possible implementation of that first aspect, to described in the transmission of at least one node Message is isolated in congestion, comprising: sends the congestion to the upstream node for sending the message flow and message is isolated.
With reference to first aspect or first aspect the first possible implementation, in second of first aspect possible realization In mode, the congestion isolation message is specifically used for the dispatching priority for indicating that the node reduces message in the message flow.
Any one with reference to first aspect or in the first to two kind of first aspect possible implementation, in first aspect In the third possible implementation, the congestion isolation message is the message that EtherType is predefined type.
Any one with reference to first aspect or in the first to three kind of first aspect possible implementation, in first aspect In 4th kind of possible implementation, by the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table At the first label, wherein congestion marking item is for recording whether message flow corresponding to its affiliated entry is congestion stream, and described the One label is for indicating that message flow corresponding to its affiliated entry is congestion stream.
4th kind of possible implementation with reference to first aspect, in the 5th kind of possible implementation of first aspect, also If including: not receive the message flow in the scheduled duration from timestamp item the recorded moment in the entry Message, then tag entry is set as the second label, second label is for indicating message flow corresponding to its affiliated entry Non-congested stream, at the time of the timestamp item receives message in the message flow for recording last time.
4th kind of possible implementation with reference to first aspect, in the 6th kind of possible implementation of first aspect, also It include: to receive the first message;If the content of the congestion marking item in flow table in entry corresponding with the first message flow is the One label, then change the dispatching priority of first message, makes the preferential of the priority of first message and the second message Grade is different, wherein second message and first message belong to the first message flow, and first message, which will refer to, to be gathered around Fill in the curriculum offering of tag entry into the message that receives after the first label, second message refers to by congestion marking item Curriculum offering is at the message received before the first label.
Any one with reference to first aspect or in the first to three kind of first aspect possible implementation, in first aspect In 7th kind of possible implementation, entry corresponding with the message flow is added in congestion stream flow table.
7th kind of possible implementation with reference to first aspect, in the 8th kind of possible implementation of first aspect, also If including: not receive the message flow in the scheduled duration from timestamp item the recorded moment in the entry Message, then delete corresponding with message flow entry, the timestamp item receives the message for recording for the last time In stream at the time of message.
7th kind of possible implementation with reference to first aspect connects in the 9th kind of possible implementation of first aspect Receive third message;If there is entry corresponding with the second message flow in the congestion stream flow table, the third report is changed The dispatching priority of text, keeps the third message different from the priority of the 4th message, wherein the 4th message and institute It states third message and belongs to the second message flow, the third message refers to addition and second message flow in congestion stream flow table The message received after corresponding entry, the 4th message refer to addition and second message flow in congestion stream flow table The message received before corresponding entry.
Second aspect, present invention also provides another message control methods, comprising: and it receives congestion and message is isolated, it is described It includes description information in message that congestion, which is isolated,;Change the priority of message in message flow indicated by the description information.
In conjunction with second aspect, in second aspect in the first possible implementation, change indicated by the description information The priority of message in message flow, comprising: reduce the dispatching priority of message in the message flow.
The first possible implementation in conjunction with second aspect, in second of second aspect possible implementation, drop The dispatching priority of message includes: the interior of the priority indication field of message in the modification message flow in the low message flow Hold, so that dispatching priority corresponding with modified content, lower than dispatching priority corresponding with the content before modification; Alternatively, controlling message in the message flow enters low priority processing queue, the dispatching priority of the low priority processing queue Grade is lower than dispatching priority corresponding with the content of priority indication field of message in the message flow.
The first possible implementation in conjunction with second aspect, in second aspect in the third possible implementation, also It include: by the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table into the first label, wherein gather around Plug tag entry is for recording whether message flow corresponding to its affiliated entry is congestion stream, and first label is for indicating its institute Belonging to message flow corresponding to entry is congestion stream.
The third possible implementation in conjunction with second aspect, in the 4th kind of possible implementation of second aspect, also If including: not receive the message flow in the scheduled duration from timestamp item the recorded moment in the entry Message, then tag entry is set as the second label, second label is for indicating message flow corresponding to its affiliated entry Non-congested stream, at the time of the timestamp item receives message in the message flow for recording last time.
The third possible implementation in conjunction with second aspect, in the 5th kind of possible implementation of second aspect, also It include: to obtain the first message;If the content of the congestion marking item in flow table in entry corresponding with the first message flow is the One label, then change the dispatching priority of first message, makes the preferential of the priority of first message and the second message Grade is different, wherein second message and first message belong to the first message flow, and first message, which will refer to, to be gathered around Fill in the curriculum offering of tag entry into the message that gets after the first label, second message refers to by congestion marking item Curriculum offering is at the message got before the first label.
In conjunction with second aspect, in the 6th kind of possible implementation of second aspect, after receiving congestion isolation message, Further include: entry corresponding with the message flow is added in congestion stream flow table.
In conjunction with the 6th kind of possible implementation of second aspect, in the 7th kind of possible implementation of second aspect, also If including: not receive the message flow in the scheduled duration from timestamp item the recorded moment in the entry Message, then delete corresponding with message flow entry, the timestamp item receives the message for recording for the last time In stream at the time of message.
In conjunction with the 6th kind of possible implementation of second aspect, in the 8th kind of possible implementation of second aspect, also Include: further include: obtain third message;If there is entry corresponding with the second message flow in the congestion stream flow table, The dispatching priority for changing the third message keeps the third message different from the priority of the 4th message, wherein institute State the 4th message and the third message belong to the second message flow, the third message refer in congestion stream flow table addition with The message got after the corresponding entry of second message flow, the 4th message refer in congestion stream flow table addition with The message got before the corresponding entry of second message flow.
The third aspect, present invention also provides a kind of network equipment, the equipment includes for executing aforementioned first aspect Or the unit module that method described in the various implementations of first aspect is any.Wherein, the unit module to be realized Function can be realized by processor or be realized by processor and by the network device components that processor is controlled.
Fourth aspect, present invention also provides another network equipment, the equipment includes for executing aforementioned second party Any unit module of method described in face or the various implementations of second aspect.Wherein, the unit module to be realized The function network device components that can be realized by processor or be controlled by processor and by processor realize.
5th aspect, present invention also provides a kind of computer readable storage medium, including instruction, when its on computers When operation, computer can be made to execute method described in first aspect or the various any one of implementation of first aspect.
6th aspect, present invention also provides another computer readable storage mediums, including instruction, when it is in computer When upper operation, computer can be made to execute method described in second aspect or the various any one of implementation of second aspect.
7th aspect, present invention also provides a kind of computer program products, including instruction, when it runs on computers When, computer can be made to execute method described in first aspect or the various any one of implementation of first aspect.
Eighth aspect, present invention also provides another computer program products, including instruction, when it is transported on computers When row, computer can be made to execute method described in second aspect or the various any one of implementation of second aspect.
9th aspect application additionally provides a kind of network system, and the network system may include at least two nodes, In a node, it is any for executing method described in aforementioned second aspect or the various implementations of second aspect;With/ Or, another one node, any for executing method described in aforementioned second aspect or the various implementations of second aspect.
Using method and network equipment etc. provided herein, the message for causing congestion state to change can be being identified After stream, the priority of message in the message flow is changed, a possibility that hol blocking occurs so as to greatly reduce.
Detailed description of the invention
In order to illustrate more clearly of the technical solution of the application, letter will be made to attached drawing needed in the embodiment below Singly introduce, it should be apparent that, for those of ordinary skills, without any creative labor, It is also possible to obtain other drawings based on these drawings.
Fig. 1 is the structural schematic diagram of the application network system one embodiment;
Fig. 2 is the structural schematic diagram of another embodiment of the application network system;
Fig. 3 is a kind of structural schematic diagram that message is isolated in the application congestion;
Fig. 4 is a kind of structural schematic diagram that message is isolated in the application congestion;
Fig. 5 is the flow diagram for applying for message control method one embodiment;
Fig. 6 is the flow diagram for applying for another embodiment of message control method;
Fig. 7 is the flow diagram for applying for another embodiment of message control method;
Fig. 8 is the flow diagram for applying for message control method further embodiment;
Fig. 9 is the structural schematic diagram of log on equipment one embodiment;
Figure 10 is the structural schematic diagram of another embodiment of log on equipment;
Figure 11 is the structural schematic diagram of another embodiment of log on equipment.
Specific embodiment
Network system in each embodiment of the application can be using CLOS framework, Mesh framework or Torus framework etc. The data center of the network architecture, or it is also possible to other non-data central site networks using foregoing structure, not to this application It limits.For ease of description, being only illustrated by taking the data center of CLOS framework as an example below.
The data center of CLOS framework may include for providing the server of all kinds of services (server).Except server it Outside, described further includes a variety of different types of interchangers such as TOR interchanger and SPINE interchanger.Wherein, the TOR interchanger Being arranged can be on the chain road between the server and the SPINE interchanger, and the uplink port of the TOR interchanger is used for SPINE interchanger is connected, and downlink port is then used to connect server.Each described TOR interchanger can be by multiple Uplink port is connected with multiple SPINE interchangers.And each described server then can also by least one piece of network interface card with extremely A few TOR interchanger is connected.
It, can also be described when the server and more TOR interchanger that are included when the data center is larger Setting AGG interchanger is chained between TOR interchanger and the SPINE interchanger.The downlink port of the AGG interchanger is used In connecting at least one TOR interchanger, uplink port is then used to connect at least one SPINE.When the uplink of the TOR interchanger When port connects SPINE interchanger, as shown in Figure 1, the data center is second level CLOS network;And work as the TOR interchanger Uplink port connect AGG interchanger when, as shown in Fig. 2, the data center be three-level CLOS network.
Node in each embodiment of the application, and website (station) can be referred to as, it may include aforementioned server Or the equipment such as any type of interchanger, it also may include that data center network or other non-data central site networks are arbitrarily set It is standby.The equipment can be the equipment such as interchanger, router, network interface card.
In each embodiment of the application, congestion isolation message (congestion isolation packet, CIP) is It refers to be used to indicate the node for receiving the message, changes the information of message priority in message flow indicated by the message.That is, The congestion isolation message can serve to indicate that the node for receiving the message changes the priority of message in the message flow.Institute It states message flow and the description information for including in message or other information is isolated to indicate by the congestion.
Description information refers to the information for being determined for message flow or information combination, and by the description information, node can To determine the corresponding message flow of the only one description information.For example, the message flow can with the source IP of message flow, destination IP, The five-tuple (5-tuple) that protocol number, source port number, destination slogan are constituted, or it is also possible to triple or other classes The information or information of type combine, such as Overlay network, and by taking VXLAN as an example, 5 tuple of message flow of different tenants may be identical, Therefore a message flow cannot be uniquely determined using 5 tuples, such case is needed VNI (VXLAN Network Identifier a message flow also) is uniquely determined using 6 tuples as the description information flowed.This application is not done It limits.
Congestion isolation message target MAC (Media Access Control) address is to receive the congestion node MAC addr to disappear is isolated, and source MAC is hair The MAC Address of the congestion node that isolation disappears is given, the EtherType of congestion isolation message can be to be used to indicate the message to gather around The predefined type of plug isolation message, such as 0x8809.The description information of the stream may be embodied in the congestion isolation message IP and transport layer header.In order to simplify processing logic, the head IP of the congestion isolation message and transport layer header can be Reference format is that is, identical as the format of message in the message flow.Message is isolated in construction congestion, the message flow can be copied The IP head and transport layer header of middle message encapsulate Ethernet header, and are filled into 64 byte of ether minimum message length.For example, The format that message is isolated in congestion can be as shown in Figure 3.It should be noted that the congestion isolation message is also possible to other formats Or there are other makes, when the application is used for other non-Ethernet network such as Infiniband networks, message is customized Infiniband protocol type message, as long as including the description information of message flow, also without limitation to this application. For example, the format of the plug isolation message can also be as shown in Figure 4.
In each embodiment of the application, can be set on each node dedicated for recording the congestion stream stream of congestion stream Table records the message flow for causing congestion state to change by the entry in congestion stream flow table.Wherein, cause congestion state variation Message flow may include but be not limited to congestion stream.If there is item corresponding with some message flow in congestion stream flow table Mesh then illustrates that the message flow is the message flow for causing congestion state to change;If be not present and the message flow in congestion stream flow table Corresponding entry, then illustrating the message flow not is the message flow for causing congestion state to change.When may include in the entry Between stab item, at the time of the timestamp item receives message in the message flow for recording last time.
Cause to gather around to record for entry setting congestion marking item each in existing flow table alternatively, each node also can be used Fill in the message flow of state change.Message flow corresponding to its affiliated entry of different content records can be used in congestion marking item No is congestion stream, and the content of congestion marking item can be the first label or the second label, and first label is for indicating its institute Belonging to message flow corresponding to entry is congestion stream, and second label is then for indicating message flow corresponding to its affiliated entry It is not congestion stream.In addition to the congestion marking item, the timestamp item has also been can be set in each entry in the flow table.
In each embodiment of the application, the processing queue can be transmit queue, forwarding queue, buffer queue etc. no The queue of same type.The priority of message is identical in same queue, and the priority of message can be different in different queue, or Person can also have the priority of the message in several queues identical.For example, the processing queue can be for caching upstream Any one in 8 buffer queues of message transmitted by node, or it is also possible to any one height in the buffer queue Queue.
With reference to the accompanying drawing, the application message control method is illustrated.
It is the flow diagram of the application message control method one embodiment referring to Fig. 5.The embodiment the method can To be executed by any one node.As shown in figure 5, the method may include following steps:
Step 501, the message flow that detection causes congestion state to change.
The message flow for causing congestion state to change is causing some the processing queue of this node to be gathered around either referring to Plug or may congestion message flow, at some for being also possible to cause other nodes such as the upstream node of this node or downstream node There is the message flow of congestion or possible congestion in reason queue.Different according to the node for congestion or possible congestion occur, determination causes to gather around The concrete mode for filling in the message flow of state change is different.It, can be using single waterline for determining the congestion stream of this node Mechanism or double waterline mechanism determine whether message flow is congestion stream.
When using single waterline mechanism to determine congestion stream, some processing queue is being added in the message in some message flow Afterwards, if can to wait in line the message amount of processing in this processing queue to be more than default waterline, this can be determined Message flow is congestion stream;The on the contrary then described message flow is not just congestion stream.
When using double waterline mechanism to determine congestion stream, some processing queue is being added in the message in some message flow Afterwards, it if can to wait in line the message amount of processing in this processing queue to be more than to preset high waterline, can determine The message flow is congestion stream;If can to wait in line the message amount of processing in this processing queue to be more than to preset low water Line but be no more than preset high waterline, then the message flow whether can be congestion stream according to determine the probability, the probability can be One variable is multiplied by a preset value, wherein and the variable can subtract for current data queued amount and preset low waterline, then divided by It presets high waterline and subtracts and preset the value that low waterline obtains;If not making the message number for waiting in line processing in this processing queue Amount is more than to preset low waterline, then the message flow is not just congestion stream.
Due to the message flow for causing congestion state to change, some the processing queue of this node is being caused to go out either referring to Existing congestion or may congestion message flow, be also possible to cause downstream node of the downstream node of this node or downstream node etc. its There is the message flow of congestion or possible congestion in some processing queue of its node.Not according to the node for congestion or possible congestion occur Together, determine that the concrete mode for the message flow for causing congestion state to change is different.For example, if the message flow cause it is described The congestion state of the downstream node of this node changes, and disappears then the downstream node can send congestion isolation to this node Breath, and this node then can determine the message flow according to the description information that congestion is isolated in message.Similar approach is herein just not It repeats again.
Step 502, it generates congestion and message is isolated.
After detecting the message flow, this node can construct congestion isolation message, and the congestion isolation message is for becoming The priority of message in the message flow.Under normal conditions, congestion isolation message, which is used to indicate, described receive this and disappears The node of breath reduces the dispatching priority of message in the message flow.Before the congestion isolation message constructing mode may refer to It states, is not just repeating herein.
Step 503, the congestion being sent at least one node, message is isolated.
After congestion isolation message generates, this node can send the congestion isolation at least one node and disappear Breath.It may include the upstream node that the message flow is sent to this node at least one described node.That is, this node can be to The upstream node for sending the message flow sends the congestion isolation message.Upstream network node is receiving the congestion isolation After message, the priority of the message flow can be changed, to realize the isolation of congestion stream.
Using method provided by the present embodiment, this node can identify when congestion state changes and cause congestion shape The message flow of state variation, and other nodes is notified to change the priority of message in the message flow, without influencing other message flows Transmission, thus not only can be to avoid leading to packet loss because of congestion, but also can be largely avoided and cause because not making congestion isolation due to Hol blocking situation appearance, avoid congestion from spreading.
To change the dispatching priority of message to avoid the appearance of congestion situations, this node disappears in addition to congestion to be sent isolation Except breath, also message in the message flow for causing congestion state to change is isolated in this node, to avoid this node or downstream node The corresponding queue of priority before changing continues congestion.
This node can be by the content of the priority indication field of message in the modification message flow, so that with after modification The corresponding dispatching priority of content, lower than dispatching priority corresponding with the content before modification, or the control report Wen Liuzhong message enters low priority processing queue, and the dispatching priority of the low priority processing queue is lower than and the message In stream the corresponding dispatching priority of the content of the priority indication field of message come be isolated cause congestion state change message Message in stream.Wherein, the Low Priority Queuing can be the queue of predetermined priority, this be caned in first priority query In the multiple processing queues of node in priority minimum one or minimum several queues of priority some or certain it is several. The content of the priority indication field of message in the message flow is modified, so that dispatching priority corresponding with modified content Grade, can be by modifying in the precedence field in the message lower than dispatching priority corresponding with the content before modification Hold and realize, or can also be by modifying the information realization of the priority that other are used to indicate the message.For example, can by institute The content modification of precedence field is stated as the lower new content of priority relative to instruction described in raw content.That is, with after modification The corresponding dispatching priority of content, lower than dispatching priority corresponding with the content before modification.
Wherein, the dispatching priority of message in the message flow is reduced, can only reduce and be not yet added in the message flow The priority for handling the message of queue can also not only reduce the message that processing queue is not yet added in the message flow, but also reduce The priority of processing queue but not yet processed message is had been added in the message flow.Similar, control the message flow Middle message enters low priority processing queue, the dispatching priority of low priority processing queue be lower than in the message flow The corresponding dispatching priority of the content of the priority indication field of message, can only control in the message flow message enter it is low Priority process queue, the dispatching priority of the low priority processing queue is lower than the priority with message in the message flow The corresponding dispatching priority of the content of indication field can also both control message in the message flow and enter low priority processing The dispatching priority of queue, the low priority processing queue is lower than and the priority indication field of message in the message flow The corresponding dispatching priority of content, and processing queue but not yet processed dispatching message will be had been added in the message flow To the Low Priority Queuing.
Below to the content for modifying the priority indication field of message in the message flow, so that with modified content phase Corresponding dispatching priority, the concrete mode lower than dispatching priority corresponding with the content before modification are illustrated.Herein It should be noted that following embodiment be only modify the content of the priority indication field of message in the message flow so that Dispatching priority corresponding with modified content, lower than the optional side of dispatching priority corresponding with the content before modification Formula is not offered as the restriction to other implementations.According to different in such a way that different flow tables record the message flow, this section The specific implementation that point reduces the dispatching priority of message in the message flow is also different.
It is the flow diagram of another implementation of the application message control method referring to Fig. 6.As shown in fig. 6, in step After 501, i.e., can also include: after detecting the message flow for causing congestion state to change
Step 504, by the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table at first Label.
For the priority convenient for restoring message in the data flow, except by the curriculum offering of the congestion marking item at first It can also will be the last time to receive the message flow with the curriculum offering of the timestamp item in the tape mesh except label At the time of middle message.
Step 505, the first message is received.
First message can be the message that any upstream node of described node is sent.
Step 506, if the content of the congestion marking item in flow table in entry corresponding with the first message flow is first Label, then change the dispatching priority of first message.
After receiving first message, this node can determine the first message flow belonging to first message; Then detect whether first message flow is the message flow for being registered as that congestion state is caused to change.If described first Message flow has been registered as the message flow for causing congestion state to change, then changes the dispatching priority of first message.Tool For body, in the present embodiment, if the content of the congestion marking item in flow table in entry corresponding with the first message flow is First label then illustrates that the first message flow is the message flow for causing congestion state to change, it is therefore desirable to change first message Dispatching priority.
This node can make the priority and the second message of first message by changing first message priority Priority it is different, to realize the isolation of congestion stream in this node.Wherein, second message is belonged to first message First message flow, first message refer to the report received after marking the curriculum offering of congestion marking item at first Text, second message refer to the message received before by the curriculum offering of congestion marking item at the first label.It needs herein It is noted that the dispatching priority of change first message usually can be the priority for reducing by first message.
Change the dispatching priority of first message specific implementation can there are many.It usually may include modification The content of the priority indication field of message in the message flow, so that dispatching priority corresponding with modified content, Lower than dispatching priority corresponding with the content before modification;Enter at low priority alternatively, controlling message in the message flow Queue is managed, the dispatching priority of the low priority processing queue is lower than the priority indication field with message in the message flow The corresponding dispatching priority of content.
For example, this node can change and use in first message before processing queue is added in first message In the content of instruction first message priority, such as change the content in the first message priority field, to make First message is different from the processing queue with addition described in the second message according to the processing queue for indicating that information is added, real The change of the priority of existing first message.Alternatively, this node or first message can also be directly controlled being added The queue different from enqueue priority added by second message, to change the priority of first message.
If it should be noted that can also include: from the time in the entry after the step 502 The message for not receiving the message flow in scheduled duration from stamp item the recorded moment, then be set as the second label for tag entry.
If not receiving the message in the scheduled duration from timestamp item the recorded moment in the entry The message of stream illustrates that the message in the message flow is reduced, and the message flow can be no longer regarded as congestion stream.Therefore Tag entry can be set as the second label by this node, thus when making that subsequent message in the message flow can be received again, So as to restore the priority of message in the message flow.Wherein, the scheduled duration, which can be no longer than, empties the flow table Duration.
The isolation of congestion stream can be realized in this node using the present embodiment.
It is the flow diagram of another implementation of the application message control method referring to Fig. 7.As shown in fig. 7, in step After 501, i.e., can also include: after detecting the message flow for causing congestion state to change
Step 507, entry corresponding with the message flow is added in congestion stream flow table.
For the priority convenient for restoring message in the data flow, in addition to adding the entry in congestion stream flow table, It can also be at the time of the last time receiving message in the message flow by the curriculum offering of the timestamp item in the entry.
Step 508, third message is received.
The third message can be the message that any upstream node of described node is sent.
Step 509, if there is entry corresponding with the second message flow in the congestion stream flow table, described the is changed The dispatching priority of three messages.
If there is entry corresponding with the second message flow in the congestion stream flow table, illustrate that the second message flow is to draw Play the message flow of congestion state variation, it is therefore desirable to change the priority of second message.
This node can make the priority and the second message of first message by changing the third message priority Priority it is different, wherein the 4th message and the third message belong to the second message flow, and the third message refers to The message received after entry corresponding with second message flow is added in congestion stream flow table, the 4th message refers to The message received before entry corresponding with second message flow is added in congestion stream flow table.
It changes the specific implementation of the dispatching priority of the third message and changes the priority of first message Mode it is similar, details are not described herein again.
If it should be noted that can also include: from the time in the entry after the step 507 The message of the message flow has not been obtained in scheduled duration from stamp item the recorded moment, then deletes corresponding with the message flow Entry.
If not receiving the message in the scheduled duration from timestamp item the recorded moment in the entry The message of stream illustrates that the message in the message flow is reduced, and the message flow can be no longer regarded as congestion stream.Therefore Entry corresponding with the message flow in congestion stream flow table can be deleted, to restore the priority of message in the message flow.
The isolation of congestion stream can also be realized in this node using the present embodiment.
To avoid leading to packet loss because of congestion, except in addition to this node realizes the isolation of congestion stream, it is also necessary to be saved in upstream Point also realizes the isolation of congestion stream.
It is the flow diagram of another implementation of the application message control method referring to Fig. 8.Method shown in the embodiment It can be executed by upstream network node
Step 801, it receives congestion and message is isolated, include description information in the congestion isolation message.
Upstream node can receive in previous embodiment, and message is isolated in the congestion that this node is sent.The congestion every Related content from message may refer to previous embodiment, and details are not described herein again.
After receiving congestion isolation message, the upstream node can also will be corresponding with the message flow in flow table Entry in congestion marking item curriculum offering at first label, alternatively, in congestion stream flow table addition with the message flow Corresponding entry.Concrete mode may refer to previous embodiment, and details are not described herein again.
Step 802, the priority of message in message flow indicated by the description information is changed.
Upstream node can be retouched according to description information determination first after receiving the congestion isolation message Message flow indicated by information is stated, the priority of message in message flow indicated by the description information is then changed.Due to described Message flow usually has congestion stream, therefore the priority for changing message in message flow indicated by the description information is usually to reduce institute State the dispatching priority of message in message flow.Similar with this node, upstream node reduces the scheduling of message in the message flow The mode of priority also may include: the content of the priority indication field of message in the modification message flow, so that with modification The corresponding dispatching priority of content afterwards, lower than dispatching priority corresponding with the content before modification;Alternatively, described in control Message enters low priority processing queue in message flow, and the dispatching priority of the low priority processing queue is lower than and the report The corresponding dispatching priority of the content of the priority indication field of Wen Liuzhong message.Not according to the recording mode of the message flow Together, upstream node change message priority in the message flow mode it is also different.
Upstream node can detect whether message flow belonging to the message is to be recorded after getting a message For the message flow for causing congestion state to change.If the message flow has been registered as the message for causing congestion state to change Stream, then change the priority of the message.Wherein, the message, which can be, is sent to the upstream node by other nodes, It can be the upstream node voluntarily to generate.
In in one implementation, upstream node can obtain the first message first;After getting the first message, on Trip can determine the first message flow belonging to first message;If in flow table in entry corresponding with the first message flow The content of congestion marking item is the first label, then changes the dispatching priority of first message.Change the first message priority Specific implementation may refer to aforementioned, details are not described herein again.
In another implementation, upstream node can obtain third message first, after getting third message, on Trip can determine third message flow belonging to the third message;If existed and the second message flow in the congestion stream flow table Corresponding entry then changes the priority of second message.The specific implementation for changing third message priority can also be with Referring to aforementioned, details are not described herein again.
Message in the message flow as indicated by the description information is it could also be possible that other nodes are sent to the upstream section Point, therefore, after receiving the congestion isolation message, if the upstream node detects indicated by the description information Message in message flow is sent to the upstream node by other nodes, then the upstream node can also be sent out to the node Congestion is sent to be isolated message, the mode of congestion isolation message and the node receive the processing mode after congestion isolation message can be with Referring to aforementioned, details are not described herein again.
Corresponding with method provided in previous embodiment, present invention also provides the corresponding network equipments.
It is the structural schematic diagram of the application network equipment one embodiment referring to Fig. 9.The network equipment can be set It on node described in previous embodiment, or is the node itself.
As shown in figure 9, the network equipment may include: processing unit 901, cause congestion state variation for detecting Message flow;It generates congestion and message is isolated, the congestion isolation message is used to change the priority of message in the message flow, described Congestion isolation message includes the description information of the message flow;Transmission unit 902, at least one node send the congestion every From message.
Optionally, the transmission unit 902, specifically for sending the congestion to the upstream node for sending the message flow Message is isolated, the congestion isolation message is specifically used for the dispatching priority for indicating that the node reduces message in the message flow Grade.
Optionally, the congestion isolation message is the message that EtherType is predefined type.
Optionally, the processing unit 901, is also used to reduce the dispatching priority of message in the message flow.
Optionally, the processing equipment, specifically for modifying in the message flow in the priority indication field of message Hold, so that dispatching priority corresponding with modified content, lower than dispatching priority corresponding with the content before modification; Alternatively, controlling message in the message flow enters low priority processing queue, the dispatching priority of the low priority processing queue Grade is lower than dispatching priority corresponding with the content of priority indication field of message in the message flow.
Optionally, the processing unit 901 is also used to the congestion mark in entry corresponding with the message flow in flow table Remember the curriculum offering of item at the first label, wherein whether congestion marking item is for recording message flow corresponding to its affiliated entry For congestion stream, first label is for indicating that message flow corresponding to its affiliated entry is congestion stream.
Optionally, the processing unit 901, if be also used to from timestamp item the recorded moment in the entry Scheduled duration in, do not receive the message of the message flow, then tag entry be set as the second label, second label is used for Indicate that message flow corresponding to its affiliated entry is non-congested stream, the timestamp item receives the report for recording last time At the time of Wen Liuzhong message.
It optionally, further include receiving unit, for receiving the first message;The processing unit 901, if being also used to flow table In the content of congestion marking item in entry corresponding with the first message flow be the first label, then change first message Dispatching priority keeps the priority of first message different from the priority of the second message, wherein second message and institute It states the first message and belongs to the first message flow, first message, which refers to, is marking the curriculum offering of congestion marking item at first The message received later, second message refers to be received before by the curriculum offering of congestion marking item at the first label Message.
Optionally, the equipment further include: receiving unit, for receiving the first message;The processing unit 901, is also used If the content of the congestion marking item in flow table in entry corresponding with the first message flow marks for first, described in change The dispatching priority of first message keeps the priority of first message different from the priority of the second message, wherein described Two messages and first message belong to the first message flow, and first message refers to by the curriculum offering of congestion marking item At the message received after the first label, second message, which refers to, is marking the curriculum offering of congestion marking item at first The message received before.
Optionally, the processing unit 901 is also used to add item corresponding with the message flow in congestion stream flow table Mesh.
Optionally, the processing unit 901, if be also used to from timestamp item the recorded moment in the entry Scheduled duration in, do not receive the message of the message flow, then delete corresponding with message flow entry, the timestamp At the time of item receives message in the message flow for recording last time.
Optionally, the equipment further include: receiving unit, for receiving third message;The processing unit 901, is also used If in there is entry corresponding with the second message flow in the congestion stream flow table, the scheduling for changing the third message is excellent First grade keeps the third message different from the priority of the 4th message, wherein the 4th message and the third message The second message flow is belonged to, the third message refers to adds entry corresponding with second message flow in congestion stream flow table The message received later, the 4th message refers to adds entry corresponding with second message flow in congestion stream flow table The message received before.
It is the structural schematic diagram of the application network equipment one embodiment referring to Figure 10.The network equipment can be set It in the aforementioned embodiment on the node, or is the node itself.
As shown in Figure 10, the network equipment may include: receiving unit 1001, for receiving congestion isolation message, institute It states in congestion isolation message comprising description information;Processing unit 1002, for changing in message flow indicated by the description information The priority of message.
Optionally, the processing unit 1002, is also used to reduce the dispatching priority of message in the message flow.
Optionally, the processing unit 1002 is also used to modify the priority indication field of message in the message flow Content, so that dispatching priority corresponding with modified content, lower than dispatching priority corresponding with the content before modification Grade;Alternatively, controlling message in the message flow enters low priority processing queue, the scheduling of the low priority processing queue is excellent First grade is lower than dispatching priority corresponding with the content of priority indication field of message in the message flow.
Optionally, the processing unit 1002 is also used to the congestion in entry corresponding with the message flow in flow table The curriculum offering of tag entry is at the first label, wherein congestion marking item, which is used to record message flow corresponding to its affiliated entry, is No is congestion stream, and first label is for indicating that message flow corresponding to its affiliated entry is congestion stream.
Optionally, the processing unit 1002, if be also used to from timestamp item the recorded moment in the entry In the scheduled duration risen, the message of the message flow is not received, then tag entry is set as the second label, and second label is used In indicating that message flow corresponding to its affiliated entry is non-congested stream, the timestamp item receives described for record last time In message flow at the time of message.
Optionally, the equipment further include: receiving unit 1001 is also used to obtain the first message;The processing unit 1002, if the content for being also used to the congestion marking item in flow table in entry corresponding with the first message flow is the first label, The dispatching priority for then changing first message keeps the priority of first message different from the priority of the second message, Wherein, second message and first message belong to the first message flow, and first message refers to by congestion marking At the message got after the first label, second message refers to be installed with the curriculum offering of item in by congestion marking item It is set to the message got before the first label.
Optionally, the processing unit 1002 is also used to add item corresponding with the message flow in congestion stream flow table Mesh.
Optionally, the processing unit 1002, if be also used to from timestamp item the recorded moment in the entry In the scheduled duration risen, the message of the message flow is not received, then deletes entry corresponding with the message flow, the time At the time of stamp item receives message in the message flow for recording last time.
Optionally, receiving unit 1001 are also used to obtain third message;The processing unit 1002, if be also used to There is entry corresponding with the second message flow in the congestion stream flow table, then changes the dispatching priority of the third message, make The third message is different from the priority of the 4th message, wherein the 4th message is belonged to the third message Second message flow, the third message refers to be obtained after addition entry corresponding with second message flow in congestion stream flow table The message got, the 4th message refers to be obtained before addition entry corresponding with second message flow in congestion stream flow table The message got.
Referring to Figure 11, the structural schematic diagram of another embodiment of the application network equipment.As shown in figure 11, the network is set Standby may include processor 1101, can also include memory 1102 and communication module 1103.
The processor 1101 is the control centre of equipment, utilizes each portion of various interfaces and connection whole equipment Point, by running or execute the software program and/or module that are stored in memory 1102, and calls and be stored in memory Data in 1102, to execute the various functions and/or processing data of equipment.The processor 1101 can be central processing unit (central processing unit, abbreviation CPU), network processing unit (network processor, abbreviation NP) or CPU With the combination of NP.Processor 1101 can further include hardware chip.Above-mentioned hardware chip can be specific integrated circuit (application-specific integrated circuit, abbreviation ASIC), programmable logic device (programmable logic device, abbreviation PLD) or combinations thereof.Above-mentioned PLD can be Complex Programmable Logic Devices (complex programmable logic device, abbreviation CPLD), field programmable gate array (field- Programmable gate array, abbreviation FPGA), Universal Array Logic (generic array logic, abbreviation GAL) or Any combination thereof.
The memory 1102 may include volatile memory (volatile memory), such as random access memory (random access memory, abbreviation RAM);Can also include nonvolatile memory (non-volatile memory), Such as flash memory (flash memory), hard disk (hard disk drive, abbreviation HDD) or solid state hard disk (solid- State drive, abbreviation SSD);Memory can also include the combination of the memory of mentioned kind.In the memory 1102 Instruction, journey logic bomb are can store, institute may be implemented by executing described program or code in the processor 1101 in equipment State the function of equipment.
The communication module 1103 can be used to implement the communication between the equipment and other equipment.It is each in the application In embodiment, the communication module 1103 be can be for providing ethernet port, allow the equipment by Ethernet with The module of other equipment communication.For example, the communication module 1103 can be network interface card when the equipment is server.
Wherein, the processor 1101 can be used for detecting the message flow for causing congestion state to change;Generate congestion isolation Message, the congestion isolation message are used to change the priority of message in the message flow, and the congestion isolation message includes institute State the description information of message flow;The congestion isolation message is set to be sent at least one node.Alternatively, the processor 1101, it can be used for according in the congestion isolation message received including description information;It changes indicated by the description information The priority of message in message flow.The function to be realized of processor 1101 or the method and step to be executed specifically can be with Referring to previous embodiment, details are not described herein again.
It should be noted that in the above-described embodiments, can wholly or partly by software, hardware, firmware or Person any combination thereof is realized.It when implemented in software, can be entirely or partly real in the form of a computer program product It is existing.The computer program product includes one or more computer instructions.Load and execute on computers the computer When program instruction, entirely or partly generate according to process described in the application previous embodiment or function.The computer can To be general purpose computer, special purpose computer, computer network or other programmable devices.The computer instruction can be deposited Storage in a computer-readable storage medium, or from a computer readable storage medium to another computer-readable storage medium Matter transmission, for example, the computer instruction can from a web-site, computer, server or data center by wired, Such as coaxial cable, optical fiber, Digital Subscriber Line (DSL), or it is wireless, such as the modes such as infrared, wireless, microwave are to another website Website, computer, server or data center are transmitted.The computer readable storage medium can be computer and can deposit Any usable medium taken either includes that the data storages such as one or more usable mediums integrated server, data center are set It is standby.The usable medium can be magnetic medium, for example, floppy disk, hard disk, tape, optical medium, for example, DVD or semiconductor Medium, such as solid state hard disk (solid state disk, SSD) etc..
Same and similar part may refer to each other between each embodiment in this specification.It is filled particularly with network is related to Set and the embodiment of equipment for, since it is substantially similar to the method embodiment, so be described relatively simple, related place ginseng See the explanation in embodiment of the method.
Above-described the application embodiment does not constitute the restriction to the application protection scope.

Claims (38)

1. a kind of message control method characterized by comprising
The message flow that detection causes congestion state to change;
It generates congestion and message is isolated, the congestion isolation message is used to change the priority of message in the message flow, described to gather around Plug isolation message includes the description information of the message flow;
The congestion is sent at least one node, and message is isolated.
2. the method as described in claim 1, which is characterized in that send the congestion at least one node and message, packet is isolated It includes:
The congestion being sent to the upstream node for sending the message flow, message being isolated, the congestion isolation message is specifically used for referring to Show that the node reduces the dispatching priority of message in the message flow.
3. method according to claim 1 or 2, which is characterized in that further include:
Reduce the dispatching priority of message in the message flow.
4. method as claimed in claim 3, which is characterized in that the dispatching priority for reducing message in the message flow includes:
The content of the priority indication field of message in the message flow is modified, so that scheduling corresponding with modified content Priority, lower than dispatching priority corresponding with the content before modification;
Alternatively,
It controls message in the message flow and enters low priority processing queue, the dispatching priority of the low priority processing queue Lower than dispatching priority corresponding with the content of priority indication field of message in the message flow.
5. method according to any one of claims 1 to 4, which is characterized in that further include:
By the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table at the first label, wherein gather around Plug tag entry is for recording whether message flow corresponding to its affiliated entry is congestion stream, and first label is for indicating its institute Belonging to message flow corresponding to entry is congestion stream.
6. the method for claim 7, which is characterized in that further include:
If not receiving the message flow in the scheduled duration from timestamp item the recorded moment in the entry Tag entry is then set as the second label by message, and second label is for indicating that message flow corresponding to its affiliated entry is non- Congestion stream, at the time of the timestamp item receives message in the message flow for recording last time.
7. the method as described in right wants 5, which is characterized in that further include:
Receive the first message;
If the content of the congestion marking item in flow table in entry corresponding with the first message flow is the first label, institute is changed The dispatching priority for stating the first message keeps the priority of first message different from the priority of the second message, wherein described Second message and first message belong to the first message flow, and first message refers to be installed in by congestion marking item It is set to the message received after the first label, second message, which refers to, is marking the curriculum offering of congestion marking item at first The message received before note.
8. method according to any one of claims 1 to 4, which is characterized in that further include:
Entry corresponding with the message flow is added in congestion stream flow table.
9. method according to claim 8, which is characterized in that further include:
If not receiving the message flow in the scheduled duration from timestamp item the recorded moment in the entry Message, then delete entry corresponding with the message flow, and the timestamp item receives the message flow for recording last time At the time of middle message.
10. the method as described in right wants 8, which is characterized in that further include:
Receive third message;
If there is entry corresponding with the second message flow in the congestion stream flow table, the scheduling of the third message is changed Priority keeps the third message different from the priority of the 4th message, wherein the 4th message and the third report Text belongs to the second message flow, and the third message refers to adds item corresponding with second message flow in congestion stream flow table The message received after mesh, the 4th message refers to be added and corresponding article of second message flow in congestion stream flow table The message received before mesh.
11. a kind of message control method characterized by comprising
It receives congestion and message is isolated, include description information in the congestion isolation message;
Change the priority of message in message flow indicated by the description information.
12. method as claimed in claim 11, which is characterized in that change message in message flow indicated by the description information Priority, comprising:
Reduce the dispatching priority of message in the message flow.
13. method as claimed in claim 12, which is characterized in that reduce the dispatching priority packet of message in the message flow It includes:
The content of the priority indication field of message in the message flow is modified, so that scheduling corresponding with modified content Priority, lower than dispatching priority corresponding with the content before modification;
Alternatively,
It controls message in the message flow and enters low priority processing queue, the dispatching priority of the low priority processing queue Lower than dispatching priority corresponding with the content of priority indication field of message in the message flow.
14. the method as described in any one of claim 11 to 13, which is characterized in that after receiving congestion isolation message, Further include:
By the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table at the first label, wherein gather around Plug tag entry is for recording whether message flow corresponding to its affiliated entry is congestion stream, and first label is for indicating its institute Belonging to message flow corresponding to entry is congestion stream.
15. method as claimed in claim 14, which is characterized in that further include:
If not receiving the message flow in the scheduled duration from timestamp item the recorded moment in the entry Tag entry is then set as the second label by message, and second label is for indicating that message flow corresponding to its affiliated entry is non- Congestion stream, at the time of the timestamp item receives message in the message flow for recording last time.
16. the method as described in right wants 14, which is characterized in that further include:
Obtain the first message;
If the content of the congestion marking item in flow table in entry corresponding with the first message flow is the first label, institute is changed The dispatching priority for stating the first message keeps the priority of first message different from the priority of the second message, wherein described Second message and first message belong to the first message flow, and first message refers to be installed in by congestion marking item It is set to the message got after the first label, second message, which refers to, is marking the curriculum offering of congestion marking item at first The message got before note.
17. the method as described in any one of claim 11 to 13, which is characterized in that after receiving congestion isolation message, Further include:
Entry corresponding with the message flow is added in congestion stream flow table.
18. method as claimed in claim 17, which is characterized in that further include:
If not receiving the message flow in the scheduled duration from timestamp item the recorded moment in the entry Message, then delete entry corresponding with the message flow, and the timestamp item receives the message flow for recording last time At the time of middle message.
19. the method as described in right wants 17, which is characterized in that further include:
Obtain third message;
If there is entry corresponding with the second message flow in the congestion stream flow table, the scheduling of the third message is changed Priority keeps the third message different from the priority of the 4th message, wherein the 4th message and the third report Text belongs to the second message flow, and the third message refers to adds item corresponding with second message flow in congestion stream flow table The message got after mesh, the 4th message refers to be added and corresponding article of second message flow in congestion stream flow table The message got before mesh.
20. a kind of network equipment characterized by comprising
Processing unit, for detecting the message flow for causing congestion state to change;It generates congestion and message is isolated, the congestion isolation disappears The priority for changing message in the message flow is ceased, the congestion isolation message includes the description information of the message flow;
Transmission unit sends the congestion at least one node and message is isolated.
21. equipment as claimed in claim 20, which is characterized in that
Message is isolated specifically for sending the congestion to the upstream node for sending the message flow in the transmission unit, described Congestion isolation message is specifically used for the dispatching priority for indicating that the node reduces message in the message flow.
22. the equipment as described in claim 20 or 21, which is characterized in that
The processing unit is also used to reduce the dispatching priority of message in the message flow.
23. equipment as claimed in claim 22, which is characterized in that
The processing equipment, specifically for modifying the content of the priority indication field of message in the message flow, so that with repairing The corresponding dispatching priority of content after changing, lower than dispatching priority corresponding with the content before modification;Alternatively, control institute State message in message flow and enter low priority processing queue, the dispatching priority of low priority processing queue be lower than with it is described The corresponding dispatching priority of the content of the priority indication field of message in message flow.
24. the equipment as described in any one of claim 20 to 23, which is characterized in that
The processing unit is also used to the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table At the first label, wherein congestion marking item is for recording whether message flow corresponding to its affiliated entry is congestion stream, and described the One label is for indicating that message flow corresponding to its affiliated entry is congestion stream.
25. equipment as claimed in claim 24, which is characterized in that
The processing unit, if be also used in the scheduled duration from timestamp item the recorded moment in the entry, The message of the message flow is not received, then tag entry is set as the second label, second label is for indicating its affiliated item Message flow corresponding to mesh is non-congested stream, and the timestamp item receives message in the message flow for recording last time Moment.
26. the equipment as described in right wants 24, which is characterized in that further include:
Receiving unit, for receiving the first message;
The processing unit, if being also used to the content of the congestion marking item in flow table in entry corresponding with the first message flow For the first label, then the dispatching priority of first message is changed, makes the priority of first message and the second message Priority is different, wherein second message and first message belong to the first message flow, and first message refers to By the curriculum offering of congestion marking item at the message that receives after the first label, second message refers to by congestion marking The curriculum offering of item is at the message received before the first label.
27. the equipment as described in any one of claim 20 to 23, which is characterized in that
The processing unit is also used to add entry corresponding with the message flow in congestion stream flow table.
28. equipment as claimed in claim 27, which is characterized in that
The processing unit, if be also used in the scheduled duration from timestamp item the recorded moment in the entry, The message of the message flow is not received, then deletes entry corresponding with the message flow, the timestamp item is for recording most At the time of once receiving message in the message flow afterwards.
29. the equipment as described in right wants 27, which is characterized in that further include:
Receiving unit, for receiving third message;
The processing unit becomes if being also used to have entry corresponding with the second message flow in the congestion stream flow table The dispatching priority of the third message keeps the third message different from the priority of the 4th message, wherein described 4th message and the third message belong to the second message flow, and the third message refers to addition and institute in congestion stream flow table The message received after the corresponding entry of the second message flow is stated, the 4th message refers to addition and institute in congestion stream flow table State the message received before the corresponding entry of the second message flow.
30. a kind of network equipment characterized by comprising
Receiving unit includes description information in the congestion isolation message for receiving congestion isolation message;
Processing unit, for changing the priority of message in message flow indicated by the description information.
31. equipment as claimed in claim 30, which is characterized in that
The processing unit is also used to reduce the dispatching priority of message in the message flow.
32. equipment as claimed in claim 31, which is characterized in that
The processing unit is also used to modify the content of the priority indication field of message in the message flow, so that with modification The corresponding dispatching priority of content afterwards, lower than dispatching priority corresponding with the content before modification;Alternatively, described in control Message enters low priority processing queue in message flow, and the dispatching priority of the low priority processing queue is lower than and the report The corresponding dispatching priority of the content of the priority indication field of Wen Liuzhong message.
33. the equipment as described in any one of claim 30 to 32, which is characterized in that
The processing unit is also used to the curriculum offering of the congestion marking item in entry corresponding with the message flow in flow table At the first label, wherein congestion marking item is for recording whether message flow corresponding to its affiliated entry is congestion stream, and described the One label is for indicating that message flow corresponding to its affiliated entry is congestion stream.
34. equipment as claimed in claim 33, which is characterized in that
The processing unit, if be also used in the scheduled duration from timestamp item the recorded moment in the entry, The message of the message flow is not received, then tag entry is set as the second label, second label is for indicating its affiliated item Message flow corresponding to mesh is non-congested stream, and the timestamp item receives message in the message flow for recording last time Moment.
35. the equipment as described in right wants 33, which is characterized in that further include:
Receiving unit is also used to obtain the first message;
The processing unit, if being also used to the content of the congestion marking item in flow table in entry corresponding with the first message flow For the first label, then the dispatching priority of first message is changed, makes the priority of first message and the second message Priority is different, wherein second message and first message belong to the first message flow, and first message refers to By the curriculum offering of congestion marking item at the message that gets after the first label, second message refers to by congestion marking The curriculum offering of item is at the message got before the first label.
36. the equipment as described in any one of claim 32 to 34, which is characterized in that
The processing unit is also used to add entry corresponding with the message flow in congestion stream flow table.
37. equipment as claimed in claim 36, which is characterized in that
The processing unit, if be also used in the scheduled duration from timestamp item the recorded moment in the entry, The message of the message flow is not received, then deletes entry corresponding with the message flow, the timestamp item is for recording most At the time of once receiving message in the message flow afterwards.
38. the equipment as described in right wants 36, which is characterized in that further include:
Receiving unit is also used to obtain third message;
The processing unit becomes if being also used to have entry corresponding with the second message flow in the congestion stream flow table The dispatching priority of the third message keeps the third message different from the priority of the 4th message, wherein described 4th message and the third message belong to the second message flow, and the third message refers to addition and institute in congestion stream flow table The message got after the corresponding entry of the second message flow is stated, the 4th message refers to addition and institute in congestion stream flow table State the message got before the corresponding entry of the second message flow.
CN201710713089.XA 2017-08-18 2017-08-18 Message control method and network device Active CN109412964B (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN201710713089.XA CN109412964B (en) 2017-08-18 2017-08-18 Message control method and network device
PCT/CN2018/093298 WO2019033857A1 (en) 2017-08-18 2018-06-28 Packet control method and network device
JP2020509427A JP6938766B2 (en) 2017-08-18 2018-06-28 Packet control method and network equipment
EP23201129.6A EP4325803A3 (en) 2017-08-18 2018-06-28 Packet control method and network apparatus
KR1020207007821A KR102317523B1 (en) 2017-08-18 2018-06-28 Packet control method and network device
EP18845599.2A EP3661137B1 (en) 2017-08-18 2018-06-28 Packet control method and network device
US16/793,136 US11190449B2 (en) 2017-08-18 2020-02-18 Packet control method and network apparatus
US17/521,664 US11646967B2 (en) 2017-08-18 2021-11-08 Packet control method and network apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710713089.XA CN109412964B (en) 2017-08-18 2017-08-18 Message control method and network device

Publications (2)

Publication Number Publication Date
CN109412964A true CN109412964A (en) 2019-03-01
CN109412964B CN109412964B (en) 2022-04-29

Family

ID=65361997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710713089.XA Active CN109412964B (en) 2017-08-18 2017-08-18 Message control method and network device

Country Status (6)

Country Link
US (2) US11190449B2 (en)
EP (2) EP4325803A3 (en)
JP (1) JP6938766B2 (en)
KR (1) KR102317523B1 (en)
CN (1) CN109412964B (en)
WO (1) WO2019033857A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111131061A (en) * 2019-12-30 2020-05-08 中国联合网络通信集团有限公司 Data transmission method and network equipment
CN111526097A (en) * 2020-07-03 2020-08-11 新华三半导体技术有限公司 Message scheduling method, device and network chip
CN111669336A (en) * 2019-03-08 2020-09-15 慧与发展有限责任合伙企业 Low cost congestion isolation for lossless ethernet
WO2020244422A1 (en) * 2019-06-05 2020-12-10 中兴通讯股份有限公司 Queue congestion control method, apparatus, device and storage medium
WO2021114793A1 (en) * 2019-12-09 2021-06-17 华为技术有限公司 Data forwarding method, data buffering method, device, and related apparatus
CN113726671A (en) * 2020-05-26 2021-11-30 华为技术有限公司 Network congestion control method and related product
WO2022028342A1 (en) * 2020-08-05 2022-02-10 华为技术有限公司 Method for processing congestion flow and device
WO2022247257A1 (en) * 2021-05-25 2022-12-01 华为技术有限公司 Pfc storm detection and processing method

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11005684B2 (en) 2017-10-02 2021-05-11 Vmware, Inc. Creating virtual networks spanning multiple public clouds
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
CN112187556B (en) * 2019-07-01 2023-12-08 华为技术有限公司 Congestion measurement method and network node
US11212238B2 (en) 2019-08-27 2021-12-28 Vmware, Inc. Providing recommendations for implementing virtual networks
US11044190B2 (en) 2019-10-28 2021-06-22 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11438789B2 (en) 2020-01-24 2022-09-06 Vmware, Inc. Computing and using different path quality metrics for different service classes
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11363124B2 (en) 2020-07-30 2022-06-14 Vmware, Inc. Zero copy socket splicing
US11444865B2 (en) 2020-11-17 2022-09-13 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
KR102600204B1 (en) 2020-12-01 2023-11-10 한국전자통신연구원 Method and apparatus for controlling congestion based on Gen-Z interface
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
CN116783874A (en) 2021-01-18 2023-09-19 Vm维尔股份有限公司 Network aware load balancing
US11637768B2 (en) 2021-05-03 2023-04-25 Vmware, Inc. On demand routing mesh for routing packets through SD-WAN edge forwarding nodes in an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
WO2023105615A1 (en) * 2021-12-07 2023-06-15 日本電信電話株式会社 Computing system
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999000949A1 (en) * 1997-06-30 1999-01-07 Sun Microsystems, Inc. A system and method for a quality of service in a multi-layer network element
JP2007067885A (en) * 2005-08-31 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> Data frame processor and method therefor
CN101299716A (en) * 2008-04-25 2008-11-05 华为技术有限公司 Method, apparatus and system for transmitting service data
CN101325803A (en) * 2007-07-12 2008-12-17 中兴通讯股份有限公司 Method for selecting and assigning encoding and decoding
US20100177637A1 (en) * 2001-07-23 2010-07-15 Broadcom Corporation Flow based congestion control
CN101997766A (en) * 2009-08-31 2011-03-30 中兴通讯股份有限公司 Method and system for limiting speed of token bucket based on priority
CN102123444A (en) * 2010-12-31 2011-07-13 华为技术有限公司 Method, equipment and system for sharing transmission bandwidth among different systems
US20140016461A1 (en) * 2011-08-08 2014-01-16 Alaxala Networks Corporation Packet relay device and method
CN103997465A (en) * 2014-05-27 2014-08-20 华为技术有限公司 Method and device for generating CNM
CN104661260A (en) * 2015-01-20 2015-05-27 中南大学 Wireless Mesh intelligent power grid routing mechanism with QoS perceiving and loading balancing
US20150334024A1 (en) * 2012-04-20 2015-11-19 Jeffrey Clifford Mogul Controlling Data Rates of Data Flows Based on Information Indicating Congestion

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3556495B2 (en) * 1998-12-15 2004-08-18 株式会社東芝 Packet switch and packet switching method
JP3639556B2 (en) * 2001-12-12 2005-04-20 富士通株式会社 VoIP network congestion control system
RU2407246C2 (en) * 2005-12-02 2010-12-20 Телефонактиеболагет Л М Эрикссон (Пабл) Method and device to dedicate bandwidth in wireless communication system
CN102025617B (en) * 2010-11-26 2015-04-01 中兴通讯股份有限公司 Method and device for controlling congestion of Ethernet
US8717893B2 (en) * 2010-11-29 2014-05-06 Verizon Patent And Licensing Inc. Network stabilizer
US9438527B2 (en) * 2012-05-24 2016-09-06 Marvell World Trade Ltd. Flexible queues in a network switch
US9197541B2 (en) * 2012-11-15 2015-11-24 Compass Electro Optical Systems Ltd. Router with passive interconnect and distributed switchless switching
US10003544B2 (en) * 2014-12-11 2018-06-19 Futurewei Technologies, Inc. Method and apparatus for priority flow and congestion control in ethernet network
US10498654B2 (en) * 2015-12-28 2019-12-03 Amazon Technologies, Inc. Multi-path transport design

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999000949A1 (en) * 1997-06-30 1999-01-07 Sun Microsystems, Inc. A system and method for a quality of service in a multi-layer network element
US20100177637A1 (en) * 2001-07-23 2010-07-15 Broadcom Corporation Flow based congestion control
JP2007067885A (en) * 2005-08-31 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> Data frame processor and method therefor
CN101325803A (en) * 2007-07-12 2008-12-17 中兴通讯股份有限公司 Method for selecting and assigning encoding and decoding
CN101299716A (en) * 2008-04-25 2008-11-05 华为技术有限公司 Method, apparatus and system for transmitting service data
CN101997766A (en) * 2009-08-31 2011-03-30 中兴通讯股份有限公司 Method and system for limiting speed of token bucket based on priority
CN102123444A (en) * 2010-12-31 2011-07-13 华为技术有限公司 Method, equipment and system for sharing transmission bandwidth among different systems
US20140016461A1 (en) * 2011-08-08 2014-01-16 Alaxala Networks Corporation Packet relay device and method
US20150334024A1 (en) * 2012-04-20 2015-11-19 Jeffrey Clifford Mogul Controlling Data Rates of Data Flows Based on Information Indicating Congestion
CN103997465A (en) * 2014-05-27 2014-08-20 华为技术有限公司 Method and device for generating CNM
CN104661260A (en) * 2015-01-20 2015-05-27 中南大学 Wireless Mesh intelligent power grid routing mechanism with QoS perceiving and loading balancing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LU YUANWEI 等: "One more queue is enough: Minimizing flow completion tiome with explicit priority notification", 《IEEE CONFERENCE ON COMPUTER COMMUNICATION》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111669336A (en) * 2019-03-08 2020-09-15 慧与发展有限责任合伙企业 Low cost congestion isolation for lossless ethernet
WO2020244422A1 (en) * 2019-06-05 2020-12-10 中兴通讯股份有限公司 Queue congestion control method, apparatus, device and storage medium
WO2021114793A1 (en) * 2019-12-09 2021-06-17 华为技术有限公司 Data forwarding method, data buffering method, device, and related apparatus
CN111131061A (en) * 2019-12-30 2020-05-08 中国联合网络通信集团有限公司 Data transmission method and network equipment
CN113726671A (en) * 2020-05-26 2021-11-30 华为技术有限公司 Network congestion control method and related product
CN111526097A (en) * 2020-07-03 2020-08-11 新华三半导体技术有限公司 Message scheduling method, device and network chip
CN111526097B (en) * 2020-07-03 2020-10-30 新华三半导体技术有限公司 Message scheduling method, device and network chip
WO2022028342A1 (en) * 2020-08-05 2022-02-10 华为技术有限公司 Method for processing congestion flow and device
WO2022247257A1 (en) * 2021-05-25 2022-12-01 华为技术有限公司 Pfc storm detection and processing method

Also Published As

Publication number Publication date
EP4325803A3 (en) 2024-04-10
EP3661137B1 (en) 2023-10-04
EP3661137A1 (en) 2020-06-03
KR20200037405A (en) 2020-04-08
US11190449B2 (en) 2021-11-30
US20200186471A1 (en) 2020-06-11
WO2019033857A1 (en) 2019-02-21
KR102317523B1 (en) 2021-10-25
US20220070098A1 (en) 2022-03-03
JP2020532194A (en) 2020-11-05
US11646967B2 (en) 2023-05-09
EP4325803A2 (en) 2024-02-21
EP3661137A4 (en) 2020-06-10
JP6938766B2 (en) 2021-09-22
CN109412964B (en) 2022-04-29

Similar Documents

Publication Publication Date Title
CN109412964A (en) Message control method and network equipment
US8705363B2 (en) Packet scheduling method and apparatus
US9077466B2 (en) Methods and apparatus for transmission of groups of cells via a switch fabric
US8743691B2 (en) Priority aware MAC flow control
CN110061923B (en) Flow control method, flow control device, switch, sending end server and medium
CN111800351B (en) Congestion notification packet generation by a switch
CN105556916B (en) The information statistical method and device of network flow
US9160673B1 (en) Link selection in a bonding protocol
US20100238804A1 (en) Flow control for multi-hop networks
CN112583636A (en) Construction method of government affair network slice, electronic device and storage medium
CN107547442A (en) Data transfer buffer queue distribution method and device
US20100040060A1 (en) Fast emulation of mac table flushing for elan unicasts
US9548929B2 (en) Frame transfer apparatus and frame transfer method
WO2021098425A1 (en) Qos policy method, device, and computing device for service configuration
JP2014022761A (en) Network system, information relay device, and packet distribution method
CN102480471B (en) Method for realizing QoS (quality of service) processing in monitoring RRPP (rapid ring protection protocol) ring and network node
WO2021120764A1 (en) Method and apparatus for sending and receiving data
WO2021026740A1 (en) Traffic balancing method, network device and electronic device
WO2022007658A1 (en) Cache configuration method and switching device
WO2023155802A1 (en) Data scheduling method, apparatus, device, and storage medium
WO2020238875A1 (en) Method and apparatus for determining port attribute
WO2020143509A1 (en) Method for transmitting data and network device
WO2017211211A1 (en) Packet forwarding method and device
US9584428B1 (en) Apparatus, system, and method for increasing scheduling efficiency in network devices
CN117041166A (en) Congestion control method and device, switch and computer readable storage medium

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