TCP/IP中的显示拥塞通知(ECN)

转载地址:http://www.icir.org/floyd/ecn.html

ECN (Explicit Congestion Notification) in TCP/IP

Additional topics below:
Obsoleted by RFC 3168 ,
Evaluations of ECN ,
Proposed Modifications of ECN ,
Implementation and Deployment of ECN ,
ECN in Simulators ,
Notes and Email ,
Research on ECN and Related Work ,
Alternate proposals for the ECN field in IP ,
ECN with MPLS ,
Active Queue Management and ECN ,
Talks ,
Open issues for ECN ,
Approaches in other architectures: FECN, BECN, and EFCI ,
Archival documents .
  • The Addition of Explicit Congestion Notification (ECN) to IP.
    Ramakrishnan, K.K., Floyd, S., and Black, D. 
    RFC 3168, Proposed Standard, September 2001. Local copy: (postscripttext).
    RFC 3168 obsoletes RFC 2481, and several internet drafts listed below.

  • Wetherall, D., Ely, D., and Spring, N.,
    Robust ECN Signaling with Nonces,
    RFC 3540, Experimental, June 2003.

  • Adding Explicit Congestion Notification (ECN) Capability to TCP's SYN/ACK Packets
    A. Kuzmanovic, A. Mondal, S. Floyd, and K.K. Ramakrishnan,
    RFC 5562, Experimental, June 2009. Local copy: (textpdf). ECN web page. Simulation scripts
    The earlier SIGCOMM paper: The Power of Explicit Congestion Notification (PDF), A. Kuzmanovic, SIGCOMM, August 2005.

  • Section 9.1 of RFC 3168 discusses IP packets encapsulated in IP, but we do not have a separate document updating RFC 2003, "IP Encapsulation within IP", for ECN compatibility.

  • The ECN BOF at the L.A. IETF, March 1998.

  • Floyd, S., 
    TCP and Explicit Congestion Notification (compressed postscriptpdf). 
    ACM Computer Communication Review, V. 24 N. 5, October 1994, p. 10-23. 
    [This issue of CCR incorrectly has "1995" on the cover instead of "1994".] Abstract.

  • Problems with non-ECN-compatible equipment in the network: There are several (broken) deployed TCP implementations and routers that don't respond to SYN packets that use the ECN-related flags for negotiating ECN-capability. 
    March 2007 report at IETF also reports on problems of routers that crash when a TCP data packet arrives marked with either ECT(0) or ECT(1), representing a packet from an ECN-Capable connection.

Obsoleted by RFC 3168:

Evaluations of ECN:

Proposed Modifications of ECN:

  • M. Kwon and S. Fahmy, TCP Increase/Decrease Behavior with Explicit Congestion Notification (ECN), Proceedings of IEEE ICC (Symposium on High-Speed Networks), V. 4, pp. 2335-2340, April 2002. 
    "We investigate the effect of TCP Explicit Congestion Notification (ECN) with a new response strategy that is more aggressive in the short term, but preserves TCP long term behavior, without modifying the router marking rate. A less aggressive ECN decrease gives more incentives for end systems to become ECN-compliant, as ECN serves as an early warning sign in this case."

Implementation and Deployment of ECN:

  •  Microsoft Vista supports ECN, but it is disabled by default. Implementation report from March 2007.
  • MAC OS X: 
    Leopard 10.5.0 implements ECN, controlled by the variables "net.inet.tcp.ecn_negotiate_in" and "net.inet.tcp.ecn_initiate_out". Reported by Rui Paulo, 2007.
  • Linux:
    • Linux 2.4 has full ECN support, including ECN TCP. January 2001.
    • Linux 2.3: The Linux 2.3 kernel includes the router code for ECN. May 1999.
  • FreeBSD: Rui Paulo added TCP ECN end-host support to FreeBSD 8.0. July 2008.
  • NetBSD supports ECN at the end host. Reported by Rui Paulo, 2006.
  • ALTQ
    Kenjiro Cho added ECN router support to ALTQ, which runs on FreeBSD/NetBSD/OpenBSD. February 2002. 
    KAME includes ALTQ and supports ECN for IPv6 and IPsec. 
    Test results of ALTQ/RED performance, January 1998.
  • Cisco:
    Cisco supports ECN starting from 12.2(8)T. August 2006.
  • IBM's AIX: 
    IBM supports ECN in AIX at the end hosts (TCP level) from release 5.1. May 2001. 
    ECN is off by default, and can be turned on by a runtime network option 'tcp_ecn', with the command: # no -o tcp_ecn=1
  • Nortel:
    Nortel's Open IP Environment 2.1 contains router ECN support. November 2000.
  • Sun:
    Sun has ECN support in Solaris 9. 2002. 
    One needs to say "ndd -set /dev/tcp tcp_ecn_permitted 2" for an end-host to ask for ECN.
  • Tcpdump: Jamal Hadi Salim, Tcpdump patch to print ECN info, May 1998.
  • Floyd, S., Guidelines for testing the ECN implementation in a router, May 2001.
  • In 2002, David Moore from CAIDA reported that in measurements at one link, 0.1% of the packets had the CE codepoint set. Either this codepoint was being used for some other purpose, or there is some deployment of ECN capability in routers as well as in TCP stacks.

ECN in Simulators:

  • The ns-2 simulator implements ECN with TCP. There are two validation test suites for the ECN implementation in ns, "test-all-ecn" and "test-all-ecn-ack". The validation test suite is described in the note ECN Implementations in the NS Simulator (postscriptPDF), and in the file "test-suite-ecn.txt" in the ns directory tcl/test.
  • The note on Ns Simulator Tests for Random Early Detection (RED) Gateways, October 1996, shows a simple simulation using ECN with RED queue management and Reno TCP. This test can be run in ns-2 with the command "ns test-suite-red.tcl ecn" in the directory tcl/test.
  • In ns-2, a simple simulation with one Tahoe TCP connection that is ECN-Capable and a second Tahoe TCP connection that is not ECN-Capable can be run with the command "ns test-suite-tcp.tcl ecn" in the directory tcl/test.
  • A brief discussion about the model of ECN in the ns-2 simulator.

Notes and Email:

Research on ECN and Related Work:

  • K. K. Ramakrishnan and Raj Jain, A Binary Feedback Scheme for Congestion Avoidance in Computer Networks, ACM Transactions on Computer Systems, Vol.8, No.2, pp. 158-181, May 1990.
  • Hari Balakrishnan, Venkata Padmanabhan, and Randy H. Katz, The Effects of Asymmetry on TCP Performance, Proc. Third ACM/IEEE MobiCom Conference, Budapest, Hungary, Sep 1997.
    This paper includes a proposal for Ack Congestion Control, for responding to ACK packets that have had the ECN bit set.
  • Prasad Bagal, Shivkumar Kalyanaraman, Bob Packer, Comparative study of RED, ECN and TCP Rate Control, Technical Report, March 1999.
    This paper evaluates RED, ECN, and a scheme which explicitly and transparently controls TCP rate (Packeteer TCP rate control). The paper indicates marked improvements in fairness moving from RED through ECN to TCP rate control.

Alternate proposals for the ECN field in IP, or for other ECN-like semantics:

We welcome research about proposals for alternate uses of the ECN field that could be associated with different diff-serv classes of traffic.
  •  RFC 4774: Specifying Alternate Semantics for the Explicit Congestion Notification (ECN) Field, RFC 4774, Best Current Practice, November 2006. Local copy: (postscripttext). 
    "This document discusses some of the issues in defining alternate semantics for the ECN field, and specifies requirements for a safe co-existence in an Internet that could include routers that do not understand the defined alternate semantics."
  • L. Andrew, S. Hanly, S. Chan and T. Cui, Adaptive Deterministic Packet Marking, IEEE Comm. Letters, 10(11):790-792, Nov 2006. 
    "An efficient method is presented for signaling link price information using single-bit marks... A marking scheme with improved compatibility with current ECN (RFC 3168) is also proposed."
  • Nandita Dukkipati and Nick McKeown, Rate Control Protocol, 2005-2006. 
    "RCP has two components: (1) End-host congestion control layer that sits between IP and TCP/UDP... (2) Each router maintains a single fair-share rate per link. Each packet carries the rate of the bottleneck link."
  • Y. Xia, L. Subramanian, I. Stoica, and S. Kalyanaraman, One More Bit Is Enough, SIGCOMM 2005. 
    "In this paper, we design and implement a simple, low-complexity protocol, called Variable-structure congestion Control Protocol (VCP), that leverages only the existing two ECN bits for network congestion feedback, and yet achieves comparable performance to XCP, i.e., high utilization, low persistent queue length, negligible packet loss rate, and reasonable fairness."
  • A. Karnik and A. Kumar, Performance of TCP Congestion Control with Explicit Rate Feedback, CCR, February 2005. 
    "We consider a modification of TCP congestion control in which the congestion window is adapted to explicit bottleneck rate feedback; we call this RATCP (Rate Adaptive TCP)... We believe that ... ECN bit itself can be used to provide the rate feedback."
  • S Kunniyur and R. Srikant, End-to-End Congestion Control Schemes: Utility Functions, Random Losses and ECN Marks, IEEE/ACM Transactons on Networking, October 2003. 
    "ECN marking levels can be designed to nearly eliminate losses in the network by choosing the marking level independently for each node in the network."
  • S. Kunniyur, AntiECN Marking: A Marking Scheme for High Bandwidth Delay Connections, to appear in Proceedings, ICC, May 2003. 
    "We describe a simple scheme that uses feedback from underutilized high capacity links to allow a TCP connection to aggressively increase its sending rate. The feedback is in the form of a single bit in the packet header and is given per packet."
  • Arjan Durresi, Mukundan Sridharan, Chunlei Liu, Mukul Goyal and Raj Jain, Multilevel Explicit Congestion Notification, presented at SCI2001. 
    This paper proposes "multilevel ECN, which conveys more accurate feedback information about the network congestion status than the current two levels ECN".
  • R.J. Gibbens and F.P. Kelly, Resource pricing and the evolution of congestion control, Automatica 35, 1999.
    This paper argues that ``by appropriately marking packets at overloaded resources and by charging a fixed small amount for each mark received, end-nodes are provided with the necessary information and the correct incentive to use the network efficiently.''
  • Microsoft Research's web page on Congestion Pricing and a Distributed Game also uses ECN for shadow prices which convey the marginal cost of congestion back to the user.
    Koenraad Lavens, Peter Key and Derek McAuley, An ECN-based End-to-end Congestion-control Framework: Experiments and Evaluation.
  • Steven Low and others, Optimization Flow Control.
    This page outlines a modified version of Optimization Flow Control that uses packet marking to convey to a source the information it needs to optimally adjust its rate.
  • S. Kalyanaraman, S. Arora, K. Wanglee, G. Guarriello and D. Harrison, A One-bit Feedback Enhanced Differentiated Services Architecture, work-in-progress, Apr. 1998.
    This document proposes the use of one bit in the DS-byte to facilitate ECN-type control in the differentiated services architecture.
  • Teunis J. Ott, ECN Protocols and the TCP Paradigm, May 1999 (PDF).

ECN with MPLS:

Active Queue Management and ECN

Talks:

Open issues for ECN:

  • What are the quantitative benefits of ECN for TCP? What new dynamics does ECN add to TCP, in terms of competition between ECN-capable and non-ECN-capable traffic, the robustness of ECN in the presence of dropped ACK packets, performance with multiple congested gateways, etc.?
  • What are the benefits of ECN for rate-adaptive realtime traffic with fixed or adaptive playback times? What would be the risks in adding ECN to the UDP API, for ECN-capable traffic applications that use end-to-end congestion control? Would "lying about ECN-capability" be significantly more attractive to misbehaving users than simply adding another layer of FEC to an application without end-to-end congestion control?
  • What are the benefits of ECN in reliable multicast, for sessions using end-to-end congestion control? What are the relative benefits and costs of ECN relative to simply using more FEC?

Approaches in other architectures: FECN, BECN, and EFCI

  • FECN and BECN are Explicit Congestion Notification mechanisms for Frame Relay, based on the instantaneous queue size (as opposed to the average queue size).
  • ATM's Explicit Forward Congestion Indication (EFCI).

Archival documents:

Return to [ Sally Floyd] [ K. K. Ramakrishnan]. 
Thanks for Simon Leinen and Reiner Ludwig for contributions to these web pages. 
Last modified: June 2009. Links checked March 2008.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值