![Page 1: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/1.jpg)
Evaluating the Impact of Path Brokenness on TCP
Korian Edeline, Benoit Donnet
![Page 2: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/2.jpg)
INTERNET ARCHITECTURAL GUIDELINES
UNIFORM OPERATIONS
“…in an ideal situation there should be one, and only one, protocol at the Internet
level[…]but there can be a need for gradual transition from one
version of IP to another…”
END-TO-END
“…the community believes that the goal is connectivity, the tool is the Internet Protocol, and the intelligence is end to end rather than hidden in the
network.” NO GLOBAL CONTROL
“…nobody owns the Internet, there is no centralized control[…]. Its
evolution depends on rough consensus about technical
proposals, and on running code.”
“… there is no architecture, but only a tradition, which was not written down for the first 25 years …”
RFC 1958
![Page 3: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/3.jpg)
THE END-TO-END PRINCIPLEEnd-to-End Arguments in System Design, Saltzer, Reed & Clark, 1981
Extensibility
Dumb Networks vs. Intelligent Endpoints
Flexibility
![Page 4: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/4.jpg)
THE END-TO-END PRINCIPLEEnd-to-End Arguments in System Design, Saltzer, Reed & Clark, 1981
Extensibility
Dumb Networks vs. Intelligent Endpoints
Flexibility
![Page 5: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/5.jpg)
THE END-TO-END PRINCIPLEEnd-to-End Arguments in System Design, Saltzer, Reed & Clark, 1981
Extensibility
Dumb Networks vs. Intelligent Endpoints
Flexibility
![Page 6: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/6.jpg)
THE END-TO-END PRINCIPLEEnd-to-End Arguments in System Design, Saltzer, Reed & Clark, 1981
Extensibility
Dumb Networks vs. Intelligent Endpoints
Flexibility
RFC 3234
A middlebox is a computer networking device that transforms, inspects, filters, or otherwise manipulates traffic for purposes other than packet forwarding.
![Page 7: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/7.jpg)
THE END-TO-END PRINCIPLEEnd-to-End Arguments in System Design, Saltzer, Reed & Clark, 1981
Extensibility
Dumb Networks vs. Intelligent Endpoints
Flexibility
RFC 3234
A middlebox is a computer networking device that transforms, inspects, filters, or otherwise manipulates traffic for purposes other than packet forwarding.
Ossificationof the network infrastructure
InnovationDeployment of new TCP features and new transport protocols is crippled
by middleboxes
![Page 8: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/8.jpg)
BACKGROUNDThe Middlebox Problem
![Page 9: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/9.jpg)
FROM PATH CONDITIONS … A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 10: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/10.jpg)
FROM PATH CONDITIONS …
feature.blocked
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 11: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/11.jpg)
FROM PATH CONDITIONS …
feature.blocked
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 12: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/12.jpg)
FROM PATH CONDITIONS …
feature.blocked feature.removed
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 13: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/13.jpg)
FROM PATH CONDITIONS …
feature.blocked feature.removed
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 14: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/14.jpg)
FROM PATH CONDITIONS …
feature.blocked feature.removed feature.changed
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 15: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/15.jpg)
FROM PATH CONDITIONS …
feature.blocked feature.removed feature.changed
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
![Page 16: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/16.jpg)
FROM PATH CONDITIONS …
feature.blocked feature.removed feature.changed
A path condition is a functional description of
an action performed by an intermediary device on a packet, on a given path.
SECURITY PERFORMANCE
WHY?
PACKET MARKING
![Page 17: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/17.jpg)
… TO PATH IMPAIRMENTS A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
![Page 18: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/18.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
Feature not supportedTCP Normalization
![Page 19: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/19.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
![Page 20: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/20.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
DISABLED FEATURE
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
TCP Normalization
![Page 21: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/21.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
DISABLED FEATURE
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
![Page 22: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/22.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
DISABLED FEATURE
NEGOTIATIONDISRUPTION
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
MalconfigurationRate Limiting
![Page 23: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/23.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
DISABLED FEATURE
NEGOTIATIONDISRUPTION
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
![Page 24: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/24.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
DISABLED FEATURE
NEGOTIATIONDISRUPTION
TRAFFICDISRUPTION
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
Fix TCP ISN Randomness
![Page 25: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/25.jpg)
… TO PATH IMPAIRMENTS
BLOCKEDTRAFFIC
DISABLED FEATURE
NEGOTIATIONDISRUPTION
TRAFFICDISRUPTION
A path impairment is a middlebox-induced
connectivity issue, a decrease, or shortfall of Quality-of-Service (QoS),
on a given path
![Page 26: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/26.jpg)
Path impairments in the wild
A bottom-up investigation of the transport-layer ossification, K.Edeline and B.Donnet, in Proc. IFIP Network Traffic Measurement and Analysis Conference (TMA), 2019
2% of deployed network devices are TCP/IP MBs
38.9% of networks paths are crossing middleboxes
6.5% of network paths are affected by TCP-breaking MBs
![Page 27: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/27.jpg)
EXPERIMENTATIONPath Impairments Investigation
![Page 28: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/28.jpg)
mmb: A VPP MIDDLEBOX
https://github.com/mami-project/vpp-mb
![Page 29: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/29.jpg)
mmb: A VPP MIDDLEBOX VPP (Vector Packet Processing) is a high-performance kernel -
bypass framework developped by Cisco.
https://github.com/mami-project/vpp-mb
![Page 30: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/30.jpg)
mmb: A VPP MIDDLEBOX
Flexible Intuitive Fast
VPP (Vector Packet Processing) is a high-performance kernel -
bypass framework developped by Cisco.
https://github.com/mami-project/vpp-mb
![Page 31: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/31.jpg)
mmb: A VPP MIDDLEBOX VPP (Vector Packet Processing) is a high-performance kernel -
bypass framework developped by Cisco.
node-based processing path
mmb software architecture
CLI syntax
https://github.com/mami-project/vpp-mb
Flexible Intuitive Fast
![Page 32: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/32.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
![Page 33: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/33.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
How do path-impairing middleboxes affect the Quality-of-Service of TCP ?
![Page 34: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/34.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
Direct Indirect
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
How do path-impairing middleboxes affect the Quality-of-Service of TCP ?
![Page 35: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/35.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
Direct Indirect
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
How do path-impairing middleboxes affect the Quality-of-Service of TCP ?
LFNs Delay Loss Congestion
![Page 36: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/36.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Path impairments scenarios without congestion:
ECN IP bits
Not-ECT 00
ECT(1) 01
ECT(0) 10
CE 11
![Page 37: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/37.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Disabled ECNip.ecn.changed.11 with fallback mechanism
Blocked ECNtcp.ecn.blocked
Broken ECNip.ecn.changed.11
fallback-proof
Path impairments scenarios without congestion:
ECN IP bits
Not-ECT 00
ECT(1) 01
ECT(0) 10
CE 11
![Page 38: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/38.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Disabled ECNip.ecn.changed.11 with fallback mechanism
Blocked ECNtcp.ecn.blocked
Broken ECNip.ecn.changed.11
fallback-proof
Path impairments scenarios without congestion:
![Page 39: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/39.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Disabled ECNip.ecn.changed.11 with fallback mechanism
Blocked ECNtcp.ecn.blocked
Broken ECNip.ecn.changed.11
fallback-proof
Path impairments scenarios without congestion:
Enabled ECN Disabled ECN
Path impairments scenarios with congestion:
![Page 40: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/40.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Disabled ECNip.ecn.changed.11 with fallback mechanism
Blocked ECNtcp.ecn.blocked
Broken ECNip.ecn.changed.11
fallback-proof
Path impairments scenarios without congestion:
Enabled ECN Disabled ECN
Path impairments scenarios with congestion:
![Page 41: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/41.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Broken ECN
Broken ECN slows down the connection to 1 MSS / RTT
Disabling ECN
Disabling ECN per default is not the solution
Disabled ECNip.ecn.changed.11 with fallback mechanism
Blocked ECNtcp.ecn.blocked
Broken ECNip.ecn.changed.11
fallback-proof
Path impairments scenarios without congestion:
Enabled ECN Disabled ECN
Path impairments scenarios with congestion:
![Page 42: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/42.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
![Page 43: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/43.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Enabled SACKSACK-enabled flows
Disabled SACKtcp.opt.sackok.removed
Broken SACKtcp.seqnum.changed
Path impairments scenarios with artificial loss:
![Page 44: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/44.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Path impairments scenarios with artificial loss:
Enabled SACKSACK-enabled flows
Disabled SACKtcp.opt.sackok.removed
Broken SACKtcp.seqnum.changed
![Page 45: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/45.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Path impairments scenarios with artificial loss:
Enabled SACKSACK-enabled flows
Disabled SACKtcp.opt.sackok.removed
Broken SACKtcp.seqnum.changed
![Page 46: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/46.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Broken SACK
Broken SACK stalls the connection when receiver generates a SACK block
Disabled SACK
Disabled SACK reduce TCP throughput for loss rates greater
than 0.09%
Path impairments scenarios with artificial loss:
Enabled SACKSACK-enabled flows
Disabled SACKtcp.opt.sackok.removed
Broken SACKtcp.seqnum.changed
![Page 47: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/47.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
TCP Receive Window : [0 ; 216-1] * 2WScale
![Page 48: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/48.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Clipped WScale
tcp.opt.wscale.changed
Path impairments scenarios with artificial delay:
Stripped WScale
tcp.opt.wscale.removed
TCP Receive Window : [0 ; 216-1] * 2WScale
![Page 49: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/49.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Clipped WScale
tcp.opt.wscale.changed
Path impairments scenarios with artificial delay:
Stripped WScale
tcp.opt.wscale.removed
TCP Receive Window : [0 ; 216-1] * 2WScale
![Page 50: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/50.jpg)
IMPACT OF PATH IMPAIRMENTS ON TCP
ECN
Explicit Congestion Notification
SACK
Selective Acknowledgment
WScale
Window Scaling Parameter
Clipped WScale
tcp.opt.wscale.changed
Path impairments scenarios with artificial delay:
Stripped WScale
tcp.opt.wscale.removed
Wscale Impairment
Clipped and Stripped Wscale have a direct impact
on maximum achievable throughput
In the future
Higher throughputs might become a problem as Higher
BDPs are not supported by TCP
TCP Receive Window : [0 ; 216-1] * 2WScale
![Page 51: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/51.jpg)
CONCLUSION
Lessons Learned
![Page 52: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/52.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
![Page 53: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/53.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
Middleboxes areproblematic to
existing TCP features
![Page 54: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/54.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
Middleboxes areproblematic to
existing TCP features
Middleboxes are problematic to transport
evolution
Is it still possible to extend TCP ?, M.Honda et al., in IMC11
Measuring the Evolution of Transport Protocols in the Internet, A.Medina et al., in ACM CCR 2005
![Page 55: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/55.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
Middleboxes areproblematic to
existing TCP features
Middleboxes are problematic to transport
evolution
Is it still possible to extend TCP ?, M.Honda et al., in IMC11
Measuring the Evolution of Transport Protocols in the Internet, A.Medina et al., in ACM CCR 2005
![Page 56: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/56.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
Middleboxes areproblematic to
existing TCP features
Middleboxes are problematic to transport
evolution
Future of path impairments
Is it still possible to extend TCP ?, M.Honda et al., in IMC11
Measuring the Evolution of Transport Protocols in the Internet, A.Medina et al., in ACM CCR 2005
![Page 57: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/57.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
Middleboxes areproblematic to
existing TCP features
Middleboxes are problematic to transport
evolution
Future of path impairments
Encryption by Default
Transport-layer Encryption
Is it still possible to extend TCP ?, M.Honda et al., in IMC11
Measuring the Evolution of Transport Protocols in the Internet, A.Medina et al., in ACM CCR 2005
![Page 58: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/58.jpg)
CONCLUSION
Lessons Learned
Middleboxes are prevalents in today’s
Internet
Middleboxes areproblematic to
existing TCP features
Middleboxes are problematic to transport
evolution
Future of path impairments
Middlebox-proof TCP
e.g., MPTCP
Is it still possible to extend TCP ?, M.Honda et al., in IMC11
Measuring the Evolution of Transport Protocols in the Internet, A.Medina et al., in ACM CCR 2005
Encryption by Default
Transport-layer Encryption
![Page 59: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/59.jpg)
CONCLUSION
Lessons Learned
Middleboxes areproblematic to
existing TCP features
Middleboxes are problematic to transport
evolution
Future of path impairments
QUIC
UDP-based splitted layer transport
Middlebox-proof TCP
e.g., MPTCP
Is it still possible to extend TCP ?, M.Honda et al., in IMC11
Measuring the Evolution of Transport Protocols in the Internet, A.Medina et al., in ACM CCR 2005
Encryption by Default
Transport-layer Encryption
![Page 60: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/60.jpg)
CREDITS: This presentation template was created by Slidesgo, including icons by Flaticon, and infographics & images by Freepik.
THANKS
![Page 61: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/61.jpg)
SACK
Normal SACK
Broken SACK (spurious retransmission)
Broken SACK (RTO)
![Page 62: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/62.jpg)
tracebox
● RFC 792 : “The internet header plus the first 64 bits”
● RFC 1812 : “as much [...] as possible” (< 576 B)
![Page 63: Evaluating the Impact of Path Brokenness on TCP · IMPACT OF PATH IMPAIRMENTS ON TCP ECN Explicit Congestion Notification SACK Selective Acknowledgment WScale Window Scaling Parameter](https://reader035.vdocuments.site/reader035/viewer/2022063012/5fca1adeb35a447f34626641/html5/thumbnails/63.jpg)
Testbed specifications
● Intel Xeon E5-2620 2.1GHz, 16 Threads, 32GB RAM● Intel XL710 2x40GB NICs● Huawei CE6800 switch● Debian 9