Independent submission M. Richardson Internet-Draft SSW Expires: May 14, 2004 November 14, 2003 An interim solution to the Path MTU discovery problem for IPsec gateways draft-richardson-ipsec-fragment-00.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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 May 14, 2004. Copyright Notice Copyright (C) The Internet Society (2003). 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 May 14, 2004 [Page 1] Internet-Draft opportunistic November 2003 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 Full Copyright Statement . . . . . . . . . . . . . . . . . . . 7 Richardson Expires May 14, 2004 [Page 2] Internet-Draft opportunistic November 2003 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, realizing the proliferation of misconfigured systems wrt ICMP, is going to propose a new method of determining the MTU. The new method will not rely on ICMPs, but rather on occasionals probes. This method requires that all systems respect the DF bit, otherwise the probes would be incorrect. 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 May 14, 2004 [Page 3] Internet-Draft opportunistic November 2003 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 May 14, 2004 [Page 4] Internet-Draft opportunistic November 2003 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 May 14, 2004 [Page 5] Internet-Draft opportunistic November 2003 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 May 14, 2004 [Page 6] Internet-Draft opportunistic November 2003 Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS 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. Acknowledgement Funding for the RFC Editor function is currently provided by the Internet Society. Richardson Expires May 14, 2004 [Page 7]