What Is ECN?

What Is ECN

Date First Published: 8th May 2022

Topic: Computer Networking

Subtopic: Internet Protocols

Article Type: Computer Terms & Definitions

Difficulty: Advanced

Difficulty Level: 10/10

Learn more about what ECN is in this article.

Short for Explicit Congestion Notification, ECN is an optional feature used for enabling end-to-end notification of network congestion without discarding data packets. It is an internet-layer protocol that extends the Internet Protocol and the Transmission Control Protocol. When the network infrastructure supports it, ECN can be used between two devices. ECN was defined in RFC 3168 in 2001.

How Does ECN Work?

TCP/IP networks normally indicate network congestion by discarding data packets. ECN-aware routers work in a different way and indicate congestion by setting a mark in the IP header instead of discarding the data packet. The receiver of the packet then sends a congestion indication to the sender, which slows down its data transfer rate like it had detected a discarded packet.

ECN With IP

In the IPv4 or IPv6 header, the two least significant bits are used in the DiffServ field to convert four different devices.

  • 00: Non ECN-Capable Transport — Non-ECT
  • 10: ECN Capable Transport — ECT(0)
  • 01: ECN Capable Transport — ECT(1)
  • 11: Congestion Encountered — CE
Note: Info Icon

Data packets are marked with ECT(0) or ECT(1) when both devices support ECN. The purpose of this is to notify the receiving device of network congestion.

The transport layer protocol handles this congestion indication at the receiving device, and it must be sent back to the transmitting node in order to notify it to reduce its data transfer rate. In the event of a packet that travels through an Active Queue Management (AQM) queue that is experiencing congestion and the associated router supports ECN, it might modify the codepoint to CE instead of discarding the data packet.

TCP/IP Protocol
Application layer BGPDHCPDNSFTPHTTPIMAPLDAPMGCPNNTPNTPOSPFPOPPTPONC/RPCRTPRTSPRIPSIPSMTPSNMPSSHTelnetXMPP
Transport layer TCPUDPDCCPSCTPRSVPQUIC
Internet layer IPICMPNDPECNIGMP.
Link layer TunnelsPPPMAC


Feedback

  • Is there anything that you disagree with on this page?
  • Are there any spelling, grammatical, or punctuation errors on this page?
  • Are there any broken links or design errors on this page?

If so, it is important that you tell me as soon as possible on this page.