Explicit Congestion Notification (ECN)

Weighted Random Early Detection (WRED) drops packets based on the average length exceeding a specific threshold value to indicate congestion. Explicit Congestion Notification (ECN) is an extension to WRED that marks the drop-eligible packets, instead of dropping, using the same criteria of minimum threshold, maximum threshold, and drop probability. WRED Behavior with and without ECN shows the WRED behavior without ECN and with ECN.
Click to expand in new window
WRED Behavior with and without ECN

The current WRED implementation prevents tail dropping of packets that are queued in the output queue by selectively dropping packets early. This avoids dropping of all packets at once when congestion occurs. With ECN functionality, routers are no longer limited to packet drops to indicate congestion. Routers can instead set the CE (Congestion Experienced) codepoint in the IP header of packets from ECN-capable transport entities. The transport endpoints use the ECE and CWR bits of the TCP header to mitigate congestion.

RFC 3168 states that the two-bit ECN field comprises an ECT bit and a CE bit that are used to implement ECN. The ECT bit and the CE bit can be combined into four possible ECN field values 00 to 11. The first number is ECT bit and the second number is the CE bit. ENC Field Values shows the possible combination.

Table 1. ENC Field Values
ECT Bit Value CE Bit Value Combined Inference
0 0

Not ECN capable.

Packet is not using ECN.

0 1

Endpoints are ECN capable.

Data senders use these values to indicate that the endpoints are ECN capable. Routers treat the two values identically.

1 0
1 1 Congestion experienced.

ECN Processing indicates the processing applied on incoming packets that are identified as drop-eligible in various ECN scenarios.

Table 2. ECN Processing
Incoming ECN Bits ECN Configuration Action if Packet Is Drop-Eligible Outgoing ECN bits
00 (Non-ECT) On/Off Drop. N/A (packet dropped).
ECT (01 or 10) Off Drop. N/A (packet dropped).
ECT (01 or 10) On Not dropped. CE bit is marked. 11 indicates "Congestion Experienced".
CE (11) Off Drop. N/A (packet dropped).
CE (11) On Not dropped. Packet already marked, just forward. 11 indicates "Congestion Experienced".

To configure ECN capability as on or off, use the following command:

configure qosprofile egress qp_num wred ecn [on | off] ports [port_list | all]

To view ECN information, use the following commands:

show wredprofile {ports [port_list | all]}

show ports port_list wred ecn {no-refresh | refresh}

To clear the ECN counters, use the following commands:

clear counters wred ecn

Supported Platforms

This feature is available on ExtremeSwitching X460-G2, X670-G2, X465, X590, X690, X695, X870 series switches.

Limitations

  • TCP yellow traffic color is not supported.
  • ECN over VXLAN is not supported. Any tunneling protocol implemented with double headers is not supported.
  • Except for on the ExtremeSwitching X870 series switches, the ECN counters showing the number of marked packets is not available yet, so those appear as 0.
  • This implementation is limited to ECN pass-through. End points having TCP/DCTCP/RoCEv2 capabilities can use the ECN services.