⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc3135.txt

📁 RFC 的详细文档!
💻 TXT
📖 第 1 页 / 共 5 页
字号:






Network Working Group                                          J. Border
Request for Comments: 3135                        Hughes Network Systems
Category: Informational                                          M. Kojo
                                                  University of Helsinki
                                                               J. Griner
                                              NASA Glenn Research Center
                                                           G. Montenegro
                                                  Sun Microsystems, Inc.
                                                               Z. Shelby
                                                      University of Oulu
                                                               June 2001


    Performance Enhancing Proxies Intended to Mitigate Link-Related
                              Degradations

Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2001).  All Rights Reserved.

Abstract

   This document is a survey of Performance Enhancing Proxies (PEPs)
   often employed to improve degraded TCP performance caused by
   characteristics of specific link environments, for example, in
   satellite, wireless WAN, and wireless LAN environments.  Different
   types of Performance Enhancing Proxies are described as well as the
   mechanisms used to improve performance.  Emphasis is put on proxies
   operating with TCP.  In addition, motivations for their development
   and use are described along with some of the consequences of using
   them, especially in the context of the Internet.

Table of Contents

   1. Introduction  . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2. Types of Performance Enhancing Proxies  . . . . . . . . . . . .  4
   2.1 Layering . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   2.1.1 Transport Layer PEPs . . . . . . . . . . . . . . . . . . . .  5
   2.1.2 Application Layer PEPs . . . . . . . . . . . . . . . . . . .  5
   2.2 Distribution . . . . . . . . . . . . . . . . . . . . . . . . .  6
   2.3 Implementation Symmetry  . . . . . . . . . . . . . . . . . . .  6
   2.4 Split Connections  . . . . . . . . . . . . . . . . . . . . . .  7



Border, et al.               Informational                      [Page 1]

RFC 3135          PILC - Performance Enhancing Proxies         June 2001


   2.5 Transparency . . . . . . . . . . . . . . . . . . . . . . . . .  8
   3. PEP Mechanisms  . . . . . . . . . . . . . . . . . . . . . . . .  9
   3.1 TCP ACK Handling . . . . . . . . . . . . . . . . . . . . . . .  9
   3.1.1 TCP ACK Spacing  . . . . . . . . . . . . . . . . . . . . . .  9
   3.1.2 Local TCP Acknowledgements . . . . . . . . . . . . . . . . .  9
   3.1.3 Local TCP Retransmissions  . . . . . . . . . . . . . . . . .  9
   3.1.4 TCP ACK Filtering and Reconstruction . . . . . . . . . . . . 10
   3.2 Tunneling  . . . . . . . . . . . . . . . . . . . . . . . . . . 10
   3.3 Compression  . . . . . . . . . . . . . . . . . . . . . . . . . 10
   3.4 Handling Periods of Link Disconnection with TCP  . . . . . . . 11
   3.5 Priority-based Multiplexing  . . . . . . . . . . . . . . . . . 12
   3.6 Protocol Booster Mechanisms  . . . . . . . . . . . . . . . . . 13
   4. Implications of Using PEPs  . . . . . . . . . . . . . . . . . . 14
   4.1 The End-to-end Argument  . . . . . . . . . . . . . . . . . . . 14
   4.1.1 Security . . . . . . . . . . . . . . . . . . . . . . . . . . 14
   4.1.1.1 Security Implications  . . . . . . . . . . . . . . . . . . 15
   4.1.1.2 Security Implication Mitigations . . . . . . . . . . . . . 16
   4.1.1.3 Security Research Related to PEPs  . . . . . . . . . . . . 16
   4.1.2 Fate Sharing . . . . . . . . . . . . . . . . . . . . . . . . 16
   4.1.3 End-to-end Reliability . . . . . . . . . . . . . . . . . . . 17
   4.1.4 End-to-end Failure Diagnostics . . . . . . . . . . . . . . . 19
   4.2 Asymmetric Routing . . . . . . . . . . . . . . . . . . . . . . 19
   4.3 Mobile Hosts . . . . . . . . . . . . . . . . . . . . . . . . . 20
   4.4 Scalability  . . . . . . . . . . . . . . . . . . . . . . . . . 20
   4.5 Other Implications of Using PEPs . . . . . . . . . . . . . . . 21
   5. PEP Environment Examples  . . . . . . . . . . . . . . . . . . . 21
   5.1 VSAT Environments  . . . . . . . . . . . . . . . . . . . . . . 21
   5.1.1 VSAT Network Characteristics . . . . . . . . . . . . . . . . 22
   5.1.2 VSAT Network PEP Implementations . . . . . . . . . . . . . . 23
   5.1.3 VSAT Network PEP Motivation  . . . . . . . . . . . . . . . . 24
   5.2 W-WAN Environments . . . . . . . . . . . . . . . . . . . . . . 25
   5.2.1 W-WAN Network Characteristics  . . . . . . . . . . . . . . . 25
   5.2.2 W-WAN PEP Implementations  . . . . . . . . . . . . . . . . . 26
   5.2.2.1 Mowgli System  . . . . . . . . . . . . . . . . . . . . . . 26
   5.2.2.2 Wireless Application Protocol (WAP)  . . . . . . . . . . . 28
   5.2.3 W-WAN PEP Motivation . . . . . . . . . . . . . . . . . . . . 29
   5.3 W-LAN Environments . . . . . . . . . . . . . . . . . . . . . . 30
   5.3.1 W-LAN Network Characteristics  . . . . . . . . . . . . . . . 30
   5.3.2 W-LAN PEP Implementations: Snoop . . . . . . . . . . . . . . 31
   5.3.3 W-LAN PEP Motivation . . . . . . . . . . . . . . . . . . . . 33
   6. Security Considerations . . . . . . . . . . . . . . . . . . . . 34
   7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 34
   8. Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . 34
   9. References  . . . . . . . . . . . . . . . . . . . . . . . . . . 35
   10. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 39
   Appendix A - PEP Terminology Summary . . . . . . . . . . . . . . . 41
   Full Copyright Statement . . . . . . . . . . . . . . . . . . . . . 45




Border, et al.               Informational                      [Page 2]

RFC 3135          PILC - Performance Enhancing Proxies         June 2001


1. Introduction

   The Transmission Control Protocol [RFC0793] (TCP) is used as the
   transport layer protocol by many Internet and intranet applications.
   However, in certain environments, TCP and other higher layer protocol
   performance is limited by the link characteristics of the
   environment.

   This document is a survey of Performance Enhancing Proxy (PEP)
   performance migitigation techniques.  A PEP is used to improve the
   performance of the Internet protocols on network paths where native
   performance suffers due to characteristics of a link or subnetwork on
   the path.  This document is informational and does not make
   recommendations about using PEPs or not using them.  Distinct
   standards track recommendations for the performance mitigation of TCP
   over links with high error rates, links with low bandwidth, and so
   on, have been developed or are in development by the Performance
   Implications of Link Characteristics WG (PILC) [PILCWEB].

   Link design choices may have a significant influence on the
   performance and efficiency of the Internet.  However, not all link
   characteristics, for example, high latency, can be compensated for by
   choices in the link layer design.  And, the cost of compensating for
   some link characteristics may be prohibitive for some technologies.
   The techniques surveyed here are applied to existing link
   technologies.  When new link technologies are designed, they should
   be designed so that these techniques are not required, if at all
   possible.

   This document does not advocate the use of PEPs in any general case.
   On the contrary, we believe that the end-to-end principle in
   designing Internet protocols should be retained as the prevailing
   approach and PEPs should be used only in specific environments and
   circumstances where end-to-end mechanisms providing similar
   performance enhancements are not available.  In any environment where
   one might consider employing a PEP for improved performance, an end
   user (or, in some cases, the responsible network administrator)
   should be aware of the PEP and the choice of employing PEP
   functionality should be under the control of the end user, especially
   if employing the PEP would interfere with end-to-end usage of IP
   layer security mechanisms or otherwise have undesirable implications
   in some circumstances.  This would allow the user to choose end-to-
   end IP at all times but, of course, without the performance
   enhancements that employing the PEP may yield.

   This survey does not make recommendations, for or against, with
   respect to using PEPs.  Standards track recommendations have been or
   are being developed within the IETF for individual link



Border, et al.               Informational                      [Page 3]

RFC 3135          PILC - Performance Enhancing Proxies         June 2001


   characteristics, e.g., links with high error rates, links with low
   bandwidth, links with asymmetric bandwidth, etc., by the Performance
   Implications of Link Characteristics WG (PILC) [PILCWEB].

   The remainder of this document is organized as follows.  Section 2
   provides an overview of different kinds of PEP implementations.

   Section 3 discusses some of the mechanisms which PEPs may employ in
   order to improve performance.  Section 4 discusses some of the
   implications with respect to using PEPs, especially in the context of
   the global Internet.  Finally, Section 5 discusses some example
   environments where PEPs are used: satellite very small aperture
   terminal (VSAT) environments, mobile wireless WAN (W-WAN)
   environments and wireless LAN (W-LAN) environments.  A summary of PEP
   terminology is included in an appendix (Appendix A).

2. Types of Performance Enhancing Proxies

   There are many types of Performance Enhancing Proxies.  Different
   types of PEPs are used in different environments to overcome
   different link characteristics which affect protocol performance.
   Note that enhancing performance is not necessarily limited in scope
   to throughput.  Other performance related aspects, like usability of
   a link, may also be addressed.  For example, [M-TCP] addresses the
   issue of keeping TCP connections alive during periods of
   disconnection in wireless networks.

   The following sections describe some of the key characteristics which
   differentiate different types of PEPs.

2.1 Layering

   In principle, a PEP implementation may function at any protocol layer
   but typically it functions at one or two layers only.  In this
   document we focus on PEP implementations that function at the
   transport layer or at the application layer as such PEPs are most
   commonly used to enhance performance over links with problematic
   characteristics.  A PEP implementation may also operate below the
   network layer, that is, at the link layer, but this document pays
   only little attention to such PEPs as link layer mechanisms can be
   and typically are implemented transparently to network and higher
   layers, requiring no modifications to protocol operation above the
   link layer.  It should also be noted that some PEP implementations
   operate across several protocol layers by exploiting the protocol
   information and possibly modifying the protocol operation at more
   than one layer.  For such a PEP it may be difficult to define at
   which layer(s) it exactly operates on.




Border, et al.               Informational                      [Page 4]

RFC 3135          PILC - Performance Enhancing Proxies         June 2001


2.1.1 Transport Layer PEPs

   Transport layer PEPs operate at the transport level.  They may be
   aware of the type of application being carried by the transport layer
   but, at most, only use this information to influence their behavior
   with respect to the transport protocol; they do not modify the
   application protocol in any way, but let the application protocol
   operate end-to-end.  Most transport layer PEP implementations
   interact with TCP.  Such an implementation is called a TCP
   Performance Enhancing Proxy (TCP PEP).  For example, in an
   environment where ACKs may bunch together causing undesirable data
   segment bursts, a TCP PEP may be used to simply modify the ACK
   spacing in order to improve performance.  On the other hand, in an
   environment with a large bandwidth*delay product, a TCP PEP may be
   used to alter the behavior of the TCP connection by generating local
   acknowledgments to TCP data segments in order to improve the
   connection's throughput.

   The term TCP spoofing is sometimes used synonymously for TCP PEP
   functionality.  However, the term TCP spoofing more accurately
   describes the characteristic of intercepting a TCP connection in the
   middle and terminating the connection as if the interceptor is the
   intended destination.  While this is a characteristic of many TCP PEP
   implementations, it is not a characteristic of all TCP PEP
   implementations.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -