draft-ietf-tram-stun-pmtud-08.txt | draft-ietf-tram-stun-pmtud-09.txt | |||
---|---|---|---|---|
TRAM M. Petit-Huguenin | TRAM M. Petit-Huguenin | |||
Internet-Draft Impedance Mismatch | Internet-Draft Impedance Mismatch | |||
Intended status: Standards Track G. Salgueiro | Intended status: Standards Track G. Salgueiro | |||
Expires: November 15, 2018 Cisco | Expires: February 26, 2019 Cisco | |||
May 14, 2018 | August 25, 2018 | |||
Path MTU Discovery Using Session Traversal Utilities for NAT (STUN) | Path MTU Discovery Using Session Traversal Utilities for NAT (STUN) | |||
draft-ietf-tram-stun-pmtud-08 | draft-ietf-tram-stun-pmtud-09 | |||
Abstract | Abstract | |||
This document describes a Session Traversal Utilities for NAT (STUN) | This document describes a Session Traversal Utilities for NAT (STUN) | |||
Usage for Path MTU Discovery (PMTUD) between a client and a server. | Usage for Path MTU Discovery (PMTUD) between a client and a server. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
skipping to change at page 1, line 32 ¶ | skipping to change at page 1, line 32 ¶ | |||
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 https://datatracker.ietf.org/drafts/current/. | Drafts is at https://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 November 15, 2018. | This Internet-Draft will expire on February 26, 2019. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2018 IETF Trust and the persons identified as the | Copyright (c) 2018 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 | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (https://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 27 ¶ | skipping to change at page 2, line 27 ¶ | |||
4.2.2. Receiving an ICMP Packet . . . . . . . . . . . . . . 8 | 4.2.2. Receiving an ICMP Packet . . . . . . . . . . . . . . 8 | |||
4.2.3. Receiving a Probe Indication and Report Request . . . 8 | 4.2.3. Receiving a Probe Indication and Report Request . . . 8 | |||
4.2.4. Receiving a Report Response . . . . . . . . . . . . . 9 | 4.2.4. Receiving a Report Response . . . . . . . . . . . . . 9 | |||
4.2.5. Using Checksums as Packet Identifiers . . . . . . . . 9 | 4.2.5. Using Checksums as Packet Identifiers . . . . . . . . 9 | |||
4.2.6. Using Sequence Numbers as Packet Identifiers . . . . 10 | 4.2.6. Using Sequence Numbers as Packet Identifiers . . . . 10 | |||
5. Probe Support Signaling Mechanisms . . . . . . . . . . . . . 10 | 5. Probe Support Signaling Mechanisms . . . . . . . . . . . . . 10 | |||
5.1. Explicit Probe Support Signaling Mechanism . . . . . . . 11 | 5.1. Explicit Probe Support Signaling Mechanism . . . . . . . 11 | |||
5.2. Implicit Probe Support Signaling Mechanism . . . . . . . 11 | 5.2. Implicit Probe Support Signaling Mechanism . . . . . . . 11 | |||
6. STUN Attributes . . . . . . . . . . . . . . . . . . . . . . . 11 | 6. STUN Attributes . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
6.1. IDENTIFIERS . . . . . . . . . . . . . . . . . . . . . . . 11 | 6.1. IDENTIFIERS . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
6.2. PMTUD-SUPPORTED . . . . . . . . . . . . . . . . . . . . . 11 | 6.2. PMTUD-SUPPORTED . . . . . . . . . . . . . . . . . . . . . 12 | |||
7. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | |||
8.1. New STUN Methods . . . . . . . . . . . . . . . . . . . . 12 | 8.1. New STUN Methods . . . . . . . . . . . . . . . . . . . . 12 | |||
8.2. New STUN Attributes . . . . . . . . . . . . . . . . . . . 12 | 8.2. New STUN Attributes . . . . . . . . . . . . . . . . . . . 12 | |||
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
9.1. Normative References . . . . . . . . . . . . . . . . . . 13 | 9.1. Normative References . . . . . . . . . . . . . . . . . . 13 | |||
9.2. Informative References . . . . . . . . . . . . . . . . . 13 | 9.2. Informative References . . . . . . . . . . . . . . . . . 13 | |||
Appendix A. Release Notes . . . . . . . . . . . . . . . . . . . 14 | Appendix A. Release Notes . . . . . . . . . . . . . . . . . . . 14 | |||
A.1. Modifications between draft-ietf-tram-stun-pmtud-08 and | A.1. Modifications between draft-ietf-tram-stun-pmtud-09 and | |||
draft-ietf-tram-stun-pmtud-08 . . . . . . . . . . . . . . 14 | ||||
A.2. Modifications between draft-ietf-tram-stun-pmtud-08 and | ||||
draft-ietf-tram-stun-pmtud-07 . . . . . . . . . . . . . . 14 | draft-ietf-tram-stun-pmtud-07 . . . . . . . . . . . . . . 14 | |||
A.2. Modifications between draft-ietf-tram-stun-pmtud-07 and | A.3. Modifications between draft-ietf-tram-stun-pmtud-07 and | |||
draft-ietf-tram-stun-pmtud-06 . . . . . . . . . . . . . . 14 | draft-ietf-tram-stun-pmtud-06 . . . . . . . . . . . . . . 14 | |||
A.3. Modifications between draft-ietf-tram-stun-pmtud-06 and | A.4. Modifications between draft-ietf-tram-stun-pmtud-06 and | |||
draft-ietf-tram-stun-pmtud-05 . . . . . . . . . . . . . . 14 | draft-ietf-tram-stun-pmtud-05 . . . . . . . . . . . . . . 14 | |||
A.4. Modifications between draft-ietf-tram-stun-pmtud-05 and | A.5. Modifications between draft-ietf-tram-stun-pmtud-05 and | |||
draft-ietf-tram-stun-pmtud-04 . . . . . . . . . . . . . . 14 | draft-ietf-tram-stun-pmtud-04 . . . . . . . . . . . . . . 14 | |||
A.5. Modifications between draft-ietf-tram-stun-pmtud-04 and | A.6. Modifications between draft-ietf-tram-stun-pmtud-04 and | |||
draft-ietf-tram-stun-pmtud-03 . . . . . . . . . . . . . . 14 | draft-ietf-tram-stun-pmtud-03 . . . . . . . . . . . . . . 14 | |||
A.6. Modifications between draft-ietf-tram-stun-pmtud-03 and | A.7. Modifications between draft-ietf-tram-stun-pmtud-03 and | |||
draft-ietf-tram-stun-pmtud-02 . . . . . . . . . . . . . . 14 | draft-ietf-tram-stun-pmtud-02 . . . . . . . . . . . . . . 15 | |||
A.7. Modifications between draft-ietf-tram-stun-pmtud-02 and | A.8. Modifications between draft-ietf-tram-stun-pmtud-02 and | |||
draft-ietf-tram-stun-pmtud-01 . . . . . . . . . . . . . . 15 | draft-ietf-tram-stun-pmtud-01 . . . . . . . . . . . . . . 15 | |||
A.8. Modifications between draft-ietf-tram-stun-pmtud-01 and | A.9. Modifications between draft-ietf-tram-stun-pmtud-01 and | |||
draft-ietf-tram-stun-pmtud-00 . . . . . . . . . . . . . . 15 | draft-ietf-tram-stun-pmtud-00 . . . . . . . . . . . . . . 16 | |||
A.9. Modifications between draft-ietf-tram-stun-pmtud-00 and | A.10. Modifications between draft-ietf-tram-stun-pmtud-00 and | |||
draft-petithuguenin-tram-stun-pmtud-01 . . . . . . . . . 15 | draft-petithuguenin-tram-stun-pmtud-01 . . . . . . . . . 16 | |||
A.10. Modifications between draft-petithuguenin-tram-stun- | ||||
pmtud-01 and draft-petithuguenin-tram-stun-pmtud-00 . . . 16 | ||||
A.11. Modifications between draft-petithuguenin-tram-stun- | A.11. Modifications between draft-petithuguenin-tram-stun- | |||
pmtud-01 and draft-petithuguenin-tram-stun-pmtud-00 . . . 16 | ||||
A.12. Modifications between draft-petithuguenin-tram-stun- | ||||
pmtud-00 and draft-petithuguenin-behave-stun-pmtud-03 . . 16 | pmtud-00 and draft-petithuguenin-behave-stun-pmtud-03 . . 16 | |||
A.12. Modifications between draft-petithuguenin-behave-stun- | ||||
pmtud-03 and draft-petithuguenin-behave-stun-pmtud-02 . . 16 | ||||
A.13. Modifications between draft-petithuguenin-behave-stun- | A.13. Modifications between draft-petithuguenin-behave-stun- | |||
pmtud-02 and draft-petithuguenin-behave-stun-pmtud-01 . . 16 | pmtud-03 and draft-petithuguenin-behave-stun-pmtud-02 . . 16 | |||
A.14. Modifications between draft-petithuguenin-behave-stun- | A.14. Modifications between draft-petithuguenin-behave-stun- | |||
pmtud-02 and draft-petithuguenin-behave-stun-pmtud-01 . . 16 | ||||
A.15. Modifications between draft-petithuguenin-behave-stun- | ||||
pmtud-01 and draft-petithuguenin-behave-stun-pmtud-00 . . 17 | pmtud-01 and draft-petithuguenin-behave-stun-pmtud-00 . . 17 | |||
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 17 | Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
1. Introduction | 1. Introduction | |||
The Packetization Layer Path MTU Discovery (PMTUD) specification | The Packetization Layer Path MTU Discovery (PMTUD) specification | |||
[RFC4821] describes a method to discover the Path MTU but does not | [RFC4821] describes a method to discover the Path MTU but does not | |||
describe a practical protocol to do so with UDP. | describe a practical protocol to do so with UDP. | |||
skipping to change at page 11, line 19 ¶ | skipping to change at page 11, line 19 ¶ | |||
an optional flag that can be set in the protocol that is augmented | an optional flag that can be set in the protocol that is augmented | |||
with PMTUD capabilities. STUN Usages that can benefit from PMTUD | with PMTUD capabilities. STUN Usages that can benefit from PMTUD | |||
capabilities can signal in-band that they support probing by | capabilities can signal in-band that they support probing by | |||
inserting a PMTUD-SUPPORTED attribute in some STUN methods. The | inserting a PMTUD-SUPPORTED attribute in some STUN methods. The | |||
decision of which methods support this attribute is left to each | decision of which methods support this attribute is left to each | |||
specific STUN Usage. | specific STUN Usage. | |||
UDP-based protocols that want to use any of these mechanisms, | UDP-based protocols that want to use any of these mechanisms, | |||
including the PMTUD-SUPPORTED attribute, to signal PMTUD capabilities | including the PMTUD-SUPPORTED attribute, to signal PMTUD capabilities | |||
MUST ensure that it cannot be used to launch an amplification attack. | MUST ensure that it cannot be used to launch an amplification attack. | |||
For example, using authentication can ensure this. | ||||
An amplification attack can be prevented using techniques such as: | ||||
o Authentication, where the source of the packet and the destination | ||||
share a secret. | ||||
o 3 way handshake with some form of unpredictable cookie. | ||||
o Make sure that the total size of the traffic potentially generated | ||||
is lower than the size of the request that generated it. | ||||
5.2. Implicit Probe Support Signaling Mechanism | 5.2. Implicit Probe Support Signaling Mechanism | |||
As a result of the fact that all endpoints implementing this | As a result of the fact that all endpoints implementing this | |||
specification are both clients and servers, a Probe Request or | specification are both clients and servers, a Probe Request or | |||
Indication received by an endpoint acting as a server implicitly | Indication received by an endpoint acting as a server implicitly | |||
signals that this server can now act as a client and MAY send a Probe | signals that this server can now act as a client and MAY send a Probe | |||
Request or Indication to probe the Path MTU in the reverse direction | Request or Indication to probe the Path MTU in the reverse direction | |||
toward the former client, that will now be acting as a server. | toward the former client, that will now be acting as a server. | |||
skipping to change at page 14, line 9 ¶ | skipping to change at page 14, line 19 ¶ | |||
[RFC5780] MacDonald, D. and B. Lowekamp, "NAT Behavior Discovery | [RFC5780] MacDonald, D. and B. Lowekamp, "NAT Behavior Discovery | |||
Using Session Traversal Utilities for NAT (STUN)", | Using Session Traversal Utilities for NAT (STUN)", | |||
RFC 5780, DOI 10.17487/RFC5780, May 2010, | RFC 5780, DOI 10.17487/RFC5780, May 2010, | |||
<http://www.rfc-editor.org/info/rfc5780>. | <http://www.rfc-editor.org/info/rfc5780>. | |||
Appendix A. Release Notes | Appendix A. Release Notes | |||
This section must be removed before publication as an RFC. | This section must be removed before publication as an RFC. | |||
A.1. Modifications between draft-ietf-tram-stun-pmtud-08 and draft- | A.1. Modifications between draft-ietf-tram-stun-pmtud-09 and draft- | |||
ietf-tram-stun-pmtud-08 | ||||
o Add 3 ways of preventing amplification attacks. | ||||
A.2. Modifications between draft-ietf-tram-stun-pmtud-08 and draft- | ||||
ietf-tram-stun-pmtud-07 | ietf-tram-stun-pmtud-07 | |||
o Updates following Spencer's review. | o Updates following Spencer's review. | |||
A.2. Modifications between draft-ietf-tram-stun-pmtud-07 and draft- | A.3. Modifications between draft-ietf-tram-stun-pmtud-07 and draft- | |||
ietf-tram-stun-pmtud-06 | ietf-tram-stun-pmtud-06 | |||
o Updates following Shepherd review. | o Updates following Shepherd review. | |||
A.3. Modifications between draft-ietf-tram-stun-pmtud-06 and draft- | A.4. Modifications between draft-ietf-tram-stun-pmtud-06 and draft- | |||
ietf-tram-stun-pmtud-05 | ietf-tram-stun-pmtud-05 | |||
o Nits. | o Nits. | |||
o Restore missing changelog for previous version. | o Restore missing changelog for previous version. | |||
A.4. Modifications between draft-ietf-tram-stun-pmtud-05 and draft- | A.5. Modifications between draft-ietf-tram-stun-pmtud-05 and draft- | |||
ietf-tram-stun-pmtud-04 | ietf-tram-stun-pmtud-04 | |||
o Modifications following Brandon Williams review. | o Modifications following Brandon Williams review. | |||
A.5. Modifications between draft-ietf-tram-stun-pmtud-04 and draft- | A.6. Modifications between draft-ietf-tram-stun-pmtud-04 and draft- | |||
ietf-tram-stun-pmtud-03 | ietf-tram-stun-pmtud-03 | |||
o Modifications following Simon Perreault and Brandon Williams | o Modifications following Simon Perreault and Brandon Williams | |||
reviews. | reviews. | |||
A.6. Modifications between draft-ietf-tram-stun-pmtud-03 and draft- | A.7. Modifications between draft-ietf-tram-stun-pmtud-03 and draft- | |||
ietf-tram-stun-pmtud-02 | ietf-tram-stun-pmtud-02 | |||
o Add new Overview of Operations section with ladder diagrams. | o Add new Overview of Operations section with ladder diagrams. | |||
o Authentication is mandatory for the Complete Probing mechanism, | o Authentication is mandatory for the Complete Probing mechanism, | |||
optional for the Simple Probing mechanism. | optional for the Simple Probing mechanism. | |||
o All the ICE specific text moves to a separate draft to be | o All the ICE specific text moves to a separate draft to be | |||
discussed in the ICE WG. | discussed in the ICE WG. | |||
skipping to change at page 15, line 33 ¶ | skipping to change at page 15, line 47 ¶ | |||
o Each usage of this specification must the format of the | o Each usage of this specification must the format of the | |||
IDENTIFIERS attribute contents. | IDENTIFIERS attribute contents. | |||
o Better define the implicit signaling mechanism. | o Better define the implicit signaling mechanism. | |||
o Extend the Security Consideration section. | o Extend the Security Consideration section. | |||
o Tons of nits. | o Tons of nits. | |||
A.7. Modifications between draft-ietf-tram-stun-pmtud-02 and draft- | A.8. Modifications between draft-ietf-tram-stun-pmtud-02 and draft- | |||
ietf-tram-stun-pmtud-01 | ietf-tram-stun-pmtud-01 | |||
o Cleaned up references. | o Cleaned up references. | |||
A.8. Modifications between draft-ietf-tram-stun-pmtud-01 and draft- | A.9. Modifications between draft-ietf-tram-stun-pmtud-01 and draft- | |||
ietf-tram-stun-pmtud-00 | ietf-tram-stun-pmtud-00 | |||
o Added Security Considerations Section. | o Added Security Considerations Section. | |||
o Added IANA Considerations Section. | o Added IANA Considerations Section. | |||
A.9. Modifications between draft-ietf-tram-stun-pmtud-00 and draft- | A.10. Modifications between draft-ietf-tram-stun-pmtud-00 and draft- | |||
petithuguenin-tram-stun-pmtud-01 | petithuguenin-tram-stun-pmtud-01 | |||
o Adopted by WG - Text unchanged. | o Adopted by WG - Text unchanged. | |||
A.10. Modifications between draft-petithuguenin-tram-stun-pmtud-01 and | A.11. Modifications between draft-petithuguenin-tram-stun-pmtud-01 and | |||
draft-petithuguenin-tram-stun-pmtud-00 | draft-petithuguenin-tram-stun-pmtud-00 | |||
o Moved some Introduction text to the Probing Mechanism section. | o Moved some Introduction text to the Probing Mechanism section. | |||
o Added cross-reference to the other two STUN troubleshooting | o Added cross-reference to the other two STUN troubleshooting | |||
mechanism drafts. | mechanism drafts. | |||
o Updated references. | o Updated references. | |||
o Added Gonzalo Salgueiro as co-author. | o Added Gonzalo Salgueiro as co-author. | |||
A.11. Modifications between draft-petithuguenin-tram-stun-pmtud-00 and | A.12. Modifications between draft-petithuguenin-tram-stun-pmtud-00 and | |||
draft-petithuguenin-behave-stun-pmtud-03 | draft-petithuguenin-behave-stun-pmtud-03 | |||
o General refresh for republication. | o General refresh for republication. | |||
A.12. Modifications between draft-petithuguenin-behave-stun-pmtud-03 | A.13. Modifications between draft-petithuguenin-behave-stun-pmtud-03 | |||
and draft-petithuguenin-behave-stun-pmtud-02 | and draft-petithuguenin-behave-stun-pmtud-02 | |||
o Changed author address. | o Changed author address. | |||
o Changed the IPR to trust200902. | o Changed the IPR to trust200902. | |||
A.13. Modifications between draft-petithuguenin-behave-stun-pmtud-02 | A.14. Modifications between draft-petithuguenin-behave-stun-pmtud-02 | |||
and draft-petithuguenin-behave-stun-pmtud-01 | and draft-petithuguenin-behave-stun-pmtud-01 | |||
o Defined checksum and sequential numbers as possible packet | o Defined checksum and sequential numbers as possible packet | |||
identifiers. | identifiers. | |||
o Updated the reference to RFC 5389 | o Updated the reference to RFC 5389 | |||
o The FINGERPRINT attribute is now mandatory. | o The FINGERPRINT attribute is now mandatory. | |||
o Changed the delay between Probe indication and Report request to | o Changed the delay between Probe indication and Report request to | |||
be RTO/2 or 50 milliseconds. | be RTO/2 or 50 milliseconds. | |||
o Added ICMP packet processing. | o Added ICMP packet processing. | |||
o Added Full-Stop Timeout detection. | o Added Full-Stop Timeout detection. | |||
o Stated that Binding request with PMTUD-SUPPORTED does not start | o Stated that Binding request with PMTUD-SUPPORTED does not start | |||
the PMTUD process if already started. | the PMTUD process if already started. | |||
A.14. Modifications between draft-petithuguenin-behave-stun-pmtud-01 | A.15. Modifications between draft-petithuguenin-behave-stun-pmtud-01 | |||
and draft-petithuguenin-behave-stun-pmtud-00 | and draft-petithuguenin-behave-stun-pmtud-00 | |||
o Removed the use of modified STUN transaction but shorten the | o Removed the use of modified STUN transaction but shorten the | |||
retransmission for the simple probing mechanism. | retransmission for the simple probing mechanism. | |||
o Added a complete probing mechanism. | o Added a complete probing mechanism. | |||
o Removed the PADDING-RECEIVED attribute. | o Removed the PADDING-RECEIVED attribute. | |||
o Added release notes. | o Added release notes. | |||
End of changes. 30 change blocks. | ||||
38 lines changed or deleted | 54 lines changed or added | |||
This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |