Independent submission M. Richardson Internet-Draft SSW |Expires: January 15, 2005 July 17, 2004 An interim solution to the Path MTU discovery problem for IPsec gateways | draft-richardson-ipsec-fragment-01.txt Status of this Memo | By submitting this Internet-Draft, I certify that any applicable | patent or other IPR claims of which I am aware have been disclosed, | and any of which I become aware will be disclosed, in accordance with | RFC 3667. Internet-Drafts are working documents of the Internet Engineering | Task Force (IETF), its areas, and its working groups. Note that other | groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http:// www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. | This Internet-Draft will expire on January 15, 2005. Copyright Notice | Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract Path MTU discovery depends upon proper respect for the Don't Fragment (DF) bit. IPsec gateways often present an Maximum Transmission Unit (MTU) constraint, and therefore must send ICMP Fragment Needed messages when the DF bit is set. This document proposes to ignore it in certain cases. |Richardson Expires January 15, 2005 [Page 1] |Internet-Draft opportunistic July 2004 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1 Step 0 - selection . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Step 1 - tracking . . . . . . . . . . . . . . . . . . . . . . 4 2.3 Step 2 - size check . . . . . . . . . . . . . . . . . . . . . 4 2.4 Step 3 - error throttling . . . . . . . . . . . . . . . . . . 4 2.5 Step 4 - send . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Normative references . . . . . . . . . . . . . . . . . . . . . 6 Author's Address . . . . . . . . . . . . . . . . . . . . . . . 6 | Intellectual Property and Copyright Statements . . . . . . . . 7 |Richardson Expires January 15, 2005 [Page 2] |Internet-Draft opportunistic July 2004 1. Introduction Path MTU discovery [1] depends upon proper respect for the Don't Fragment (DF) bit. IPsec gateways often present an Maximum Transmission Unit (MTU) constraint, and therefore must send ICMP Fragment Needed messages when the DF bit is set. At the same time, increasing numbers of firewalls and networks are misconfigured, and drop all ICMP messages. For road-warriors that operate on an extruded IP address (i.e. one from behind their security gateway, and route all traffic through the corporate | firewall), they find that they can not reach certain sites. When full | size datagrams arrive at the VPN gateway with the DF bit set (such as | from a web server's response), they are too big to enter the tunnel. | An ICMP is sent (rate limited) and the oversize datagram is | discarded. The ICMP is filtered out, and the sender never reduces its | segment size. The result is that the web site stalls. Ironically, | this occurs more often for more efficient web servers, as they tend | to fill the datagram more regularly. Although the site in question is misconfigured, the IPsec system is blamed, since the site "works fine" when the IPsec tunnel is removed. The result is that many IPsec security gateway vendors are resorting to ignoring the DF bit, and fragmenting the datagram anyway (either before encapsulation, or fragmenting the resulting ESP packet). | To complicate the situation, the PMTUD WG, has recognized the | proliferation of missconfigured systems wrt ICMP, and is proposing a | new method of determining the MTU. The new method does not rely on | ICMPs, but rather on the non-delivery of occasional larger probes. | The only requirement that the new method places on lower layers is | that they reliably discard probes that are larger than the path MTU. | With this new method, devices that do not honor the DF bit are at | risk of invoking needless fragmentation. | Further, for high speed networks, that employ larger TCP windows, the | result of the fragmentation can cause TCP segments to become | corrupted. {ref please} This document proposes a heuristic for IPsec security gateways to observe such that they will interop with the both the current PMTU methods (given that ICMP is broken) and new mechanisms. |Richardson Expires January 15, 2005 [Page 3] |Internet-Draft opportunistic July 2004 2. Heuristic Summary: If the system is keeping per flow state, preferentially error packets that suddenly reach a new high-water mark for each particular flow, because they arelikely to be probes, or classic PMTUD. For systems that have per-flow [Host to Host] (Ed. per-microflow - 5-tuple?) tracking, step 1 is included. Otherwise, it is skipped. 2.1 Step 0 - selection Is the datagram is too big for the tunnel, and has the DF bit set? If not, encapsulate as normal. 2.2 Step 1 - tracking | Keep track of the largest datagram size received. When there is a new | high water mark, do standard ICMP Need Fragment processing. If this | is the first time the datagram was too big, then goto step 4. If not, | then drop datagram. 2.3 Step 2 - size check Is the amount that the packet is too big exactly due to the tunnel overhead? (In particular, this would never apply when the media on both sides is dissimilar). If not, do standard ICMP processing, and drop the datagram. 2.4 Step 3 - error throttling Does error rate limiting permit an ICMP error message be sent at this time? (rate limited to about 1 packet per second) If so, then do standard ICMP Need Fragment processing, and drop the datagram. 2.5 Step 4 - send Fragment the datagram prior to encapsulation. Divide the datagram | into two equal pieces and encapsulate each one seperately. No attempt | to send an ICMP is made. |Richardson Expires January 15, 2005 [Page 4] |Internet-Draft opportunistic July 2004 3. Example A 1500 packet to which a 20 byte IP and 28 byte ESP header is added, trying to fit on a 1500 byte network is fragmented anyway. A 9000 byte packet with a 20 byte IP and 28 byte ESP header trying to fit on a 1500 byte network is dropped. |Richardson Expires January 15, 2005 [Page 5] |Internet-Draft opportunistic July 2004 Normative references [1] Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191, November 1990. Author's Address Michael C. Richardson Sandelman Software Works 470 Dawson Avenue Ottawa, ON K1Z 5V7 CA EMail: mcr@sandelman.ottawa.on.ca URI: http://www.sandelman.ottawa.on.ca/ |Richardson Expires January 15, 2005 [Page 6] |Internet-Draft opportunistic July 2004 |Intellectual Property Statement | The IETF takes no position regarding the validity or scope of any | Intellectual Property Rights or other rights that might be claimed to | pertain to the implementation or use of the technology described in | this document or the extent to which any license under such rights | might or might not be available; nor does it represent that it has | made any independent effort to identify any such rights. Information | on the IETF's procedures with respect to rights in IETF Documents can | be found in BCP 78 and BCP 79. | Copies of IPR disclosures made to the IETF Secretariat and any | assurances of licenses to be made available, or the result of an | attempt made to obtain a general license or permission for the use of | such proprietary rights by implementers or users of this | specification can be obtained from the IETF on-line IPR repository at | http://www.ietf.org/ipr. | The IETF invites any interested party to bring to its attention any | copyrights, patents or patent applications, or other proprietary | rights that may cover technology that may be required to implement | this standard. Please address the information to the IETF at | ietf-ipr@ietf.org. |Disclaimer of Validity | This document and the information contained herein are provided on an | "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET | ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, | INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE | INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. |Copyright Statement | Copyright (C) The Internet Society (2004). This document is subject | to the rights, licenses and restrictions contained in BCP 78, and | except as set forth therein, the authors retain all their rights. |Acknowledgment | Funding for the RFC Editor function is currently provided by the | Internet Society. |Richardson Expires January 15, 2005 [Page 7]