0% found this document useful (0 votes)
117 views11 pages

ECN Codepoints in TCP Header: CWR: Congestion Window Reduced Flag ECE: ECN-Echo Flag

The document summarizes ECN (Explicit Congestion Notification) codepoints in TCP and IP headers that allow end-to-end notification of network congestion without dropping packets. It outlines 4 events: 1) ECN capability negotiation during connection establishment. 2) An ECN-capable router sets the CE codepoint to notify congestion. 3) The receiver echoes this by setting the ECE codepoint. 4) The sender confirms reception by setting CWR, and reduces its congestion window. This allows congestion control without packet loss.

Uploaded by

rahul kapur
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
117 views11 pages

ECN Codepoints in TCP Header: CWR: Congestion Window Reduced Flag ECE: ECN-Echo Flag

The document summarizes ECN (Explicit Congestion Notification) codepoints in TCP and IP headers that allow end-to-end notification of network congestion without dropping packets. It outlines 4 events: 1) ECN capability negotiation during connection establishment. 2) An ECN-capable router sets the CE codepoint to notify congestion. 3) The receiver echoes this by setting the ECE codepoint. 4) The sender confirms reception by setting CWR, and reduces its congestion window. This allows congestion control without packet loss.

Uploaded by

rahul kapur
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 11

ECN Codepoints in TCP Header

ReservedC
Reserved E U A P R S F
W C R C S S Y I
4 bits
6 bits R E G K H T N N

Source port address Destination port address


16 bits 16 bits CWR: Congestion
Sequence Number Window Reduced Flag
32 bits ECE: ECN-Echo Flag
Acknowledgement Number
32 bits
HLEN Reserved U A P R S F Window size
RCSSYI
4 bits 6 bits GKHT NN 16 bits
Checksum Urgent pointer
16 bits 16 bits

Options (if any)

Data
1
ECN Codepoints in TCP Header
ECN Field
CWR: Congestion Window Reduced
CWR ECE
ECE: ECN Echo

2 bits = 4 ECN Codepoints

CWR ECE Names for the ECN bits Sent from To


0 0 Non-ECN Setup Any Any

0 1 ECN Echo Receiver Sender

1 0 Congestion Window Reduced Sender Receiver

1 1 ECN Setup Sender Receiver


2
ECN Negotitation Mechanism
Sender Receiver
ECN-Se
tup SY
N
CWR=
1 ECE=1
SYN=1

p SY N-ACK
e tu
ECN-S SYN=1
ACK=1
0 ECE=1
CWR=

ACK
ACK=1

3
ECN Codepoints in IP Header

Differentiated Services Codepoints Reserved


ECN
6 bits 2
2 bits
bits

VER HLEN DS Total Length


4 bits 4 bits 8 bits 16 bits
Identification Flags Fragmentation offset
16 bits 3 bits 13 bits
Time to Live Protocol Header Checksum
8 bits 8 bits 16 bits
Source IP address
32 bits
Destination IP address
32 bits

Options (if any)

Data

4
ECN Codepoints in IP Header
ECN Field
ECT: ECN Capable Transport
ECT CE
CE: Congestion Experienced

2 bits = 4 ECN Codepoints

ECT CE Names for the ECN bits Sent from To


0 0 Not-ECT (Not ECN Capable Transport) Any Any

0 1 ECT(1) (ECN Capable Transport (1)) Sender Receiver

1 0 ECT(0) (ECN Capable Transport (0)) Sender Receiver

1 1 CE (Congestion Experienced) Router Receiver


5
Event-1

ECN Capability negotiated during Connection Establishment

N-PDU

ECT set in IP
header
ECN Capable Sender ECN Capable Receiver

ECN Capable Router


ECN Codepoints ECT bit value CE bit value ECN Codepoints CWR bit value ECE bit value
Non-ECT 0 0 Not ECN-set up 0 0
ECT(1) 0 1 ECN-Echo 0 1
ECT(0) 1 0 CWR 1 0
CE 1 1 6
ECN-set up 1 1
Event-2

Congestion
building
up? Set
CE !!!

N-PDU N-PDU

ECT set in IP CE set in IP header


header
ECN Capable Sender ECN Capable Receiver

ECN Capable Router

ECN Codepoints ECT bit value CE bit value ECN Codepoints CWR bit value ECE bit value
Non-ECT 0 0 Not ECN-set up 0 0
ECT(1) 0 1 ECN-Echo 0 1
ECT(0) 1 0 CWR 1 0
CE 1 1 7
ECN-set up 1 1
Event-3

Congestion ??
Let me inform
the TCP sender

CE set in IP header
N-PDU N-PDU

ECT set in IP
header N-PDU

ECN Capable Sender ECN Capable Receiver


ECE set in TCP
header
ECN Capable Router
ECN Codepoints ECT bit value CE bit value ECN Codepoints CWR bit value ECE bit value
Non-ECT 0 0 Not ECN-set up 0 0
ECT(1) 0 1 ECN-Echo 0 1
ECT(0) 1 0 CWR 1 0
CE 1 1 8
ECN-set up 1 1
Event-4

I must keep
Congestion ? sending ECE
Reduce cwnd till sender
by half confirms

ECT set in IP CE set in IP header


header N-PDU N-PDU

N-PDU N-PDU

ECN Capable Sender ECN Capable Receiver


ECE set in TCP ECE set in TCP
header header
ECN Capable Router
ECN Codepoints ECT bit value CE bit value ECN Codepoints CWR bit value ECE bit value
Non-ECT 0 0 Not ECN-set up 0 0
ECT(1) 0 1 ECN-Echo 0 1
ECT(0) 1 0 CWR 1 0
CE 1 1 9
ECN-set up 1 1
Event-5

I must inform
Receiver that I
have received
ECE !!!

N-PDU

CWR set in TCP header

ECN Capable Sender ECN Capable Receiver

ECN Capable Router


ECN Codepoints ECT bit value CE bit value ECN Codepoints CWR bit value ECE bit value
Non-ECT 0 0 Not ECN-set up 0 0
ECT(1) 0 1 ECN-Echo 0 1
ECT(0) 1 0 CWR 1 0
CE 1 1 10
ECN-set up 1 1
Event-6
Sender has
reduced cwnd,
stop setting ECE
flag

CWR set in TCP header


N-PDU N-PDU

CWR set in TCP header


N-PDU

ECN Capable Sender ECN Capable Receiver


ECE set in TCP
header
ECN Capable Router
ECN Codepoints ECT bit value CE bit value ECN Codepoints CWR bit value ECE bit value
Non-ECT 0 0 Not ECN-set up 0 0
ECT(1) 0 1 ECN-Echo 0 1
ECT(0) 1 0 CWR 1 0
CE 1 1 11
ECN-set up 1 1

You might also like