draft-ietf-tsvwg-source-quench-01.txt   draft-ietf-tsvwg-source-quench-02.txt 
Transport Area Working Group (tsvwg) F. Gont Transport Area Working Group (tsvwg) F. Gont
Internet-Draft UTN/FRH Internet-Draft UTN/FRH
Updates: 792, 1122, 1812 June 10, 2011 Updates: 792, 1122, 1812 September 8, 2011
(if approved) (if approved)
Intended status: Standards Track Intended status: Standards Track
Expires: December 12, 2011 Expires: March 11, 2012
Deprecation of ICMP Source Quench messages Deprecation of ICMP Source Quench messages
draft-ietf-tsvwg-source-quench-01.txt draft-ietf-tsvwg-source-quench-02.txt
Abstract Abstract
This document formally deprecates the use of ICMP Source Quench This document formally deprecates the use of ICMP Source Quench
messages by transport protocols, formally updating RFC 792, RFC 1122, messages by transport protocols, formally updating RFC 792, RFC 1122,
and RFC 1812. Additionally, it requests that the status of RFC 1016 and RFC 1812. Additionally, it requests that the status of RFC 1016
be changed to "Historic". be changed to "Historic".
Status of this Memo Status of this Memo
skipping to change at page 1, line 35 skipping to change at page 1, line 35
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on December 12, 2011. This Internet-Draft will expire on March 11, 2012.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2011 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 12 skipping to change at page 2, line 12
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. ICMP Source Quench messages . . . . . . . . . . . . . . . . . . 3 2. ICMP Source Quench messages . . . . . . . . . . . . . . . . . . 3
3. Updating RFC 1122 . . . . . . . . . . . . . . . . . . . . . . . 4 3. Updating RFC 1122 . . . . . . . . . . . . . . . . . . . . . . . 4
4. Updating RFC 1812 . . . . . . . . . . . . . . . . . . . . . . . 4 4. Updating RFC 1812 . . . . . . . . . . . . . . . . . . . . . . . 4
5. General Advice to Transport Protocols . . . . . . . . . . . . . 4 5. Clarification for SCTP and DCCP . . . . . . . . . . . . . . . . 5
6. Changing the status of RFC 1016 to Historic . . . . . . . . . . 4 6. General Advice to Transport Protocols . . . . . . . . . . . . . 5
7. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 7. Changing the status of RFC 1016 to Historic . . . . . . . . . . 5
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 8. Security Considerations . . . . . . . . . . . . . . . . . . . . 5
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
10.1. Normative References . . . . . . . . . . . . . . . . . . . 5 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6
10.2. Informative References . . . . . . . . . . . . . . . . . . 6 11.1. Normative References . . . . . . . . . . . . . . . . . . . 6
11.2. Informative References . . . . . . . . . . . . . . . . . . 7
Appendix A. Survey of support of ICMP Source Quench in some Appendix A. Survey of support of ICMP Source Quench in some
popular TCP/IP implementations . . . . . . . . . . . . 7 popular TCP/IP implementations . . . . . . . . . . . . 7
Appendix B. Changes from previous versions of the draft (to Appendix B. Changes from previous versions of the draft (to
be removed by the RFC Editor before publishing be removed by the RFC Editor before publishing
this document as an RFC) . . . . . . . . . . . . . . . 7 this document as an RFC) . . . . . . . . . . . . . . . 7
B.1. Changes from draft-ietf-tsvwg-source-quench-00 . . . . . . 7 B.1. Changes from draft-ietf-tsvwg-source-quench-01 . . . . . . 8
B.2. Changes from draft-gont-tsvwg-source-quench-01 . . . . . . 7 B.2. Changes from draft-ietf-tsvwg-source-quench-00 . . . . . . 8
B.3. Changes from draft-gont-tsvwg-source-quench-00 . . . . . . 7 B.3. Changes from draft-gont-tsvwg-source-quench-01 . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 7 B.4. Changes from draft-gont-tsvwg-source-quench-00 . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction 1. Introduction
The ICMP specification [RFC0792] defined the ICMP Source Quench The ICMP specification [RFC0792] defined the ICMP Source Quench
message (type 4, code 0), which was meant as a mechanism for message (type 4, code 0), which was meant as a mechanism for
congestion control. ICMP Source Quench has been known to be an congestion control. ICMP Source Quench has been known to be an
ineffective (and unfair) antidote for congestion, and generation of ineffective (and unfair) antidote for congestion, and generation of
ICMP Source Quench messages by routers has been formally deprecated ICMP Source Quench messages by routers has been formally deprecated
by [RFC1812] since 1995. However, reaction to ICMP Source Quench by [RFC1812] since 1995. However, reaction to ICMP Source Quench
messages in transport protocols has never been formally deprecated. messages in transport protocols has never been formally deprecated.
skipping to change at page 4, line 22 skipping to change at page 4, line 22
[RFC5681] [RFC3168], that do not depend on ICMP Source Quench [RFC5681] [RFC3168], that do not depend on ICMP Source Quench
messages. messages.
It is interesting to note that ICMPv6 [RFC4443] does not specify a It is interesting to note that ICMPv6 [RFC4443] does not specify a
"Source Quench" message. "Source Quench" message.
3. Updating RFC 1122 3. Updating RFC 1122
This document hereby updates Section 3.2.2.3 of [RFC1122] as follows: This document hereby updates Section 3.2.2.3 of [RFC1122] as follows:
A host SHOULD NOT send ICMP Source Quench messages. A host MUST NOT send ICMP Source Quench messages.
If a Source Quench message is received, the IP layer MAY silently If a Source Quench message is received, the IP layer MAY silently
discard it. discard it.
Section 4.2.3.9 of [RFC1122] is updated as follows: Section 4.2.3.9 of [RFC1122] is updated as follows:
TCP SHOULD silently discard any received ICMP Source Quench TCP MUST silently discard any received ICMP Source Quench
messages. messages.
The consenus of the TSV WG was that there are no valid reasons for a
host to generate or react to an ICMP Source Quench message in the
current Internet. Discarding ICMP Source Quench messages at the
internet-layer (rather than at the transport layer) is a performance
optimization that is permitted by this update.
4. Updating RFC 1812 4. Updating RFC 1812
This document hereby updates Section 4.3.3.3 of [RFC1812] as follows: This document hereby updates Section 4.3.3.3 of [RFC1812] as follows:
A router SHOULD ignore any ICMP Source Quench messages it A router MUST ignore any ICMP Source Quench messages it receives.
receives.
5. General Advice to Transport Protocols The consenus of the TSV WG was that there are no valid reasons for a
router to react to ICMP Source Quench messages in the current
Internet.
If a Source Quench message is received by a transport-protocol 5. Clarification for SCTP and DCCP
instance (e.g., a TCP connection), it SHOULD be silently ignored.
6. Changing the status of RFC 1016 to Historic It is understood that SCTP and SCCP did not specify support for
processing received ICMP Source Quench messages. Hereby we clarify
that DCCP and SCTP end-points MUST silently discard received ICMP
Source Quench messages.
6. General Advice to Transport Protocols
If a Source Quench message is received by any other transport-
protocol instance (e.g., a UDP-based protocol), it SHOULD be silently
ignored.
The TSV WG is not aware of any use that requires processing of these
messages, and therefore expects other transports to follow the
recommendations in Section 3. Note that for IETF-specified
transports, this document formally deprecates reaction to ICMP Source
Quench messages, and that generation of ICMP Source Quench messages
has been deprecated for both hosts and routers. Therefore, future
applications can not expect to receive these messages.
7. Changing the status of RFC 1016 to Historic
This document requests the RFC Editor to change the status of This document requests the RFC Editor to change the status of
[RFC1016] to "Historic". [RFC1016] to "Historic".
7. Security Considerations 8. Security Considerations
ICMP Source Quench messages could be leveraged for performing blind ICMP Source Quench messages could be leveraged for performing blind
throughput-reduction attacks against TCP and similar protocols. This throughput-reduction attacks against TCP and similar protocols. This
attack vector, along with possible countermeasures, have been attack vector, along with possible countermeasures, has been
discussed in great detail in [RFC5927] and [CPNI-TCP]. However, as discussed in great detail in [RFC5927] and [CPNI-TCP]. However, as
noted in [RFC5927] and [CPNI-TCP], virtually all current versions of noted in [RFC5927] and [CPNI-TCP], virtually all current versions of
popular TCP implementations already silently ignore ICMP Source popular TCP implementations already silently ignore ICMP Source
Quench messages. Quench messages. This is also the case for SCTP and DCCP
implementations.
Silently ignoring ICMP Source Quench messages, as specified in this Silently ignoring ICMP Source Quench messages, as specified in this
document, eliminates the aforementioned attack vector. document, eliminates the aforementioned attack vector.
If deemed necessary, ICMP Source Quench messages could be filtered at If deemed necessary, ICMP Source Quench messages could be filtered at
firewalls. firewalls.
8. IANA Considerations 9. IANA Considerations
IANA is requested to mark ICMP type 4 (Source Quench) as "Deprecated" IANA is requested to mark ICMP type 4 (Source Quench) as "Deprecated"
in de ICMP Parameters registry [ICMPPARREG] with a reference to this in de ICMP Parameters registry [ICMPPARREG] with a reference to this
document. document.
9. Acknowledgements 10. Acknowledgements
The author of this document would like to thank (in alphabetical The author of this document would like to thank (in alphabetical
order) Fred Baker, David Black, Scott Bradner, James Carlson, Antonio order) Fred Baker, David Black, Scott Bradner, James Carlson, Antonio
De Simone, Gorry Fairhurst, Alfred Hoenes, Mahesh Jethanandani, De Simone, Gorry Fairhurst, Alfred Hoenes, Mahesh Jethanandani,
Carlos Pignataro, Anantha Ramaiah, Dan Wing, and Andrew Yourtchenko, Carlos Pignataro, Anantha Ramaiah, Randall Stewart, Dan Wing, and
for providing valuable feedback on earlier versions of this document. Andrew Yourtchenko, for providing valuable feedback on earlier
versions of this document.
This document has benefited from discussions within the TCPM Working This document has benefited from discussions within the TCPM Working
Group while working on [RFC5927]. Group while working on [RFC5927].
10. References 11. References
10.1. Normative References 11.1. Normative References
[RFC0792] Postel, J., "Internet Control Message Protocol", STD 5, [RFC0792] Postel, J., "Internet Control Message Protocol", STD 5,
RFC 792, September 1981. RFC 792, September 1981.
[RFC0793] Postel, J., "Transmission Control Protocol", STD 7, [RFC0793] Postel, J., "Transmission Control Protocol", STD 7,
RFC 793, September 1981. RFC 793, September 1981.
[RFC1016] Prue, W. and J. Postel, "Something a host could do with [RFC1016] Prue, W. and J. Postel, "Something a host could do with
source quench: The Source Quench Introduced Delay source quench: The Source Quench Introduced Delay
(SQuID)", RFC 1016, July 1987. (SQuID)", RFC 1016, July 1987.
skipping to change at page 6, line 18 skipping to change at page 7, line 5
[RFC1812] Baker, F., "Requirements for IP Version 4 Routers", [RFC1812] Baker, F., "Requirements for IP Version 4 Routers",
RFC 1812, June 1995. RFC 1812, June 1995.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5681] Allman, M., Paxson, V., and E. Blanton, "TCP Congestion [RFC5681] Allman, M., Paxson, V., and E. Blanton, "TCP Congestion
Control", RFC 5681, September 2009. Control", RFC 5681, September 2009.
10.2. Informative References 11.2. Informative References
[CPNI-TCP] [CPNI-TCP]
CPNI, "Security Assessment of the Transmission Control CPNI, "Security Assessment of the Transmission Control
Protocol (TCP)", 2009, <http://www.cpni.gov.uk/Docs/ Protocol (TCP)", 2009, <http://www.cpni.gov.uk/Docs/
tn-03-09-security-assessment-TCP.pdf>. tn-03-09-security-assessment-TCP.pdf>.
[FreeBSD] The FreeBSD Project, "http://www.freebsd.org". [FreeBSD] The FreeBSD Project, "http://www.freebsd.org".
[ICMPPARREG] [ICMPPARREG]
Internet Control Message Protocol (ICMP) Parameters, Internet Control Message Protocol (ICMP) Parameters,
skipping to change at page 7, line 19 skipping to change at page 8, line 5
Quench messages meant for TCP connections. This behavior has been Quench messages meant for TCP connections. This behavior has been
implemented in, at least, Linux [Linux] since 2004, and in FreeBSD implemented in, at least, Linux [Linux] since 2004, and in FreeBSD
[FreeBSD], NetBSD [NetBSD], OpenBSD [OpenBSD], and Solaris 10 since [FreeBSD], NetBSD [NetBSD], OpenBSD [OpenBSD], and Solaris 10 since
2005. Additionally, OpenSolaris [OpenSolaris] has always shipped 2005. Additionally, OpenSolaris [OpenSolaris] has always shipped
with support for ICMP Source Quench messages disabled. with support for ICMP Source Quench messages disabled.
Appendix B. Changes from previous versions of the draft (to be removed Appendix B. Changes from previous versions of the draft (to be removed
by the RFC Editor before publishing this document as an by the RFC Editor before publishing this document as an
RFC) RFC)
B.1. Changes from draft-ietf-tsvwg-source-quench-00 B.1. Changes from draft-ietf-tsvwg-source-quench-01
o Changes deprecation of ICMP SQ from "SHOULD NOT" to "MUST NOT" in
response of feedback from Scott Bradner and the TSV WG.
B.2. Changes from draft-ietf-tsvwg-source-quench-00
o Discusses the motivation for deprecating ICMP Source Quench o Discusses the motivation for deprecating ICMP Source Quench
messages (as suggested by Anantha Ramaiah). messages (as suggested by Anantha Ramaiah).
o Incorporates IANA considerations such that ICMP Source Quench o Incorporates IANA considerations such that ICMP Source Quench
messages are deprecated in the corresponding registry. messages are deprecated in the corresponding registry.
B.2. Changes from draft-gont-tsvwg-source-quench-01 B.3. Changes from draft-gont-tsvwg-source-quench-01
o Addresses nits and editorial chagnes suggested by Gorry Fairhurst. o Addresses nits and editorial chagnes suggested by Gorry Fairhurst.
o Added the status of Solaris and OpenSolaris to Appendix A. o Added the status of Solaris and OpenSolaris to Appendix A.
o Document resubmitted as draft-ietf. o Document resubmitted as draft-ietf.
B.3. Changes from draft-gont-tsvwg-source-quench-00 B.4. Changes from draft-gont-tsvwg-source-quench-00
o This revision reflects the recent discussion about ICMP Source o This revision reflects the recent discussion about ICMP Source
Quench messages on the tsvwg mailing-list. A detailed list of the Quench messages on the tsvwg mailing-list. A detailed list of the
changes is available at: changes is available at:
http://www.ietf.org/mail-archive/web/tsvwg/current/msg10407.html http://www.ietf.org/mail-archive/web/tsvwg/current/msg10407.html
Author's Address Author's Address
Fernando Gont Fernando Gont
Universidad Tecnologica Nacional / Facultad Regional Haedo Universidad Tecnologica Nacional / Facultad Regional Haedo
 End of changes. 25 change blocks. 
37 lines changed or deleted 71 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/